@the-liberators/ngx-scrumteamsurvey-tools 2.3.118 → 2.3.119
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.
|
@@ -41,9 +41,9 @@ import * as i2$2 from '@angular/cdk/clipboard';
|
|
|
41
41
|
import { ClipboardModule } from '@angular/cdk/clipboard';
|
|
42
42
|
import * as i5$2 from '@angular/material/checkbox';
|
|
43
43
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
44
|
-
import * as
|
|
45
|
-
import {
|
|
46
|
-
import * as
|
|
44
|
+
import * as i12 from '@angular/cdk/overlay';
|
|
45
|
+
import { OverlayModule } from '@angular/cdk/overlay';
|
|
46
|
+
import * as i3$1 from '@angular/material/progress-spinner';
|
|
47
47
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
48
48
|
import * as i4$2 from '@angular/material/slide-toggle';
|
|
49
49
|
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
@@ -4907,6 +4907,16 @@ class ModelFactorMetricComponent extends ComponentWithViewStateBase {
|
|
|
4907
4907
|
this.state = state;
|
|
4908
4908
|
this.snackBar = snackBar;
|
|
4909
4909
|
this.userSettings = userSettings;
|
|
4910
|
+
this.isPopoverOpen = false;
|
|
4911
|
+
this.overlayPositions = [
|
|
4912
|
+
{
|
|
4913
|
+
originX: 'end',
|
|
4914
|
+
originY: 'bottom',
|
|
4915
|
+
overlayX: 'start',
|
|
4916
|
+
overlayY: 'center',
|
|
4917
|
+
offsetY: 0
|
|
4918
|
+
}
|
|
4919
|
+
];
|
|
4910
4920
|
}
|
|
4911
4921
|
ngOnInit() {
|
|
4912
4922
|
super.ngOnInit();
|
|
@@ -4927,11 +4937,11 @@ class ModelFactorMetricComponent extends ComponentWithViewStateBase {
|
|
|
4927
4937
|
this.showSetup = data.isSubscriber && (!this.integration || !this.integration.isSetup) && data.appContext !== "CoachingCenter";
|
|
4928
4938
|
}
|
|
4929
4939
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: ModelFactorMetricComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }, { token: VIEWSTATE_USERSETTINGS_STRATEGY }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4930
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.5", type: ModelFactorMetricComponent, isStandalone: false, selector: "model-factor-metric", inputs: { metric: "metric" }, usesInheritance: true, ngImport: i0, template: "<div class=\"model-factor-metric\" #
|
|
4940
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.5", type: ModelFactorMetricComponent, isStandalone: false, selector: "model-factor-metric", inputs: { metric: "metric" }, usesInheritance: true, ngImport: i0, template: "<div class=\"model-factor-metric\" #badgeOrigin=\"cdkOverlayOrigin\" cdkOverlayOrigin (click)=\"isPopoverOpen = true\" [id]=\"'metric-' + metric.publicKey\">\n <div class=\"model-factor-metric-title\">\n {{metric.name}}\n <span class=\"ph-info-fill icon\"></span>\n </div>\n @if (showMetricResult && factorScore) {\n <div class=\"model-factor-metric-result\">\n @if (factorScore) {\n <div class=\"digit\">{{factorScore.score}}</div>\n }\n <div class=\"unit\">{{metric.unit}}</div>\n @if (factorScore && userSettings.settings.user.modelFilter.advanced) {\n <div class=\"confidence\" title=\"The confidence interval\">CI: {{factorScore.lowerConfidence}} - {{factorScore.upperConfidence}}</div>\n }\n <div class=\"model-factor-metric-result-details\">\n @if (userSettings.settings.user.modelFilter.advanced) {\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\"></age-indicator>\n }\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n </div>\n }\n @if (!showMetricResult || !factorScore) {\n <div class=\"model-factor-metric-result\">\n <div class=\"digit\">?</div>\n <div class=\"unit\">{{metric.unit}}</div>\n </div>\n }\n <div class=\"model-factor-metric-setup\">\n @if (integration && integration.hasCollectorUrl && integration.isSetup) {\n <div class=\"howtocollect collectordialog\" integrationDialog [metric]=\"metric\" [integration]=\"integration\"><span class=\"icon ph-funnel-fill\"></span> How to collect</div>\n }\n @if (showSetup) {\n <a class=\"howtocollect setup\" (click)=\"toManage($event)\"><span class=\"icon ph-gear-fill\"></span> Set up</a>\n }\n @if (showSetupTeaser) {\n <a class=\"howtocollect teaser\" subscribeDialog><span class=\"icon ph-gear-fill\"></span> Set up</a>\n }\n </div>\n</div>\n\n<ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"badgeOrigin\" [cdkConnectedOverlayPush]=\"true\" [cdkConnectedOverlayViewportMargin]=\"8\" [cdkConnectedOverlayOpen]=\"isPopoverOpen\" [cdkConnectedOverlayHasBackdrop]=\"true\" [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\" [cdkConnectedOverlayPositions]=\"overlayPositions\" (backdropClick)=\"isPopoverOpen = false\">\n <div class=\"popover\" [id]=\"'popover-' + metric.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"isPopoverOpen = false\" 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 <ng-container *ngIf=\"factorScore\">\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 @if (factorScore.recommendation.available) {\n <div class=\"link\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"metric.publicKey\">discover how to improve ></a>\n </div>\n }\n </ng-container>\n </div>\n <div class=\"arrow\"></div>\n </div>\n</ng-template>\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: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$5.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: "directive", type: OpenFactorInformationDialogDirective, selector: "[factorInformationDialog]", inputs: ["factor"] }, { kind: "directive", type: OpenSubscribeDialogDirective, selector: "[subscribeDialog]" }, { kind: "directive", type: i12.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i12.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: ModelFactorBenchmarkComponent, selector: "model-factor-benchmark", inputs: ["factor", "benchmark"] }, { kind: "component", type: ModelFactorBreakdownComponent, selector: "model-factor-breakdown", inputs: ["factor", "pageSize"] }, { kind: "directive", type: OpenIntegrationDialogDirective, selector: "[integrationDialog]", inputs: ["metric", "integration"] }] }); }
|
|
4931
4941
|
}
|
|
4932
4942
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: ModelFactorMetricComponent, decorators: [{
|
|
4933
4943
|
type: Component,
|
|
4934
|
-
args: [{ selector: 'model-factor-metric', standalone: false, template: "<div class=\"model-factor-metric\" #
|
|
4944
|
+
args: [{ selector: 'model-factor-metric', standalone: false, template: "<div class=\"model-factor-metric\" #badgeOrigin=\"cdkOverlayOrigin\" cdkOverlayOrigin (click)=\"isPopoverOpen = true\" [id]=\"'metric-' + metric.publicKey\">\n <div class=\"model-factor-metric-title\">\n {{metric.name}}\n <span class=\"ph-info-fill icon\"></span>\n </div>\n @if (showMetricResult && factorScore) {\n <div class=\"model-factor-metric-result\">\n @if (factorScore) {\n <div class=\"digit\">{{factorScore.score}}</div>\n }\n <div class=\"unit\">{{metric.unit}}</div>\n @if (factorScore && userSettings.settings.user.modelFilter.advanced) {\n <div class=\"confidence\" title=\"The confidence interval\">CI: {{factorScore.lowerConfidence}} - {{factorScore.upperConfidence}}</div>\n }\n <div class=\"model-factor-metric-result-details\">\n @if (userSettings.settings.user.modelFilter.advanced) {\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\"></age-indicator>\n }\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n </div>\n }\n @if (!showMetricResult || !factorScore) {\n <div class=\"model-factor-metric-result\">\n <div class=\"digit\">?</div>\n <div class=\"unit\">{{metric.unit}}</div>\n </div>\n }\n <div class=\"model-factor-metric-setup\">\n @if (integration && integration.hasCollectorUrl && integration.isSetup) {\n <div class=\"howtocollect collectordialog\" integrationDialog [metric]=\"metric\" [integration]=\"integration\"><span class=\"icon ph-funnel-fill\"></span> How to collect</div>\n }\n @if (showSetup) {\n <a class=\"howtocollect setup\" (click)=\"toManage($event)\"><span class=\"icon ph-gear-fill\"></span> Set up</a>\n }\n @if (showSetupTeaser) {\n <a class=\"howtocollect teaser\" subscribeDialog><span class=\"icon ph-gear-fill\"></span> Set up</a>\n }\n </div>\n</div>\n\n<ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"badgeOrigin\" [cdkConnectedOverlayPush]=\"true\" [cdkConnectedOverlayViewportMargin]=\"8\" [cdkConnectedOverlayOpen]=\"isPopoverOpen\" [cdkConnectedOverlayHasBackdrop]=\"true\" [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\" [cdkConnectedOverlayPositions]=\"overlayPositions\" (backdropClick)=\"isPopoverOpen = false\">\n <div class=\"popover\" [id]=\"'popover-' + metric.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"isPopoverOpen = false\" 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 <ng-container *ngIf=\"factorScore\">\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 @if (factorScore.recommendation.available) {\n <div class=\"link\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"metric.publicKey\">discover how to improve ></a>\n </div>\n }\n </ng-container>\n </div>\n <div class=\"arrow\"></div>\n </div>\n</ng-template>\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"] }]
|
|
4935
4945
|
}], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
|
|
4936
4946
|
type: Inject,
|
|
4937
4947
|
args: [VIEWSTATE_PROVIDER]
|
|
@@ -4952,6 +4962,15 @@ class ModelFactorIndicatorComponent extends ComponentWithViewStateBase {
|
|
|
4952
4962
|
this.arrowUpdateService = arrowUpdateService;
|
|
4953
4963
|
this.expandIndicators = true;
|
|
4954
4964
|
this.InterventionStateEnum = InterventionStateEnum;
|
|
4965
|
+
this.isPopoverOpen = false;
|
|
4966
|
+
this.overlayPositions = [
|
|
4967
|
+
{
|
|
4968
|
+
originX: 'end',
|
|
4969
|
+
originY: 'bottom',
|
|
4970
|
+
overlayX: 'start',
|
|
4971
|
+
overlayY: 'center'
|
|
4972
|
+
}
|
|
4973
|
+
];
|
|
4955
4974
|
}
|
|
4956
4975
|
ngOnInit() {
|
|
4957
4976
|
super.ngOnInit();
|
|
@@ -4996,11 +5015,11 @@ class ModelFactorIndicatorComponent extends ComponentWithViewStateBase {
|
|
|
4996
5015
|
(this.userSettings.settings.user.modelFilter.layers.find(p => p.key == "Supporters" && p.selected) != null && this.factorScore.points.find(p => p.name == "Supporter") != null);
|
|
4997
5016
|
}
|
|
4998
5017
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: ModelFactorIndicatorComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: VIEWSTATE_USERSETTINGS_STRATEGY }, { token: UserSettingService }, { token: i1.MatSnackBar }, { token: ArrowUpdateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4999
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.5", type: ModelFactorIndicatorComponent, isStandalone: false, selector: "model-factor-indicator", inputs: { indicator: "indicator", actionStatusPosition: "actionStatusPosition", visible: "visible" }, usesInheritance: true, ngImport: i0, template: "@if (visible) {\n
|
|
5018
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.5", type: ModelFactorIndicatorComponent, isStandalone: false, selector: "model-factor-indicator", inputs: { indicator: "indicator", actionStatusPosition: "actionStatusPosition", visible: "visible" }, usesInheritance: true, ngImport: i0, template: "@if (visible) {\n<div [class]=\"'factor-indicator factor-indicator-actions-' + actionStatusPosition + ' factor-indicator-' + direction\" [ngClass]=\"{'factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + indicator.publicKey\" #badgeOrigin=\"cdkOverlayOrigin\" cdkOverlayOrigin (click)=\"isPopoverOpen = true\">\n @if ((notes.length > 0 || factorScore.interventionSummary.impeded > 0 || factorScore.interventionSummary.open > 0) && userSettings.settings.user.modelFilter.advanced) {\n <div class=\"factor-actions\">\n @if (factorScore.interventionSummary.open > 0) {\n <div class=\"factor-actions-status\">\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 }\n @if (factorScore.interventionSummary.impeded > 0) {\n <div class=\"factor-actions-impeded\" [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 }\n @if (notes.length > 0) {\n <div class=\"factor-warnings\" 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 }\n </div>\n }\n <div class=\"factor-content\" (click)=\"isPopoverOpen = true\">\n <div class=\"factor-name\">\n {{indicator.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"factor-details\">\n @if (userSettings.settings.user.modelFilter.advanced) {\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\"></age-indicator>\n }\n @if (dataAvailable) {\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\" [noDataIndicator]=\"false\"></delta-arrow>\n }\n </div>\n </div>\n <div class=\"factor-anchor\" [id]=\"'factor-' + indicator.publicKey + '-anchor'\">\n </div>\n</div>\n<ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"badgeOrigin\" [cdkConnectedOverlayPush]=\"true\" [cdkConnectedOverlayViewportMargin]=\"8\" [cdkConnectedOverlayOpen]=\"isPopoverOpen\" [cdkConnectedOverlayHasBackdrop]=\"true\" [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\" [cdkConnectedOverlayPositions]=\"overlayPositions\" (backdropClick)=\"isPopoverOpen = false\">\n <div class=\"popover\" [id]=\"'popover-' + indicator.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"isPopoverOpen = false\" 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 <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 @if (factorScore.recommendation.available) {\n <div class=\"link\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"indicator.publicKey\">discover how to improve ></a>\n </div>\n }\n </div>\n <div class=\"arrow\"></div>\n </div>\n</ng-template>\n}\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: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$5.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: "directive", type: OpenNotesDialogDirective, selector: "[notesDialog]", inputs: ["notes"] }, { kind: "directive", type: OpenFactorInformationDialogDirective, selector: "[factorInformationDialog]", inputs: ["factor"] }, { kind: "component", type: ProgressbarComponent, selector: "progressbar", inputs: ["factorScore"] }, { kind: "directive", type: i12.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i12.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: ModelFactorBenchmarkComponent, selector: "model-factor-benchmark", inputs: ["factor", "benchmark"] }, { kind: "component", type: ModelFactorBreakdownComponent, selector: "model-factor-breakdown", inputs: ["factor", "pageSize"] }] }); }
|
|
5000
5019
|
}
|
|
5001
5020
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: ModelFactorIndicatorComponent, decorators: [{
|
|
5002
5021
|
type: Component,
|
|
5003
|
-
args: [{ selector: 'model-factor-indicator', standalone: false, template: "@if (visible) {\n
|
|
5022
|
+
args: [{ selector: 'model-factor-indicator', standalone: false, template: "@if (visible) {\n<div [class]=\"'factor-indicator factor-indicator-actions-' + actionStatusPosition + ' factor-indicator-' + direction\" [ngClass]=\"{'factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + indicator.publicKey\" #badgeOrigin=\"cdkOverlayOrigin\" cdkOverlayOrigin (click)=\"isPopoverOpen = true\">\n @if ((notes.length > 0 || factorScore.interventionSummary.impeded > 0 || factorScore.interventionSummary.open > 0) && userSettings.settings.user.modelFilter.advanced) {\n <div class=\"factor-actions\">\n @if (factorScore.interventionSummary.open > 0) {\n <div class=\"factor-actions-status\">\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 }\n @if (factorScore.interventionSummary.impeded > 0) {\n <div class=\"factor-actions-impeded\" [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 }\n @if (notes.length > 0) {\n <div class=\"factor-warnings\" 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 }\n </div>\n }\n <div class=\"factor-content\" (click)=\"isPopoverOpen = true\">\n <div class=\"factor-name\">\n {{indicator.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"factor-details\">\n @if (userSettings.settings.user.modelFilter.advanced) {\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\"></age-indicator>\n }\n @if (dataAvailable) {\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\" [noDataIndicator]=\"false\"></delta-arrow>\n }\n </div>\n </div>\n <div class=\"factor-anchor\" [id]=\"'factor-' + indicator.publicKey + '-anchor'\">\n </div>\n</div>\n<ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"badgeOrigin\" [cdkConnectedOverlayPush]=\"true\" [cdkConnectedOverlayViewportMargin]=\"8\" [cdkConnectedOverlayOpen]=\"isPopoverOpen\" [cdkConnectedOverlayHasBackdrop]=\"true\" [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\" [cdkConnectedOverlayPositions]=\"overlayPositions\" (backdropClick)=\"isPopoverOpen = false\">\n <div class=\"popover\" [id]=\"'popover-' + indicator.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"isPopoverOpen = false\" 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 <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 @if (factorScore.recommendation.available) {\n <div class=\"link\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"indicator.publicKey\">discover how to improve ></a>\n </div>\n }\n </div>\n <div class=\"arrow\"></div>\n </div>\n</ng-template>\n}\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"] }]
|
|
5004
5023
|
}], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
|
|
5005
5024
|
type: Inject,
|
|
5006
5025
|
args: [VIEWSTATE_PROVIDER]
|
|
@@ -5025,6 +5044,16 @@ class ModelFactorCoreComponent extends ComponentWithViewStateBase {
|
|
|
5025
5044
|
this.arrowUpdateService = arrowUpdateService;
|
|
5026
5045
|
this.expandIndicators = false;
|
|
5027
5046
|
this.InterventionStateEnum = InterventionStateEnum;
|
|
5047
|
+
this.isPopoverOpen = false;
|
|
5048
|
+
this.overlayPositions = [
|
|
5049
|
+
{
|
|
5050
|
+
originX: 'end',
|
|
5051
|
+
originY: 'bottom',
|
|
5052
|
+
overlayX: 'start',
|
|
5053
|
+
overlayY: 'center',
|
|
5054
|
+
offsetY: 0
|
|
5055
|
+
}
|
|
5056
|
+
];
|
|
5028
5057
|
}
|
|
5029
5058
|
ngOnInit() {
|
|
5030
5059
|
super.ngOnInit();
|
|
@@ -5069,11 +5098,11 @@ class ModelFactorCoreComponent extends ComponentWithViewStateBase {
|
|
|
5069
5098
|
(this.userSettings.settings.user.modelFilter.layers.find(p => p.key == "Supporters" && p.selected) != null && this.factorScore.points.find(p => p.name == "Supporter") != null);
|
|
5070
5099
|
}
|
|
5071
5100
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: ModelFactorCoreComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: VIEWSTATE_USERSETTINGS_STRATEGY }, { token: UserSettingService }, { token: i1.MatSnackBar }, { token: ArrowUpdateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5072
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.5", 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 @if (allowExpand) {\n <div [class]=\"'model-factor-expand model-factor-expand-' + expandPosition\" [ngClass]=\"{'expanded': expandIndicators}\" (click)=\"toggleIndicators()\" [id]=\"'factor-' + factor.publicKey + '-expand'\">\n <span class=\"plus\">+</span>\n </div>\n }\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 @if (userSettings.settings.user.modelFilter.advanced) {\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\"></age-indicator>\n }\n @if (dataAvailable) {\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n }\n </div>\n </div>\n\n @if (userSettings.settings.user.modelFilter.advanced) {\n <div class=\"model-factor-bottom\">\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 @if (factorScore.interventionSummary.impeded > 0) {\n <span class=\"meta-impeded\" [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 }\n @if (notes.length > 0) {\n <span class=\"meta-warnings\" notesDialog [notes]=\"notes\">\n <span class=\"icon ph-warning-fill\"></span>\n </span>\n }\n </div>\n }\n\n @if (!userSettings.settings.user.modelFilter.advanced) {\n <div class=\"model-factor-bottom-empty\">\n </div>\n }\n </div>\n</div>\n\n<div [id]=\"'factor-' + factor.publicKey + '-indicators'\" class=\"indicators\">\n @for (indicator of factor.lower; track indicator) {\n <model-factor-indicator [indicator]=\"indicator\" [actionStatusPosition]=\"expandPosition\" [visible]=\"expandIndicators && allowExpand\"></model-factor-indicator>\n }\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 @if (factorScore.recommendation.available) {\n <div class=\"link\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"factor.publicKey\">discover how to improve ></a>\n </div>\n }\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: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$5.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: "directive", type: OpenNotesDialogDirective, selector: "[notesDialog]", inputs: ["notes"] }, { kind: "component", type: i10.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"] }, { kind: "component", type: ModelFactorBreakdownComponent, selector: "model-factor-breakdown", inputs: ["factor", "pageSize"] }] }); }
|
|
5101
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.5", 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 @if (allowExpand) {\n <div [class]=\"'model-factor-expand model-factor-expand-' + expandPosition\" [ngClass]=\"{'expanded': expandIndicators}\" (click)=\"toggleIndicators()\" [id]=\"'factor-' + factor.publicKey + '-expand'\">\n <span class=\"plus\">+</span>\n </div>\n }\n <div class=\"model-factor-inner\" #badgeOrigin=\"cdkOverlayOrigin\" cdkOverlayOrigin (click)=\"isPopoverOpen = true\">\n <div class=\"model-factor-content\" >\n <div class=\"model-factor-name\">\n {{factor.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"model-factor-details\">\n @if (userSettings.settings.user.modelFilter.advanced) {\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\"></age-indicator>\n }\n @if (dataAvailable) {\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n }\n </div>\n </div>\n\n @if (userSettings.settings.user.modelFilter.advanced) {\n <div class=\"model-factor-bottom\">\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 @if (factorScore.interventionSummary.impeded > 0) {\n <span class=\"meta-impeded\" [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 }\n @if (notes.length > 0) {\n <span class=\"meta-warnings\" notesDialog [notes]=\"notes\">\n <span class=\"icon ph-warning-fill\"></span>\n </span>\n }\n </div>\n }\n\n @if (!userSettings.settings.user.modelFilter.advanced) {\n <div class=\"model-factor-bottom-empty\">\n </div>\n }\n </div>\n</div>\n\n<div [id]=\"'factor-' + factor.publicKey + '-indicators'\" class=\"indicators\">\n @for (indicator of factor.lower; track indicator) {\n <model-factor-indicator [indicator]=\"indicator\" [actionStatusPosition]=\"expandPosition\" [visible]=\"expandIndicators && allowExpand\"></model-factor-indicator>\n }\n</div>\n\n<ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"badgeOrigin\" [cdkConnectedOverlayPush]=\"true\" [cdkConnectedOverlayViewportMargin]=\"8\" [cdkConnectedOverlayOpen]=\"isPopoverOpen\" [cdkConnectedOverlayHasBackdrop]=\"true\" [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\" [cdkConnectedOverlayPositions]=\"overlayPositions\" (backdropClick)=\"isPopoverOpen = false\">\n <div class=\"popover\" [id]=\"'popover-' + factor.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"isPopoverOpen = false\" 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 @if (factorScore.recommendation.available) {\n <div class=\"link\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"factor.publicKey\">discover how to improve ></a>\n </div>\n }\n </div>\n <div class=\"arrow\"></div>\n </div>\n</ng-template>\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: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$5.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: "directive", type: OpenNotesDialogDirective, selector: "[notesDialog]", inputs: ["notes"] }, { kind: "directive", type: OpenFactorInformationDialogDirective, selector: "[factorInformationDialog]", inputs: ["factor"] }, { kind: "component", type: ProgressbarComponent, selector: "progressbar", inputs: ["factorScore"] }, { kind: "directive", type: i12.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i12.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: ModelFactorIndicatorComponent, selector: "model-factor-indicator", inputs: ["indicator", "actionStatusPosition", "visible"] }, { kind: "component", type: ModelFactorBenchmarkComponent, selector: "model-factor-benchmark", inputs: ["factor", "benchmark"] }, { kind: "component", type: ModelFactorBreakdownComponent, selector: "model-factor-breakdown", inputs: ["factor", "pageSize"] }] }); }
|
|
5073
5102
|
}
|
|
5074
5103
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: ModelFactorCoreComponent, decorators: [{
|
|
5075
5104
|
type: Component,
|
|
5076
|
-
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 @if (allowExpand) {\n <div [class]=\"'model-factor-expand model-factor-expand-' + expandPosition\" [ngClass]=\"{'expanded': expandIndicators}\" (click)=\"toggleIndicators()\" [id]=\"'factor-' + factor.publicKey + '-expand'\">\n <span class=\"plus\">+</span>\n </div>\n }\n <div class=\"model-factor-inner\" #
|
|
5105
|
+
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 @if (allowExpand) {\n <div [class]=\"'model-factor-expand model-factor-expand-' + expandPosition\" [ngClass]=\"{'expanded': expandIndicators}\" (click)=\"toggleIndicators()\" [id]=\"'factor-' + factor.publicKey + '-expand'\">\n <span class=\"plus\">+</span>\n </div>\n }\n <div class=\"model-factor-inner\" #badgeOrigin=\"cdkOverlayOrigin\" cdkOverlayOrigin (click)=\"isPopoverOpen = true\">\n <div class=\"model-factor-content\" >\n <div class=\"model-factor-name\">\n {{factor.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"model-factor-details\">\n @if (userSettings.settings.user.modelFilter.advanced) {\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\"></age-indicator>\n }\n @if (dataAvailable) {\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n }\n </div>\n </div>\n\n @if (userSettings.settings.user.modelFilter.advanced) {\n <div class=\"model-factor-bottom\">\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 @if (factorScore.interventionSummary.impeded > 0) {\n <span class=\"meta-impeded\" [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 }\n @if (notes.length > 0) {\n <span class=\"meta-warnings\" notesDialog [notes]=\"notes\">\n <span class=\"icon ph-warning-fill\"></span>\n </span>\n }\n </div>\n }\n\n @if (!userSettings.settings.user.modelFilter.advanced) {\n <div class=\"model-factor-bottom-empty\">\n </div>\n }\n </div>\n</div>\n\n<div [id]=\"'factor-' + factor.publicKey + '-indicators'\" class=\"indicators\">\n @for (indicator of factor.lower; track indicator) {\n <model-factor-indicator [indicator]=\"indicator\" [actionStatusPosition]=\"expandPosition\" [visible]=\"expandIndicators && allowExpand\"></model-factor-indicator>\n }\n</div>\n\n<ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"badgeOrigin\" [cdkConnectedOverlayPush]=\"true\" [cdkConnectedOverlayViewportMargin]=\"8\" [cdkConnectedOverlayOpen]=\"isPopoverOpen\" [cdkConnectedOverlayHasBackdrop]=\"true\" [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\" [cdkConnectedOverlayPositions]=\"overlayPositions\" (backdropClick)=\"isPopoverOpen = false\">\n <div class=\"popover\" [id]=\"'popover-' + factor.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"isPopoverOpen = false\" 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 @if (factorScore.recommendation.available) {\n <div class=\"link\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"factor.publicKey\">discover how to improve ></a>\n </div>\n }\n </div>\n <div class=\"arrow\"></div>\n </div>\n</ng-template>\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"] }]
|
|
5077
5106
|
}], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
|
|
5078
5107
|
type: Inject,
|
|
5079
5108
|
args: [VIEWSTATE_PROVIDER]
|
|
@@ -5899,16 +5928,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImpor
|
|
|
5899
5928
|
|
|
5900
5929
|
class BadgeProgressionComponent {
|
|
5901
5930
|
constructor() {
|
|
5931
|
+
this.isPopoverOpen = false;
|
|
5932
|
+
this.overlayPositions = [
|
|
5933
|
+
{
|
|
5934
|
+
originX: 'center',
|
|
5935
|
+
originY: 'bottom',
|
|
5936
|
+
overlayX: 'center',
|
|
5937
|
+
overlayY: 'top',
|
|
5938
|
+
offsetY: 8
|
|
5939
|
+
}
|
|
5940
|
+
];
|
|
5902
5941
|
}
|
|
5903
5942
|
badgeType() {
|
|
5904
5943
|
return this.badge.type;
|
|
5905
5944
|
}
|
|
5906
5945
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: BadgeProgressionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5907
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.5", type: BadgeProgressionComponent, isStandalone: false, selector: "badge-progression", inputs: { showName: "showName", badge: "badge", radius: "radius" }, ngImport: i0, template: "<div class=\"team-badge progression\" [ngClass]=\"{'unearned': !badge.awarded}\" #
|
|
5946
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.5", type: BadgeProgressionComponent, isStandalone: false, selector: "badge-progression", inputs: { showName: "showName", badge: "badge", radius: "radius" }, ngImport: i0, template: "<div class=\"team-badge progression\" [ngClass]=\"{'unearned': !badge.awarded}\" #badgeOrigin=\"cdkOverlayOrigin\" cdkOverlayOrigin (click)=\"isPopoverOpen = true\">\n <div [class]=\"'circle level-' + badge.level\" [ngStyle]=\"{'width': radius + 'px', 'height': radius + 'px', 'border-radius': radius + 'px'}\">\n <span [class]=\"'icon ' + badge.icon\"></span>\n <mat-progress-spinner [diameter]=\"radius\" strokeWidth=\"6\" mode=\"determinate\" [value]=\"badge.nextLevelProgress * 100\"></mat-progress-spinner>\n <div class=\"gloss\">\n <div class=\"gloss1\"></div>\n <div class=\"gloss2\"></div>\n </div>\n </div>\n @if (showName) {\n <div class=\"name\">{{badge.name}}</div>\n }\n</div>\n\n<ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"badgeOrigin\" [cdkConnectedOverlayPush]=\"true\" [cdkConnectedOverlayViewportMargin]=\"8\" [cdkConnectedOverlayOpen]=\"isPopoverOpen\" [cdkConnectedOverlayHasBackdrop]=\"true\" [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\" [cdkConnectedOverlayPositions]=\"overlayPositions\" (backdropClick)=\"isPopoverOpen = false\">\n <div [class]=\"'popover level-' + badge.level\" [id]=\"'popover'\">\n <div class=\"arrow\"></div>\n <div class=\"popover-container\">\n <span (click)=\"isPopoverOpen = false\" class=\"close ph-x\"></span>\n @if (badge.level == 0) {\n <h3>{{badge.name}}</h3>\n }\n @if (badge.level == 1) {\n <h3>{{badge.name}} <span>Bronze Level</span></h3>\n }\n @if (badge.level == 2) {\n <h3>{{badge.name}} <span>Silver Level</span></h3>\n }\n @if (badge.level == 3) {\n <h3>{{badge.name}} <span>Gold Level</span></h3>\n }\n @if (badge.level == 4) {\n <h3>{{badge.name}} <span>Platinum Level</span></h3>\n }\n @if (badge.level == 5) {\n <h3>{{badge.name}} <span>Diamond Level</span></h3>\n }\n <div class=\"description\">{{badge.description}}</div>\n\n <h3>How to reach the next level</h3>\n <div class=\"description\">{{badge.nextLevelRequirement}}</div>\n </div>\n </div>\n </ng-template>\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}.popover{margin-left:15px}.popover.level-1 h3 span{color:#cb8e56}.popover.level-2 h3 span{color:#bdbcbc}.popover.level-3 h3 span{color:#eac338}.popover.level-4 h3 span{color:#afd3de}.popover.level-5 h3 span{color:#ef4f9f}.popover .arrow{width:15px;height:15px;background:#2f2f2f;transform:rotate(45deg);left:50%;position:absolute;top:-8px}\n"], dependencies: [{ kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i12.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i12.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: i3$1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }] }); }
|
|
5908
5947
|
}
|
|
5909
5948
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: BadgeProgressionComponent, decorators: [{
|
|
5910
5949
|
type: Component,
|
|
5911
|
-
args: [{ selector: 'badge-progression', standalone: false, template: "<div class=\"team-badge progression\" [ngClass]=\"{'unearned': !badge.awarded}\" #
|
|
5950
|
+
args: [{ selector: 'badge-progression', standalone: false, template: "<div class=\"team-badge progression\" [ngClass]=\"{'unearned': !badge.awarded}\" #badgeOrigin=\"cdkOverlayOrigin\" cdkOverlayOrigin (click)=\"isPopoverOpen = true\">\n <div [class]=\"'circle level-' + badge.level\" [ngStyle]=\"{'width': radius + 'px', 'height': radius + 'px', 'border-radius': radius + 'px'}\">\n <span [class]=\"'icon ' + badge.icon\"></span>\n <mat-progress-spinner [diameter]=\"radius\" strokeWidth=\"6\" mode=\"determinate\" [value]=\"badge.nextLevelProgress * 100\"></mat-progress-spinner>\n <div class=\"gloss\">\n <div class=\"gloss1\"></div>\n <div class=\"gloss2\"></div>\n </div>\n </div>\n @if (showName) {\n <div class=\"name\">{{badge.name}}</div>\n }\n</div>\n\n<ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"badgeOrigin\" [cdkConnectedOverlayPush]=\"true\" [cdkConnectedOverlayViewportMargin]=\"8\" [cdkConnectedOverlayOpen]=\"isPopoverOpen\" [cdkConnectedOverlayHasBackdrop]=\"true\" [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\" [cdkConnectedOverlayPositions]=\"overlayPositions\" (backdropClick)=\"isPopoverOpen = false\">\n <div [class]=\"'popover level-' + badge.level\" [id]=\"'popover'\">\n <div class=\"arrow\"></div>\n <div class=\"popover-container\">\n <span (click)=\"isPopoverOpen = false\" class=\"close ph-x\"></span>\n @if (badge.level == 0) {\n <h3>{{badge.name}}</h3>\n }\n @if (badge.level == 1) {\n <h3>{{badge.name}} <span>Bronze Level</span></h3>\n }\n @if (badge.level == 2) {\n <h3>{{badge.name}} <span>Silver Level</span></h3>\n }\n @if (badge.level == 3) {\n <h3>{{badge.name}} <span>Gold Level</span></h3>\n }\n @if (badge.level == 4) {\n <h3>{{badge.name}} <span>Platinum Level</span></h3>\n }\n @if (badge.level == 5) {\n <h3>{{badge.name}} <span>Diamond Level</span></h3>\n }\n <div class=\"description\">{{badge.description}}</div>\n\n <h3>How to reach the next level</h3>\n <div class=\"description\">{{badge.nextLevelRequirement}}</div>\n </div>\n </div>\n </ng-template>\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}.popover{margin-left:15px}.popover.level-1 h3 span{color:#cb8e56}.popover.level-2 h3 span{color:#bdbcbc}.popover.level-3 h3 span{color:#eac338}.popover.level-4 h3 span{color:#afd3de}.popover.level-5 h3 span{color:#ef4f9f}.popover .arrow{width:15px;height:15px;background:#2f2f2f;transform:rotate(45deg);left:50%;position:absolute;top:-8px}\n"] }]
|
|
5912
5951
|
}], ctorParameters: () => [], propDecorators: { showName: [{
|
|
5913
5952
|
type: Input
|
|
5914
5953
|
}], badge: [{
|
|
@@ -5919,6 +5958,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImpor
|
|
|
5919
5958
|
|
|
5920
5959
|
class BadgeStreakComponent {
|
|
5921
5960
|
constructor() {
|
|
5961
|
+
this.isPopoverOpen = false;
|
|
5962
|
+
this.overlayPositions = [
|
|
5963
|
+
{
|
|
5964
|
+
originX: 'center',
|
|
5965
|
+
originY: 'bottom',
|
|
5966
|
+
overlayX: 'center',
|
|
5967
|
+
overlayY: 'top',
|
|
5968
|
+
offsetY: 8
|
|
5969
|
+
}
|
|
5970
|
+
];
|
|
5922
5971
|
}
|
|
5923
5972
|
getStreakBadgeType() {
|
|
5924
5973
|
if (this.badge.name.toLowerCase().indexOf("high ") > -1) {
|
|
@@ -5929,11 +5978,11 @@ class BadgeStreakComponent {
|
|
|
5929
5978
|
}
|
|
5930
5979
|
}
|
|
5931
5980
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: BadgeStreakComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5932
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.5", type: BadgeStreakComponent, isStandalone: false, selector: "badge-streak", inputs: { showName: "showName", badge: "badge", radius: "radius" }, ngImport: i0, template: "<div [class]=\"'team-badge streak ' + getStreakBadgeType()\" [ngClass]=\"{'unearned': !badge.awarded }\" #
|
|
5981
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.5", type: BadgeStreakComponent, isStandalone: false, selector: "badge-streak", inputs: { showName: "showName", badge: "badge", radius: "radius" }, ngImport: i0, template: "<div [class]=\"'team-badge streak ' + getStreakBadgeType()\" [ngClass]=\"{'unearned': !badge.awarded }\" #badgeOrigin=\"cdkOverlayOrigin\" cdkOverlayOrigin (click)=\"isPopoverOpen = true\">\n <div class=\"circle\" [ngStyle]=\"{'width': radius + 'px', 'height': radius + 'px', 'border-radius': radius + 'px'}\">\n @if (badge.awarded && badge.level >= 3) {\n <div class=\"crown\"></div>\n }\n <span [class]=\"'icon ' + badge.icon\"></span>\n @if (badge.awarded) {\n <div class=\"level\">{{badge.level}}</div>\n }\n </div>\n @if (showName) {\n <div class=\"name\">{{badge.name}}</div>\n }\n</div>\n\n<ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"badgeOrigin\" [cdkConnectedOverlayPush]=\"true\" [cdkConnectedOverlayViewportMargin]=\"8\" [cdkConnectedOverlayOpen]=\"isPopoverOpen\" [cdkConnectedOverlayHasBackdrop]=\"true\" [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\" [cdkConnectedOverlayPositions]=\"overlayPositions\" (backdropClick)=\"isPopoverOpen = false\">\n <div class=\"popover\" [id]=\"'popover'\">\n <div class=\"arrow\"></div>\n <div class=\"popover-container\">\n <span (click)=\"isPopoverOpen = false\" class=\"close ph-x\"></span>\n @if (badge.level == 0) {\n <h3>{{badge.name}}</h3>\n }\n @if (badge.level > 0) {\n <h3>{{badge.name}} <span>Streak of {{badge.level}}</span></h3>\n }\n <div class=\"description\">{{badge.description}}</div>\n\n <h3>How to reach the next level</h3>\n <div class=\"description\">{{badge.nextLevelRequirement}}</div>\n </div>\n </div>\n</ng-template>\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}.popover{margin-left:15px}.popover h3 span{color:#fff73f}.popover .arrow{width:15px;height:15px;background:#2f2f2f;transform:rotate(45deg);left:50%;position:absolute;top:-8px}\n"], dependencies: [{ kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i12.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i12.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }] }); }
|
|
5933
5982
|
}
|
|
5934
5983
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: BadgeStreakComponent, decorators: [{
|
|
5935
5984
|
type: Component,
|
|
5936
|
-
args: [{ selector: 'badge-streak', standalone: false, template: "<div [class]=\"'team-badge streak ' + getStreakBadgeType()\" [ngClass]=\"{'unearned': !badge.awarded }\" #
|
|
5985
|
+
args: [{ selector: 'badge-streak', standalone: false, template: "<div [class]=\"'team-badge streak ' + getStreakBadgeType()\" [ngClass]=\"{'unearned': !badge.awarded }\" #badgeOrigin=\"cdkOverlayOrigin\" cdkOverlayOrigin (click)=\"isPopoverOpen = true\">\n <div class=\"circle\" [ngStyle]=\"{'width': radius + 'px', 'height': radius + 'px', 'border-radius': radius + 'px'}\">\n @if (badge.awarded && badge.level >= 3) {\n <div class=\"crown\"></div>\n }\n <span [class]=\"'icon ' + badge.icon\"></span>\n @if (badge.awarded) {\n <div class=\"level\">{{badge.level}}</div>\n }\n </div>\n @if (showName) {\n <div class=\"name\">{{badge.name}}</div>\n }\n</div>\n\n<ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"badgeOrigin\" [cdkConnectedOverlayPush]=\"true\" [cdkConnectedOverlayViewportMargin]=\"8\" [cdkConnectedOverlayOpen]=\"isPopoverOpen\" [cdkConnectedOverlayHasBackdrop]=\"true\" [cdkConnectedOverlayBackdropClass]=\"'cdk-overlay-transparent-backdrop'\" [cdkConnectedOverlayPositions]=\"overlayPositions\" (backdropClick)=\"isPopoverOpen = false\">\n <div class=\"popover\" [id]=\"'popover'\">\n <div class=\"arrow\"></div>\n <div class=\"popover-container\">\n <span (click)=\"isPopoverOpen = false\" class=\"close ph-x\"></span>\n @if (badge.level == 0) {\n <h3>{{badge.name}}</h3>\n }\n @if (badge.level > 0) {\n <h3>{{badge.name}} <span>Streak of {{badge.level}}</span></h3>\n }\n <div class=\"description\">{{badge.description}}</div>\n\n <h3>How to reach the next level</h3>\n <div class=\"description\">{{badge.nextLevelRequirement}}</div>\n </div>\n </div>\n</ng-template>\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}.popover{margin-left:15px}.popover h3 span{color:#fff73f}.popover .arrow{width:15px;height:15px;background:#2f2f2f;transform:rotate(45deg);left:50%;position:absolute;top:-8px}\n"] }]
|
|
5937
5986
|
}], ctorParameters: () => [], propDecorators: { showName: [{
|
|
5938
5987
|
type: Input
|
|
5939
5988
|
}], badge: [{
|
|
@@ -7539,13 +7588,13 @@ class ResultsModule {
|
|
|
7539
7588
|
ReactiveFormsModule,
|
|
7540
7589
|
MatOptionModule,
|
|
7541
7590
|
MatInputModule,
|
|
7591
|
+
OverlayModule,
|
|
7542
7592
|
MatSlideToggleModule,
|
|
7543
7593
|
BrandingModule,
|
|
7544
7594
|
MatSelectModule,
|
|
7545
7595
|
MatProgressSpinnerModule,
|
|
7546
7596
|
MatDatepickerModule,
|
|
7547
7597
|
DateRangePipeModule,
|
|
7548
|
-
SatPopoverModule,
|
|
7549
7598
|
ActionsModule,
|
|
7550
7599
|
CommonModule,
|
|
7551
7600
|
DialogSupportModule,
|
|
@@ -7620,13 +7669,13 @@ class ResultsModule {
|
|
|
7620
7669
|
ReactiveFormsModule,
|
|
7621
7670
|
MatOptionModule,
|
|
7622
7671
|
MatInputModule,
|
|
7672
|
+
OverlayModule,
|
|
7623
7673
|
MatSlideToggleModule,
|
|
7624
7674
|
BrandingModule,
|
|
7625
7675
|
MatSelectModule,
|
|
7626
7676
|
MatProgressSpinnerModule,
|
|
7627
7677
|
MatDatepickerModule,
|
|
7628
7678
|
DateRangePipeModule,
|
|
7629
|
-
SatPopoverModule,
|
|
7630
7679
|
ActionsModule,
|
|
7631
7680
|
CommonModule,
|
|
7632
7681
|
DialogSupportModule,
|
|
@@ -7651,13 +7700,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImpor
|
|
|
7651
7700
|
ReactiveFormsModule,
|
|
7652
7701
|
MatOptionModule,
|
|
7653
7702
|
MatInputModule,
|
|
7703
|
+
OverlayModule,
|
|
7654
7704
|
MatSlideToggleModule,
|
|
7655
7705
|
BrandingModule,
|
|
7656
7706
|
MatSelectModule,
|
|
7657
7707
|
MatProgressSpinnerModule,
|
|
7658
7708
|
MatDatepickerModule,
|
|
7659
7709
|
DateRangePipeModule,
|
|
7660
|
-
SatPopoverModule,
|
|
7661
7710
|
ActionsModule,
|
|
7662
7711
|
CommonModule,
|
|
7663
7712
|
DialogSupportModule,
|
|
@@ -7792,7 +7841,6 @@ class ModelVisualizationModule {
|
|
|
7792
7841
|
FormsModule,
|
|
7793
7842
|
RouterModule,
|
|
7794
7843
|
ResultsModule,
|
|
7795
|
-
SatPopoverModule,
|
|
7796
7844
|
FactorInformationDialogModule,
|
|
7797
7845
|
ProgressbarModule,
|
|
7798
7846
|
MatTooltipModule,
|
|
@@ -7801,6 +7849,7 @@ class ModelVisualizationModule {
|
|
|
7801
7849
|
MatFormFieldModule,
|
|
7802
7850
|
ReactiveFormsModule,
|
|
7803
7851
|
DateRangePipeModule,
|
|
7852
|
+
OverlayModule,
|
|
7804
7853
|
MatDialogModule], exports: [ModelCanvasComponent,
|
|
7805
7854
|
ModelFactorMetricComponent,
|
|
7806
7855
|
ModelFactorIndicatorComponent,
|
|
@@ -7813,7 +7862,6 @@ class ModelVisualizationModule {
|
|
|
7813
7862
|
FormsModule,
|
|
7814
7863
|
RouterModule,
|
|
7815
7864
|
ResultsModule,
|
|
7816
|
-
SatPopoverModule,
|
|
7817
7865
|
FactorInformationDialogModule,
|
|
7818
7866
|
ProgressbarModule,
|
|
7819
7867
|
MatTooltipModule,
|
|
@@ -7822,6 +7870,7 @@ class ModelVisualizationModule {
|
|
|
7822
7870
|
MatFormFieldModule,
|
|
7823
7871
|
ReactiveFormsModule,
|
|
7824
7872
|
DateRangePipeModule,
|
|
7873
|
+
OverlayModule,
|
|
7825
7874
|
MatDialogModule] }); }
|
|
7826
7875
|
}
|
|
7827
7876
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImport: i0, type: ModelVisualizationModule, decorators: [{
|
|
@@ -7832,7 +7881,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImpor
|
|
|
7832
7881
|
FormsModule,
|
|
7833
7882
|
RouterModule,
|
|
7834
7883
|
ResultsModule,
|
|
7835
|
-
SatPopoverModule,
|
|
7836
7884
|
FactorInformationDialogModule,
|
|
7837
7885
|
ProgressbarModule,
|
|
7838
7886
|
MatTooltipModule,
|
|
@@ -7841,6 +7889,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.5", ngImpor
|
|
|
7841
7889
|
MatFormFieldModule,
|
|
7842
7890
|
ReactiveFormsModule,
|
|
7843
7891
|
DateRangePipeModule,
|
|
7892
|
+
OverlayModule,
|
|
7844
7893
|
MatDialogModule
|
|
7845
7894
|
],
|
|
7846
7895
|
declarations: [
|