@the-liberators/ngx-scrumteamsurvey-tools 2.3.23 → 2.3.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/the-liberators-ngx-scrumteamsurvey-tools.mjs +707 -673
- package/fesm2022/the-liberators-ngx-scrumteamsurvey-tools.mjs.map +1 -1
- package/package.json +8 -10
- package/esm2022/lib/actions/actions.module.mjs +0 -128
- package/esm2022/lib/actions/components/action-list/action-list.component.mjs +0 -118
- package/esm2022/lib/actions/components/action-manage/action-manage.component.mjs +0 -164
- package/esm2022/lib/actions/components/action-tile/action-tile.component.mjs +0 -79
- package/esm2022/lib/actions/dialogs/dialog-export-actions/dialog-export-actions.component.mjs +0 -75
- package/esm2022/lib/actions/dialogs/dialog-export-actions/dialog-export-actions.directive.mjs +0 -30
- package/esm2022/lib/actions/dialogs/dialog-filters/dialog-filters.component.mjs +0 -113
- package/esm2022/lib/actions/dialogs/dialog-manageaction/dialog-manageaction.component.mjs +0 -78
- package/esm2022/lib/actions/interfaces/IActionState.mjs +0 -2
- package/esm2022/lib/actions/models/actionDto.mjs +0 -43
- package/esm2022/lib/actions/models/actionOptionsDto.mjs +0 -9
- package/esm2022/lib/actions/models/actionPrefillDto.mjs +0 -3
- package/esm2022/lib/actions/models/actionResponseDto.mjs +0 -7
- package/esm2022/lib/actions/models/exportRequestDto.mjs +0 -3
- package/esm2022/lib/actions/pipes/interventionOwnerToString.pipe.mjs +0 -32
- package/esm2022/lib/actions/pipes/interventionStateToString.pipe.mjs +0 -26
- package/esm2022/lib/actions/pipes/interventionTypeToString.pipe.mjs +0 -30
- package/esm2022/lib/actions/services/actionClientConfig.mjs +0 -30
- package/esm2022/lib/actions/services/actionService.mjs +0 -66
- package/esm2022/lib/add-calendar/generators/base-calendar.generator.mjs +0 -46
- package/esm2022/lib/add-calendar/generators/google-calendar.generator.mjs +0 -16
- package/esm2022/lib/add-calendar/generators/ics-calendar.generator.mjs +0 -33
- package/esm2022/lib/add-calendar/generators/outlook-calendar.generator.mjs +0 -17
- package/esm2022/lib/add-calendar/generators/yahoo-calendar.generator.mjs +0 -28
- package/esm2022/lib/add-calendar/index.mjs +0 -4
- package/esm2022/lib/add-calendar/model/calendar-event.model.mjs +0 -2
- package/esm2022/lib/add-calendar/model/calendar-type.enum.mjs +0 -9
- package/esm2022/lib/add-calendar/ng-add-to-calendar.module.mjs +0 -18
- package/esm2022/lib/add-calendar/service/ng-add-to-calendar.service.mjs +0 -33
- package/esm2022/lib/alerts/alerts.module.mjs +0 -24
- package/esm2022/lib/alerts/components/alerts-list/alerts.component.mjs +0 -105
- package/esm2022/lib/alerts/components/dialog-alerts/dialog-alerts.component.mjs +0 -25
- package/esm2022/lib/alerts/components/dialog-alerts/dialog-alerts.directive.mjs +0 -35
- package/esm2022/lib/alerts/interfaces/IAlertState.mjs +0 -2
- package/esm2022/lib/alerts/models/alertDto.model.mjs +0 -3
- package/esm2022/lib/alerts/models/alertFilterDto.model.mjs +0 -3
- package/esm2022/lib/alerts/models/alertResponseDto.model.mjs +0 -7
- package/esm2022/lib/alerts/models/dismissAlertRequestDto.model.mjs +0 -3
- package/esm2022/lib/alerts/services/alertClientConfig.mjs +0 -30
- package/esm2022/lib/alerts/services/alerts.service.mjs +0 -31
- package/esm2022/lib/apiUrlToken.mjs +0 -30
- package/esm2022/lib/branding/brandBackground.directive.mjs +0 -46
- package/esm2022/lib/branding/brandConditionalBackgroundColor.directive.mjs +0 -58
- package/esm2022/lib/branding/brandConditionalColor.directive.mjs +0 -63
- package/esm2022/lib/branding/brandHoverColor.directive.mjs +0 -84
- package/esm2022/lib/branding/branding.module.mjs +0 -68
- package/esm2022/lib/branding/brandingProvider.service.mjs +0 -33
- package/esm2022/lib/branding/components/site-default-footer/site-default-footer.component.mjs +0 -37
- package/esm2022/lib/branding/components/site-default-header/site-default-header.component.mjs +0 -74
- package/esm2022/lib/branding/components/site-micro-footer/site-micro-footer.component.mjs +0 -34
- package/esm2022/lib/community/community.module.mjs +0 -31
- package/esm2022/lib/community/components/gethelp-form/gethelp-form.component.mjs +0 -79
- package/esm2022/lib/community/components/meetups/meetups.component.mjs +0 -69
- package/esm2022/lib/community/components/recentcontent/recentcontent.component.mjs +0 -29
- package/esm2022/lib/community/interfaces/ICommunityState.mjs +0 -2
- package/esm2022/lib/community/models/meetupDto.mjs +0 -6
- package/esm2022/lib/community/models/resourceDto.mjs +0 -6
- package/esm2022/lib/community/services/communityClientConfig.mjs +0 -30
- package/esm2022/lib/componentBase.mjs +0 -33
- package/esm2022/lib/componentWithViewStateBase.mjs +0 -38
- package/esm2022/lib/components/checkbox/checkbox.component.mjs +0 -52
- package/esm2022/lib/components/checkbox/checkbox.module.mjs +0 -24
- package/esm2022/lib/components/expand/expand.component.mjs +0 -41
- package/esm2022/lib/components/expand/expand.module.mjs +0 -24
- package/esm2022/lib/components/loading/loading.component.mjs +0 -33
- package/esm2022/lib/components/loading/loading.module.mjs +0 -24
- package/esm2022/lib/components/mat-tags/mat-tags.component.mjs +0 -82
- package/esm2022/lib/components/mat-tags/mat-tags.module.mjs +0 -47
- package/esm2022/lib/components/metadata-input/metadata-input.component.mjs +0 -99
- package/esm2022/lib/components/metadata-input/metadata-input.module.mjs +0 -39
- package/esm2022/lib/components/multi-email-input/multi-email-input.component.mjs +0 -112
- package/esm2022/lib/components/multi-email-input/multi-email-input.module.mjs +0 -39
- package/esm2022/lib/components/paginator/paginator.component.mjs +0 -50
- package/esm2022/lib/components/paginator/paginator.module.mjs +0 -40
- package/esm2022/lib/components/quantity-selector/quantity-selector.component.mjs +0 -90
- package/esm2022/lib/components/quantity-selector/quantity-selector.module.mjs +0 -43
- package/esm2022/lib/components/select-list/select-list.component.mjs +0 -73
- package/esm2022/lib/components/select-list/select-list.module.mjs +0 -46
- package/esm2022/lib/components/snapshot-inviteurls/snapshot-inviteurls.component.mjs +0 -30
- package/esm2022/lib/components/snapshot-inviteurls/snapshot-inviteurls.module.mjs +0 -36
- package/esm2022/lib/components/tabnavigator/tabnavigator.component.mjs +0 -36
- package/esm2022/lib/components/tabnavigator/tabnavigator.module.mjs +0 -32
- package/esm2022/lib/components/topicselector/customCheckValidator.mjs +0 -15
- package/esm2022/lib/components/topicselector/minTopicsSelectedValidator.mjs +0 -15
- package/esm2022/lib/components/topicselector/topic-selector.component.mjs +0 -220
- package/esm2022/lib/components/topicselector/topic-selector.module.mjs +0 -55
- package/esm2022/lib/dialogs/dialog-account/account.service.mjs +0 -29
- package/esm2022/lib/dialogs/dialog-account/dialog-account.component.mjs +0 -86
- package/esm2022/lib/dialogs/dialog-account/dialog-account.module.mjs +0 -21
- package/esm2022/lib/dialogs/dialog-account/resetPasswordRequestDto.model.mjs +0 -3
- package/esm2022/lib/dialogs/dialog-factorinformation/dialog-factorinformation.component.mjs +0 -48
- package/esm2022/lib/dialogs/dialog-factorinformation/dialog-factorinformation.module.mjs +0 -21
- package/esm2022/lib/dialogs/dialog-resourcedownload/dialog-resourcedownload.component.mjs +0 -76
- package/esm2022/lib/dialogs/dialog-resourcedownload/dialog-resourcedownload.module.mjs +0 -23
- package/esm2022/lib/dialogs/dialog-resourcedownload/resourceDownload.service.mjs +0 -26
- package/esm2022/lib/dialogs/dialog-subscribe/dialog-subscribe.component.mjs +0 -25
- package/esm2022/lib/dialogs/dialog-subscribe/dialog-subscribe.directive.mjs +0 -30
- package/esm2022/lib/dialogs/dialog-subscribe/dialog-subscribe.module.mjs +0 -19
- package/esm2022/lib/dialogs/dialog-support/contactDto.mjs +0 -2
- package/esm2022/lib/dialogs/dialog-support/contactService.service.mjs +0 -25
- package/esm2022/lib/dialogs/dialog-support/contactTypeDto.mjs +0 -2
- package/esm2022/lib/dialogs/dialog-support/dialog-support.component.mjs +0 -90
- package/esm2022/lib/dialogs/dialog-support/dialog-support.directive.mjs +0 -131
- package/esm2022/lib/dialogs/dialog-support/dialog-support.module.mjs +0 -27
- package/esm2022/lib/directives/backbutton/backbutton.directive.mjs +0 -34
- package/esm2022/lib/directives/backbutton/backbutton.module.mjs +0 -17
- package/esm2022/lib/directives/guards/guards.module.mjs +0 -30
- package/esm2022/lib/directives/guards/validChangeTokenGuard.mjs +0 -27
- package/esm2022/lib/directives/guards/validKeyGuard.mjs +0 -26
- package/esm2022/lib/directives/guards/validSnapshotKeyGuard.mjs +0 -27
- package/esm2022/lib/directives/guards/validTeamKeyGuard.mjs +0 -27
- package/esm2022/lib/errorhandling/error.model.mjs +0 -16
- package/esm2022/lib/errorhandling/errorHandler.mjs +0 -96
- package/esm2022/lib/errorhandling/errorService.module.mjs +0 -24
- package/esm2022/lib/errorhandling/errorServiceConfig.mjs +0 -34
- package/esm2022/lib/guides/components/imageslider/imageslider.component.mjs +0 -52
- package/esm2022/lib/guides/components/resumeguidehover/resumeguidehover.component.mjs +0 -40
- package/esm2022/lib/guides/dialogs/dialog-guide/dialog-guide.component.mjs +0 -144
- package/esm2022/lib/guides/dialogs/dialog-guides/dialog-guides.component.mjs +0 -90
- package/esm2022/lib/guides/directives/startguide/startguide.directive.mjs +0 -27
- package/esm2022/lib/guides/guides.module.mjs +0 -92
- package/esm2022/lib/guides/interfaces/IGuideState.mjs +0 -2
- package/esm2022/lib/guides/models/guideCollectionDto.mjs +0 -19
- package/esm2022/lib/guides/services/guidePopup.service.mjs +0 -80
- package/esm2022/lib/guides/services/guideStateInBackEnd.service.mjs +0 -54
- package/esm2022/lib/guides/services/guideStateInBrowser.service.mjs +0 -56
- package/esm2022/lib/guides/services/guidesClientConfig.mjs +0 -30
- package/esm2022/lib/guides/services/interfaces.mjs +0 -2
- package/esm2022/lib/models/brandingSettingsDto.mjs +0 -5
- package/esm2022/lib/models/channelDto.mjs +0 -18
- package/esm2022/lib/models/clientInfoDto.mjs +0 -7
- package/esm2022/lib/models/contextItemDto.mjs +0 -7
- package/esm2022/lib/models/featuresDto.mjs +0 -3
- package/esm2022/lib/models/keyValueDto.mjs +0 -7
- package/esm2022/lib/models/modelStructureDto.mjs +0 -46
- package/esm2022/lib/models/paginatedResponse.mjs +0 -6
- package/esm2022/lib/models/pagingOptions.mjs +0 -3
- package/esm2022/lib/models/selectListItem.mjs +0 -8
- package/esm2022/lib/models/userInfoDto.mjs +0 -16
- package/esm2022/lib/models/userSettingsDto.mjs +0 -65
- package/esm2022/lib/pipes/callback/callback.module.mjs +0 -17
- package/esm2022/lib/pipes/callback/callback.pipe.mjs +0 -20
- package/esm2022/lib/pipes/dateRange/ngx-dateRange.module.mjs +0 -17
- package/esm2022/lib/pipes/dateRange/ngx-dateRange.pipe.mjs +0 -36
- package/esm2022/lib/pipes/dateRange/ngx-dateRangeDto.model.mjs +0 -3
- package/esm2022/lib/pipes/segmentName/segmentName.module.mjs +0 -17
- package/esm2022/lib/pipes/segmentName/segmentName.pipe.mjs +0 -31
- package/esm2022/lib/pipes/slugify/ngx-slugify.module.mjs +0 -17
- package/esm2022/lib/pipes/slugify/ngx-slugify.pipe.mjs +0 -24
- package/esm2022/lib/results/components/age-indicator/age-indicator.component.mjs +0 -37
- package/esm2022/lib/results/components/arrow/arrow.component.mjs +0 -224
- package/esm2022/lib/results/components/badge/badge.component.mjs +0 -29
- package/esm2022/lib/results/components/badge-progression/badge-progression.component.mjs +0 -25
- package/esm2022/lib/results/components/badge-streak/badge-streak.component.mjs +0 -29
- package/esm2022/lib/results/components/badges/badges.component.mjs +0 -40
- package/esm2022/lib/results/components/benchmark-indicator/benchmark-indicator.component.mjs +0 -21
- package/esm2022/lib/results/components/coachingcenter-teaser/coachingcenter-teaser.component.mjs +0 -28
- package/esm2022/lib/results/components/delta-arrow/delta-arrow.component.mjs +0 -37
- package/esm2022/lib/results/components/doityourself/doityourself.component.mjs +0 -17
- package/esm2022/lib/results/components/doityourselfworkshops/doityourselfworkshops.component.mjs +0 -41
- package/esm2022/lib/results/components/factor-axis/factor-axis.component.mjs +0 -62
- package/esm2022/lib/results/components/factors/factors.component.mjs +0 -46
- package/esm2022/lib/results/components/filter-tags/filter-tags.component.mjs +0 -31
- package/esm2022/lib/results/components/focusareas/focusareas.component.mjs +0 -43
- package/esm2022/lib/results/components/footer/footer.component.mjs +0 -30
- package/esm2022/lib/results/components/impact-indicator/impact-indicator.component.mjs +0 -20
- package/esm2022/lib/results/components/liberatorkits/liberatorkits.component.mjs +0 -29
- package/esm2022/lib/results/components/limitationsapply/limitationsapply.component.mjs +0 -20
- package/esm2022/lib/results/components/model/model.component.mjs +0 -79
- package/esm2022/lib/results/components/model-factor/model-factor.component.mjs +0 -95
- package/esm2022/lib/results/components/model-factor-breakdown/model-factor-breakdown.component.mjs +0 -44
- package/esm2022/lib/results/components/model-switcher/model-switcher.component.mjs +0 -33
- package/esm2022/lib/results/components/nav-button/nav-button.component.mjs +0 -85
- package/esm2022/lib/results/components/participants/participants.component.mjs +0 -78
- package/esm2022/lib/results/components/quicktips/quicktips.component.mjs +0 -77
- package/esm2022/lib/results/components/recommendation/recommendation.component.mjs +0 -53
- package/esm2022/lib/results/components/recommendations/recommendations.component.mjs +0 -57
- package/esm2022/lib/results/components/research/research.component.mjs +0 -16
- package/esm2022/lib/results/components/roadmap/roadmap.component.mjs +0 -29
- package/esm2022/lib/results/components/teamdashboard-teaser/teamdashboard-teaser.component.mjs +0 -30
- package/esm2022/lib/results/components/teameffectiveness/teameffectiveness.component.mjs +0 -40
- package/esm2022/lib/results/components/termsupdated/termsupdated.component.mjs +0 -37
- package/esm2022/lib/results/components/tip-badge/tip-badge.component.mjs +0 -53
- package/esm2022/lib/results/components/trends/trends.component.mjs +0 -138
- package/esm2022/lib/results/components/update-in-progress/update-in-progress.component.mjs +0 -36
- package/esm2022/lib/results/components/userprofile/userprofile.component.mjs +0 -166
- package/esm2022/lib/results/components/video/video.component.mjs +0 -23
- package/esm2022/lib/results/components/widget-factorscore/widget-factorscore.component.mjs +0 -41
- package/esm2022/lib/results/components/widget-participationrate/widget-participationrate.component.mjs +0 -32
- package/esm2022/lib/results/dialogs/dialog-export-factorscores/dialog-export-factorscores.component.mjs +0 -94
- package/esm2022/lib/results/dialogs/dialog-export-factorscores/dialog-export-factorscores.directive.mjs +0 -30
- package/esm2022/lib/results/dialogs/dialog-export-teamlist/dialog-export-teamlist.component.mjs +0 -93
- package/esm2022/lib/results/dialogs/dialog-export-teamlist/dialog-export-teamlist.directive.mjs +0 -30
- package/esm2022/lib/results/dialogs/dialog-modelfilter/dialog-modelfilter.component.mjs +0 -84
- package/esm2022/lib/results/dialogs/dialog-notes/dialog-notes.component.mjs +0 -46
- package/esm2022/lib/results/dialogs/dialog-settings/dialog-settings.component.mjs +0 -167
- package/esm2022/lib/results/interfaces/IResultsState.mjs +0 -2
- package/esm2022/lib/results/models/badgeDto.mjs +0 -10
- package/esm2022/lib/results/models/dataSetDto.mjs +0 -7
- package/esm2022/lib/results/models/dimensionResultDto.mjs +0 -3
- package/esm2022/lib/results/models/exportRequestDto.mjs +0 -11
- package/esm2022/lib/results/models/factorScoreDto.mjs +0 -96
- package/esm2022/lib/results/models/localUserDto.model.mjs +0 -4
- package/esm2022/lib/results/models/participantDto.model.mjs +0 -4
- package/esm2022/lib/results/models/snapshotDto.model.mjs +0 -4
- package/esm2022/lib/results/models/snapshotMetaDataDto.mjs +0 -5
- package/esm2022/lib/results/models/teamDto.model.mjs +0 -4
- package/esm2022/lib/results/models/teamListResponseDto.mjs +0 -6
- package/esm2022/lib/results/models/teamMetaDataDto.mjs +0 -11
- package/esm2022/lib/results/models/trendDataRequestDto.model.mjs +0 -3
- package/esm2022/lib/results/models/userListResponseDto.mjs +0 -6
- package/esm2022/lib/results/models/widgetDataDto.mjs +0 -3
- package/esm2022/lib/results/results.module.mjs +0 -385
- package/esm2022/lib/results/services/account.service.mjs +0 -24
- package/esm2022/lib/results/services/dimissPopupService.mjs +0 -18
- package/esm2022/lib/results/services/exportService.mjs +0 -30
- package/esm2022/lib/results/services/factorService.mjs +0 -24
- package/esm2022/lib/results/services/resultsClientConfig.mjs +0 -30
- package/esm2022/lib/results/services/terms.service.mjs +0 -24
- package/esm2022/lib/results/services/trend.service.mjs +0 -24
- package/esm2022/lib/results/services/userProfile.service.mjs +0 -41
- package/esm2022/lib/validators/domainValidator.mjs +0 -14
- package/esm2022/lib/validators/matchInputValidator.mjs +0 -25
- package/esm2022/lib/validators/maxSelectedValidator.mjs +0 -9
- package/esm2022/lib/viewModel/interfaces.mjs +0 -6
- package/esm2022/lib/viewModel/reloadStrategies/noReloadStrategy.mjs +0 -22
- package/esm2022/lib/viewModel/reloadStrategies/reloadOnPushStrategy.mjs +0 -52
- package/esm2022/lib/viewModel/services/sessionIdInterceptor.service.mjs +0 -31
- package/esm2022/lib/viewModel/services/sessionIdProvider.service.mjs +0 -22
- package/esm2022/lib/viewModel/userSettings.service.mjs +0 -32
- package/esm2022/lib/viewModel/viewModelState.module.mjs +0 -31
- package/esm2022/lib/viewModel/viewModelState.service.mjs +0 -79
- package/esm2022/lib/viewModel/viewModelStateConfig.mjs +0 -30
- package/esm2022/public-api.mjs +0 -224
- package/esm2022/the-liberators-ngx-scrumteamsurvey-tools.mjs +0 -5
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Component, Inject } from '@angular/core';
|
|
2
|
-
import { ComponentWithViewStateBase } from '../../../componentWithViewStateBase';
|
|
3
|
-
import { VIEWSTATE_PROVIDER } from '../../../viewModel/viewModelState.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "../../services/terms.service";
|
|
6
|
-
import * as i2 from "@angular/material/snack-bar";
|
|
7
|
-
import * as i3 from "@angular/common";
|
|
8
|
-
import * as i4 from "../../../viewModel/viewModelState.service";
|
|
9
|
-
export class TermsUpdatedComponent extends ComponentWithViewStateBase {
|
|
10
|
-
constructor(termsService, state, snackBar) {
|
|
11
|
-
super(state, snackBar);
|
|
12
|
-
this.termsService = termsService;
|
|
13
|
-
this.state = state;
|
|
14
|
-
this.snackBar = snackBar;
|
|
15
|
-
}
|
|
16
|
-
async accept() {
|
|
17
|
-
this.sending = true;
|
|
18
|
-
await this.termsService.accept().subscribe(success => {
|
|
19
|
-
this.showSuccess("Terms of service accepted");
|
|
20
|
-
this.sending = false;
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
onDataUpdate(data) {
|
|
24
|
-
this.legal = data.userInfo.client.legal;
|
|
25
|
-
}
|
|
26
|
-
;
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TermsUpdatedComponent, deps: [{ token: i1.TermsService }, { token: VIEWSTATE_PROVIDER }, { token: i2.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TermsUpdatedComponent, selector: "termsupdated", usesInheritance: true, ngImport: i0, template: "<div class=\"termsupdated\">\n <h3>Updated terms of service</h3>\n <p> Before you can continue, we'd like you to review and accept our terms of service. They outline how we protect personal data in compliance with the European General Data Protection Directive (GDPR). They also outline our mutual responsibilities:</p>\n <ol>\n <li *ngFor=\"let document of legal.documents\"><a [href]=\"document.url\" target=\"_blank\">{{document.name}} <span class=\"icon ph-arrow-square-out\"></span></a></li>\n </ol>\n <div class=\"toolbar\">\n <button class=\"button primary acceptterms\" (click)=\"accept()\" [ngClass]=\"{'loading': sending}\"><span class=\"icon ph-check-circle\"></span> Accept and continue</button>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.termsupdated{margin-top:30px;margin-left:30px;margin-right:30px;padding:20px;border:3px solid #f0f0f0}.termsupdated h3{margin-bottom:5px}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
|
|
29
|
-
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TermsUpdatedComponent, decorators: [{
|
|
31
|
-
type: Component,
|
|
32
|
-
args: [{ selector: 'termsupdated', template: "<div class=\"termsupdated\">\n <h3>Updated terms of service</h3>\n <p> Before you can continue, we'd like you to review and accept our terms of service. They outline how we protect personal data in compliance with the European General Data Protection Directive (GDPR). They also outline our mutual responsibilities:</p>\n <ol>\n <li *ngFor=\"let document of legal.documents\"><a [href]=\"document.url\" target=\"_blank\">{{document.name}} <span class=\"icon ph-arrow-square-out\"></span></a></li>\n </ol>\n <div class=\"toolbar\">\n <button class=\"button primary acceptterms\" (click)=\"accept()\" [ngClass]=\"{'loading': sending}\"><span class=\"icon ph-check-circle\"></span> Accept and continue</button>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.termsupdated{margin-top:30px;margin-left:30px;margin-right:30px;padding:20px;border:3px solid #f0f0f0}.termsupdated h3{margin-bottom:5px}\n"] }]
|
|
33
|
-
}], ctorParameters: () => [{ type: i1.TermsService }, { type: i4.ViewModelStateBase, decorators: [{
|
|
34
|
-
type: Inject,
|
|
35
|
-
args: [VIEWSTATE_PROVIDER]
|
|
36
|
-
}] }, { type: i2.MatSnackBar }] });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybXN1cGRhdGVkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY3J1bXRlYW1zdXJ2ZXktdG9vbHMvc3JjL2xpYi9yZXN1bHRzL2NvbXBvbmVudHMvdGVybXN1cGRhdGVkL3Rlcm1zdXBkYXRlZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NydW10ZWFtc3VydmV5LXRvb2xzL3NyYy9saWIvcmVzdWx0cy9jb21wb25lbnRzL3Rlcm1zdXBkYXRlZC90ZXJtc3VwZGF0ZWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFakYsT0FBTyxFQUFzQixrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7QUFTbkcsTUFBTSxPQUFPLHFCQUFzQixTQUFRLDBCQUF5QztJQUtqRixZQUFvQixZQUEwQixFQUF3QyxLQUF3QyxFQUFZLFFBQXFCO1FBQ3pKLEtBQUssQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUE7UUFEUixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUF3QyxVQUFLLEdBQUwsS0FBSyxDQUFtQztRQUFZLGFBQVEsR0FBUixRQUFRLENBQWE7SUFFL0osQ0FBQztJQUVNLEtBQUssQ0FBQyxNQUFNO1FBQ2hCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDbEQsSUFBSSxDQUFDLFdBQVcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1lBQzlDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFBO0lBQ0wsQ0FBQztJQUVTLFlBQVksQ0FBQyxJQUFtQjtRQUN2QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUMzQyxDQUFDO0lBQUEsQ0FBQzsrR0FuQlEscUJBQXFCLDhDQUt5QixrQkFBa0I7bUdBTGhFLHFCQUFxQiwyRUNibEMsOHVCQVVBOzs0RkRHYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0csY0FBYzs7MEJBU3lCLE1BQU07MkJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IENvbXBvbmVudFdpdGhWaWV3U3RhdGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50V2l0aFZpZXdTdGF0ZUJhc2UnO1xuaW1wb3J0IHsgTGVnYWxEdG8gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvY2xpZW50SW5mb0R0byc7XG5pbXBvcnQgeyBWaWV3TW9kZWxTdGF0ZUJhc2UsIFZJRVdTVEFURV9QUk9WSURFUiB9IGZyb20gJy4uLy4uLy4uL3ZpZXdNb2RlbC92aWV3TW9kZWxTdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IElSZXN1bHRzU3RhdGUgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lSZXN1bHRzU3RhdGUnO1xuaW1wb3J0IHsgVGVybXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdGVybXMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgc2VsZWN0b3I6ICd0ZXJtc3VwZGF0ZWQnLFxuICAgdGVtcGxhdGVVcmw6ICcuL3Rlcm1zdXBkYXRlZC5jb21wb25lbnQuaHRtbCcsXG4gICBzdHlsZVVybHM6IFsnLi90ZXJtc3VwZGF0ZWQuY29tcG9uZW50Lmxlc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUZXJtc1VwZGF0ZWRDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnRXaXRoVmlld1N0YXRlQmFzZTxJUmVzdWx0c1N0YXRlPiB7XG4gICBwdWJsaWMgbGVnYWw6IExlZ2FsRHRvO1xuICAgcHVibGljIHRlcm1zVXBkYXRlZDogYm9vbGVhbjtcbiAgIHB1YmxpYyBzZW5kaW5nOiBib29sZWFuO1xuXG4gICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRlcm1zU2VydmljZTogVGVybXNTZXJ2aWNlLCBASW5qZWN0KFZJRVdTVEFURV9QUk9WSURFUikgcHJvdGVjdGVkIHN0YXRlOiBWaWV3TW9kZWxTdGF0ZUJhc2U8SVJlc3VsdHNTdGF0ZT4sIHByb3RlY3RlZCBzbmFja0JhcjogTWF0U25hY2tCYXIpIHtcbiAgICAgICAgIHN1cGVyKHN0YXRlLCBzbmFja0JhcilcbiAgIH1cblxuICAgcHVibGljIGFzeW5jIGFjY2VwdCgpIHtcbiAgICAgIHRoaXMuc2VuZGluZyA9IHRydWU7XG4gICAgICBhd2FpdCB0aGlzLnRlcm1zU2VydmljZS5hY2NlcHQoKS5zdWJzY3JpYmUoc3VjY2VzcyA9PiB7XG4gICAgICAgICB0aGlzLnNob3dTdWNjZXNzKFwiVGVybXMgb2Ygc2VydmljZSBhY2NlcHRlZFwiKTtcbiAgICAgICAgIHRoaXMuc2VuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcbiAgIH1cblxuICAgcHJvdGVjdGVkIG9uRGF0YVVwZGF0ZShkYXRhOiBJUmVzdWx0c1N0YXRlKTogdm9pZCB7XG4gICAgICB0aGlzLmxlZ2FsID0gZGF0YS51c2VySW5mby5jbGllbnQubGVnYWw7XG4gICB9O1xufVxuIiwiPGRpdiBjbGFzcz1cInRlcm1zdXBkYXRlZFwiPlxuICAgPGgzPlVwZGF0ZWQgdGVybXMgb2Ygc2VydmljZTwvaDM+XG4gICA8cD4gQmVmb3JlIHlvdSBjYW4gY29udGludWUsIHdlJ2QgbGlrZSB5b3UgdG8gcmV2aWV3IGFuZCBhY2NlcHQgb3VyIHRlcm1zIG9mIHNlcnZpY2UuIFRoZXkgb3V0bGluZSBob3cgd2UgcHJvdGVjdCBwZXJzb25hbCBkYXRhIGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgRXVyb3BlYW4gR2VuZXJhbCBEYXRhIFByb3RlY3Rpb24gRGlyZWN0aXZlIChHRFBSKS4gVGhleSBhbHNvIG91dGxpbmUgb3VyIG11dHVhbCByZXNwb25zaWJpbGl0aWVzOjwvcD5cbiAgIDxvbD5cbiAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZG9jdW1lbnQgb2YgbGVnYWwuZG9jdW1lbnRzXCI+PGEgW2hyZWZdPVwiZG9jdW1lbnQudXJsXCIgdGFyZ2V0PVwiX2JsYW5rXCI+e3tkb2N1bWVudC5uYW1lfX0gPHNwYW4gY2xhc3M9XCJpY29uIHBoLWFycm93LXNxdWFyZS1vdXRcIj48L3NwYW4+PC9hPjwvbGk+XG4gICA8L29sPlxuICAgPGRpdiBjbGFzcz1cInRvb2xiYXJcIj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gcHJpbWFyeSBhY2NlcHR0ZXJtc1wiIChjbGljayk9XCJhY2NlcHQoKVwiIFtuZ0NsYXNzXT1cInsnbG9hZGluZyc6IHNlbmRpbmd9XCI+PHNwYW4gY2xhc3M9XCJpY29uIHBoLWNoZWNrLWNpcmNsZVwiPjwvc3Bhbj4gQWNjZXB0IGFuZCBjb250aW51ZTwvYnV0dG9uPlxuICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { Component, Inject, Input } from '@angular/core';
|
|
2
|
-
import { ComponentWithViewStateBase } from '../../../componentWithViewStateBase';
|
|
3
|
-
import { VIEWSTATE_PROVIDER } from '../../../viewModel/viewModelState.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/material/snack-bar";
|
|
6
|
-
import * as i2 from "@angular/common";
|
|
7
|
-
import * as i3 from "@angular/material/tooltip";
|
|
8
|
-
import * as i4 from "@angular/router";
|
|
9
|
-
import * as i5 from "../../../dialogs/dialog-subscribe/dialog-subscribe.directive";
|
|
10
|
-
import * as i6 from "../../../viewModel/viewModelState.service";
|
|
11
|
-
export class TipBadgeComponent extends ComponentWithViewStateBase {
|
|
12
|
-
constructor(state, snackBar) {
|
|
13
|
-
super(state, snackBar);
|
|
14
|
-
this.state = state;
|
|
15
|
-
this.snackBar = snackBar;
|
|
16
|
-
}
|
|
17
|
-
onDataUpdate(data) {
|
|
18
|
-
var currentFactor = data.factorScores.factorScores.find(p => p.key == this.dimension);
|
|
19
|
-
this.subscribed = data.isSubscriber;
|
|
20
|
-
this.baseUrl = data.baseUrl;
|
|
21
|
-
if (currentFactor != null) {
|
|
22
|
-
this.impact = currentFactor.impact;
|
|
23
|
-
this.class = currentFactor.qualification.toLowerCase();
|
|
24
|
-
switch (currentFactor.qualification.toLowerCase()) {
|
|
25
|
-
case "neutral":
|
|
26
|
-
this.label = "average";
|
|
27
|
-
break;
|
|
28
|
-
case "positive":
|
|
29
|
-
this.label = "good";
|
|
30
|
-
break;
|
|
31
|
-
case "negative":
|
|
32
|
-
this.label = "urgent";
|
|
33
|
-
break;
|
|
34
|
-
default:
|
|
35
|
-
this.label = "average";
|
|
36
|
-
break;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
;
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TipBadgeComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TipBadgeComponent, selector: "tip-badge", inputs: { dimension: "dimension" }, usesInheritance: true, ngImport: i0, template: "<div [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"dimension\" class=\"tipbadge\" *ngIf=\"label && impact > 0\" [matTooltip]=\"'The impact of this recommendation is ' + impact + ' of 100'\">\n <div [class]=\"'badge ' + class\">{{ label }}</div>\n</div>\n\n<div class=\"tipbadge\" *ngIf=\"label && impact == 0 && subscribed\">\n <div [class]=\"'badge noimpact ' + class\" subscribeDialog>{{ label }}</div>\n</div>\n\n<div class=\"tipbadge\" *ngIf=\"label && impact == 0 && !subscribed\">\n <div [class]=\"'badge noimpact ' + class\">{{ label }}</div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.tipbadge{display:inline;cursor:pointer}.tipbadge .badge{display:inline}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i5.OpenSubscribeDialogDirective, selector: "[subscribeDialog]" }] }); }
|
|
43
|
-
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TipBadgeComponent, decorators: [{
|
|
45
|
-
type: Component,
|
|
46
|
-
args: [{ selector: 'tip-badge', template: "<div [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"dimension\" class=\"tipbadge\" *ngIf=\"label && impact > 0\" [matTooltip]=\"'The impact of this recommendation is ' + impact + ' of 100'\">\n <div [class]=\"'badge ' + class\">{{ label }}</div>\n</div>\n\n<div class=\"tipbadge\" *ngIf=\"label && impact == 0 && subscribed\">\n <div [class]=\"'badge noimpact ' + class\" subscribeDialog>{{ label }}</div>\n</div>\n\n<div class=\"tipbadge\" *ngIf=\"label && impact == 0 && !subscribed\">\n <div [class]=\"'badge noimpact ' + class\">{{ label }}</div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.tipbadge{display:inline;cursor:pointer}.tipbadge .badge{display:inline}\n"] }]
|
|
47
|
-
}], ctorParameters: () => [{ type: i6.ViewModelStateBase, decorators: [{
|
|
48
|
-
type: Inject,
|
|
49
|
-
args: [VIEWSTATE_PROVIDER]
|
|
50
|
-
}] }, { type: i1.MatSnackBar }], propDecorators: { dimension: [{
|
|
51
|
-
type: Input
|
|
52
|
-
}] } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwLWJhZGdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY3J1bXRlYW1zdXJ2ZXktdG9vbHMvc3JjL2xpYi9yZXN1bHRzL2NvbXBvbmVudHMvdGlwLWJhZGdlL3RpcC1iYWRnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NydW10ZWFtc3VydmV5LXRvb2xzL3NyYy9saWIvcmVzdWx0cy9jb21wb25lbnRzL3RpcC1iYWRnZS90aXAtYmFkZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pGLE9BQU8sRUFBc0Isa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7Ozs7Ozs7QUFRbkcsTUFBTSxPQUFPLGlCQUFrQixTQUFRLDBCQUF5QztJQVU3RSxZQUFrRCxLQUFrRCxFQUFZLFFBQXFCO1FBQ2xJLEtBQUssQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFEd0IsVUFBSyxHQUFMLEtBQUssQ0FBNkM7UUFBWSxhQUFRLEdBQVIsUUFBUSxDQUFhO0lBRXJJLENBQUM7SUFFUyxZQUFZLENBQUMsSUFBbUI7UUFDdkMsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEYsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUVsQyxJQUFJLGFBQWEsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUM7WUFDbkMsSUFBSSxDQUFDLEtBQUssR0FBRyxhQUFhLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3ZELFFBQVEsYUFBYSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO2dCQUNqRCxLQUFLLFNBQVM7b0JBQ1gsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7b0JBQ3ZCLE1BQU07Z0JBQ1QsS0FBSyxVQUFVO29CQUNaLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO29CQUNwQixNQUFNO2dCQUNULEtBQUssVUFBVTtvQkFDWixJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztvQkFDdEIsTUFBTTtnQkFDVDtvQkFDRyxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztvQkFDdkIsTUFBTTtZQUNaLENBQUM7UUFDSixDQUFDO0lBQ0osQ0FBQztJQUFBLENBQUM7K0dBckNRLGlCQUFpQixrQkFVUCxrQkFBa0I7bUdBVjVCLGlCQUFpQiw0R0NYOUIseWpCQVdBOzs0RkRBYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0csV0FBVzs7MEJBY1IsTUFBTTsyQkFBQyxrQkFBa0I7bUVBVDdCLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IENvbXBvbmVudFdpdGhWaWV3U3RhdGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50V2l0aFZpZXdTdGF0ZUJhc2UnO1xuaW1wb3J0IHsgVmlld01vZGVsU3RhdGVCYXNlLCBWSUVXU1RBVEVfUFJPVklERVIgfSBmcm9tICcuLi8uLi8uLi92aWV3TW9kZWwvdmlld01vZGVsU3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBJUmVzdWx0c1N0YXRlLCBJVGVhbVJlcG9ydFJlc3VsdHNTdGF0ZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVJlc3VsdHNTdGF0ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgc2VsZWN0b3I6ICd0aXAtYmFkZ2UnLFxuICAgdGVtcGxhdGVVcmw6ICcuL3RpcC1iYWRnZS5jb21wb25lbnQuaHRtbCcsXG4gICBzdHlsZVVybHM6IFsnLi90aXAtYmFkZ2UuY29tcG9uZW50Lmxlc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUaXBCYWRnZUNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudFdpdGhWaWV3U3RhdGVCYXNlPElSZXN1bHRzU3RhdGU+IHtcbiAgIEBJbnB1dCgpIGRpbWVuc2lvbjogc3RyaW5nO1xuICAgcHVibGljIGxhYmVsOiBzdHJpbmc7XG4gICBwdWJsaWMga2V5OiBzdHJpbmc7XG4gICBwdWJsaWMgZmVlZGJhY2tLZXk6IHN0cmluZztcbiAgIHB1YmxpYyBpbXBhY3Q6IG51bWJlcjtcbiAgIHB1YmxpYyBjbGFzczogc3RyaW5nO1xuICAgcHVibGljIHN1YnNjcmliZWQ6IGJvb2xlYW47XG4gICBwdWJsaWMgYmFzZVVybDogc3RyaW5nO1xuXG4gICBjb25zdHJ1Y3RvcihASW5qZWN0KFZJRVdTVEFURV9QUk9WSURFUikgcHJvdGVjdGVkIHN0YXRlOiBWaWV3TW9kZWxTdGF0ZUJhc2U8SVRlYW1SZXBvcnRSZXN1bHRzU3RhdGU+LCBwcm90ZWN0ZWQgc25hY2tCYXI6IE1hdFNuYWNrQmFyKSB7XG4gICAgICBzdXBlcihzdGF0ZSwgc25hY2tCYXIpO1xuICAgfVxuXG4gICBwcm90ZWN0ZWQgb25EYXRhVXBkYXRlKGRhdGE6IElSZXN1bHRzU3RhdGUpOiB2b2lkIHtcbiAgICAgIHZhciBjdXJyZW50RmFjdG9yID0gZGF0YS5mYWN0b3JTY29yZXMuZmFjdG9yU2NvcmVzLmZpbmQocCA9PiBwLmtleSA9PSB0aGlzLmRpbWVuc2lvbik7XG4gICAgICB0aGlzLnN1YnNjcmliZWQgPSBkYXRhLmlzU3Vic2NyaWJlcjtcbiAgICAgICAgICAgIHRoaXMuYmFzZVVybCA9IGRhdGEuYmFzZVVybDtcblxuICAgICAgaWYgKGN1cnJlbnRGYWN0b3IgIT0gbnVsbCkge1xuICAgICAgICAgdGhpcy5pbXBhY3QgPSBjdXJyZW50RmFjdG9yLmltcGFjdDtcbiAgICAgICAgIHRoaXMuY2xhc3MgPSBjdXJyZW50RmFjdG9yLnF1YWxpZmljYXRpb24udG9Mb3dlckNhc2UoKTtcbiAgICAgICAgIHN3aXRjaCAoY3VycmVudEZhY3Rvci5xdWFsaWZpY2F0aW9uLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgICAgICAgIGNhc2UgXCJuZXV0cmFsXCI6XG4gICAgICAgICAgICAgICB0aGlzLmxhYmVsID0gXCJhdmVyYWdlXCI7XG4gICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJwb3NpdGl2ZVwiOlxuICAgICAgICAgICAgICAgdGhpcy5sYWJlbCA9IFwiZ29vZFwiO1xuICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIFwibmVnYXRpdmVcIjpcbiAgICAgICAgICAgICAgIHRoaXMubGFiZWwgPSBcInVyZ2VudFwiO1xuICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgdGhpcy5sYWJlbCA9IFwiYXZlcmFnZVwiO1xuICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICB9XG4gICAgICB9XG4gICB9O1xufVxuIiwiPGRpdiBbcm91dGVyTGlua109XCJbYmFzZVVybCwgJ3RpcHMnXVwiIFtmcmFnbWVudF09XCJkaW1lbnNpb25cIiBjbGFzcz1cInRpcGJhZGdlXCIgKm5nSWY9XCJsYWJlbCAmJiBpbXBhY3QgPiAwXCIgW21hdFRvb2x0aXBdPVwiJ1RoZSBpbXBhY3Qgb2YgdGhpcyByZWNvbW1lbmRhdGlvbiBpcyAnICsgaW1wYWN0ICsgJyBvZiAxMDAnXCI+XG4gICA8ZGl2IFtjbGFzc109XCInYmFkZ2UgJyArIGNsYXNzXCI+e3sgbGFiZWwgfX08L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwidGlwYmFkZ2VcIiAqbmdJZj1cImxhYmVsICYmIGltcGFjdCA9PSAwICYmIHN1YnNjcmliZWRcIj5cbiAgIDxkaXYgW2NsYXNzXT1cIidiYWRnZSBub2ltcGFjdCAnICsgY2xhc3NcIiBzdWJzY3JpYmVEaWFsb2c+e3sgbGFiZWwgfX08L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwidGlwYmFkZ2VcIiAqbmdJZj1cImxhYmVsICYmIGltcGFjdCA9PSAwICYmICFzdWJzY3JpYmVkXCI+XG4gICA8ZGl2IFtjbGFzc109XCInYmFkZ2Ugbm9pbXBhY3QgJyArIGNsYXNzXCI+e3sgbGFiZWwgfX08L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
import { Component, Inject, Input, ViewChild } from '@angular/core';
|
|
2
|
-
import { Validators } from '@angular/forms';
|
|
3
|
-
import { LegendPosition } from '@swimlane/ngx-charts';
|
|
4
|
-
import * as moment from 'moment';
|
|
5
|
-
import { take } from 'rxjs/operators';
|
|
6
|
-
import { ComponentWithViewStateBase } from '../../../componentWithViewStateBase';
|
|
7
|
-
import { SelectItem } from '../../../models/selectListItem';
|
|
8
|
-
import { DateRangeDto } from '../../../pipes/dateRange/ngx-dateRangeDto.model';
|
|
9
|
-
import { VIEWSTATE_PROVIDER } from '../../../viewModel/viewModelState.service';
|
|
10
|
-
import { DeltaPeriodEnum, IncludeActionsModeEnum } from '../../models/factorScoreDto';
|
|
11
|
-
import { TrendDataRequestDto } from '../../models/trendDataRequestDto.model';
|
|
12
|
-
import * as i0 from "@angular/core";
|
|
13
|
-
import * as i1 from "@angular/forms";
|
|
14
|
-
import * as i2 from "@angular/material/snack-bar";
|
|
15
|
-
import * as i3 from "../../services/factorService";
|
|
16
|
-
import * as i4 from "../../services/trend.service";
|
|
17
|
-
import * as i5 from "@angular/router";
|
|
18
|
-
import * as i6 from "@angular/common";
|
|
19
|
-
import * as i7 from "@swimlane/ngx-charts";
|
|
20
|
-
import * as i8 from "@angular/material/core";
|
|
21
|
-
import * as i9 from "@angular/material/form-field";
|
|
22
|
-
import * as i10 from "@angular/material/select";
|
|
23
|
-
import * as i11 from "@angular/material/datepicker";
|
|
24
|
-
import * as i12 from "../../../viewModel/viewModelState.service";
|
|
25
|
-
export class TrendsComponent extends ComponentWithViewStateBase {
|
|
26
|
-
constructor(formBuilder, snackBar, factorService, trendService, route, state) {
|
|
27
|
-
super(state, snackBar);
|
|
28
|
-
this.formBuilder = formBuilder;
|
|
29
|
-
this.snackBar = snackBar;
|
|
30
|
-
this.factorService = factorService;
|
|
31
|
-
this.trendService = trendService;
|
|
32
|
-
this.route = route;
|
|
33
|
-
this.state = state;
|
|
34
|
-
this.generatorNotes = [];
|
|
35
|
-
this.loading = false;
|
|
36
|
-
this.legendPosition = LegendPosition.Below;
|
|
37
|
-
this.customColors = [];
|
|
38
|
-
this.periodGroupings = [
|
|
39
|
-
new SelectItem(DeltaPeriodEnum.previousMonth, "1 month"),
|
|
40
|
-
new SelectItem(DeltaPeriodEnum.previousQuarter, "3 months"),
|
|
41
|
-
new SelectItem(DeltaPeriodEnum.previousHalfYear, "6 months"),
|
|
42
|
-
new SelectItem(DeltaPeriodEnum.previousYear, "12 months")
|
|
43
|
-
];
|
|
44
|
-
this.includeActionOptions = [
|
|
45
|
-
new SelectItem(IncludeActionsModeEnum.includeAll, "All actions"),
|
|
46
|
-
new SelectItem(IncludeActionsModeEnum.includeRelevant, "Actions with expected impact"),
|
|
47
|
-
new SelectItem(IncludeActionsModeEnum.none, "None")
|
|
48
|
-
];
|
|
49
|
-
this.createForm();
|
|
50
|
-
}
|
|
51
|
-
ngOnInit() {
|
|
52
|
-
super.ngOnInit();
|
|
53
|
-
this.form.controls.unitKey.setValue([this.units[0]]);
|
|
54
|
-
this.form.controls.includeActions.setValue("IncludeAll");
|
|
55
|
-
this.form.controls.periodGrouping.setValue("PreviousQuarter");
|
|
56
|
-
this.form.controls.start.setValue(moment.utc().subtract(1, 'years').toISOString());
|
|
57
|
-
this.form.controls.end.setValue(moment.utc().toISOString());
|
|
58
|
-
}
|
|
59
|
-
onFormSubmit() {
|
|
60
|
-
if (!this.form.valid) {
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
this.loading = true;
|
|
64
|
-
var dataRequest = new TrendDataRequestDto();
|
|
65
|
-
if (this.unitType == "team") {
|
|
66
|
-
dataRequest.teamKeys = this.form.controls.unitKey.value.map(p => p.value);
|
|
67
|
-
}
|
|
68
|
-
else if (this.unitType = "organization") {
|
|
69
|
-
dataRequest.clientKeys = this.form.controls.unitKey.value.map(p => p.value);
|
|
70
|
-
}
|
|
71
|
-
dataRequest.factorKeys = this.form.controls.factorKeys.value.map(p => p.value);
|
|
72
|
-
dataRequest.periodGrouping = this.form.controls.periodGrouping.value;
|
|
73
|
-
dataRequest.dateRange = new DateRangeDto();
|
|
74
|
-
dataRequest.dateRange.from = this.form.controls.start.value;
|
|
75
|
-
dataRequest.dateRange.to = this.form.controls.end.value;
|
|
76
|
-
dataRequest.includeActions = this.form.controls.includeActions.value;
|
|
77
|
-
dataRequest.includeSpread = true;
|
|
78
|
-
this.trendService.team(dataRequest).pipe(take(1))
|
|
79
|
-
.subscribe(success => {
|
|
80
|
-
this.data = success.variables;
|
|
81
|
-
this.customColors = success.variables.filter(p => p.color != null).map(p => { return { name: p.name, value: p.color }; });
|
|
82
|
-
for (let item of this.data) {
|
|
83
|
-
for (let s of item.series) {
|
|
84
|
-
s.name = new Date(s.name);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
this.generatorNotes = success.generatorNotes;
|
|
88
|
-
this.loading = false;
|
|
89
|
-
this.onResize();
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
onResize() {
|
|
93
|
-
if (!this.chartContainer) {
|
|
94
|
-
return;
|
|
95
|
-
}
|
|
96
|
-
this.view = [this.chartContainer.nativeElement.offsetWidth - 80, 450];
|
|
97
|
-
}
|
|
98
|
-
createForm() {
|
|
99
|
-
this.form = this.formBuilder.group({
|
|
100
|
-
unitKey: ["", Validators.required],
|
|
101
|
-
factorKeys: ["", Validators.required],
|
|
102
|
-
includeActions: ["", Validators.required],
|
|
103
|
-
periodGrouping: [{ value: "" }, Validators.required],
|
|
104
|
-
start: [{ value: "" }, Validators.required],
|
|
105
|
-
end: [{ value: "" }, Validators.required],
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
;
|
|
109
|
-
compareFactorOptions(o1, o2) {
|
|
110
|
-
if (o1.value == o2.value)
|
|
111
|
-
return true;
|
|
112
|
-
else
|
|
113
|
-
return false;
|
|
114
|
-
}
|
|
115
|
-
onDataUpdate(data) {
|
|
116
|
-
this.factors = this.factorService.toSelectList(data.factorScores.modelStructure);
|
|
117
|
-
var coreFactors = data.factorScores.modelStructure.definition.factors.filter(p => p.name == "Team Effectiveness").map(p => new SelectItem(p.publicKey, p.name));
|
|
118
|
-
this.form.controls.factorKeys.setValue(coreFactors);
|
|
119
|
-
}
|
|
120
|
-
;
|
|
121
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TrendsComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.MatSnackBar }, { token: i3.FactorService }, { token: i4.TrendService }, { token: i5.ActivatedRoute }, { token: VIEWSTATE_PROVIDER }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
122
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TrendsComponent, selector: "trends", inputs: { units: "units", unitType: "unitType" }, viewQueries: [{ propertyName: "chartContainer", first: true, predicate: ["chartcontainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" class=\"dataselector\" (ngSubmit)=\"onFormSubmit()\">\n <div class=\"listtoolbar\" id=\"listtoolbar\">\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\" *ngIf=\"units.length > 1\">\n <mat-label>Select {{unitType}}</mat-label>\n <mat-select formControlName=\"unitKey\" id=\"select-units\" class=\"unitKey\" multiple [disabled]=\"units.length == 1\">\n <mat-option class=\"select-option\" *ngFor=\"let unit of units\" [value]=\"unit\">{{unit.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Select factors</mat-label>\n <mat-select formControlName=\"factorKeys\" id=\"select-factors\" class=\"factorKeys\" multiple [compareWith]=\"compareFactorOptions\">\n <mat-option class=\"select-option\" *ngFor=\"let factor of factors\" [ngClass]=\"{'lower' : factor.lower}\" [value]=\"factor\" selected=\"true\">{{factor.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Summarize to periods of</mat-label>\n <mat-select class=\"periodGrouping-dropdown\" id=\"select-periodGrouping\" formControlName=\"periodGrouping\">\n <mat-option class=\"select-option\" *ngFor=\"let item of periodGroupings\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Action count</mat-label>\n <mat-select class=\"selectactions-dropdown\" id=\"select-includeActions\" formControlName=\"includeActions\">\n <mat-option class=\"select-option\" *ngFor=\"let item of includeActionOptions\" [value]=\"item.value\" class=\"select-option\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Select date range </mat-label>\n <mat-date-range-input [rangePicker]=\"picker\" id=\"select-daterange\">\n <input matStartDate formControlName=\"start\" placeholder=\"Start date\">\n <input matEndDate formControlName=\"end\" placeholder=\"End date\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n\n <mat-error *ngIf=\"form.controls.start.hasError('matStartDateInvalid')\">Invalid start date</mat-error>\n <mat-error *ngIf=\"form.controls.end.hasError('matEndDateInvalid')\">Invalid end date</mat-error>\n </mat-form-field>\n\n <div class=\"listtoolbar-item\">\n <button class=\"button primary\" id=\"button-showtrends\" [ngClass]=\"{'loading': loading}\"><span class=\"ph-funnel\"></span> Show trends</button>\n </div>\n </div>\n</form>\n\n<div class=\"message message-warning\" *ngIf=\"generatorNotes.length > 0\">\n <div class=\"ph-warning icon\"></div> {{generatorNotes[0]}}\n</div>\n\n<div class=\"wirebox calltoaction nodata\" *ngIf=\"!data\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <img src=\"assets/img/improve.png\" />\n <h2>Are you actually improving?</h2>\n <p>Learn if your improvements are actually working out. Take more measurements and plot the trends for your {{unitType}}(s). How is that for empiricism?</p>\n </div>\n </div>\n</div>\n\n<div #chartcontainer class=\"linechart\">\n <div class=\"linechart-container\" *ngIf=\"data\">\n <ngx-charts-line-chart [legend]=\"true\"\n (window:resize)=\"onResize()\"\n [view]=\"view\"\n [showXAxisLabel]=\"true\"\n [showYAxisLabel]=\"true\"\n [xAxis]=\"true\"\n [scheme]=\"'vivid'\"\n [yAxis]=\"true\"\n [legendPosition]=\"legendPosition\"\n [xAxisLabel]=\"'Date'\"\n [yAxisLabel]=\"'Score'\"\n [timeline]=\"true\"\n [yScaleMin]=\"0\"\n [yScaleMax]=\"100\"\n [rangeFillOpacity]=\"0.1\"\n [results]=\"data\"\n [customColors]=\"customColors\">\n </ngx-charts-line-chart>\n </div>\n</div>\n\n<div class=\"message message-information\" *ngIf=\"data\">\n <span class=\"ph-info icon\"></span> This chart shows how factors change over time. The horizontal axis shows the time. The vertical axis shows the weighted average score on the factor. The light area around the lines represents the spread of scores (lower and upper 25% of scores). We aggregate results for one or more teams and from one or more organizations to the periods you chose (1 month, quarter, etc). For each period, we take the most recent snapshot of each team in that period (when available). Hit \"Show Trends\" when you're ready.\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.listtoolbar{display:flex;flex-wrap:wrap;column-gap:30px;row-gap:10px}.listtoolbar .select{flex:auto}.nodata{margin-top:30px;margin-bottom:30px}.nodata img{max-width:700px}.linechart-container{border:3px solid #f0f0f0;margin-top:30px;margin-bottom:30px;padding:30px}.toolbar{margin-top:30px}.mat-mdc-option.lower{margin-left:20px}\n"], dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.LineChartComponent, selector: "ngx-charts-line-chart", inputs: ["legend", "legendTitle", "legendPosition", "xAxis", "yAxis", "showXAxisLabel", "showYAxisLabel", "xAxisLabel", "yAxisLabel", "autoScale", "timeline", "gradient", "showGridLines", "curve", "activeEntries", "schemeType", "rangeFillOpacity", "trimXAxisTicks", "trimYAxisTicks", "rotateXAxisTicks", "maxXAxisTickLength", "maxYAxisTickLength", "xAxisTickFormatting", "yAxisTickFormatting", "xAxisTicks", "yAxisTicks", "roundDomains", "tooltipDisabled", "showRefLines", "referenceLines", "showRefLabels", "xScaleMin", "xScaleMax", "yScaleMin", "yScaleMax", "wrapTicks"], outputs: ["activate", "deactivate"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatLabel, selector: "mat-label" }, { kind: "directive", type: i9.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i9.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i10.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i11.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i11.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i11.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i11.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i11.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }] }); }
|
|
123
|
-
}
|
|
124
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TrendsComponent, decorators: [{
|
|
125
|
-
type: Component,
|
|
126
|
-
args: [{ selector: 'trends', template: "<form [formGroup]=\"form\" class=\"dataselector\" (ngSubmit)=\"onFormSubmit()\">\n <div class=\"listtoolbar\" id=\"listtoolbar\">\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\" *ngIf=\"units.length > 1\">\n <mat-label>Select {{unitType}}</mat-label>\n <mat-select formControlName=\"unitKey\" id=\"select-units\" class=\"unitKey\" multiple [disabled]=\"units.length == 1\">\n <mat-option class=\"select-option\" *ngFor=\"let unit of units\" [value]=\"unit\">{{unit.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Select factors</mat-label>\n <mat-select formControlName=\"factorKeys\" id=\"select-factors\" class=\"factorKeys\" multiple [compareWith]=\"compareFactorOptions\">\n <mat-option class=\"select-option\" *ngFor=\"let factor of factors\" [ngClass]=\"{'lower' : factor.lower}\" [value]=\"factor\" selected=\"true\">{{factor.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Summarize to periods of</mat-label>\n <mat-select class=\"periodGrouping-dropdown\" id=\"select-periodGrouping\" formControlName=\"periodGrouping\">\n <mat-option class=\"select-option\" *ngFor=\"let item of periodGroupings\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Action count</mat-label>\n <mat-select class=\"selectactions-dropdown\" id=\"select-includeActions\" formControlName=\"includeActions\">\n <mat-option class=\"select-option\" *ngFor=\"let item of includeActionOptions\" [value]=\"item.value\" class=\"select-option\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Select date range </mat-label>\n <mat-date-range-input [rangePicker]=\"picker\" id=\"select-daterange\">\n <input matStartDate formControlName=\"start\" placeholder=\"Start date\">\n <input matEndDate formControlName=\"end\" placeholder=\"End date\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n\n <mat-error *ngIf=\"form.controls.start.hasError('matStartDateInvalid')\">Invalid start date</mat-error>\n <mat-error *ngIf=\"form.controls.end.hasError('matEndDateInvalid')\">Invalid end date</mat-error>\n </mat-form-field>\n\n <div class=\"listtoolbar-item\">\n <button class=\"button primary\" id=\"button-showtrends\" [ngClass]=\"{'loading': loading}\"><span class=\"ph-funnel\"></span> Show trends</button>\n </div>\n </div>\n</form>\n\n<div class=\"message message-warning\" *ngIf=\"generatorNotes.length > 0\">\n <div class=\"ph-warning icon\"></div> {{generatorNotes[0]}}\n</div>\n\n<div class=\"wirebox calltoaction nodata\" *ngIf=\"!data\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <img src=\"assets/img/improve.png\" />\n <h2>Are you actually improving?</h2>\n <p>Learn if your improvements are actually working out. Take more measurements and plot the trends for your {{unitType}}(s). How is that for empiricism?</p>\n </div>\n </div>\n</div>\n\n<div #chartcontainer class=\"linechart\">\n <div class=\"linechart-container\" *ngIf=\"data\">\n <ngx-charts-line-chart [legend]=\"true\"\n (window:resize)=\"onResize()\"\n [view]=\"view\"\n [showXAxisLabel]=\"true\"\n [showYAxisLabel]=\"true\"\n [xAxis]=\"true\"\n [scheme]=\"'vivid'\"\n [yAxis]=\"true\"\n [legendPosition]=\"legendPosition\"\n [xAxisLabel]=\"'Date'\"\n [yAxisLabel]=\"'Score'\"\n [timeline]=\"true\"\n [yScaleMin]=\"0\"\n [yScaleMax]=\"100\"\n [rangeFillOpacity]=\"0.1\"\n [results]=\"data\"\n [customColors]=\"customColors\">\n </ngx-charts-line-chart>\n </div>\n</div>\n\n<div class=\"message message-information\" *ngIf=\"data\">\n <span class=\"ph-info icon\"></span> This chart shows how factors change over time. The horizontal axis shows the time. The vertical axis shows the weighted average score on the factor. The light area around the lines represents the spread of scores (lower and upper 25% of scores). We aggregate results for one or more teams and from one or more organizations to the periods you chose (1 month, quarter, etc). For each period, we take the most recent snapshot of each team in that period (when available). Hit \"Show Trends\" when you're ready.\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.listtoolbar{display:flex;flex-wrap:wrap;column-gap:30px;row-gap:10px}.listtoolbar .select{flex:auto}.nodata{margin-top:30px;margin-bottom:30px}.nodata img{max-width:700px}.linechart-container{border:3px solid #f0f0f0;margin-top:30px;margin-bottom:30px;padding:30px}.toolbar{margin-top:30px}.mat-mdc-option.lower{margin-left:20px}\n"] }]
|
|
127
|
-
}], ctorParameters: () => [{ type: i1.UntypedFormBuilder }, { type: i2.MatSnackBar }, { type: i3.FactorService }, { type: i4.TrendService }, { type: i5.ActivatedRoute }, { type: i12.ViewModelStateBase, decorators: [{
|
|
128
|
-
type: Inject,
|
|
129
|
-
args: [VIEWSTATE_PROVIDER]
|
|
130
|
-
}] }], propDecorators: { units: [{
|
|
131
|
-
type: Input
|
|
132
|
-
}], unitType: [{
|
|
133
|
-
type: Input
|
|
134
|
-
}], chartContainer: [{
|
|
135
|
-
type: ViewChild,
|
|
136
|
-
args: ["chartcontainer"]
|
|
137
|
-
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlbmRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY3J1bXRlYW1zdXJ2ZXktdG9vbHMvc3JjL2xpYi9yZXN1bHRzL2NvbXBvbmVudHMvdHJlbmRzL3RyZW5kcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NydW10ZWFtc3VydmV5LXRvb2xzL3NyYy9saWIvcmVzdWx0cy9jb21wb25lbnRzL3RyZW5kcy90cmVuZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQXdDLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2xGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEtBQUssTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUNqQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDakYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMvRSxPQUFPLEVBQXNCLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFbkcsT0FBTyxFQUFFLGVBQWUsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7Ozs7Ozs7Ozs7OztBQVM3RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSwwQkFBeUM7SUF5QjNFLFlBQW9CLFdBQStCLEVB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QUFDLGtCQUFrQjt5Q0F4QjNNLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDOEIsY0FBYztzQkFBakQsU0FBUzt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0U25hY2tCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTGVnZW5kUG9zaXRpb24gfSBmcm9tICdAc3dpbWxhbmUvbmd4LWNoYXJ0cyc7XG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDb21wb25lbnRXaXRoVmlld1N0YXRlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudFdpdGhWaWV3U3RhdGVCYXNlJztcbmltcG9ydCB7IFNlbGVjdEl0ZW0gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvc2VsZWN0TGlzdEl0ZW0nO1xuaW1wb3J0IHsgRGF0ZVJhbmdlRHRvIH0gZnJvbSAnLi4vLi4vLi4vcGlwZXMvZGF0ZVJhbmdlL25neC1kYXRlUmFuZ2VEdG8ubW9kZWwnO1xuaW1wb3J0IHsgVmlld01vZGVsU3RhdGVCYXNlLCBWSUVXU1RBVEVfUFJPVklERVIgfSBmcm9tICcuLi8uLi8uLi92aWV3TW9kZWwvdmlld01vZGVsU3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBJUmVzdWx0c1N0YXRlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JUmVzdWx0c1N0YXRlJztcbmltcG9ydCB7IERlbHRhUGVyaW9kRW51bSwgSW5jbHVkZUFjdGlvbnNNb2RlRW51bSB9IGZyb20gJy4uLy4uL21vZGVscy9mYWN0b3JTY29yZUR0byc7XG5pbXBvcnQgeyBUcmVuZERhdGFSZXF1ZXN0RHRvIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RyZW5kRGF0YVJlcXVlc3REdG8ubW9kZWwnO1xuaW1wb3J0IHsgRmFjdG9yU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZhY3RvclNlcnZpY2UnO1xuaW1wb3J0IHsgVHJlbmRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdHJlbmQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgc2VsZWN0b3I6ICd0cmVuZHMnLFxuICAgdGVtcGxhdGVVcmw6ICcuL3RyZW5kcy5jb21wb25lbnQuaHRtbCcsXG4gICBzdHlsZVVybHM6IFsnLi90cmVuZHMuY29tcG9uZW50Lmxlc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUcmVuZHNDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnRXaXRoVmlld1N0YXRlQmFzZTxJUmVzdWx0c1N0YXRlPiB7XG4gICBASW5wdXQoKSBwdWJsaWMgdW5pdHM6IFNlbGVjdEl0ZW1bXTtcbiAgIEBJbnB1dCgpIHB1YmxpYyB1bml0VHlwZTogc3RyaW5nO1xuICAgQFZpZXdDaGlsZChcImNoYXJ0Y29udGFpbmVyXCIpIHB1YmxpYyBjaGFydENvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD5cbiAgIHB1YmxpYyBmYWN0b3JzOiBTZWxlY3RJdGVtW107XG4gICBwdWJsaWMgZGF0YTogYW55W107XG4gICBwdWJsaWMgZ2VuZXJhdG9yTm90ZXM6IHN0cmluZ1tdID0gW107XG4gICBwdWJsaWMgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuICAgcHVibGljIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gICBwdWJsaWMgdmlldzogW251bWJlciwgbnVtYmVyXTtcbiAgIHB1YmxpYyBsZWdlbmRQb3NpdGlvbjogTGVnZW5kUG9zaXRpb24gPSBMZWdlbmRQb3NpdGlvbi5CZWxvdztcbiAgIHB1YmxpYyBjdXN0b21Db2xvcnMgPSBbXTtcblxuICAgcHVibGljIHBlcmlvZEdyb3VwaW5nczogU2VsZWN0SXRlbVtdID0gW1xuICAgICAgbmV3IFNlbGVjdEl0ZW0oRGVsdGFQZXJpb2RFbnVtLnByZXZpb3VzTW9udGgsIFwiMSBtb250aFwiKSxcbiAgICAgIG5ldyBTZWxlY3RJdGVtKERlbHRhUGVyaW9kRW51bS5wcmV2aW91c1F1YXJ0ZXIsIFwiMyBtb250aHNcIiksXG4gICAgICBuZXcgU2VsZWN0SXRlbShEZWx0YVBlcmlvZEVudW0ucHJldmlvdXNIYWxmWWVhciwgXCI2IG1vbnRoc1wiKSxcbiAgICAgIG5ldyBTZWxlY3RJdGVtKERlbHRhUGVyaW9kRW51bS5wcmV2aW91c1llYXIsIFwiMTIgbW9udGhzXCIpXG4gICBdXG4gICBwdWJsaWMgaW5jbHVkZUFjdGlvbk9wdGlvbnM6IFNlbGVjdEl0ZW1bXSA9IFtcbiAgICAgIG5ldyBTZWxlY3RJdGVtKEluY2x1ZGVBY3Rpb25zTW9kZUVudW0uaW5jbHVkZUFsbCwgXCJBbGwgYWN0aW9uc1wiKSxcbiAgICAgIG5ldyBTZWxlY3RJdGVtKEluY2x1ZGVBY3Rpb25zTW9kZUVudW0uaW5jbHVkZVJlbGV2YW50LCBcIkFjdGlvbnMgd2l0aCBleHBlY3RlZCBpbXBhY3RcIiksXG4gICAgICBuZXcgU2VsZWN0SXRlbShJbmNsdWRlQWN0aW9uc01vZGVFbnVtLm5vbmUsIFwiTm9uZVwiKVxuICAgXVxuXG4gICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIsIHByb3RlY3RlZCBzbmFja0JhcjogTWF0U25hY2tCYXIsIHByaXZhdGUgZmFjdG9yU2VydmljZTogRmFjdG9yU2VydmljZSwgcHJpdmF0ZSB0cmVuZFNlcnZpY2U6IFRyZW5kU2VydmljZSwgcHJvdGVjdGVkIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgQEluamVjdChWSUVXU1RBVEVfUFJPVklERVIpIHByaXZhdGUgc3RhdGU6IFZpZXdNb2RlbFN0YXRlQmFzZTxJUmVzdWx0c1N0YXRlPikge1xuICAgICAgc3VwZXIoc3RhdGUsIHNuYWNrQmFyKTtcbiAgICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xuICAgfVxuXG4gICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLnVuaXRLZXkuc2V0VmFsdWUoW3RoaXMudW5pdHNbMF1dKTtcbiAgICAgIHRoaXMuZm9ybS5jb250cm9scy5pbmNsdWRlQWN0aW9ucy5zZXRWYWx1ZShcIkluY2x1ZGVBbGxcIik7XG4gICAgICB0aGlzLmZvcm0uY29udHJvbHMucGVyaW9kR3JvdXBpbmcuc2V0VmFsdWUoXCJQcmV2aW91c1F1YXJ0ZXJcIik7XG4gICAgICB0aGlzLmZvcm0uY29udHJvbHMuc3RhcnQuc2V0VmFsdWUobW9tZW50LnV0YygpLnN1YnRyYWN0KDEsICd5ZWFycycpLnRvSVNPU3RyaW5nKCkpO1xuICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLmVuZC5zZXRWYWx1ZShtb21lbnQudXRjKCkudG9JU09TdHJpbmcoKSk7XG4gICB9XG5cbiAgIHB1YmxpYyBvbkZvcm1TdWJtaXQoKSB7XG4gICAgICBpZiAoIXRoaXMuZm9ybS52YWxpZCkgeyByZXR1cm47IH1cbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG5cbiAgICAgIHZhciBkYXRhUmVxdWVzdDogVHJlbmREYXRhUmVxdWVzdER0byA9IG5ldyBUcmVuZERhdGFSZXF1ZXN0RHRvKCk7XG5cbiAgICAgIGlmICh0aGlzLnVuaXRUeXBlID09IFwidGVhbVwiKSB7XG4gICAgICAgICBkYXRhUmVxdWVzdC50ZWFtS2V5cyA9IHRoaXMuZm9ybS5jb250cm9scy51bml0S2V5LnZhbHVlLm1hcChwID0+IHAudmFsdWUpO1xuICAgICAgfVxuICAgICAgZWxzZSBpZiAodGhpcy51bml0VHlwZSA9IFwib3JnYW5pemF0aW9uXCIpIHtcbiAgICAgICAgIGRhdGFSZXF1ZXN0LmNsaWVudEtleXMgPSB0aGlzLmZvcm0uY29udHJvbHMudW5pdEtleS52YWx1ZS5tYXAocCA9PiBwLnZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgZGF0YVJlcXVlc3QuZmFjdG9yS2V5cyA9IHRoaXMuZm9ybS5jb250cm9scy5mYWN0b3JLZXlzLnZhbHVlLm1hcChwID0+IHAudmFsdWUpO1xuICAgICAgZGF0YVJlcXVlc3QucGVyaW9kR3JvdXBpbmcgPSB0aGlzLmZvcm0uY29udHJvbHMucGVyaW9kR3JvdXBpbmcudmFsdWU7XG4gICAgICBkYXRhUmVxdWVzdC5kYXRlUmFuZ2UgPSBuZXcgRGF0ZVJhbmdlRHRvKCk7XG4gICAgICBkYXRhUmVxdWVzdC5kYXRlUmFuZ2UuZnJvbSA9IHRoaXMuZm9ybS5jb250cm9scy5zdGFydC52YWx1ZTtcbiAgICAgIGRhdGFSZXF1ZXN0LmRhdGVSYW5nZS50byA9IHRoaXMuZm9ybS5jb250cm9scy5lbmQudmFsdWU7XG4gICAgICBkYXRhUmVxdWVzdC5pbmNsdWRlQWN0aW9ucyA9IHRoaXMuZm9ybS5jb250cm9scy5pbmNsdWRlQWN0aW9ucy52YWx1ZTtcbiAgICAgIGRhdGFSZXF1ZXN0LmluY2x1ZGVTcHJlYWQgPSB0cnVlO1xuXG4gICAgICB0aGlzLnRyZW5kU2VydmljZS50ZWFtKGRhdGFSZXF1ZXN0KS5waXBlKHRha2UoMSkpXG4gICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgc3VjY2VzcyA9PiB7XG4gICAgICAgICAgICAgICB0aGlzLmRhdGEgPSBzdWNjZXNzLnZhcmlhYmxlcztcbiAgICAgICAgICAgICAgIHRoaXMuY3VzdG9tQ29sb3JzID0gc3VjY2Vzcy52YXJpYWJsZXMuZmlsdGVyKHAgPT4gcC5jb2xvciAhPSBudWxsKS5tYXAocCA9PiB7IHJldHVybiB7IG5hbWU6IHAubmFtZSwgdmFsdWU6IHAuY29sb3IgfSB9KTtcblxuICAgICAgICAgICAgICAgZm9yIChsZXQgaXRlbSBvZiB0aGlzLmRhdGEpIHtcbiAgICAgICAgICAgICAgICAgIGZvciAobGV0IHMgb2YgaXRlbS5zZXJpZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgIHMubmFtZSA9IG5ldyBEYXRlKHMubmFtZSlcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgdGhpcy5nZW5lcmF0b3JOb3RlcyA9IHN1Y2Nlc3MuZ2VuZXJhdG9yTm90ZXM7XG4gICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgIHRoaXMub25SZXNpemUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgfVxuXG4gICBwdWJsaWMgb25SZXNpemUoKSB7XG4gICAgICBpZiAoIXRoaXMuY2hhcnRDb250YWluZXIpIHsgcmV0dXJuOyB9XG4gICAgICB0aGlzLnZpZXcgPSBbdGhpcy5jaGFydENvbnRhaW5lci5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoIC0gODAsIDQ1MF07XG4gICB9XG5cbiAgIHByaXZhdGUgY3JlYXRlRm9ybSgpOiB2b2lkIHtcbiAgICAgIHRoaXMuZm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgICAgdW5pdEtleTogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgICAgZmFjdG9yS2V5czogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgICAgaW5jbHVkZUFjdGlvbnM6IFtcIlwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgICAgIHBlcmlvZEdyb3VwaW5nOiBbeyB2YWx1ZTogXCJcIiB9LCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgICAgIHN0YXJ0OiBbeyB2YWx1ZTogXCJcIiB9LCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgICAgIGVuZDogW3sgdmFsdWU6IFwiXCIgfSwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICB9KTtcbiAgIH07XG5cbiAgIHB1YmxpYyBjb21wYXJlRmFjdG9yT3B0aW9ucyhvMTogU2VsZWN0SXRlbSwgbzI6IFNlbGVjdEl0ZW0pIHtcbiAgICAgIGlmIChvMS52YWx1ZSA9PSBvMi52YWx1ZSlcbiAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgZWxzZSByZXR1cm4gZmFsc2VcbiAgIH1cblxuICAgcHJvdGVjdGVkIG9uRGF0YVVwZGF0ZShkYXRhOiBJUmVzdWx0c1N0YXRlKTogdm9pZCB7XG4gICAgICB0aGlzLmZhY3RvcnMgPSB0aGlzLmZhY3RvclNlcnZpY2UudG9TZWxlY3RMaXN0KGRhdGEuZmFjdG9yU2NvcmVzLm1vZGVsU3RydWN0dXJlKTtcbiAgICAgIHZhciBjb3JlRmFjdG9ycyA9IGRhdGEuZmFjdG9yU2NvcmVzLm1vZGVsU3RydWN0dXJlLmRlZmluaXRpb24uZmFjdG9ycy5maWx0ZXIocCA9PiBwLm5hbWUgPT0gXCJUZWFtIEVmZmVjdGl2ZW5lc3NcIikubWFwKHAgPT4gbmV3IFNlbGVjdEl0ZW0ocC5wdWJsaWNLZXksIHAubmFtZSkpO1xuICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLmZhY3RvcktleXMuc2V0VmFsdWUoY29yZUZhY3RvcnMpO1xuICAgfTtcbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwiZGF0YXNlbGVjdG9yXCIgKG5nU3VibWl0KT1cIm9uRm9ybVN1Ym1pdCgpXCI+XG4gICA8ZGl2IGNsYXNzPVwibGlzdHRvb2xiYXJcIiBpZD1cImxpc3R0b29sYmFyXCI+XG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJsaXN0dG9vbGJhci1pdGVtIHNlbGVjdFwiIGFwcGVhcmFuY2U9XCJmaWxsXCIgKm5nSWY9XCJ1bml0cy5sZW5ndGggPiAxXCI+XG4gICAgICAgICA8bWF0LWxhYmVsPlNlbGVjdCB7e3VuaXRUeXBlfX08L21hdC1sYWJlbD5cbiAgICAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInVuaXRLZXlcIiBpZD1cInNlbGVjdC11bml0c1wiIGNsYXNzPVwidW5pdEtleVwiIG11bHRpcGxlIFtkaXNhYmxlZF09XCJ1bml0cy5sZW5ndGggPT0gMVwiPlxuICAgICAgICAgICAgPG1hdC1vcHRpb24gY2xhc3M9XCJzZWxlY3Qtb3B0aW9uXCIgKm5nRm9yPVwibGV0IHVuaXQgb2YgdW5pdHNcIiBbdmFsdWVdPVwidW5pdFwiPnt7dW5pdC5sYWJlbH19PC9tYXQtb3B0aW9uPlxuICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwibGlzdHRvb2xiYXItaXRlbSBzZWxlY3RcIiBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgPG1hdC1sYWJlbD5TZWxlY3QgZmFjdG9yczwvbWF0LWxhYmVsPlxuICAgICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiZmFjdG9yS2V5c1wiIGlkPVwic2VsZWN0LWZhY3RvcnNcIiBjbGFzcz1cImZhY3RvcktleXNcIiBtdWx0aXBsZSBbY29tcGFyZVdpdGhdPVwiY29tcGFyZUZhY3Rvck9wdGlvbnNcIj5cbiAgICAgICAgICAgIDxtYXQtb3B0aW9uIGNsYXNzPVwic2VsZWN0LW9wdGlvblwiICpuZ0Zvcj1cImxldCBmYWN0b3Igb2YgZmFjdG9yc1wiIFtuZ0NsYXNzXT1cInsnbG93ZXInIDogZmFjdG9yLmxvd2VyfVwiIFt2YWx1ZV09XCJmYWN0b3JcIiBzZWxlY3RlZD1cInRydWVcIj57e2ZhY3Rvci5sYWJlbH19PC9tYXQtb3B0aW9uPlxuICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwibGlzdHRvb2xiYXItaXRlbSBzZWxlY3RcIiBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgPG1hdC1sYWJlbD5TdW1tYXJpemUgdG8gcGVyaW9kcyBvZjwvbWF0LWxhYmVsPlxuICAgICAgICAgPG1hdC1zZWxlY3QgY2xhc3M9XCJwZXJpb2RHcm91cGluZy1kcm9wZG93blwiIGlkPVwic2VsZWN0LXBlcmlvZEdyb3VwaW5nXCIgZm9ybUNvbnRyb2xOYW1lPVwicGVyaW9kR3JvdXBpbmdcIj5cbiAgICAgICAgICAgIDxtYXQtb3B0aW9uIGNsYXNzPVwic2VsZWN0LW9wdGlvblwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIHBlcmlvZEdyb3VwaW5nc1wiIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCI+e3tpdGVtLmxhYmVsfX08L21hdC1vcHRpb24+XG4gICAgICAgICA8L21hdC1zZWxlY3Q+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJsaXN0dG9vbGJhci1pdGVtIHNlbGVjdFwiIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICA8bWF0LWxhYmVsPkFjdGlvbiBjb3VudDwvbWF0LWxhYmVsPlxuICAgICAgICAgPG1hdC1zZWxlY3QgY2xhc3M9XCJzZWxlY3RhY3Rpb25zLWRyb3Bkb3duXCIgaWQ9XCJzZWxlY3QtaW5jbHVkZUFjdGlvbnNcIiBmb3JtQ29udHJvbE5hbWU9XCJpbmNsdWRlQWN0aW9uc1wiPlxuICAgICAgICAgICAgPG1hdC1vcHRpb24gY2xhc3M9XCJzZWxlY3Qtb3B0aW9uXCIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaW5jbHVkZUFjdGlvbk9wdGlvbnNcIiBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiIGNsYXNzPVwic2VsZWN0LW9wdGlvblwiPnt7aXRlbS5sYWJlbH19PC9tYXQtb3B0aW9uPlxuICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwibGlzdHRvb2xiYXItaXRlbSBzZWxlY3RcIiBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgPG1hdC1sYWJlbD5TZWxlY3QgZGF0ZSByYW5nZSA8L21hdC1sYWJlbD5cbiAgICAgICAgIDxtYXQtZGF0ZS1yYW5nZS1pbnB1dCBbcmFuZ2VQaWNrZXJdPVwicGlja2VyXCIgaWQ9XCJzZWxlY3QtZGF0ZXJhbmdlXCI+XG4gICAgICAgICAgICA8aW5wdXQgbWF0U3RhcnREYXRlIGZvcm1Db250cm9sTmFtZT1cInN0YXJ0XCIgcGxhY2Vob2xkZXI9XCJTdGFydCBkYXRlXCI+XG4gICAgICAgICAgICA8aW5wdXQgbWF0RW5kRGF0ZSBmb3JtQ29udHJvbE5hbWU9XCJlbmRcIiBwbGFjZWhvbGRlcj1cIkVuZCBkYXRlXCI+XG4gICAgICAgICA8L21hdC1kYXRlLXJhbmdlLWlucHV0PlxuICAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJwaWNrZXJcIj48L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cbiAgICAgICAgIDxtYXQtZGF0ZS1yYW5nZS1waWNrZXIgI3BpY2tlcj48L21hdC1kYXRlLXJhbmdlLXBpY2tlcj5cblxuICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImZvcm0uY29udHJvbHMuc3RhcnQuaGFzRXJyb3IoJ21hdFN0YXJ0RGF0ZUludmFsaWQnKVwiPkludmFsaWQgc3RhcnQgZGF0ZTwvbWF0LWVycm9yPlxuICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImZvcm0uY29udHJvbHMuZW5kLmhhc0Vycm9yKCdtYXRFbmREYXRlSW52YWxpZCcpXCI+SW52YWxpZCBlbmQgZGF0ZTwvbWF0LWVycm9yPlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgPGRpdiBjbGFzcz1cImxpc3R0b29sYmFyLWl0ZW1cIj5cbiAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gcHJpbWFyeVwiIGlkPVwiYnV0dG9uLXNob3d0cmVuZHNcIiBbbmdDbGFzc109XCJ7J2xvYWRpbmcnOiBsb2FkaW5nfVwiPjxzcGFuIGNsYXNzPVwicGgtZnVubmVsXCI+PC9zcGFuPiBTaG93IHRyZW5kczwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICA8L2Rpdj5cbjwvZm9ybT5cblxuPGRpdiBjbGFzcz1cIm1lc3NhZ2UgbWVzc2FnZS13YXJuaW5nXCIgKm5nSWY9XCJnZW5lcmF0b3JOb3Rlcy5sZW5ndGggPiAwXCI+XG4gICA8ZGl2IGNsYXNzPVwicGgtd2FybmluZyBpY29uXCI+PC9kaXY+IHt7Z2VuZXJhdG9yTm90ZXNbMF19fVxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJ3aXJlYm94IGNhbGx0b2FjdGlvbiBub2RhdGFcIiAqbmdJZj1cIiFkYXRhXCI+XG4gICA8ZGl2IGNsYXNzPVwiY29udGVudHdpdGhib3JkZXJzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY2VudGVyXCI+XG4gICAgICAgICA8aW1nIHNyYz1cImFzc2V0cy9pbWcvaW1wcm92ZS5wbmdcIiAvPlxuICAgICAgICAgPGgyPkFyZSB5b3UgYWN0dWFsbHkgaW1wcm92aW5nPzwvaDI+XG4gICAgICAgICA8cD5MZWFybiBpZiB5b3VyIGltcHJvdmVtZW50cyBhcmUgYWN0dWFsbHkgd29ya2luZyBvdXQuIFRha2UgbW9yZSBtZWFzdXJlbWVudHMgYW5kIHBsb3QgdGhlIHRyZW5kcyBmb3IgeW91ciB7e3VuaXRUeXBlfX0ocykuIEhvdyBpcyB0aGF0IGZvciBlbXBpcmljaXNtPzwvcD5cbiAgICAgIDwvZGl2PlxuICAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiAjY2hhcnRjb250YWluZXIgY2xhc3M9XCJsaW5lY2hhcnRcIj5cbiAgIDxkaXYgY2xhc3M9XCJsaW5lY2hhcnQtY29udGFpbmVyXCIgKm5nSWY9XCJkYXRhXCI+XG4gICAgICA8bmd4LWNoYXJ0cy1saW5lLWNoYXJ0IFtsZWdlbmRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICh3aW5kb3c6cmVzaXplKT1cIm9uUmVzaXplKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmlld109XCJ2aWV3XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dYQXhpc0xhYmVsXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd1lBeGlzTGFiZWxdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt4QXhpc109XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjaGVtZV09XCIndml2aWQnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3lBeGlzXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGVnZW5kUG9zaXRpb25dPVwibGVnZW5kUG9zaXRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbeEF4aXNMYWJlbF09XCInRGF0ZSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbeUF4aXNMYWJlbF09XCInU2NvcmUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RpbWVsaW5lXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbeVNjYWxlTWluXT1cIjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbeVNjYWxlTWF4XT1cIjEwMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyYW5nZUZpbGxPcGFjaXR5XT1cIjAuMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXN1bHRzXT1cImRhdGFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tQ29sb3JzXT1cImN1c3RvbUNvbG9yc1wiPlxuICAgICAgPC9uZ3gtY2hhcnRzLWxpbmUtY2hhcnQ+XG4gICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwibWVzc2FnZSBtZXNzYWdlLWluZm9ybWF0aW9uXCIgKm5nSWY9XCJkYXRhXCI+XG4gICA8c3BhbiBjbGFzcz1cInBoLWluZm8gaWNvblwiPjwvc3Bhbj4gVGhpcyBjaGFydCBzaG93cyBob3cgZmFjdG9ycyBjaGFuZ2Ugb3ZlciB0aW1lLiBUaGUgaG9yaXpvbnRhbCBheGlzIHNob3dzIHRoZSB0aW1lLiBUaGUgdmVydGljYWwgYXhpcyBzaG93cyB0aGUgd2VpZ2h0ZWQgYXZlcmFnZSBzY29yZSBvbiB0aGUgZmFjdG9yLiBUaGUgbGlnaHQgYXJlYSBhcm91bmQgdGhlIGxpbmVzIHJlcHJlc2VudHMgdGhlIHNwcmVhZCBvZiBzY29yZXMgKGxvd2VyIGFuZCB1cHBlciAyNSUgb2Ygc2NvcmVzKS4gV2UgYWdncmVnYXRlIHJlc3VsdHMgZm9yIG9uZSBvciBtb3JlIHRlYW1zIGFuZCBmcm9tIG9uZSBvciBtb3JlIG9yZ2FuaXphdGlvbnMgdG8gdGhlIHBlcmlvZHMgeW91IGNob3NlICgxIG1vbnRoLCBxdWFydGVyLCBldGMpLiBGb3IgZWFjaCBwZXJpb2QsIHdlIHRha2UgdGhlIG1vc3QgcmVjZW50IHNuYXBzaG90IG9mIGVhY2ggdGVhbSBpbiB0aGF0IHBlcmlvZCAod2hlbiBhdmFpbGFibGUpLiBIaXQgXCJTaG93IFRyZW5kc1wiIHdoZW4geW91J3JlIHJlYWR5LlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { Component, Inject } from '@angular/core';
|
|
2
|
-
import { ComponentWithViewStateBase } from '../../../componentWithViewStateBase';
|
|
3
|
-
import { VIEWSTATE_PROVIDER } from '../../../viewModel/viewModelState.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/material/snack-bar";
|
|
6
|
-
import * as i2 from "@angular/common";
|
|
7
|
-
import * as i3 from "../../../viewModel/viewModelState.service";
|
|
8
|
-
export class UpdateInProgressComponent extends ComponentWithViewStateBase {
|
|
9
|
-
constructor(state, snackBar) {
|
|
10
|
-
super(state, snackBar);
|
|
11
|
-
this.state = state;
|
|
12
|
-
this.snackBar = snackBar;
|
|
13
|
-
}
|
|
14
|
-
ngOnInit() {
|
|
15
|
-
this.subscription = this.state.updating.subscribe(reloaded => {
|
|
16
|
-
this.delayedReloading = reloaded;
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
;
|
|
20
|
-
ngOnDestroy() {
|
|
21
|
-
if (this.subscription) {
|
|
22
|
-
this.subscription.unsubscribe();
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
;
|
|
26
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: UpdateInProgressComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: UpdateInProgressComponent, selector: "update-in-progress", usesInheritance: true, ngImport: i0, template: "<div class=\"update-in-progress\" *ngIf=\"delayedReloading\">\n <span class=\"icon ph-floppy-disk-bold\"></span>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.update-in-progress{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%;-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;background:#2f2f2f;position:fixed;right:0;width:20px;height:20px;bottom:0;padding:5px;display:flex;justify-content:center;align-items:center}.update-in-progress .icon{color:#f0f0f0;font-size:18px;animation:beating;animation-duration:1s;animation-iteration-count:infinite}@keyframes beating{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
28
|
-
}
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: UpdateInProgressComponent, decorators: [{
|
|
30
|
-
type: Component,
|
|
31
|
-
args: [{ selector: 'update-in-progress', template: "<div class=\"update-in-progress\" *ngIf=\"delayedReloading\">\n <span class=\"icon ph-floppy-disk-bold\"></span>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.update-in-progress{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%;-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;background:#2f2f2f;position:fixed;right:0;width:20px;height:20px;bottom:0;padding:5px;display:flex;justify-content:center;align-items:center}.update-in-progress .icon{color:#f0f0f0;font-size:18px;animation:beating;animation-duration:1s;animation-iteration-count:infinite}@keyframes beating{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}\n"] }]
|
|
32
|
-
}], ctorParameters: () => [{ type: i3.ViewModelStateBase, decorators: [{
|
|
33
|
-
type: Inject,
|
|
34
|
-
args: [VIEWSTATE_PROVIDER]
|
|
35
|
-
}] }, { type: i1.MatSnackBar }] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWluLXByb2dyZXNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY3J1bXRlYW1zdXJ2ZXktdG9vbHMvc3JjL2xpYi9yZXN1bHRzL2NvbXBvbmVudHMvdXBkYXRlLWluLXByb2dyZXNzL3VwZGF0ZS1pbi1wcm9ncmVzcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NydW10ZWFtc3VydmV5LXRvb2xzL3NyYy9saWIvcmVzdWx0cy9jb21wb25lbnRzL3VwZGF0ZS1pbi1wcm9ncmVzcy91cGRhdGUtaW4tcHJvZ3Jlc3MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbEQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDakYsT0FBTyxFQUFzQixrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7OztBQVFuRyxNQUFNLE9BQU8seUJBQTBCLFNBQVEsMEJBQXlDO0lBSXJGLFlBQWtELEtBQWtELEVBQVksUUFBcUI7UUFDbEksS0FBSyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztRQUR3QixVQUFLLEdBQUwsS0FBSyxDQUE2QztRQUFZLGFBQVEsR0FBUixRQUFRLENBQWE7SUFFckksQ0FBQztJQUVNLFFBQVE7UUFDWixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUMxRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUFBLENBQUM7SUFFSyxXQUFXO1FBQ2YsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUFBLENBQUM7K0dBbEJRLHlCQUF5QixrQkFJZixrQkFBa0I7bUdBSjVCLHlCQUF5QixpRkNadEMsOEhBR0E7OzRGRFNhLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRyxvQkFBb0I7OzBCQVFqQixNQUFNOzJCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbXBvbmVudFdpdGhWaWV3U3RhdGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50V2l0aFZpZXdTdGF0ZUJhc2UnO1xuaW1wb3J0IHsgVmlld01vZGVsU3RhdGVCYXNlLCBWSUVXU1RBVEVfUFJPVklERVIgfSBmcm9tICcuLi8uLi8uLi92aWV3TW9kZWwvdmlld01vZGVsU3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBJUmVzdWx0c1N0YXRlLCBJVGVhbVJlcG9ydFJlc3VsdHNTdGF0ZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVJlc3VsdHNTdGF0ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgc2VsZWN0b3I6ICd1cGRhdGUtaW4tcHJvZ3Jlc3MnLFxuICAgdGVtcGxhdGVVcmw6ICcuL3VwZGF0ZS1pbi1wcm9ncmVzcy5jb21wb25lbnQuaHRtbCcsXG4gICBzdHlsZVVybHM6IFsnLi91cGRhdGUtaW4tcHJvZ3Jlc3MuY29tcG9uZW50Lmxlc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBVcGRhdGVJblByb2dyZXNzQ29tcG9uZW50IGV4dGVuZHMgQ29tcG9uZW50V2l0aFZpZXdTdGF0ZUJhc2U8SVJlc3VsdHNTdGF0ZT4ge1xuICAgcHVibGljIGRlbGF5ZWRSZWxvYWRpbmc6IGJvb2xlYW47XG4gICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICBjb25zdHJ1Y3RvcihASW5qZWN0KFZJRVdTVEFURV9QUk9WSURFUikgcHJvdGVjdGVkIHN0YXRlOiBWaWV3TW9kZWxTdGF0ZUJhc2U8SVRlYW1SZXBvcnRSZXN1bHRzU3RhdGU+LCBwcm90ZWN0ZWQgc25hY2tCYXI6IE1hdFNuYWNrQmFyKSB7XG4gICAgICBzdXBlcihzdGF0ZSwgc25hY2tCYXIpO1xuICAgfVxuXG4gICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuc3RhdGUudXBkYXRpbmcuc3Vic2NyaWJlKHJlbG9hZGVkID0+IHtcbiAgICAgICAgIHRoaXMuZGVsYXllZFJlbG9hZGluZyA9IHJlbG9hZGVkO1xuICAgICAgfSk7XG4gICB9O1xuXG4gICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcbiAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICB9XG4gICB9O1xufVxuIiwiPGRpdiBjbGFzcz1cInVwZGF0ZS1pbi1wcm9ncmVzc1wiICpuZ0lmPVwiZGVsYXllZFJlbG9hZGluZ1wiPlxuICAgPHNwYW4gY2xhc3M9XCJpY29uIHBoLWZsb3BweS1kaXNrLWJvbGRcIj48L3NwYW4+XG48L2Rpdj5cbiJdfQ==
|