@the-liberators/ngx-scrumteamsurvey-tools 2.3.68 → 2.3.70

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.
@@ -9,9 +9,9 @@ import * as i7 from '@angular/material/datepicker';
9
9
  import { MatDatepickerModule } from '@angular/material/datepicker';
10
10
  import * as i1$4 from '@angular/material/dialog';
11
11
  import { MAT_DIALOG_DATA, MatDialogConfig, MatDialogModule } from '@angular/material/dialog';
12
- import * as i6 from '@angular/material/input';
12
+ import * as i4 from '@angular/material/input';
13
13
  import { MatInputModule } from '@angular/material/input';
14
- import * as i4 from '@angular/material/menu';
14
+ import * as i4$1 from '@angular/material/menu';
15
15
  import { MatMenuModule } from '@angular/material/menu';
16
16
  import * as i3 from '@angular/material/paginator';
17
17
  import { MatPaginatorModule } from '@angular/material/paginator';
@@ -31,19 +31,18 @@ import * as i1$3 from '@angular/common/http';
31
31
  import { HttpClient, HttpErrorResponse, HttpEventType, HttpResponse } from '@angular/common/http';
32
32
  import * as moment from 'moment';
33
33
  import { trigger, state, transition, style, animate } from '@angular/animations';
34
- import * as i2$1 from '@angular/platform-browser';
35
34
  import { ENTER, COMMA } from '@angular/cdk/keycodes';
36
- import * as i2$2 from '@angular/material/autocomplete';
35
+ import * as i2$1 from '@angular/material/autocomplete';
37
36
  import { MatAutocompleteModule } from '@angular/material/autocomplete';
38
37
  import * as i5$1 from '@angular/material/chips';
39
38
  import { MatChipsModule } from '@angular/material/chips';
40
39
  import { MatFormFieldModule } from '@angular/material/form-field';
41
- import * as i2$3 from '@angular/cdk/clipboard';
40
+ import * as i2$2 from '@angular/cdk/clipboard';
42
41
  import { ClipboardModule } from '@angular/cdk/clipboard';
43
42
  import * as i5$2 from '@angular/material/checkbox';
44
43
  import { MatCheckboxModule } from '@angular/material/checkbox';
45
44
  import * as i1$6 from '@auth0/auth0-angular';
46
- import * as i2$4 from '@angular/material/progress-spinner';
45
+ import * as i2$3 from '@angular/material/progress-spinner';
47
46
  import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
48
47
  import * as i3$1 from '@ncstate/sat-popover';
49
48
  import { SatPopoverModule } from '@ncstate/sat-popover';
@@ -200,8 +199,10 @@ let ViewModelStateBase = class ViewModelStateBase {
200
199
  this.result = null;
201
200
  this.updating.next(true);
202
201
  if (!this.reloadStrategy.isConnected()) {
203
- console.log("No reload strategy connected. We are reloading manually in 3 seconds.");
204
- this.forcedReload();
202
+ console.error("Reload strategy is not connected. We are reloading manually in 3 seconds as a fall-back strategy.");
203
+ setTimeout(() => {
204
+ this.forcedReload();
205
+ }, 3000);
205
206
  }
206
207
  }
207
208
  close() {
@@ -489,8 +490,8 @@ var InterventionOwnerEnum;
489
490
  (function (InterventionOwnerEnum) {
490
491
  InterventionOwnerEnum["entireTeam"] = "EntireTeam";
491
492
  InterventionOwnerEnum["management"] = "Management";
492
- InterventionOwnerEnum["productOwner"] = "ProductOwner";
493
- InterventionOwnerEnum["scrumMaster"] = "ScrumMaster";
493
+ InterventionOwnerEnum["productPerson"] = "ProductOwner";
494
+ InterventionOwnerEnum["teamCoach"] = "ScrumMaster";
494
495
  InterventionOwnerEnum["teamMember"] = "TeamMember";
495
496
  InterventionOwnerEnum["stakeholder"] = "Stakeholder";
496
497
  InterventionOwnerEnum["other"] = "Other";
@@ -551,9 +552,9 @@ class InterventionOwnerToStringPipe {
551
552
  return "Entire team";
552
553
  case InterventionOwnerEnum.management:
553
554
  return "Management";
554
- case InterventionOwnerEnum.productOwner:
555
+ case InterventionOwnerEnum.productPerson:
555
556
  return "Product manager/owner";
556
- case InterventionOwnerEnum.scrumMaster:
557
+ case InterventionOwnerEnum.teamCoach:
557
558
  return "Team coach";
558
559
  case InterventionOwnerEnum.teamMember:
559
560
  return "Team member";
@@ -740,13 +741,13 @@ class ActionManageComponent extends ComponentBase {
740
741
  await this.actionService.create(this.form.controls.teamKey.value, this.form.getRawValue());
741
742
  }
742
743
  this.dialogRef.closeAll();
743
- this.viewModelState.updating.next(true);
744
+ this.viewModelState.reload();
744
745
  }
745
746
  async delete() {
746
747
  if (window.confirm("Are you sure you want to delete this intervention?")) {
747
748
  await this.actionService.delete(this.form.controls.teamKey.value, this.form.controls.publicKey.value);
748
749
  this.dialogRef.closeAll();
749
- this.viewModelState.updating.next(true);
750
+ this.viewModelState.reload();
750
751
  }
751
752
  }
752
753
  cancel() {
@@ -812,7 +813,7 @@ class ActionManageComponent extends ComponentBase {
812
813
  }
813
814
  }
814
815
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ActionManageComponent, deps: [{ token: i1$4.MatDialog }, { token: i1$2.FormBuilder }, { token: ActionService }, { token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
815
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ActionManageComponent, isStandalone: false, selector: "action-manage", inputs: { prefill: "prefill", action: "action" }, usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" (ngSubmit)=\"onSubmit(formDirective)\" #formDirective=\"ngForm\" class=\"manage-action-form\">\n <mat-form-field appearance=\"fill\" *ngIf=\"showTeamSelector\" subscriptSizing=\"dynamic\">\n <mat-label>Which team owns this action?</mat-label>\n <mat-select formControlName=\"teamKey\" id=\"teamKey\">\n <mat-option class=\"select-option\" *ngFor=\"let team of teams\" [value]=\"team.key\">{{team.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>Enter short description</mat-label>\n <textarea matInput formControlName=\"description\" id=\"description\" rows=\"2\" maxlength=\"500\"></textarea>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" *ngIf=\"!prefill.expectedImpactOn || prefill.expectedImpactOn.length == 0\" subscriptSizing=\"dynamic\">\n <mat-label>Where do you expect improvement?</mat-label>\n <mat-select multiple formControlName=\"expectedImpactOn\" id=\"expectedImpactOn\">\n <mat-option class=\"select-option\" [ngClass]=\"{'lower' : factor.lower}\" *ngFor=\"let factor of factors\" [value]=\"factor.value\">{{factor.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" *ngIf=\"!prefill.owner\" subscriptSizing=\"dynamic\">\n <mat-label>Who owns this action?</mat-label>\n <mat-select formControlName=\"owner\" id=\"owner\">\n <mat-option class=\"select-option\" *ngFor=\"let owner of ownerList\" [value]=\"owner.key\">{{owner.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" *ngIf=\"!prefill.type\" subscriptSizing=\"dynamic\">\n <mat-label>What is the type of action?</mat-label>\n <mat-select formControlName=\"type\" id=\"type\">\n <mat-option class=\"select-option\" *ngFor=\"let interventionType of interventionTypeList\" [value]=\"interventionType.key\">{{interventionType.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" *ngIf=\"!prefill.state || action\" subscriptSizing=\"dynamic\">\n <mat-label>What is the state of this action?</mat-label>\n <mat-select formControlName=\"state\" id=\"state\">\n <mat-option class=\"select-option\" *ngFor=\"let state of stateList\" [value]=\"state.key\">{{state.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" *ngIf=\"!prefill.url || prefill.url.length == 0\" subscriptSizing=\"dynamic\">\n <mat-label>Url for additional details (e.g. JIRA or Trello)</mat-label>\n <input matInput formControlName=\"url\" id=\"url\" rows=\"1\" maxlength=\"500\">\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>When should it be done?</mat-label>\n <input matInput [matDatepicker]=\"picker\" formControlName=\"due\" id=\"due\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n <div class=\"toolbar leftright\">\n <div>\n <a class=\"button borderless delete\" href=\"javascript:void(null);\" (click)=\"delete()\" id=\"delete\" *ngIf=\"action\"><span class=\"icon ph-trash\"></span> delete</a>\n <a class=\"button borderless cancel\" href=\"javascript:void(null);\" (click)=\"cancel()\" id=\"cancel\" *ngIf=\"form.dirty || action\"><span class=\"icon ph-x-circle\"></span> cancel</a>\n </div>\n <input class=\"button primary\" type=\"submit\" id=\"submit\" value=\"save\" />\n </div>\n</form>\n", styles: ["form{margin-top:20px;position:sticky;top:20px}form .mat-form-field{width:100%;margin-bottom:10px}form .toolbar .button.cancel{padding-left:0;margin-left:0}@media only screen and (min-width: 992px){form .toolbar .delete{padding-left:0;margin-left:0}}.mat-mdc-option.lower{margin-left:20px}\n"], dependencies: [{ kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i5.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", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i7.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i7.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }] }); }
816
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ActionManageComponent, isStandalone: false, selector: "action-manage", inputs: { prefill: "prefill", action: "action" }, usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" (ngSubmit)=\"onSubmit(formDirective)\" #formDirective=\"ngForm\" class=\"manage-action-form\">\n <mat-form-field appearance=\"fill\" *ngIf=\"showTeamSelector\" subscriptSizing=\"dynamic\">\n <mat-label>Which team owns this action?</mat-label>\n <mat-select formControlName=\"teamKey\" id=\"teamKey\">\n <mat-option class=\"select-option\" *ngFor=\"let team of teams\" [value]=\"team.key\">{{team.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>Enter short description</mat-label>\n <textarea matInput formControlName=\"description\" id=\"description\" rows=\"2\" maxlength=\"500\"></textarea>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" *ngIf=\"!prefill.expectedImpactOn || prefill.expectedImpactOn.length == 0\" subscriptSizing=\"dynamic\">\n <mat-label>Where do you expect improvement?</mat-label>\n <mat-select multiple formControlName=\"expectedImpactOn\" id=\"expectedImpactOn\">\n <mat-option class=\"select-option\" [ngClass]=\"{'lower' : factor.lower}\" *ngFor=\"let factor of factors\" [value]=\"factor.value\">{{factor.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" *ngIf=\"!prefill.owner\" subscriptSizing=\"dynamic\">\n <mat-label>Who owns this action?</mat-label>\n <mat-select formControlName=\"owner\" id=\"owner\">\n <mat-option class=\"select-option\" *ngFor=\"let owner of ownerList\" [value]=\"owner.key\">{{owner.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" *ngIf=\"!prefill.type\" subscriptSizing=\"dynamic\">\n <mat-label>What is the type of action?</mat-label>\n <mat-select formControlName=\"type\" id=\"type\">\n <mat-option class=\"select-option\" *ngFor=\"let interventionType of interventionTypeList\" [value]=\"interventionType.key\">{{interventionType.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" *ngIf=\"!prefill.state || action\" subscriptSizing=\"dynamic\">\n <mat-label>What is the state of this action?</mat-label>\n <mat-select formControlName=\"state\" id=\"state\">\n <mat-option class=\"select-option\" *ngFor=\"let state of stateList\" [value]=\"state.key\">{{state.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" *ngIf=\"!prefill.url || prefill.url.length == 0\" subscriptSizing=\"dynamic\">\n <mat-label>Url for additional details (e.g. JIRA or Trello)</mat-label>\n <input matInput formControlName=\"url\" id=\"url\" rows=\"1\" maxlength=\"500\">\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>When should it be done?</mat-label>\n <input matInput [matDatepicker]=\"picker\" formControlName=\"due\" id=\"due\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n <div class=\"toolbar leftright\">\n <div>\n <a class=\"button borderless delete\" href=\"javascript:void(null);\" (click)=\"delete()\" id=\"delete\" *ngIf=\"action\"><span class=\"icon ph-trash\"></span> delete</a>\n <a class=\"button borderless cancel\" href=\"javascript:void(null);\" (click)=\"cancel()\" id=\"cancel\" *ngIf=\"form.dirty || action\"><span class=\"icon ph-x-circle\"></span> cancel</a>\n </div>\n <input class=\"button primary\" type=\"submit\" id=\"submit\" value=\"save\" />\n </div>\n</form>\n", styles: ["form{margin-top:20px;position:sticky;top:20px}form .mat-form-field{width:100%;margin-bottom:10px}form .toolbar .button.cancel{padding-left:0;margin-left:0}@media only screen and (min-width: 992px){form .toolbar .delete{padding-left:0;margin-left:0}}.mat-mdc-option.lower{margin-left:20px}\n"], dependencies: [{ kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i5.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", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i7.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i7.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }] }); }
816
817
  }
817
818
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ActionManageComponent, decorators: [{
818
819
  type: Component,
@@ -914,35 +915,30 @@ class ActionTileComponent extends ComponentWithViewStateBase {
914
915
  event.stopPropagation();
915
916
  await this.changeState(action, InterventionStateEnum.obsolete);
916
917
  action.state = InterventionStateEnum.obsolete;
917
- this.viewModelState.updating.next(true);
918
918
  }
919
919
  async complete(event, action) {
920
920
  event.stopPropagation();
921
921
  await this.changeState(action, InterventionStateEnum.completed);
922
922
  action.state = InterventionStateEnum.completed;
923
- this.viewModelState.updating.next(true);
924
923
  }
925
924
  async open(event, action) {
926
925
  event.stopPropagation();
927
926
  await this.changeState(action, InterventionStateEnum.open);
928
927
  action.state = InterventionStateEnum.open;
929
- this.viewModelState.updating.next(true);
930
928
  }
931
929
  async impede(event, action) {
932
930
  event.stopPropagation();
933
931
  await this.actionService.changeState(action.team.publicKey, action.publicKey, InterventionStateEnum.impeded);
934
932
  action.state = InterventionStateEnum.impeded;
935
- this.viewModelState.updating.next(true);
936
933
  }
937
934
  async unimpede(event, action) {
938
935
  event.stopPropagation();
939
936
  await this.changeState(action, InterventionStateEnum.open);
940
937
  action.state = InterventionStateEnum.open;
941
- this.viewModelState.updating.next(true);
942
938
  }
943
939
  async changeState(action, state) {
944
940
  await this.actionService.changeState(action.team.publicKey, action.publicKey, state);
945
- this.viewModelState.updating.next(true);
941
+ this.viewModelState.reload();
946
942
  }
947
943
  onDataUpdate(data) {
948
944
  }
@@ -1212,7 +1208,7 @@ class ActionListComponent extends ComponentWithViewStateBase {
1212
1208
  });
1213
1209
  }
1214
1210
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ActionListComponent, deps: [{ token: i1.MatSnackBar }, { token: VIEWSTATE_USERSETTINGS_STRATEGY }, { token: ActionService }, { token: VIEWSTATE_PROVIDER }, { token: i1$5.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
1215
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ActionListComponent, isStandalone: false, selector: "action-list", inputs: { prefill: "prefill", overrideFilter: "overrideFilter" }, viewQueries: [{ propertyName: "actionManageComponent", first: true, predicate: ActionManageComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"primarycolumn\">\n <h2>Actions</h2>\n <div class=\"listtoolbar\" id=\"actionstoolbar\">\n <div class=\"listtoolbar-item settings\">\n <div class=\"button borderless filters\" id=\"actions-filters\" actionFiltersDialog><span class=\"ph-faders-horizontal-bold icon\"></span> Filters <span class=\"filtercount\" *ngIf=\"filterCount > 0\">{{filterCount}}</span></div>\n <div class=\"button borderless sort\" id=\"actions-sort\" [matMenuTriggerFor]=\"matSortingMenu\"><span class=\"ph-funnel-simple-bold icon\"></span> {{userSettings.settings.user.interventionFilter.sort || \"Sort\"}}</div>\n <mat-menu #matSortingMenu=\"matMenu\">\n <button mat-menu-item *ngFor=\"let sortOption of sortOptionsList\" (click)=\"setSort(sortOption.key)\">\n {{sortOption.label}}\n </button>\n </mat-menu>\n <div class=\"button borderless\" id=\"export-actions\" exportActionsDialog *ngIf=\"isLoggedIn\"><span class=\"ph-download-simple icon\"></span> Export</div>\n </div>\n\n <mat-form-field class=\"listtoolbar-item findbykeyword\" appearance=\"fill\">\n <mat-label>search</mat-label>\n <input matInput name=\"keyword\" id=\"actions-filter-keyword\" type=\"text\" maxlength=\"50\" [formControl]=\"keywordControl\" />\n </mat-form-field>\n \n <div class=\"listtoolbar-item quickactions\">\n <!--<div class=\"viewmodes\">\n <div class=\"viewmode active\"><span class=\"ph-grid-four icon\"></span></div>\n <div class=\"viewmode\"><span class=\"ph-list icon\"></span></div>\n </div>-->\n <a class=\"button primary newaction\" id=\"action-addnew\" addActionDialog [prefill]=\"prefill\"><span class=\"icon ph-plus\"></span> New action</a>\n </div>\n </div>\n\n <div class=\"loading\" *ngIf=\"!actions.items\">\n <div class=\"loading-icon dark\"></div>\n </div>\n\n <div class=\"wirebox calltoaction\" *ngIf=\"actions.items && actions.items.length == 0\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <img src=\"assets/img/improve.png\" />\n <h2>How will you improve?</h2>\n <p>Identifying the areas where you want to improve is only the first step. How do you and your team(s) aim to improve? Add the actions you intend to take and where you expect improvements when successful.</p>\n </div>\n </div>\n </div>\n\n <div class=\"actions\" *ngIf=\"actions && actions.items\">\n <action-tile *ngFor=\"let action of actions.items\" [action]=\"action\" [multipleTeams]=\"multipleTeams\" [actionManageComponent]=\"actionManageComponent\"></action-tile>\n </div>\n\n <paginator [items]=\"actions\" (page)=\"setPaging($event)\" *ngIf=\"actions && actions.items && actions.totalItems > 0\"></paginator>\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}.primarycolumn .introduction{font-size:19px;line-height:140%;margin-bottom:30px}.primarycolumn .actions{margin-top:30px;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:50px;grid-auto-rows:1fr}@media only screen and (max-width: 1536px){.primarycolumn .actions{grid-template-columns:repeat(2,1fr)}}@media only screen and (max-width: 992px){.primarycolumn .actions{grid-template-columns:repeat(1,1fr)}}.primarycolumn .calltoaction{margin-top:30px}.addintervention h3,.filter h3{margin-top:30px;margin-bottom:30px}\n"], dependencies: [{ kind: "component", type: i4.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "component", type: PaginatorComponent, selector: "paginator", inputs: ["items"], outputs: ["page"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: ActionTileComponent, selector: "action-tile", inputs: ["action", "multipleTeams", "actionManageComponent"] }, { kind: "directive", type: OpenAddActionDialogDirective, selector: "[addActionDialog]", inputs: ["prefill"] }, { kind: "directive", type: OpenActionFiltersDialogDirective, selector: "[actionFiltersDialog]" }, { kind: "directive", type: OpenExportActionsDialogDirective, selector: "[exportActionsDialog]" }] }); }
1211
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ActionListComponent, isStandalone: false, selector: "action-list", inputs: { prefill: "prefill", overrideFilter: "overrideFilter" }, viewQueries: [{ propertyName: "actionManageComponent", first: true, predicate: ActionManageComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"primarycolumn\">\n <h2>Actions</h2>\n <div class=\"listtoolbar\" id=\"actionstoolbar\">\n <div class=\"listtoolbar-item settings\">\n <div class=\"button borderless filters\" id=\"actions-filters\" actionFiltersDialog><span class=\"ph-faders-horizontal-bold icon\"></span> Filters <span class=\"filtercount\" *ngIf=\"filterCount > 0\">{{filterCount}}</span></div>\n <div class=\"button borderless sort\" id=\"actions-sort\" [matMenuTriggerFor]=\"matSortingMenu\"><span class=\"ph-funnel-simple-bold icon\"></span> {{userSettings.settings.user.interventionFilter.sort || \"Sort\"}}</div>\n <mat-menu #matSortingMenu=\"matMenu\">\n <button mat-menu-item *ngFor=\"let sortOption of sortOptionsList\" (click)=\"setSort(sortOption.key)\">\n {{sortOption.label}}\n </button>\n </mat-menu>\n <div class=\"button borderless\" id=\"export-actions\" exportActionsDialog *ngIf=\"isLoggedIn\"><span class=\"ph-download-simple icon\"></span> Export</div>\n </div>\n\n <mat-form-field class=\"listtoolbar-item findbykeyword\" appearance=\"fill\">\n <mat-label>search</mat-label>\n <input matInput name=\"keyword\" id=\"actions-filter-keyword\" type=\"text\" maxlength=\"50\" [formControl]=\"keywordControl\" />\n </mat-form-field>\n \n <div class=\"listtoolbar-item quickactions\">\n <!--<div class=\"viewmodes\">\n <div class=\"viewmode active\"><span class=\"ph-grid-four icon\"></span></div>\n <div class=\"viewmode\"><span class=\"ph-list icon\"></span></div>\n </div>-->\n <a class=\"button primary newaction\" id=\"action-addnew\" addActionDialog [prefill]=\"prefill\"><span class=\"icon ph-plus\"></span> New action</a>\n </div>\n </div>\n\n <div class=\"loading\" *ngIf=\"!actions.items\">\n <div class=\"loading-icon dark\"></div>\n </div>\n\n <div class=\"wirebox calltoaction\" *ngIf=\"actions.items && actions.items.length == 0\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <img src=\"assets/img/improve.png\" />\n <h2>How will you improve?</h2>\n <p>Identifying the areas where you want to improve is only the first step. How do you and your team(s) aim to improve? Add the actions you intend to take and where you expect improvements when successful.</p>\n </div>\n </div>\n </div>\n\n <div class=\"actions\" *ngIf=\"actions && actions.items\">\n <action-tile *ngFor=\"let action of actions.items\" [action]=\"action\" [multipleTeams]=\"multipleTeams\" [actionManageComponent]=\"actionManageComponent\"></action-tile>\n </div>\n\n <paginator [items]=\"actions\" (page)=\"setPaging($event)\" *ngIf=\"actions && actions.items && actions.totalItems > 0\"></paginator>\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}.primarycolumn .introduction{font-size:19px;line-height:140%;margin-bottom:30px}.primarycolumn .actions{margin-top:30px;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:50px;grid-auto-rows:1fr}@media only screen and (max-width: 1536px){.primarycolumn .actions{grid-template-columns:repeat(2,1fr)}}@media only screen and (max-width: 992px){.primarycolumn .actions{grid-template-columns:repeat(1,1fr)}}.primarycolumn .calltoaction{margin-top:30px}.addintervention h3,.filter h3{margin-top:30px;margin-bottom:30px}\n"], dependencies: [{ kind: "component", type: i4$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i4$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "component", type: PaginatorComponent, selector: "paginator", inputs: ["items"], outputs: ["page"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: ActionTileComponent, selector: "action-tile", inputs: ["action", "multipleTeams", "actionManageComponent"] }, { kind: "directive", type: OpenAddActionDialogDirective, selector: "[addActionDialog]", inputs: ["prefill"] }, { kind: "directive", type: OpenActionFiltersDialogDirective, selector: "[actionFiltersDialog]" }, { kind: "directive", type: OpenExportActionsDialogDirective, selector: "[exportActionsDialog]" }] }); }
1216
1212
  }
1217
1213
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ActionListComponent, decorators: [{
1218
1214
  type: Component,
@@ -2156,7 +2152,7 @@ class DialogSupportComponent {
2156
2152
  }
2157
2153
  ;
2158
2154
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSupportComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1$4.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: ContactService }, { token: i1.MatSnackBar }, { token: i1$2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
2159
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogSupportComponent, isStandalone: false, selector: "ng-component", ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title *ngIf=\"form.controls.type.value == 0\">Share feedback</h1>\n <h1 mat-dialog-title *ngIf=\"form.controls.type.value == 1\">Report bug</h1>\n <h1 mat-dialog-title *ngIf=\"form.controls.type.value == 2\">Ask for help</h1>\n <h1 mat-dialog-title *ngIf=\"form.controls.type.value == 3\">Ask a question</h1>\n <h1 mat-dialog-title *ngIf=\"form.controls.type.value == 4\">Contact sales</h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n <form [formGroup]=\"form\" *ngIf=\"!success\">\n <p *ngIf=\"form.controls.type.value == 0\">We'd love to hear your feedback, and will do our best to improve!</p>\n <p *ngIf=\"form.controls.type.value == 1\">We're sorry you ran into a bug. Tell us what happend and we'll fix it.</p>\n <p *ngIf=\"form.controls.type.value == 2\">Looking for help? Let us know how we can assist you best.</p>\n <p *ngIf=\"form.controls.type.value == 3\">Got a question for us? Let us know and we'll get back quickly.</p>\n <p *ngIf=\"form.controls.type.value == 4\">Lets us know how we can help you.</p>\n\n <div class=\"errors\" *ngIf=\"error\">\n {{error}}\n </div>\n\n <mat-form-field class=\"type\" appearance=\"fill\" *ngIf=\"!typePrefilled\" subscriptSizing=\"dynamic\">\n <mat-label>Type of request</mat-label>\n <mat-select formControlName=\"type\" id=\"question-type\">\n <mat-option class=\"select-option\" *ngFor=\"let item of contactTypes\" [value]=\"item.id\">{{item.label}}</mat-option>\n </mat-select>\n <mat-error *ngIf=\"form.controls.type.errors && submitted\">\n <div *ngIf=\"form.controls.type.errors.required\">Please select the type of request</div>\n </mat-error>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label *ngIf=\"form.controls.type.value == 0\">What would you like us to improve?</mat-label>\n <mat-label *ngIf=\"form.controls.type.value == 1\">Please describe the problem</mat-label>\n <mat-label *ngIf=\"form.controls.type.value == 2\">How can we help you?</mat-label>\n <mat-label *ngIf=\"form.controls.type.value == 3\">Please describe your question</mat-label>\n <mat-label *ngIf=\"form.controls.type.value == 4\">What are you looking for?</mat-label>\n <textarea formControlName=\"body\" id=\"question-description\" matInput></textarea>\n <mat-error *ngIf=\"form.controls.body.errors && submitted\">\n <div *ngIf=\"form.controls.body.errors.required\">Please enter this field</div>\n </mat-error>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>Your e-mail address (optional)</mat-label>\n <input matInput formControlName=\"email\" id=\"question-email\" type=\"email\">\n <mat-error *ngIf=\"form.controls.email.errors && submitted\">\n <div *ngIf=\"form.controls.email.errors.email\">Please provide a valid e-mail</div>\n </mat-error>\n </mat-form-field>\n <button class=\"button primary\" type=\"submit\" [ngClass]=\"{'loading': sending }\" (click)=\"submitContactForm()\">submit</button>\n </form>\n <div class=\"confirmation\" *ngIf=\"success\">\n <p>Thank you for contacting us. We will contact you shorthly to resolve your question, feedback or issue. This window will close automatically in a few seconds.</p>\n </div>\n</mat-dialog-content>\n", styles: [".errors{margin-bottom:15px}.confirmation h4{margin:0 0 5px}.confirmation p{margin:0}\n"], dependencies: [{ kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5.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", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] }); }
2155
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogSupportComponent, isStandalone: false, selector: "ng-component", ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title *ngIf=\"form.controls.type.value == 0\">Share feedback</h1>\n <h1 mat-dialog-title *ngIf=\"form.controls.type.value == 1\">Report bug</h1>\n <h1 mat-dialog-title *ngIf=\"form.controls.type.value == 2\">Ask for help</h1>\n <h1 mat-dialog-title *ngIf=\"form.controls.type.value == 3\">Ask a question</h1>\n <h1 mat-dialog-title *ngIf=\"form.controls.type.value == 4\">Contact sales</h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n <form [formGroup]=\"form\" *ngIf=\"!success\">\n <p *ngIf=\"form.controls.type.value == 0\">We'd love to hear your feedback, and will do our best to improve!</p>\n <p *ngIf=\"form.controls.type.value == 1\">We're sorry you ran into a bug. Tell us what happend and we'll fix it.</p>\n <p *ngIf=\"form.controls.type.value == 2\">Looking for help? Let us know how we can assist you best.</p>\n <p *ngIf=\"form.controls.type.value == 3\">Got a question for us? Let us know and we'll get back quickly.</p>\n <p *ngIf=\"form.controls.type.value == 4\">Lets us know how we can help you.</p>\n\n <div class=\"errors\" *ngIf=\"error\">\n {{error}}\n </div>\n\n <mat-form-field class=\"type\" appearance=\"fill\" *ngIf=\"!typePrefilled\" subscriptSizing=\"dynamic\">\n <mat-label>Type of request</mat-label>\n <mat-select formControlName=\"type\" id=\"question-type\">\n <mat-option class=\"select-option\" *ngFor=\"let item of contactTypes\" [value]=\"item.id\">{{item.label}}</mat-option>\n </mat-select>\n <mat-error *ngIf=\"form.controls.type.errors && submitted\">\n <div *ngIf=\"form.controls.type.errors.required\">Please select the type of request</div>\n </mat-error>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label *ngIf=\"form.controls.type.value == 0\">What would you like us to improve?</mat-label>\n <mat-label *ngIf=\"form.controls.type.value == 1\">Please describe the problem</mat-label>\n <mat-label *ngIf=\"form.controls.type.value == 2\">How can we help you?</mat-label>\n <mat-label *ngIf=\"form.controls.type.value == 3\">Please describe your question</mat-label>\n <mat-label *ngIf=\"form.controls.type.value == 4\">What are you looking for?</mat-label>\n <textarea formControlName=\"body\" id=\"question-description\" matInput></textarea>\n <mat-error *ngIf=\"form.controls.body.errors && submitted\">\n <div *ngIf=\"form.controls.body.errors.required\">Please enter this field</div>\n </mat-error>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>Your e-mail address (optional)</mat-label>\n <input matInput formControlName=\"email\" id=\"question-email\" type=\"email\">\n <mat-error *ngIf=\"form.controls.email.errors && submitted\">\n <div *ngIf=\"form.controls.email.errors.email\">Please provide a valid e-mail</div>\n </mat-error>\n </mat-form-field>\n <button class=\"button primary\" type=\"submit\" [ngClass]=\"{'loading': sending }\" (click)=\"submitContactForm()\">submit</button>\n </form>\n <div class=\"confirmation\" *ngIf=\"success\">\n <p>Thank you for contacting us. We will contact you shorthly to resolve your question, feedback or issue. This window will close automatically in a few seconds.</p>\n </div>\n</mat-dialog-content>\n", styles: [".errors{margin-bottom:15px}.confirmation h4{margin:0 0 5px}.confirmation p{margin:0}\n"], dependencies: [{ kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5.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", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] }); }
2160
2156
  }
2161
2157
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSupportComponent, decorators: [{
2162
2158
  type: Component,
@@ -2486,319 +2482,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
2486
2482
  }]
2487
2483
  }] });
2488
2484
 
2489
- // Public classes.
2490
-
2491
- class DialogSubscribeComponent {
2492
- constructor(state) {
2493
- this.state = state;
2494
- this.state.data.pipe(take(1)).subscribe(success => {
2495
- if (success.userInfo.branding.isDefault) {
2496
- this.title = "Try 1 month for &euro;1,-";
2497
- this.button = "Try now";
2498
- this.discount = true;
2499
- }
2500
- else {
2501
- this.title = "Upgrade to Professional";
2502
- this.button = "Learn more";
2503
- }
2504
- this.subscribeUrl = success.userInfo.branding.channelSubscribeUrl;
2505
- this.companyUrl = success.userInfo.branding.channelCompanyUrl;
2506
- });
2507
- }
2508
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeComponent, deps: [{ token: VIEWSTATE_PROVIDER }], target: i0.ɵɵFactoryTarget.Component }); }
2509
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogSubscribeComponent, isStandalone: false, selector: "ng-component", ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title [innerHtml]=\"title\"></h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n <p>Discover the full power of Columinity with our <b>Professional plan</b>:</p>\n <ul>\n <li>Extensive science-based recommendations.</li>\n <li>Access to the Teams Dashboard.</li>\n <li>Secure access with user accounts.</li>\n <li>Aggregate results from many teams.</li>\n <li>Set up repeat scans more easily.</li>\n <li>Access to more results and statistics.</li>\n <li>More benchmarks.</li>\n </ul>\n\n <div class=\"message message-black\" *ngIf=\"discount\"><span class=\"icon ph-smiley-fill\"></span><span>Use the coupon <b>TRYPRO</b> to pay only &euro;1,- for the first team on your monthly Professional plan.</span></div>\n <a class=\"button primary\" [href]=\"subscribeUrl\">{{button}}</a>\n</mat-dialog-content>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
2510
- }
2511
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeComponent, decorators: [{
2512
- type: Component,
2513
- args: [{ standalone: false, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title [innerHtml]=\"title\"></h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n <p>Discover the full power of Columinity with our <b>Professional plan</b>:</p>\n <ul>\n <li>Extensive science-based recommendations.</li>\n <li>Access to the Teams Dashboard.</li>\n <li>Secure access with user accounts.</li>\n <li>Aggregate results from many teams.</li>\n <li>Set up repeat scans more easily.</li>\n <li>Access to more results and statistics.</li>\n <li>More benchmarks.</li>\n </ul>\n\n <div class=\"message message-black\" *ngIf=\"discount\"><span class=\"icon ph-smiley-fill\"></span><span>Use the coupon <b>TRYPRO</b> to pay only &euro;1,- for the first team on your monthly Professional plan.</span></div>\n <a class=\"button primary\" [href]=\"subscribeUrl\">{{button}}</a>\n</mat-dialog-content>\n" }]
2514
- }], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
2515
- type: Inject,
2516
- args: [VIEWSTATE_PROVIDER]
2517
- }] }] });
2518
-
2519
- class OpenSubscribeDialogDirective {
2520
- constructor(dialog) {
2521
- this.dialog = dialog;
2522
- }
2523
- onClick() {
2524
- const dialogConfig = new MatDialogConfig();
2525
- dialogConfig.panelClass = ['dialog', 'subscribe', 'primary'];
2526
- dialogConfig.autoFocus = false;
2527
- dialogConfig.enterAnimationDuration = 0;
2528
- dialogConfig.exitAnimationDuration = 0;
2529
- this.dialog.open(DialogSubscribeComponent, dialogConfig);
2530
- }
2531
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: OpenSubscribeDialogDirective, deps: [{ token: i1$4.MatDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
2532
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.5", type: OpenSubscribeDialogDirective, isStandalone: false, selector: "[subscribeDialog]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
2533
- }
2534
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: OpenSubscribeDialogDirective, decorators: [{
2535
- type: Directive,
2536
- args: [{
2537
- selector: '[subscribeDialog]',
2538
- standalone: false
2539
- }]
2540
- }], ctorParameters: () => [{ type: i1$4.MatDialog }], propDecorators: { onClick: [{
2541
- type: HostListener,
2542
- args: ['click']
2543
- }] } });
2544
-
2545
- class DialogSubscribeModule {
2546
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2547
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeModule, declarations: [DialogSubscribeComponent, OpenSubscribeDialogDirective], imports: [MatDialogModule, CommonModule], exports: [DialogSubscribeComponent, OpenSubscribeDialogDirective] }); }
2548
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeModule, imports: [MatDialogModule, CommonModule] }); }
2549
- }
2550
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeModule, decorators: [{
2551
- type: NgModule,
2552
- args: [{
2553
- imports: [MatDialogModule, CommonModule],
2554
- declarations: [DialogSubscribeComponent, OpenSubscribeDialogDirective],
2555
- exports: [DialogSubscribeComponent, OpenSubscribeDialogDirective]
2556
- }]
2557
- }] });
2558
-
2559
- class DateRangePipe {
2560
- constructor(datePipe) {
2561
- this.datePipe = datePipe;
2562
- }
2563
- transform(dateRange) {
2564
- if (dateRange == null) {
2565
- return null;
2566
- }
2567
- var fromDate = new Date(dateRange.from);
2568
- var toDate = new Date(dateRange.to);
2569
- var isSameDay = (fromDate.getDate() === toDate.getDate() && fromDate.getMonth() === toDate.getMonth() && fromDate.getFullYear() === toDate.getFullYear());
2570
- var pattern = fromDate.getFullYear() == toDate.getFullYear() ? 'MMMM d' : 'MMM d, YYYY';
2571
- if (dateRange.from != null && dateRange.to == null) {
2572
- return this.datePipe.transform(dateRange.from, pattern);
2573
- }
2574
- if (dateRange.from == null && dateRange.to != null) {
2575
- return this.datePipe.transform(dateRange.to, pattern);
2576
- }
2577
- if (isSameDay) {
2578
- return this.datePipe.transform(dateRange.from, pattern);
2579
- }
2580
- return this.datePipe.transform(dateRange.from, pattern) + ' to ' + this.datePipe.transform(dateRange.to, pattern);
2581
- }
2582
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipe, deps: [{ token: i1$1.DatePipe }], target: i0.ɵɵFactoryTarget.Pipe }); }
2583
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipe, isStandalone: false, name: "dateRange" }); }
2584
- }
2585
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipe, decorators: [{
2586
- type: Pipe,
2587
- args: [{
2588
- name: 'dateRange',
2589
- standalone: false
2590
- }]
2591
- }], ctorParameters: () => [{ type: i1$1.DatePipe }] });
2592
-
2593
- class DateRangePipeModule {
2594
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2595
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipeModule, declarations: [DateRangePipe], exports: [DateRangePipe] }); }
2596
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipeModule, providers: [DateRangePipe] }); }
2597
- }
2598
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipeModule, decorators: [{
2599
- type: NgModule,
2600
- args: [{
2601
- providers: [DateRangePipe],
2602
- declarations: [DateRangePipe],
2603
- exports: [DateRangePipe]
2604
- }]
2605
- }] });
2606
-
2607
- class GetHelpFormComponent extends ComponentWithViewStateBase {
2608
- constructor(contactService, formBuilder, state, snackBar) {
2609
- super(state, snackBar);
2610
- this.contactService = contactService;
2611
- this.formBuilder = formBuilder;
2612
- this.state = state;
2613
- this.snackBar = snackBar;
2614
- this.requestList = [];
2615
- }
2616
- ngOnInit() {
2617
- super.ngOnInit();
2618
- this.createForm();
2619
- this.requestList.push("I don't understand something in our results");
2620
- this.requestList.push("My team doesn't know where or how to start improving");
2621
- this.requestList.push("We're stuck and we don't know how to move forward");
2622
- this.requestList.push("Help my organization get more out of this tool");
2623
- this.requestList.push("I'm looking for personal coaching or mentoring");
2624
- this.requestList.push("Something else");
2625
- }
2626
- onSubmit(formDirective) {
2627
- if (!this.form.valid) {
2628
- return;
2629
- }
2630
- this.submitted = true;
2631
- var request = {
2632
- type: 2,
2633
- requests: this.form.get("requests").value,
2634
- fromEmail: this.form.get("email").value,
2635
- body: this.form.get("body").value,
2636
- context: this.context
2637
- };
2638
- this.contactService.send(request).subscribe(success => {
2639
- this.submitted = false;
2640
- this.form.reset();
2641
- formDirective.resetForm();
2642
- this.showSuccess("Awesome! We will get back to you shortly.");
2643
- }, error => {
2644
- this.showError("Yikes! We ran into an issue while sending your request. Please try again or, or contact info@columinity.com directly.");
2645
- });
2646
- }
2647
- cancel() {
2648
- this.form.reset();
2649
- }
2650
- createForm() {
2651
- this.form = this.formBuilder.group({
2652
- body: ["", [Validators.required, Validators.maxLength(500)]],
2653
- requests: ["", Validators.required],
2654
- email: ["", [Validators.required, Validators.email]]
2655
- });
2656
- }
2657
- onDataUpdate(data) {
2658
- this.context = data.context;
2659
- }
2660
- ;
2661
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: GetHelpFormComponent, deps: [{ token: ContactService }, { token: i1$2.FormBuilder }, { token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
2662
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: GetHelpFormComponent, isStandalone: false, selector: "gethelp-form", usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" (ngSubmit)=\"onSubmit(formDirective)\" #formDirective=\"ngForm\" class=\"gethelp-form form\">\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>What would you like help with?</mat-label>\n <mat-select multiple formControlName=\"requests\" id=\"requests\">\n <mat-option class=\"select-option\" *ngFor=\"let request of requestList\" [value]=\"request\">{{request}}</mat-option>\n </mat-select>\n <mat-error *ngIf=\"form.controls.requests.errors\">\n <div *ngIf=\"form.controls.requests.errors.required\">Please select where you need help</div>\n </mat-error>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>Enter a short description of the kind of help you need</mat-label>\n <textarea matInput formControlName=\"body\" id=\"body\" rows=\"3\" maxlength=\"500\"></textarea>\n <mat-error *ngIf=\"form.controls.body.errors\">\n <div *ngIf=\"form.controls.body.errors.required\">Please describe how we can help you</div>\n <div *ngIf=\"form.controls.body.errors.maxlength\">Please limit to 500 characters</div>\n </mat-error>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>Your email address</mat-label>\n <input matInput formControlName=\"email\" id=\"email\" />\n <mat-error *ngIf=\"form.controls.email.errors\">\n <div *ngIf=\"form.controls.email.errors.required\">Please enter a description</div>\n <div *ngIf=\"form.controls.email.errors.email\">Please enter a valid e-mail address</div>\n </mat-error>\n </mat-form-field>\n <div class=\"toolbar leftright\">\n <div>\n <a class=\"button borderless cancel\" href=\"javascript:void(null);\" (click)=\"cancel()\" id=\"cancel\" *ngIf=\"form.dirty\"><span class=\"icon ph-x-circle\"></span> cancel</a>\n </div>\n <input class=\"button primary\" type=\"submit\" id=\"submit\" value=\"Get help!\" [ngClass]=\"{'loading': submitted}\" [disabled]=\"submitted\" />\n </div>\n</form>\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}form{margin-top:20px;position:sticky;top:20px}form .mat-mdc-form-field{width:100%;margin-bottom:10px}form .toolbar .button.cancel{padding-left:0;margin-left:0}@media only screen and (min-width: 992px){form .toolbar .delete{padding-left:0;margin-left:0}}.hourlyrate{margin-top:30px;text-align:right;color:#726d00;font-size:14px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5.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", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }] }); }
2663
- }
2664
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: GetHelpFormComponent, decorators: [{
2665
- type: Component,
2666
- args: [{ selector: 'gethelp-form', standalone: false, template: "<form [formGroup]=\"form\" (ngSubmit)=\"onSubmit(formDirective)\" #formDirective=\"ngForm\" class=\"gethelp-form form\">\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>What would you like help with?</mat-label>\n <mat-select multiple formControlName=\"requests\" id=\"requests\">\n <mat-option class=\"select-option\" *ngFor=\"let request of requestList\" [value]=\"request\">{{request}}</mat-option>\n </mat-select>\n <mat-error *ngIf=\"form.controls.requests.errors\">\n <div *ngIf=\"form.controls.requests.errors.required\">Please select where you need help</div>\n </mat-error>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>Enter a short description of the kind of help you need</mat-label>\n <textarea matInput formControlName=\"body\" id=\"body\" rows=\"3\" maxlength=\"500\"></textarea>\n <mat-error *ngIf=\"form.controls.body.errors\">\n <div *ngIf=\"form.controls.body.errors.required\">Please describe how we can help you</div>\n <div *ngIf=\"form.controls.body.errors.maxlength\">Please limit to 500 characters</div>\n </mat-error>\n </mat-form-field>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>Your email address</mat-label>\n <input matInput formControlName=\"email\" id=\"email\" />\n <mat-error *ngIf=\"form.controls.email.errors\">\n <div *ngIf=\"form.controls.email.errors.required\">Please enter a description</div>\n <div *ngIf=\"form.controls.email.errors.email\">Please enter a valid e-mail address</div>\n </mat-error>\n </mat-form-field>\n <div class=\"toolbar leftright\">\n <div>\n <a class=\"button borderless cancel\" href=\"javascript:void(null);\" (click)=\"cancel()\" id=\"cancel\" *ngIf=\"form.dirty\"><span class=\"icon ph-x-circle\"></span> cancel</a>\n </div>\n <input class=\"button primary\" type=\"submit\" id=\"submit\" value=\"Get help!\" [ngClass]=\"{'loading': submitted}\" [disabled]=\"submitted\" />\n </div>\n</form>\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}form{margin-top:20px;position:sticky;top:20px}form .mat-mdc-form-field{width:100%;margin-bottom:10px}form .toolbar .button.cancel{padding-left:0;margin-left:0}@media only screen and (min-width: 992px){form .toolbar .delete{padding-left:0;margin-left:0}}.hourlyrate{margin-top:30px;text-align:right;color:#726d00;font-size:14px}\n"] }]
2667
- }], ctorParameters: () => [{ type: ContactService }, { type: i1$2.FormBuilder }, { type: ViewModelStateBase, decorators: [{
2668
- type: Inject,
2669
- args: [VIEWSTATE_PROVIDER]
2670
- }] }, { type: i1.MatSnackBar }] });
2671
-
2672
- class MeetupsComponent extends ComponentWithViewStateBase {
2673
- constructor(addToCalendarService, state, sanitizer, snackBar) {
2674
- super(state, snackBar);
2675
- this.addToCalendarService = addToCalendarService;
2676
- this.state = state;
2677
- this.sanitizer = sanitizer;
2678
- this.snackBar = snackBar;
2679
- this.meetups = [];
2680
- }
2681
- allowedToJoin(meetup) {
2682
- if (!meetup.subscriberOnly) {
2683
- return true;
2684
- }
2685
- if (meetup.subscriberOnly && this.subscribed) {
2686
- return true;
2687
- }
2688
- return false;
2689
- }
2690
- googleUrl(meetup) {
2691
- return this.sanitizer.bypassSecurityTrustUrl(this.addToCalendarService.getHrefFor(this.addToCalendarService.calendarType.google, this.createEvent(meetup)));
2692
- }
2693
- outlookUrl(meetup) {
2694
- return this.sanitizer.bypassSecurityTrustUrl(this.addToCalendarService.getHrefFor(this.addToCalendarService.calendarType.outlook, this.createEvent(meetup)));
2695
- }
2696
- iCalendarUrl(meetup) {
2697
- return this.sanitizer.bypassSecurityTrustUrl(this.addToCalendarService.getHrefFor(this.addToCalendarService.calendarType.iCalendar, this.createEvent(meetup)));
2698
- }
2699
- createEvent(meetup) {
2700
- var fromDate = moment.utc(meetup.from).local().toDate();
2701
- var toDate = moment.utc(meetup.to).local().toDate();
2702
- var event = {
2703
- title: "Meetup: " + meetup.title,
2704
- start: fromDate,
2705
- end: toDate,
2706
- duration: meetup.to.valueOf() - meetup.from.valueOf(),
2707
- address: meetup.url,
2708
- description: meetup.description + '\\n\\nIMPORTANT: Please check the time and date in the days preceeding the meetup. We sometimes reschedule meetups, and such changes are not automatically reflected in your calendar.'
2709
- };
2710
- return event;
2711
- }
2712
- onDataUpdate(data) {
2713
- this.subscribed = data.isSubscriber;
2714
- this.meetups = data.meetups.items;
2715
- }
2716
- ;
2717
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MeetupsComponent, deps: [{ token: NgAddToCalendarService }, { token: VIEWSTATE_PROVIDER }, { token: i2$1.DomSanitizer }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
2718
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MeetupsComponent, isStandalone: false, selector: "meetups", usesInheritance: true, ngImport: i0, template: "<div class=\"meetups\">\n <div class=\"meetup wirebox\" *ngFor=\"let meetup of meetups\">\n <div class=\"top titleandaction\">\n <h3>{{meetup.title}}</h3>\n <div class=\"details\">\n <div class=\"detail\"><span class=\"icon ph-calendar-blank\"></span> {{meetup.from | date: 'MMM d, h:mm a' }} to {{meetup.to | date: 'shortTime' }} CEST<br /></div>\n <div class=\"detail\"><span class=\"icon ph-map-pin\"></span> {{meetup.location}}</div>\n </div>\n </div>\n <div class=\"content\">\n <p>{{meetup.description}}</p>\n </div>\n <div class=\"bottom\">\n <div class=\"toolbar leftright\">\n <div *ngIf=\"allowedToJoin(meetup) && meetup.url\">\n <b>Zoom link:</b><br /><a [href]=\"meetup.url\">{{meetup.url}}</a>\n </div>\n\n <div *ngIf=\"!meetup.url || !allowedToJoin(meetup)\"></div>\n\n <div class=\"button subscribersonly\" *ngIf=\"!allowedToJoin(meetup)\" subscribeDialog>only for subscribers</div>\n <button mat-button [matMenuTriggerFor]=\"menu\" *ngIf=\"allowedToJoin(meetup)\" class=\"button\">Add to calendar</button>\n <mat-menu #menu=\"matMenu\" [overlapTrigger]=\"false\">\n <a mat-menu-item target=\"_blank\" [href]=\"googleUrl(meetup)\"><span class=\"icon ph-google-logo\"></span> Google</a>\n <a mat-menu-item [href]=\"outlookUrl(meetup)\"><span class=\"icon ph-windows-logo\"></span> Outlook</a>\n <a mat-menu-item [href]=\"iCalendarUrl(meetup)\"><span class=\"icon ph-calendar\"></span> iCalendar (.ical)</a>\n </mat-menu>\n </div>\n </div>\n </div>\n <div class=\"meetup wirebox\">\n <div class=\"top titleandaction\">\n <h3>In-house Workshop: Diagnose Your Scrum Team</h3>\n <div class=\"details\">\n <div class=\"detail\"><span class=\"icon ph-calendar-blank\"></span> On a date that suits your team<br /></div>\n <div class=\"detail\"><span class=\"icon ph-map-pin\"></span> Online or in-person</div>\n </div>\n </div>\n <div class=\"content\">\n <p>\n Diagnose and inspect one or more Scrum teams in your organization, and work together to identify actionable improvements to work more effectively. We design this workshop to suit your needs, and facilitate it for your teams. Workshops can take between 2 hours and 2 days, depending on your needs.\n </p>\n </div>\n <div class=\"bottom\">\n <div class=\"toolbar leftright\">\n <div></div>\n <div class=\"button requestquote\" lookingForHelpDialog>contact us</div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.meetups .meetup .toolbar .subscribersonly{background:#1f3f8f;color:#fff}.meetups .meetup .toolbar .requestquote{background:#00af77;color:#fff}.meetups .meetup .content p{margin:0}@media only screen and (max-width: 1320px){.meetups .meetup .titleandaction{display:block}.meetups .meetup .titleandaction .details{margin-top:20px}}.meetups .meetup .titleandaction .details{width:300px}.meetups .meetup .titleandaction .details .detail{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;line-height:140%;text-transform:uppercase;line-height:100%;font-size:15px;font-weight:600}.meetups .meetup .titleandaction .details .detail:not(:last-of-type){margin-bottom:15px}.meetups .meetup .titleandaction .details .detail .icon{vertical-align:middle;margin-right:10px}.wirebox .toolbar .button{margin-right:0}\n"], dependencies: [{ kind: "component", type: i4.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: OpenLookingForHelpDialog, selector: "[lookingForHelpDialog]" }, { kind: "directive", type: OpenSubscribeDialogDirective, selector: "[subscribeDialog]" }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }] }); }
2719
- }
2720
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MeetupsComponent, decorators: [{
2721
- type: Component,
2722
- args: [{ selector: 'meetups', standalone: false, template: "<div class=\"meetups\">\n <div class=\"meetup wirebox\" *ngFor=\"let meetup of meetups\">\n <div class=\"top titleandaction\">\n <h3>{{meetup.title}}</h3>\n <div class=\"details\">\n <div class=\"detail\"><span class=\"icon ph-calendar-blank\"></span> {{meetup.from | date: 'MMM d, h:mm a' }} to {{meetup.to | date: 'shortTime' }} CEST<br /></div>\n <div class=\"detail\"><span class=\"icon ph-map-pin\"></span> {{meetup.location}}</div>\n </div>\n </div>\n <div class=\"content\">\n <p>{{meetup.description}}</p>\n </div>\n <div class=\"bottom\">\n <div class=\"toolbar leftright\">\n <div *ngIf=\"allowedToJoin(meetup) && meetup.url\">\n <b>Zoom link:</b><br /><a [href]=\"meetup.url\">{{meetup.url}}</a>\n </div>\n\n <div *ngIf=\"!meetup.url || !allowedToJoin(meetup)\"></div>\n\n <div class=\"button subscribersonly\" *ngIf=\"!allowedToJoin(meetup)\" subscribeDialog>only for subscribers</div>\n <button mat-button [matMenuTriggerFor]=\"menu\" *ngIf=\"allowedToJoin(meetup)\" class=\"button\">Add to calendar</button>\n <mat-menu #menu=\"matMenu\" [overlapTrigger]=\"false\">\n <a mat-menu-item target=\"_blank\" [href]=\"googleUrl(meetup)\"><span class=\"icon ph-google-logo\"></span> Google</a>\n <a mat-menu-item [href]=\"outlookUrl(meetup)\"><span class=\"icon ph-windows-logo\"></span> Outlook</a>\n <a mat-menu-item [href]=\"iCalendarUrl(meetup)\"><span class=\"icon ph-calendar\"></span> iCalendar (.ical)</a>\n </mat-menu>\n </div>\n </div>\n </div>\n <div class=\"meetup wirebox\">\n <div class=\"top titleandaction\">\n <h3>In-house Workshop: Diagnose Your Scrum Team</h3>\n <div class=\"details\">\n <div class=\"detail\"><span class=\"icon ph-calendar-blank\"></span> On a date that suits your team<br /></div>\n <div class=\"detail\"><span class=\"icon ph-map-pin\"></span> Online or in-person</div>\n </div>\n </div>\n <div class=\"content\">\n <p>\n Diagnose and inspect one or more Scrum teams in your organization, and work together to identify actionable improvements to work more effectively. We design this workshop to suit your needs, and facilitate it for your teams. Workshops can take between 2 hours and 2 days, depending on your needs.\n </p>\n </div>\n <div class=\"bottom\">\n <div class=\"toolbar leftright\">\n <div></div>\n <div class=\"button requestquote\" lookingForHelpDialog>contact us</div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.meetups .meetup .toolbar .subscribersonly{background:#1f3f8f;color:#fff}.meetups .meetup .toolbar .requestquote{background:#00af77;color:#fff}.meetups .meetup .content p{margin:0}@media only screen and (max-width: 1320px){.meetups .meetup .titleandaction{display:block}.meetups .meetup .titleandaction .details{margin-top:20px}}.meetups .meetup .titleandaction .details{width:300px}.meetups .meetup .titleandaction .details .detail{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;line-height:140%;text-transform:uppercase;line-height:100%;font-size:15px;font-weight:600}.meetups .meetup .titleandaction .details .detail:not(:last-of-type){margin-bottom:15px}.meetups .meetup .titleandaction .details .detail .icon{vertical-align:middle;margin-right:10px}.wirebox .toolbar .button{margin-right:0}\n"] }]
2723
- }], ctorParameters: () => [{ type: NgAddToCalendarService }, { type: ViewModelStateBase, decorators: [{
2724
- type: Inject,
2725
- args: [VIEWSTATE_PROVIDER]
2726
- }] }, { type: i2$1.DomSanitizer }, { type: i1.MatSnackBar }] });
2727
-
2728
- class RecentContentComponent extends ComponentWithViewStateBase {
2729
- constructor(state, snackBar) {
2730
- super(state, snackBar);
2731
- this.state = state;
2732
- this.snackBar = snackBar;
2733
- this.resources = [];
2734
- }
2735
- onDataUpdate(data) {
2736
- this.resources = data.resources.items;
2737
- }
2738
- ;
2739
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: RecentContentComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
2740
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: RecentContentComponent, isStandalone: false, selector: "recentcontent", usesInheritance: true, ngImport: i0, template: "<div class=\"box recentcontent\">\n <h3>Recent content</h3>\n <div class=\"recentcontent-item\" *ngFor=\"let resource of resources\">\n <div class=\"type\"><span class=\"badge\" [ngClass]=\"resource.type\"><i class=\"icon ph-microphone\" *ngIf=\"resource.type == 'podcast'\"></i><i class=\"icon ph-note\" *ngIf=\"resource.type == 'blogpost'\"></i></span></div>\n <div class=\"title\"><a [href]=\"resource.url\" target=\"_blank\">{{resource.title}}</a></div>\n </div>\n <div class=\"link\">\n <a href=\"https://public.theliberators.com/content\" target=\"_blank\">Check out more content ></a>\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}.recentcontent{background:#f0f0f0}.recentcontent .recentcontent-item{display:flex;margin-bottom:15px}.recentcontent .recentcontent-item .badge{margin-right:15px;width:100px;padding:4px 8px}.recentcontent .recentcontent-item .badge.podcast{background:#1f3f8f;color:#fff}.recentcontent .recentcontent-item .badge.blogpost{color:#fff;background:#2f2f2f}.recentcontent .recentcontent-item .badge .icon{vertical-align:middle;font-size:15px}.recentcontent .recentcontent-item a{font-weight:600;text-decoration:none}.recentcontent .link{margin-top:30px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
2741
- }
2742
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: RecentContentComponent, decorators: [{
2743
- type: Component,
2744
- args: [{ selector: 'recentcontent', standalone: false, template: "<div class=\"box recentcontent\">\n <h3>Recent content</h3>\n <div class=\"recentcontent-item\" *ngFor=\"let resource of resources\">\n <div class=\"type\"><span class=\"badge\" [ngClass]=\"resource.type\"><i class=\"icon ph-microphone\" *ngIf=\"resource.type == 'podcast'\"></i><i class=\"icon ph-note\" *ngIf=\"resource.type == 'blogpost'\"></i></span></div>\n <div class=\"title\"><a [href]=\"resource.url\" target=\"_blank\">{{resource.title}}</a></div>\n </div>\n <div class=\"link\">\n <a href=\"https://public.theliberators.com/content\" target=\"_blank\">Check out more content ></a>\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}.recentcontent{background:#f0f0f0}.recentcontent .recentcontent-item{display:flex;margin-bottom:15px}.recentcontent .recentcontent-item .badge{margin-right:15px;width:100px;padding:4px 8px}.recentcontent .recentcontent-item .badge.podcast{background:#1f3f8f;color:#fff}.recentcontent .recentcontent-item .badge.blogpost{color:#fff;background:#2f2f2f}.recentcontent .recentcontent-item .badge .icon{vertical-align:middle;font-size:15px}.recentcontent .recentcontent-item a{font-weight:600;text-decoration:none}.recentcontent .link{margin-top:30px}\n"] }]
2745
- }], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
2746
- type: Inject,
2747
- args: [VIEWSTATE_PROVIDER]
2748
- }] }, { type: i1.MatSnackBar }] });
2749
-
2750
- class CommunityModule {
2751
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CommunityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2752
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.5", ngImport: i0, type: CommunityModule, declarations: [RecentContentComponent, MeetupsComponent, GetHelpFormComponent], imports: [MatMenuModule, MatTooltipModule, MatNativeDateModule, RouterModule, CommonModule, FormsModule, ReactiveFormsModule, MatOptionModule, MatInputModule, MatSelectModule, DialogSupportModule, DateRangePipeModule, DialogSubscribeModule, NgAddToCalendarModule], exports: [RecentContentComponent, MeetupsComponent, GetHelpFormComponent] }); }
2753
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CommunityModule, imports: [MatMenuModule, MatTooltipModule, MatNativeDateModule, RouterModule, CommonModule, FormsModule, ReactiveFormsModule, MatOptionModule, MatInputModule, MatSelectModule, DialogSupportModule, DateRangePipeModule, DialogSubscribeModule, NgAddToCalendarModule] }); }
2754
- }
2755
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CommunityModule, decorators: [{
2756
- type: NgModule,
2757
- args: [{
2758
- imports: [MatMenuModule, MatTooltipModule, MatNativeDateModule, RouterModule, CommonModule, FormsModule, ReactiveFormsModule, MatOptionModule, MatInputModule, MatSelectModule, DialogSupportModule, DateRangePipeModule, DialogSubscribeModule, NgAddToCalendarModule],
2759
- declarations: [RecentContentComponent, MeetupsComponent, GetHelpFormComponent],
2760
- exports: [RecentContentComponent, MeetupsComponent, GetHelpFormComponent]
2761
- }]
2762
- }] });
2763
-
2764
- class MeetupResponseDto extends PaginatedResponse {
2765
- }
2766
- class MeetupDto {
2767
- }
2768
-
2769
- class ResourceResponseDto extends PaginatedResponse {
2770
- }
2771
- class ResourceDto {
2772
- }
2773
-
2774
- class CommunityClientConfig {
2775
- constructor(config) {
2776
- if (config) {
2777
- this.set(config);
2778
- }
2779
- }
2780
- set(config) {
2781
- this.config = config;
2782
- }
2783
- get() {
2784
- return this.config;
2785
- }
2786
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CommunityClientConfig, deps: [{ token: CommunityConfigToken, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
2787
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CommunityClientConfig, providedIn: 'root' }); }
2788
- }
2789
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CommunityClientConfig, decorators: [{
2790
- type: Injectable,
2791
- args: [{ providedIn: 'root' }]
2792
- }], ctorParameters: () => [{ type: CommunityClientConfigDto, decorators: [{
2793
- type: Optional
2794
- }, {
2795
- type: Inject,
2796
- args: [CommunityConfigToken]
2797
- }] }] });
2798
- class CommunityClientConfigDto {
2799
- }
2800
- const CommunityConfigToken = new InjectionToken('community-angular.config');
2801
-
2802
2485
  class CheckboxComponent {
2803
2486
  constructor() {
2804
2487
  this.disabled = false;
@@ -3029,7 +2712,7 @@ class MatTagsComponent {
3029
2712
  this.form.controls.tags.setValue(null);
3030
2713
  }
3031
2714
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MatTagsComponent, deps: [{ token: i1$2.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
3032
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MatTagsComponent, isStandalone: false, selector: "mat-tags", inputs: { allTags: "allTags" }, outputs: { tagsChangedEvent: "tagsChangedEvent" }, viewQueries: [{ propertyName: "tagInput", first: true, predicate: ["tagInput"], descendants: true }], ngImport: i0, template: "<div class=\"mat-form-field\">\n <div class=\"form-label\">Add tags to organize and filter clients</div>\n <mat-form-field appearance=\"fill\">\n <mat-chip-grid #tagList aria-label=\"Tags\" id=\"tags-selecttag\">\n <mat-chip-row *ngFor=\"let tag of tags\" (removed)=\"remove(tag)\">\n {{tag}}\n <span class=\"icon ph-trash-fill\" matChipRemove></span>\n </mat-chip-row>\n <input placeholder=\"New tag ...\" id=\"tags-newtag\" #tagInput [formControl]=\"newTagControl\" [matAutocomplete]=\"auto\" [matChipInputFor]=\"tagList\" [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" (matChipInputTokenEnd)=\"add($event)\">\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"selected($event)\">\n <mat-option class=\"select-option\" *ngFor=\"let tag of filteredTags | async\" [value]=\"tag\">{{tag}}</mat-option>\n </mat-autocomplete>\n </mat-form-field>\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}.form-label{margin-top:30px}\n"], dependencies: [{ kind: "component", type: i2$2.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i2$2.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i5$1.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i5$1.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i5$1.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i5$1.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }] }); }
2715
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MatTagsComponent, isStandalone: false, selector: "mat-tags", inputs: { allTags: "allTags" }, outputs: { tagsChangedEvent: "tagsChangedEvent" }, viewQueries: [{ propertyName: "tagInput", first: true, predicate: ["tagInput"], descendants: true }], ngImport: i0, template: "<div class=\"mat-form-field\">\n <div class=\"form-label\">Add tags to organize and filter clients</div>\n <mat-form-field appearance=\"fill\">\n <mat-chip-grid #tagList aria-label=\"Tags\" id=\"tags-selecttag\">\n <mat-chip-row *ngFor=\"let tag of tags\" (removed)=\"remove(tag)\">\n {{tag}}\n <span class=\"icon ph-trash-fill\" matChipRemove></span>\n </mat-chip-row>\n <input placeholder=\"New tag ...\" id=\"tags-newtag\" #tagInput [formControl]=\"newTagControl\" [matAutocomplete]=\"auto\" [matChipInputFor]=\"tagList\" [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" (matChipInputTokenEnd)=\"add($event)\">\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"selected($event)\">\n <mat-option class=\"select-option\" *ngFor=\"let tag of filteredTags | async\" [value]=\"tag\">{{tag}}</mat-option>\n </mat-autocomplete>\n </mat-form-field>\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}.form-label{margin-top:30px}\n"], dependencies: [{ kind: "component", type: i2$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i2$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i5$1.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i5$1.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i5$1.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i5$1.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }] }); }
3033
2716
  }
3034
2717
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MatTagsComponent, decorators: [{
3035
2718
  type: Component,
@@ -3158,7 +2841,7 @@ class MetaDataInputComponent {
3158
2841
  useExisting: forwardRef(() => MetaDataInputComponent),
3159
2842
  multi: true
3160
2843
  }
3161
- ], ngImport: i0, template: "<form [formGroup]=\"form\" class=\"metadatafields\" id=\"component-metadata\">\n <div *ngIf=\"fields().controls.length == 0 && emptyLabel\">{{emptyLabel}}</div>\n <ng-container formArrayName=\"fields\">\n <div class=\"question metadatafield\" *ngFor=\"let item of fields().controls; let i = index\" [formGroupName]=\"i\">\n <div class=\"question-body text\">\n <mat-form-field appearance=\"fill\" class=\"metadatafield-key\" subscriptSizing=\"dynamic\">\n <mat-label>Key</mat-label>\n <input matInput formControlName=\"key\" required maxlength=\"50\" name=\"metadatafield-key\">\n </mat-form-field>\n <mat-form-field appearance=\"fill\" class=\"metadatafield-key\" subscriptSizing=\"dynamic\">\n <mat-label>Value</mat-label>\n <input matInput formControlName=\"value\" required maxlength=\"50\" name=\"metadatafield-value\">\n </mat-form-field>\n <div class=\"delete\" [id]=\"'action-removemetadatafield-' + i\" (click)=\"removeField(i)\"><span class=\"icon ph-trash-bold\"></span></div>\n </div>\n </div>\n </ng-container>\n <button id=\"action-addmetadatafield\" (click)=\"addField()\" class=\"subactionbutton\" *ngIf=\"maximum == 0 || fields().controls.length < maximum\"><span class=\"icon ph-plus-bold\"></span>{{addLabel ?? \"Add\"}}</button>\n</form>\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}.metadatafields{margin-bottom:15px}.question.metadatafield{margin-bottom:10px!important}.question.metadatafield .question-body{display:flex;gap:15px;align-items:baseline;margin-bottom:5px;margin-top:5px}.question.metadatafield .question-body .metadatafield-key,.question.metadatafield .question-body .metadatafield-value{width:100%}.question.metadatafield .question-body .delete{cursor:pointer}.question.metadatafield .question-body .delete .icon{font-size:18pt}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
2844
+ ], ngImport: i0, template: "<form [formGroup]=\"form\" class=\"metadatafields\" id=\"component-metadata\">\n <div *ngIf=\"fields().controls.length == 0 && emptyLabel\">{{emptyLabel}}</div>\n <ng-container formArrayName=\"fields\">\n <div class=\"question metadatafield\" *ngFor=\"let item of fields().controls; let i = index\" [formGroupName]=\"i\">\n <div class=\"question-body text\">\n <mat-form-field appearance=\"fill\" class=\"metadatafield-key\" subscriptSizing=\"dynamic\">\n <mat-label>Key</mat-label>\n <input matInput formControlName=\"key\" required maxlength=\"50\" name=\"metadatafield-key\">\n </mat-form-field>\n <mat-form-field appearance=\"fill\" class=\"metadatafield-key\" subscriptSizing=\"dynamic\">\n <mat-label>Value</mat-label>\n <input matInput formControlName=\"value\" required maxlength=\"50\" name=\"metadatafield-value\">\n </mat-form-field>\n <div class=\"delete\" [id]=\"'action-removemetadatafield-' + i\" (click)=\"removeField(i)\"><span class=\"icon ph-trash-bold\"></span></div>\n </div>\n </div>\n </ng-container>\n <button id=\"action-addmetadatafield\" (click)=\"addField()\" class=\"subactionbutton\" *ngIf=\"maximum == 0 || fields().controls.length < maximum\"><span class=\"icon ph-plus-bold\"></span>{{addLabel ?? \"Add\"}}</button>\n</form>\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}.metadatafields{margin-bottom:15px}.question.metadatafield{margin-bottom:10px!important}.question.metadatafield .question-body{display:flex;gap:15px;align-items:baseline;margin-bottom:5px;margin-top:5px}.question.metadatafield .question-body .metadatafield-key,.question.metadatafield .question-body .metadatafield-value{width:100%}.question.metadatafield .question-body .delete{cursor:pointer}.question.metadatafield .question-body .delete .icon{font-size:18pt}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
3162
2845
  }
3163
2846
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MetaDataInputComponent, decorators: [{
3164
2847
  type: Component,
@@ -3292,7 +2975,7 @@ class MultiEmailInputComponent {
3292
2975
  useExisting: forwardRef(() => MultiEmailInputComponent),
3293
2976
  multi: true
3294
2977
  }
3295
- ], ngImport: i0, template: "<form [formGroup]=\"form\">\n <div *ngIf=\"fields().controls.length == 0 && emptyLabel\">{{emptyLabel}}</div>\n <ng-container formArrayName=\"emails\">\n <div class=\"question email\" *ngFor=\"let item of fields().controls; let i = index\" [formGroupName]=\"i\">\n <div class=\"question-body text\">\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>E-mail address</mat-label>\n <input matInput formControlName=\"email\" type=\"email\" required>\n </mat-form-field>\n <div class=\"delete\" [id]=\"'action-removeemail-' + i\" (click)=\"removeField(i)\"><span class=\"icon ph-trash-bold\"></span></div>\n </div>\n </div>\n </ng-container>\n <button id=\"action-addemail\" (click)=\"addField()\" class=\"subactionbutton\" *ngIf=\"maximum == 0 || fields().controls.length < maximum\"><span class=\"icon ph-plus-bold\"></span>{{addLabel ?? \"Add\"}}</button>\n</form>\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}.emails{margin-bottom:15px}.question.email{margin-bottom:10px!important}.question.email .question-body{display:flex;gap:15px;align-items:baseline;margin-bottom:5px;margin-top:5px}.question.email .question-body .delete{cursor:pointer}.question.email .question-body .delete .icon{font-size:18pt}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
2978
+ ], ngImport: i0, template: "<form [formGroup]=\"form\">\n <div *ngIf=\"fields().controls.length == 0 && emptyLabel\">{{emptyLabel}}</div>\n <ng-container formArrayName=\"emails\">\n <div class=\"question email\" *ngFor=\"let item of fields().controls; let i = index\" [formGroupName]=\"i\">\n <div class=\"question-body text\">\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>E-mail address</mat-label>\n <input matInput formControlName=\"email\" type=\"email\" required>\n </mat-form-field>\n <div class=\"delete\" [id]=\"'action-removeemail-' + i\" (click)=\"removeField(i)\"><span class=\"icon ph-trash-bold\"></span></div>\n </div>\n </div>\n </ng-container>\n <button id=\"action-addemail\" (click)=\"addField()\" class=\"subactionbutton\" *ngIf=\"maximum == 0 || fields().controls.length < maximum\"><span class=\"icon ph-plus-bold\"></span>{{addLabel ?? \"Add\"}}</button>\n</form>\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}.emails{margin-bottom:15px}.question.email{margin-bottom:10px!important}.question.email .question-body{display:flex;gap:15px;align-items:baseline;margin-bottom:5px;margin-top:5px}.question.email .question-body .delete{cursor:pointer}.question.email .question-body .delete .icon{font-size:18pt}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
3296
2979
  }
3297
2980
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MultiEmailInputComponent, decorators: [{
3298
2981
  type: Component,
@@ -3588,13 +3271,13 @@ class SnapshotInviteUrlsComponent {
3588
3271
  setTimeout(() => {
3589
3272
  }, 2000);
3590
3273
  }
3591
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: SnapshotInviteUrlsComponent, deps: [{ token: i1.MatSnackBar }, { token: i2$3.Clipboard }], target: i0.ɵɵFactoryTarget.Component }); }
3274
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: SnapshotInviteUrlsComponent, deps: [{ token: i1.MatSnackBar }, { token: i2$2.Clipboard }], target: i0.ɵɵFactoryTarget.Component }); }
3592
3275
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: SnapshotInviteUrlsComponent, isStandalone: false, selector: "snapshot-inviteurls", inputs: { snapshot: "snapshot" }, ngImport: i0, template: "<div class=\"inviteurls\" *ngIf=\"snapshot\">\n <div class=\"inviteurl\" *ngFor=\"let url of snapshot.inviteUrls | keyvalue: unsorted\">\n <div class=\"label inviteurl-teammember\" *ngIf=\"url.key == 'TeamMember'\">Invite team (e.g. members, leads, team roles)</div>\n <div class=\"label inviteurl-stakeholder\" *ngIf=\"url.key == 'Stakeholder'\">Invite stakeholders (e.g. customers, users)</div>\n <div class=\"label inviteurl-supporter\" *ngIf=\"url.key == 'Supporter'\">Invite supporters (e.g. management, external coaches)</div>\n <div class=\"joinsnapshot\">\n <div class=\"url\">\n <input type=\"text\" [value]=\"url.value\" href=\"javascript:void(null);\" (click)=\"copyInvitationUrl(url.value)\" />\n <span class=\"ph-clipboard copy\" (click)=\"copyInvitationUrl(url.value)\"></span>\n </div>\n </div>\n </div>\n</div>\n\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.inviteurls{margin-top:30px;margin-bottom:30px;display:flex;flex-direction:column}.inviteurls .inviteurl .label{font-weight:600;margin-bottom:10px;font-style:normal;font-weight:400}.inviteurls .inviteurl .joinsnapshot{margin-bottom:15px;display:flex}@media only screen and (max-width: 992px){.inviteurls .inviteurl .joinsnapshot{display:block}}.inviteurls .inviteurl .joinsnapshot .url{border-radius:5px;padding:10px;background:#f0f0f0;flex:auto;overflow:hidden;display:flex;margin-right:15px}@media only screen and (max-width: 992px){.inviteurls .inviteurl .joinsnapshot .url{flex:100%}}.inviteurls .inviteurl .joinsnapshot .url input{border:0;flex:auto;background:none;text-decoration:none;font-size:12pt;color:#1f3f8f}.inviteurls .inviteurl .joinsnapshot .url .copy{cursor:pointer;-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;margin-left:10px;float:right;font-size:20pt}.inviteurls .inviteurl .joinsnapshot .url .copy:hover{transform:scale(1.2)}.inviteurls .inviteurl .joinsnapshot .url .copy:active{color:#00af77}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.KeyValuePipe, name: "keyvalue" }], encapsulation: i0.ViewEncapsulation.None }); }
3593
3276
  }
3594
3277
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: SnapshotInviteUrlsComponent, decorators: [{
3595
3278
  type: Component,
3596
3279
  args: [{ selector: 'snapshot-inviteurls', encapsulation: ViewEncapsulation.None, standalone: false, template: "<div class=\"inviteurls\" *ngIf=\"snapshot\">\n <div class=\"inviteurl\" *ngFor=\"let url of snapshot.inviteUrls | keyvalue: unsorted\">\n <div class=\"label inviteurl-teammember\" *ngIf=\"url.key == 'TeamMember'\">Invite team (e.g. members, leads, team roles)</div>\n <div class=\"label inviteurl-stakeholder\" *ngIf=\"url.key == 'Stakeholder'\">Invite stakeholders (e.g. customers, users)</div>\n <div class=\"label inviteurl-supporter\" *ngIf=\"url.key == 'Supporter'\">Invite supporters (e.g. management, external coaches)</div>\n <div class=\"joinsnapshot\">\n <div class=\"url\">\n <input type=\"text\" [value]=\"url.value\" href=\"javascript:void(null);\" (click)=\"copyInvitationUrl(url.value)\" />\n <span class=\"ph-clipboard copy\" (click)=\"copyInvitationUrl(url.value)\"></span>\n </div>\n </div>\n </div>\n</div>\n\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.inviteurls{margin-top:30px;margin-bottom:30px;display:flex;flex-direction:column}.inviteurls .inviteurl .label{font-weight:600;margin-bottom:10px;font-style:normal;font-weight:400}.inviteurls .inviteurl .joinsnapshot{margin-bottom:15px;display:flex}@media only screen and (max-width: 992px){.inviteurls .inviteurl .joinsnapshot{display:block}}.inviteurls .inviteurl .joinsnapshot .url{border-radius:5px;padding:10px;background:#f0f0f0;flex:auto;overflow:hidden;display:flex;margin-right:15px}@media only screen and (max-width: 992px){.inviteurls .inviteurl .joinsnapshot .url{flex:100%}}.inviteurls .inviteurl .joinsnapshot .url input{border:0;flex:auto;background:none;text-decoration:none;font-size:12pt;color:#1f3f8f}.inviteurls .inviteurl .joinsnapshot .url .copy{cursor:pointer;-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;margin-left:10px;float:right;font-size:20pt}.inviteurls .inviteurl .joinsnapshot .url .copy:hover{transform:scale(1.2)}.inviteurls .inviteurl .joinsnapshot .url .copy:active{color:#00af77}\n"] }]
3597
- }], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i2$3.Clipboard }], propDecorators: { snapshot: [{
3280
+ }], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i2$2.Clipboard }], propDecorators: { snapshot: [{
3598
3281
  type: Input
3599
3282
  }] } });
3600
3283
 
@@ -4342,6 +4025,74 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
4342
4025
  }]
4343
4026
  }] });
4344
4027
 
4028
+ class DialogSubscribeComponent {
4029
+ constructor(state) {
4030
+ this.state = state;
4031
+ this.state.data.pipe(take(1)).subscribe(success => {
4032
+ if (success.userInfo.branding.isDefault) {
4033
+ this.title = "Try 1 month for &euro;1,-";
4034
+ this.button = "Try now";
4035
+ this.discount = true;
4036
+ }
4037
+ else {
4038
+ this.title = "Upgrade to Professional";
4039
+ this.button = "Learn more";
4040
+ }
4041
+ this.subscribeUrl = success.userInfo.branding.channelSubscribeUrl;
4042
+ this.companyUrl = success.userInfo.branding.channelCompanyUrl;
4043
+ });
4044
+ }
4045
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeComponent, deps: [{ token: VIEWSTATE_PROVIDER }], target: i0.ɵɵFactoryTarget.Component }); }
4046
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogSubscribeComponent, isStandalone: false, selector: "ng-component", ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title [innerHtml]=\"title\"></h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n <p>Discover the full power of Columinity with our <b>Professional plan</b>:</p>\n <ul>\n <li>Extensive science-based recommendations.</li>\n <li>Access to the Teams Dashboard.</li>\n <li>Secure access with user accounts.</li>\n <li>Aggregate results from many teams.</li>\n <li>Set up repeat scans more easily.</li>\n <li>Access to more results and statistics.</li>\n <li>More benchmarks.</li>\n </ul>\n\n <div class=\"message message-black\" *ngIf=\"discount\"><span class=\"icon ph-smiley-fill\"></span><span>Use the coupon <b>TRYPRO</b> to pay only &euro;1,- for the first team on your monthly Professional plan.</span></div>\n <a class=\"button primary\" [href]=\"subscribeUrl\">{{button}}</a>\n</mat-dialog-content>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
4047
+ }
4048
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeComponent, decorators: [{
4049
+ type: Component,
4050
+ args: [{ standalone: false, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title [innerHtml]=\"title\"></h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n <p>Discover the full power of Columinity with our <b>Professional plan</b>:</p>\n <ul>\n <li>Extensive science-based recommendations.</li>\n <li>Access to the Teams Dashboard.</li>\n <li>Secure access with user accounts.</li>\n <li>Aggregate results from many teams.</li>\n <li>Set up repeat scans more easily.</li>\n <li>Access to more results and statistics.</li>\n <li>More benchmarks.</li>\n </ul>\n\n <div class=\"message message-black\" *ngIf=\"discount\"><span class=\"icon ph-smiley-fill\"></span><span>Use the coupon <b>TRYPRO</b> to pay only &euro;1,- for the first team on your monthly Professional plan.</span></div>\n <a class=\"button primary\" [href]=\"subscribeUrl\">{{button}}</a>\n</mat-dialog-content>\n" }]
4051
+ }], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
4052
+ type: Inject,
4053
+ args: [VIEWSTATE_PROVIDER]
4054
+ }] }] });
4055
+
4056
+ class OpenSubscribeDialogDirective {
4057
+ constructor(dialog) {
4058
+ this.dialog = dialog;
4059
+ }
4060
+ onClick() {
4061
+ const dialogConfig = new MatDialogConfig();
4062
+ dialogConfig.panelClass = ['dialog', 'subscribe', 'primary'];
4063
+ dialogConfig.autoFocus = false;
4064
+ dialogConfig.enterAnimationDuration = 0;
4065
+ dialogConfig.exitAnimationDuration = 0;
4066
+ this.dialog.open(DialogSubscribeComponent, dialogConfig);
4067
+ }
4068
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: OpenSubscribeDialogDirective, deps: [{ token: i1$4.MatDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
4069
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.5", type: OpenSubscribeDialogDirective, isStandalone: false, selector: "[subscribeDialog]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
4070
+ }
4071
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: OpenSubscribeDialogDirective, decorators: [{
4072
+ type: Directive,
4073
+ args: [{
4074
+ selector: '[subscribeDialog]',
4075
+ standalone: false
4076
+ }]
4077
+ }], ctorParameters: () => [{ type: i1$4.MatDialog }], propDecorators: { onClick: [{
4078
+ type: HostListener,
4079
+ args: ['click']
4080
+ }] } });
4081
+
4082
+ class DialogSubscribeModule {
4083
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
4084
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeModule, declarations: [DialogSubscribeComponent, OpenSubscribeDialogDirective], imports: [MatDialogModule, CommonModule], exports: [DialogSubscribeComponent, OpenSubscribeDialogDirective] }); }
4085
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeModule, imports: [MatDialogModule, CommonModule] }); }
4086
+ }
4087
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSubscribeModule, decorators: [{
4088
+ type: NgModule,
4089
+ args: [{
4090
+ imports: [MatDialogModule, CommonModule],
4091
+ declarations: [DialogSubscribeComponent, OpenSubscribeDialogDirective],
4092
+ exports: [DialogSubscribeComponent, OpenSubscribeDialogDirective]
4093
+ }]
4094
+ }] });
4095
+
4345
4096
  class BackButtonDirective {
4346
4097
  constructor(location, router) {
4347
4098
  this.location = location;
@@ -5344,6 +5095,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
5344
5095
  }]
5345
5096
  }] });
5346
5097
 
5098
+ class DateRangePipe {
5099
+ constructor(datePipe) {
5100
+ this.datePipe = datePipe;
5101
+ }
5102
+ transform(dateRange) {
5103
+ if (dateRange == null) {
5104
+ return null;
5105
+ }
5106
+ var fromDate = new Date(dateRange.from);
5107
+ var toDate = new Date(dateRange.to);
5108
+ var isSameDay = (fromDate.getDate() === toDate.getDate() && fromDate.getMonth() === toDate.getMonth() && fromDate.getFullYear() === toDate.getFullYear());
5109
+ var pattern = fromDate.getFullYear() == toDate.getFullYear() ? 'MMMM d' : 'MMM d, YYYY';
5110
+ if (dateRange.from != null && dateRange.to == null) {
5111
+ return this.datePipe.transform(dateRange.from, pattern);
5112
+ }
5113
+ if (dateRange.from == null && dateRange.to != null) {
5114
+ return this.datePipe.transform(dateRange.to, pattern);
5115
+ }
5116
+ if (isSameDay) {
5117
+ return this.datePipe.transform(dateRange.from, pattern);
5118
+ }
5119
+ return this.datePipe.transform(dateRange.from, pattern) + ' to ' + this.datePipe.transform(dateRange.to, pattern);
5120
+ }
5121
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipe, deps: [{ token: i1$1.DatePipe }], target: i0.ɵɵFactoryTarget.Pipe }); }
5122
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipe, isStandalone: false, name: "dateRange" }); }
5123
+ }
5124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipe, decorators: [{
5125
+ type: Pipe,
5126
+ args: [{
5127
+ name: 'dateRange',
5128
+ standalone: false
5129
+ }]
5130
+ }], ctorParameters: () => [{ type: i1$1.DatePipe }] });
5131
+
5132
+ class DateRangePipeModule {
5133
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
5134
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipeModule, declarations: [DateRangePipe], exports: [DateRangePipe] }); }
5135
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipeModule, providers: [DateRangePipe] }); }
5136
+ }
5137
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DateRangePipeModule, decorators: [{
5138
+ type: NgModule,
5139
+ args: [{
5140
+ providers: [DateRangePipe],
5141
+ declarations: [DateRangePipe],
5142
+ exports: [DateRangePipe]
5143
+ }]
5144
+ }] });
5145
+
5347
5146
  class SegmentNamePipe {
5348
5147
  constructor() {
5349
5148
  }
@@ -5422,6 +5221,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
5422
5221
  }]
5423
5222
  }] });
5424
5223
 
5224
+ class AgeIndicatorComponent {
5225
+ constructor() {
5226
+ }
5227
+ ngOnInit() {
5228
+ var measureDate = new Date(this.lastMeasured);
5229
+ this.lastMeasuredMonths = Math.max(0, (new Date().getFullYear() - measureDate.getFullYear()) * 12 - measureDate.getMonth() + new Date().getMonth());
5230
+ if (this.lastMeasuredMonths > 12) {
5231
+ this.lastMeasuredMonths = 12;
5232
+ }
5233
+ if (this.lastMeasuredMonths < 1) {
5234
+ this.lastMeasuredMonths = 1;
5235
+ }
5236
+ this.lastMeasuredOpacity = 1 - (this.lastMeasuredMonths / 14);
5237
+ if (this.lastMeasuredMonths <= 1) {
5238
+ this.lastMeasuredTooltip = 'This factor was last measured 1 month or less ago. It is fresh data.';
5239
+ }
5240
+ else if (this.lastMeasuredMonths >= 12) {
5241
+ this.lastMeasuredTooltip = 'This factor was last measured 12 month or more ago. We recommend to measure this again to keep data fresh.';
5242
+ }
5243
+ else {
5244
+ this.lastMeasuredTooltip = 'This factor was last measured ' + this.lastMeasuredMonths + ' month or more ago. The fresher your data, the more reliable it is.';
5245
+ }
5246
+ }
5247
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AgeIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5248
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: AgeIndicatorComponent, isStandalone: false, selector: "age-indicator", inputs: { lastMeasured: "lastMeasured" }, ngImport: i0, template: "<div class=\"age-indicator\" [style.opacity]=\"lastMeasuredOpacity\" [matTooltip]=\"lastMeasuredTooltip\" *ngIf=\"lastMeasuredMonths > 0\">\n <div class=\"age-indicator-dot\" *ngFor=\"let e of [].constructor(lastMeasuredMonths); let i = index\"></div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
5249
+ }
5250
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AgeIndicatorComponent, decorators: [{
5251
+ type: Component,
5252
+ args: [{ selector: 'age-indicator', standalone: false, template: "<div class=\"age-indicator\" [style.opacity]=\"lastMeasuredOpacity\" [matTooltip]=\"lastMeasuredTooltip\" *ngIf=\"lastMeasuredMonths > 0\">\n <div class=\"age-indicator-dot\" *ngFor=\"let e of [].constructor(lastMeasuredMonths); let i = index\"></div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
5253
+ }], ctorParameters: () => [], propDecorators: { lastMeasured: [{
5254
+ type: Input
5255
+ }] } });
5256
+
5425
5257
  // Source byu Samuel Berthe - https://github.com/samber/ngx-domarrow
5426
5258
  class ArrowComponent {
5427
5259
  constructor(elem) {
@@ -5649,7 +5481,7 @@ class BadgeProgressionComponent {
5649
5481
  return this.badge.type;
5650
5482
  }
5651
5483
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: BadgeProgressionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5652
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: BadgeProgressionComponent, isStandalone: false, selector: "badge-progression", inputs: { showName: "showName", badge: "badge", radius: "radius" }, ngImport: i0, template: "<div class=\"team-badge progression\" [ngClass]=\"{'unearned': !badge.awarded}\" #badgeContainer (click)=\"popover.open()\">\n <div [class]=\"'circle level-' + badge.level\" [ngStyle]=\"{'width': radius + 'px', 'height': radius + 'px', 'border-radius': radius + 'px'}\">\n <span [class]=\"'icon ' + badge.icon\"></span>\n <mat-progress-spinner [diameter]=\"radius\" strokeWidth=\"6\" mode=\"determinate\" [value]=\"badge.nextLevelProgress * 100\"></mat-progress-spinner>\n <div class=\"gloss\">\n <div class=\"gloss1\"></div>\n <div class=\"gloss2\"></div>\n </div>\n </div>\n <div class=\"name\" *ngIf=\"showName\">{{badge.name}}</div>\n</div>\n\n<sat-popover #popover horizontalAlign=\"center\" [anchor]=\"badgeContainer\" verticalAlign=\"below\" [hasBackdrop]=\"true\" [autoFocus]=\"false\">\n <div [class]=\"'popover level-' + badge.level\" [id]=\"'popover'\">\n <div class=\"arrow\"></div>\n <div class=\"popover-container\">\n <span (click)=\"popover.close()\" class=\"close ph-x\"></span>\n <h3 *ngIf=\"badge.level == 0\">{{badge.name}}</h3>\n <h3 *ngIf=\"badge.level == 1\">{{badge.name}} <span>Bronze Level</span></h3>\n <h3 *ngIf=\"badge.level == 2\">{{badge.name}} <span>Silver Level</span></h3>\n <h3 *ngIf=\"badge.level == 3\">{{badge.name}} <span>Gold Level</span></h3>\n <h3 *ngIf=\"badge.level == 4\">{{badge.name}} <span>Platinum Level</span></h3>\n <h3 *ngIf=\"badge.level == 5\">{{badge.name}} <span>Diamond Level</span></h3>\n <div class=\"description\">{{badge.description}}</div>\n\n <h3>How to reach the next level</h3>\n <div class=\"description\">{{badge.nextLevelRequirement}}</div>\n </div>\n </div>\n</sat-popover>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.popover{margin-left:15px}.popover.level-1 h3 span{color:#cb8e56}.popover.level-2 h3 span{color:#bdbcbc}.popover.level-3 h3 span{color:#eac338}.popover.level-4 h3 span{color:#afd3de}.popover.level-5 h3 span{color:#ef4f9f}.popover .arrow{width:15px;height:15px;background:#2f2f2f;transform:rotate(45deg);left:50%;position:absolute;top:-8px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2$4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i3$1.SatPopoverComponent, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }] }); }
5484
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: BadgeProgressionComponent, isStandalone: false, selector: "badge-progression", inputs: { showName: "showName", badge: "badge", radius: "radius" }, ngImport: i0, template: "<div class=\"team-badge progression\" [ngClass]=\"{'unearned': !badge.awarded}\" #badgeContainer (click)=\"popover.open()\">\n <div [class]=\"'circle level-' + badge.level\" [ngStyle]=\"{'width': radius + 'px', 'height': radius + 'px', 'border-radius': radius + 'px'}\">\n <span [class]=\"'icon ' + badge.icon\"></span>\n <mat-progress-spinner [diameter]=\"radius\" strokeWidth=\"6\" mode=\"determinate\" [value]=\"badge.nextLevelProgress * 100\"></mat-progress-spinner>\n <div class=\"gloss\">\n <div class=\"gloss1\"></div>\n <div class=\"gloss2\"></div>\n </div>\n </div>\n <div class=\"name\" *ngIf=\"showName\">{{badge.name}}</div>\n</div>\n\n<sat-popover #popover horizontalAlign=\"center\" [anchor]=\"badgeContainer\" verticalAlign=\"below\" [hasBackdrop]=\"true\" [autoFocus]=\"false\">\n <div [class]=\"'popover level-' + badge.level\" [id]=\"'popover'\">\n <div class=\"arrow\"></div>\n <div class=\"popover-container\">\n <span (click)=\"popover.close()\" class=\"close ph-x\"></span>\n <h3 *ngIf=\"badge.level == 0\">{{badge.name}}</h3>\n <h3 *ngIf=\"badge.level == 1\">{{badge.name}} <span>Bronze Level</span></h3>\n <h3 *ngIf=\"badge.level == 2\">{{badge.name}} <span>Silver Level</span></h3>\n <h3 *ngIf=\"badge.level == 3\">{{badge.name}} <span>Gold Level</span></h3>\n <h3 *ngIf=\"badge.level == 4\">{{badge.name}} <span>Platinum Level</span></h3>\n <h3 *ngIf=\"badge.level == 5\">{{badge.name}} <span>Diamond Level</span></h3>\n <div class=\"description\">{{badge.description}}</div>\n\n <h3>How to reach the next level</h3>\n <div class=\"description\">{{badge.nextLevelRequirement}}</div>\n </div>\n </div>\n</sat-popover>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.popover{margin-left:15px}.popover.level-1 h3 span{color:#cb8e56}.popover.level-2 h3 span{color:#bdbcbc}.popover.level-3 h3 span{color:#eac338}.popover.level-4 h3 span{color:#afd3de}.popover.level-5 h3 span{color:#ef4f9f}.popover .arrow{width:15px;height:15px;background:#2f2f2f;transform:rotate(45deg);left:50%;position:absolute;top:-8px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2$3.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i3$1.SatPopoverComponent, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }] }); }
5653
5485
  }
5654
5486
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: BadgeProgressionComponent, decorators: [{
5655
5487
  type: Component,
@@ -5750,56 +5582,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
5750
5582
  args: [VIEWSTATE_PROVIDER]
5751
5583
  }] }, { type: i1.MatSnackBar }] });
5752
5584
 
5753
- class AgeIndicatorComponent {
5754
- constructor() {
5755
- }
5756
- ngOnInit() {
5757
- var measureDate = new Date(this.lastMeasured);
5758
- this.lastMeasuredMonths = Math.max(0, (new Date().getFullYear() - measureDate.getFullYear()) * 12 - measureDate.getMonth() + new Date().getMonth());
5759
- if (this.lastMeasuredMonths > 12) {
5760
- this.lastMeasuredMonths = 12;
5761
- }
5762
- if (this.lastMeasuredMonths < 1) {
5763
- this.lastMeasuredMonths = 1;
5764
- }
5765
- this.lastMeasuredOpacity = 1 - (this.lastMeasuredMonths / 14);
5766
- if (this.lastMeasuredMonths <= 1) {
5767
- this.lastMeasuredTooltip = 'This factor was last measured 1 month or less ago. It is fresh data.';
5768
- }
5769
- else if (this.lastMeasuredMonths >= 12) {
5770
- this.lastMeasuredTooltip = 'This factor was last measured 12 month or more ago. We recommend to measure this again to keep data fresh.';
5771
- }
5772
- else {
5773
- this.lastMeasuredTooltip = 'This factor was last measured ' + this.lastMeasuredMonths + ' month or more ago. The fresher your data, the more reliable it is.';
5774
- }
5775
- }
5776
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AgeIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5777
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: AgeIndicatorComponent, isStandalone: false, selector: "age-indicator", inputs: { lastMeasured: "lastMeasured" }, ngImport: i0, template: "<div class=\"age-indicator\" [style.opacity]=\"lastMeasuredOpacity\" [matTooltip]=\"lastMeasuredTooltip\" *ngIf=\"lastMeasuredMonths > 0\">\n <div class=\"age-indicator-dot\" *ngFor=\"let e of [].constructor(lastMeasuredMonths); let i = index\"></div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
5778
- }
5779
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AgeIndicatorComponent, decorators: [{
5780
- type: Component,
5781
- args: [{ selector: 'age-indicator', standalone: false, template: "<div class=\"age-indicator\" [style.opacity]=\"lastMeasuredOpacity\" [matTooltip]=\"lastMeasuredTooltip\" *ngIf=\"lastMeasuredMonths > 0\">\n <div class=\"age-indicator-dot\" *ngFor=\"let e of [].constructor(lastMeasuredMonths); let i = index\"></div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
5782
- }], ctorParameters: () => [], propDecorators: { lastMeasured: [{
5783
- type: Input
5784
- }] } });
5785
-
5786
- class ResultIndicatorComponent {
5787
- constructor() {
5788
- }
5789
- ngOnInit() {
5790
- this.result = this.factorScore.score;
5791
- this.qualification = this.factorScore.qualification;
5792
- }
5793
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ResultIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5794
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ResultIndicatorComponent, isStandalone: false, selector: "result-indicator", inputs: { factorScore: "factorScore" }, ngImport: i0, template: "<span [class]=\"'delta up'\" *ngIf=\"qualification == 'Positive'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n<span [class]=\"'delta down'\" *ngIf=\"qualification == 'Negative'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n<span [class]=\"'delta same'\" *ngIf=\"qualification == 'Neutral'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
5795
- }
5796
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ResultIndicatorComponent, decorators: [{
5797
- type: Component,
5798
- args: [{ selector: 'result-indicator', standalone: false, template: "<span [class]=\"'delta up'\" *ngIf=\"qualification == 'Positive'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n<span [class]=\"'delta down'\" *ngIf=\"qualification == 'Negative'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n<span [class]=\"'delta same'\" *ngIf=\"qualification == 'Neutral'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
5799
- }], ctorParameters: () => [], propDecorators: { factorScore: [{
5800
- type: Input
5801
- }] } });
5802
-
5803
5585
  class BenchmarkIndicatorComponent {
5804
5586
  constructor() {
5805
5587
  }
@@ -5817,22 +5599,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
5817
5599
  type: Input
5818
5600
  }] } });
5819
5601
 
5820
- class ImpactIndicatorComponent {
5821
- constructor(datePipe) {
5822
- this.datePipe = datePipe;
5823
- }
5824
- ngOnInit() {
5825
- }
5826
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ImpactIndicatorComponent, deps: [{ token: i1$1.DatePipe }], target: i0.ɵɵFactoryTarget.Component }); }
5827
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ImpactIndicatorComponent, isStandalone: false, selector: "impact-indicator", inputs: { factorScore: "factorScore" }, ngImport: i0, template: "<span [class]=\"'delta up'\" [matTooltip]=\"'The impact (0-100) is a rough estimate of how much improvements in this area are expected to improve your team(s).'\">{{factorScore.impact}}</span>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
5828
- }
5829
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ImpactIndicatorComponent, decorators: [{
5830
- type: Component,
5831
- args: [{ selector: 'impact-indicator', standalone: false, template: "<span [class]=\"'delta up'\" [matTooltip]=\"'The impact (0-100) is a rough estimate of how much improvements in this area are expected to improve your team(s).'\">{{factorScore.impact}}</span>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
5832
- }], ctorParameters: () => [{ type: i1$1.DatePipe }], propDecorators: { factorScore: [{
5833
- type: Input
5834
- }] } });
5835
-
5836
5602
  class DeltaArrowComponent {
5837
5603
  constructor(datePipe) {
5838
5604
  this.datePipe = datePipe;
@@ -6297,6 +6063,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
6297
6063
  type: Input
6298
6064
  }] } });
6299
6065
 
6066
+ class ImpactIndicatorComponent {
6067
+ constructor(datePipe) {
6068
+ this.datePipe = datePipe;
6069
+ }
6070
+ ngOnInit() {
6071
+ }
6072
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ImpactIndicatorComponent, deps: [{ token: i1$1.DatePipe }], target: i0.ɵɵFactoryTarget.Component }); }
6073
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ImpactIndicatorComponent, isStandalone: false, selector: "impact-indicator", inputs: { factorScore: "factorScore" }, ngImport: i0, template: "<span [class]=\"'delta up'\" [matTooltip]=\"'The impact (0-100) is a rough estimate of how much improvements in this area are expected to improve your team(s).'\">{{factorScore.impact}}</span>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
6074
+ }
6075
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ImpactIndicatorComponent, decorators: [{
6076
+ type: Component,
6077
+ args: [{ selector: 'impact-indicator', standalone: false, template: "<span [class]=\"'delta up'\" [matTooltip]=\"'The impact (0-100) is a rough estimate of how much improvements in this area are expected to improve your team(s).'\">{{factorScore.impact}}</span>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
6078
+ }], ctorParameters: () => [{ type: i1$1.DatePipe }], propDecorators: { factorScore: [{
6079
+ type: Input
6080
+ }] } });
6081
+
6300
6082
  class FocusAreasComponent extends ComponentWithViewStateBase {
6301
6083
  constructor(state, snackBar) {
6302
6084
  super(state, snackBar);
@@ -6965,7 +6747,7 @@ class ParticipantsComponent extends ComponentWithViewStateBase {
6965
6747
  }
6966
6748
  }
6967
6749
  ;
6968
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ParticipantsComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }, { token: i2$3.Clipboard }], target: i0.ɵɵFactoryTarget.Component }); }
6750
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ParticipantsComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }, { token: i2$2.Clipboard }], target: i0.ɵɵFactoryTarget.Component }); }
6969
6751
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ParticipantsComponent, isStandalone: false, selector: "participants", usesInheritance: true, ngImport: i0, template: "<div class=\"wirebox\">\n <div class=\"top\">\n <h3>{{population}} Participants</h3>\n </div>\n\n <div class=\"content\">\n <div class=\"segments\">\n <div class=\"segment\" *ngFor=\"let segment of populationSegments\">\n {{segmentName(segment.name)}} <span class=\"digit\">{{segment.occurances}}</span>\n </div>\n <div class=\"segment\" *ngIf=\"invitationGoal > 0\">\n Participation goal <span class=\"icon ph-info-fill\" [matTooltip]=\"'The percentage of people that participated from those expected/invited. The goal can be changed in the Teams Dashboard (Professional plan).'\"></span><span class=\"digit\">{{invitationGoal}} ({{participationRate}}%)</span>\n </div>\n </div>\n\n <div class=\"closed message\" *ngIf=\"closed\"><span class=\"icon ph-lock\"></span> The survey for this report was closed at {{closed | date :'mediumDate'}}. Still want to participate? Contact the person who invited the team to re-open it.</div>\n\n <div class=\"invitebox\" *ngIf=\"teamInviteUrl && !closed\">\n <h4>Invite team members <span class=\"icon ph-info-fill\" [matTooltip]=\"'Share this link with the members of the team. This typically includes roles such as Scrum Masters, Team Leads and Product Owners. Each member receives a personalized report that shows their personal scores (only visible to them) and team scores. Team scores are updated every time someone participates.'\"></span></h4>\n <div class=\"url\">\n <input type=\"text\" [value]=\"teamInviteUrl\" />\n <span [class]=\"'clipboard ' + (teamUrlCopied ? 'ph-clipboard-text' : 'ph-clipboard')\" (click)=\"copyTeamInviteLink()\"></span>\n </div>\n </div>\n\n <div class=\"invitebox\" *ngIf=\"stakeholderInviteUrl && !closed\">\n <h4>Invite stakeholders (customers, users) <span class=\"icon ph-info-fill\" [matTooltip]=\"'Share this link with the stakeholders of your team. These are the people who are best capable to evaluate the quality of what a team produces and have a clear stake in it, such as customers, end-users and investors. We ask them to evaluate the outcomes of what a team deliver to them. They do not receive any results, but a team can do so afterward.'\"></span></h4>\n <div class=\"url\">\n <input type=\"text\" [value]=\"stakeholderInviteUrl\" />\n <span [class]=\"'clipboard ' + (stakeholderUrlCopied ? 'ph-clipboard-text' : 'ph-clipboard')\" (click)=\"copyStakeholderInviteLink()\"></span>\n </div>\n </div>\n\n <div class=\"invitebox\" *ngIf=\"supporterInviteUrl && !closed\">\n <h4>Invite supporters (managers, coaches, leaders) <span class=\"icon ph-info-fill\" [matTooltip]=\"'Share this link with the people who support your team but do not work as part of it. This includes managers, coaches and people in a leadership position. We ask supporters to evaluate their support for your team. They dont receive any results, but a team can do so afterward.'\"></span></h4>\n <div class=\"url\">\n <input type=\"text\" [value]=\"supporterInviteUrl\" />\n <span [class]=\"'clipboard ' + (supporterUrlCopied ? 'ph-clipboard-text' : 'ph-clipboard')\" (click)=\"copySupporterInviteLink()\"></span>\n </div>\n </div>\n </div>\n <div class=\"bottom\">\n </div>\n</div>\n\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.wirebox .content .closed{margin-top:15px;background:#f0f0f0;padding:10px;margin-bottom:0}.wirebox .content .segment{margin-bottom:5px}.wirebox .content .segment .icon{vertical-align:middle}.wirebox .content .segment .digit{float:right}.wirebox .bottom{padding-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }] }); }
6970
6752
  }
6971
6753
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ParticipantsComponent, decorators: [{
@@ -6974,7 +6756,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
6974
6756
  }], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
6975
6757
  type: Inject,
6976
6758
  args: [VIEWSTATE_PROVIDER]
6977
- }] }, { type: i1.MatSnackBar }, { type: i2$3.Clipboard }] });
6759
+ }] }, { type: i1.MatSnackBar }, { type: i2$2.Clipboard }] });
6760
+
6761
+ class ResultIndicatorComponent {
6762
+ constructor() {
6763
+ }
6764
+ ngOnInit() {
6765
+ this.result = this.factorScore.score;
6766
+ this.qualification = this.factorScore.qualification;
6767
+ }
6768
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ResultIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6769
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ResultIndicatorComponent, isStandalone: false, selector: "result-indicator", inputs: { factorScore: "factorScore" }, ngImport: i0, template: "<span [class]=\"'delta up'\" *ngIf=\"qualification == 'Positive'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n<span [class]=\"'delta down'\" *ngIf=\"qualification == 'Negative'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n<span [class]=\"'delta same'\" *ngIf=\"qualification == 'Neutral'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
6770
+ }
6771
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ResultIndicatorComponent, decorators: [{
6772
+ type: Component,
6773
+ args: [{ selector: 'result-indicator', standalone: false, template: "<span [class]=\"'delta up'\" *ngIf=\"qualification == 'Positive'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n<span [class]=\"'delta down'\" *ngIf=\"qualification == 'Negative'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n<span [class]=\"'delta same'\" *ngIf=\"qualification == 'Neutral'\" [matTooltip]=\"'This is the score achieved on this factor'\">{{result}}</span>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
6774
+ }], ctorParameters: () => [], propDecorators: { factorScore: [{
6775
+ type: Input
6776
+ }] } });
6978
6777
 
6979
6778
  class RecommendationComponent extends ComponentWithViewStateBase {
6980
6779
  constructor(state, snackBar, router) {
@@ -7457,6 +7256,7 @@ class UserProfileComponent extends ComponentWithViewStateBase {
7457
7256
  this.userProfileService.update(updateRequest).subscribe(success => {
7458
7257
  this.showSuccess("Your profile was updated");
7459
7258
  });
7259
+ this.state.reload();
7460
7260
  }
7461
7261
  catch (ex) {
7462
7262
  this.form.controls.newEmail.setErrors({ alreadyExists: true });
@@ -7556,7 +7356,7 @@ class UserProfileComponent extends ComponentWithViewStateBase {
7556
7356
  }
7557
7357
  ;
7558
7358
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: UserProfileComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1$6.AuthService }, { token: UserProfileService }, { token: AccountService }, { token: i1$2.UntypedFormBuilder }, { token: i1.MatSnackBar }, { token: i1$5.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
7559
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: UserProfileComponent, isStandalone: false, selector: "userprofile", usesInheritance: true, ngImport: i0, template: "<div class=\"form-profile\">\n <h2>My Profile</h2>\n <form class=\"form\" [formGroup]=\"form\" (ngSubmit)=\"onSubmit(formDirective)\" #formDirective=\"ngForm\">\n <div class=\"form-label\">Avatar</div>\n\n <div class=\"currentuserprofileavatar\">\n <div class=\"userprofileavatar\" *ngIf=\"userProfile.avatarUrl\">\n <div *ngIf=\"loading\" class=\"loading-icon small\"></div>\n <img *ngIf=\"!loading\" class=\"responsive\" [src]=\"userProfile.avatarUrl\" />\n </div>\n <div class=\"reupload\">\n <div class=\"button\" (click)=\"changeAvatar = true\" *ngIf=\"!changeAvatar && userProfile.avatarUrl\">Change avatar</div>\n <div class=\"button\" (click)=\"changeAvatar = true\" *ngIf=\"!changeAvatar && !userProfile.avatarUrl\">Set avatar</div>\n <div class=\"button\" (click)=\"clearAvatar()\" *ngIf=\"changeAvatar && userProfile.avatarUrl\"><span class=\"icon ph-trash-fill\"></span>Clear</div>\n </div>\n </div>\n\n <div class=\"reuploadform\" *ngIf=\"changeAvatar\">\n <div (click)=\"changeAvatar = false\" class=\"cancel icon ph-x-bold\"></div>\n <input class=\"mat-form-field\" accept=\"image/png,image/jpeg\" type=\"file\" id=\"coach-avatar\" (change)=\"uploadAvatar($event)\">\n <div class=\"message message-information\">\n <span class=\"icon ph-info-fill\"></span>Select new image (.png or .jpg). Use a 1:1 ratio for the best results (e.g. 500x500). Maximum size is 500x500px and 500kb.\n </div>\n </div>\n\n <div class=\"form-label\">Name</div>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>What is your name?</mat-label>\n <input maxlength=\"50\" matInput id=\"name\" formControlName=\"name\" type=\"text\">\n <mat-error *ngIf=\"form.controls.name.errors\">\n <div *ngIf=\"form.controls.name.errors.required\">This field is required</div>\n </mat-error>\n </mat-form-field>\n\n <div class=\"form-label\">Email</div>\n <p *ngIf=\"!showEmailInput\">\n The e-mail address is set to <b>{{userProfile.email}}</b>.\n <a [routerLink]=\"[]\" id=\"toggle-email\" (click)=\"setChangeEmail()\">Set a different address.</a>\n </p>\n\n <mat-form-field appearance=\"fill\" *ngIf=\"showEmailInput\" subscriptSizing=\"dynamic\">\n <mat-label>On what e-mail address can you be contacted?</mat-label>\n <input matInput id=\"newEmail\" formControlName=\"newEmail\" type=\"email\">\n <mat-error *ngIf=\"form.controls.newEmail.errors\">\n <div *ngIf=\"form.controls.newEmail.errors.email\">The email is invalid. Please specify email like john&#64;doe.nl or jane.doe&#64;someone.nl.</div>\n <div *ngIf=\"form.controls.newEmail.errors.alreadyExists\">Another user already uses this e-mail address. Please use another email address.</div>\n </mat-error>\n </mat-form-field>\n\n <div class=\"toolbar\">\n <input class=\"button submit primary\" type=\"submit\" id=\"submit\" [disabled]=\"loading\" [ngClass]=\"{'loading': loading}\" value=\"Save\" />\n </div>\n </form>\n</div>\n\n<div class=\"form-security\">\n <h2>Security</h2>\n\n <form class=\"form\">\n <div class=\"form-label\">Change password</div>\n <div class=\"button\" (click)=\"sendPasswordReset()\" id=\"account-passwordreset\" *ngIf=\"!userProfile.usesSSO\">Send email to change password</div>\n <p *ngIf=\"userProfile.usesSSO\">You are logging in through single-sign on (SSO). Use your company's identity provider to change your password.</p>\n\n <ng-container *ngIf=\"allowMFA\">\n <div class=\"form-label\">Add additional login factor (MFA)</div>\n <ng-container *ngIf=\"!usesMFA\">\n <p>Add a code from Google Authenticator or similar to your account to make it more secure.</p>\n <div class=\"button\" (click)=\"sendMFAEnrollment()\" id=\"account-enrollmfa\">Send email to set up 2FA</div>\n </ng-container>\n <ng-container *ngIf=\"usesMFA\">\n <p>An additional factor is <b>enabled</b> for this account.</p>\n <div class=\"button\" (click)=\"resetMFAEnrollment()\" id=\"account-resetmfa\">Reset 2FA</div>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"allowAPI\">\n <div class=\"form-label\">API Access</div>\n <p>Access our <a target=\"_blank\" href=\"https://github.com/theliberators/scrumteamsurvey.docs/wiki/Getting-Started-with-the-API\">API</a> with your personal account.</p>\n <div class=\"button\" (click)=\"createAPITokens()\" id=\"account-apitokens\">Send email with new API tokens</div>\n </ng-container>\n </form>\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}.form-label{margin-top:30px}.currentuserprofileavatar{display:flex}.currentuserprofileavatar .userprofileavatar{margin-bottom:30px;display:flex;background:#2f2f2f;margin-right:15px;width:100px;height:100px;padding:10px}.reuploadform{background:#f0f0f0;position:relative}.reuploadform input{padding:15px 15px 0}.reuploadform .cancel{cursor:pointer;font-size:20pt;position:absolute;right:10px;top:10px}.form-security{margin-top:90px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatError, selector: "mat-error, [matError]", inputs: ["id"] }] }); }
7359
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: UserProfileComponent, isStandalone: false, selector: "userprofile", usesInheritance: true, ngImport: i0, template: "<div class=\"form-profile\">\n <h2>My Profile</h2>\n <form class=\"form\" [formGroup]=\"form\" (ngSubmit)=\"onSubmit(formDirective)\" #formDirective=\"ngForm\">\n <div class=\"form-label\">Avatar</div>\n\n <div class=\"currentuserprofileavatar\">\n <div class=\"userprofileavatar\" *ngIf=\"userProfile.avatarUrl\">\n <div *ngIf=\"loading\" class=\"loading-icon small\"></div>\n <img *ngIf=\"!loading\" class=\"responsive\" [src]=\"userProfile.avatarUrl\" />\n </div>\n <div class=\"reupload\">\n <div class=\"button\" (click)=\"changeAvatar = true\" *ngIf=\"!changeAvatar && userProfile.avatarUrl\">Change avatar</div>\n <div class=\"button\" (click)=\"changeAvatar = true\" *ngIf=\"!changeAvatar && !userProfile.avatarUrl\">Set avatar</div>\n <div class=\"button\" (click)=\"clearAvatar()\" *ngIf=\"changeAvatar && userProfile.avatarUrl\"><span class=\"icon ph-trash-fill\"></span>Clear</div>\n </div>\n </div>\n\n <div class=\"reuploadform\" *ngIf=\"changeAvatar\">\n <div (click)=\"changeAvatar = false\" class=\"cancel icon ph-x-bold\"></div>\n <input class=\"mat-form-field\" accept=\"image/png,image/jpeg\" type=\"file\" id=\"coach-avatar\" (change)=\"uploadAvatar($event)\">\n <div class=\"message message-information\">\n <span class=\"icon ph-info-fill\"></span>Select new image (.png or .jpg). Use a 1:1 ratio for the best results (e.g. 500x500). Maximum size is 500x500px and 500kb.\n </div>\n </div>\n\n <div class=\"form-label\">Name</div>\n <mat-form-field appearance=\"fill\" subscriptSizing=\"dynamic\">\n <mat-label>What is your name?</mat-label>\n <input maxlength=\"50\" matInput id=\"name\" formControlName=\"name\" type=\"text\">\n <mat-error *ngIf=\"form.controls.name.errors\">\n <div *ngIf=\"form.controls.name.errors.required\">This field is required</div>\n </mat-error>\n </mat-form-field>\n\n <div class=\"form-label\">Email</div>\n <p *ngIf=\"!showEmailInput\">\n The e-mail address is set to <b>{{userProfile.email}}</b>.\n <a [routerLink]=\"[]\" id=\"toggle-email\" (click)=\"setChangeEmail()\">Set a different address.</a>\n </p>\n\n <mat-form-field appearance=\"fill\" *ngIf=\"showEmailInput\" subscriptSizing=\"dynamic\">\n <mat-label>On what e-mail address can you be contacted?</mat-label>\n <input matInput id=\"newEmail\" formControlName=\"newEmail\" type=\"email\">\n <mat-error *ngIf=\"form.controls.newEmail.errors\">\n <div *ngIf=\"form.controls.newEmail.errors.email\">The email is invalid. Please specify email like john&#64;doe.nl or jane.doe&#64;someone.nl.</div>\n <div *ngIf=\"form.controls.newEmail.errors.alreadyExists\">Another user already uses this e-mail address. Please use another email address.</div>\n </mat-error>\n </mat-form-field>\n\n <div class=\"toolbar\">\n <input class=\"button submit primary\" type=\"submit\" id=\"submit\" [disabled]=\"loading\" [ngClass]=\"{'loading': loading}\" value=\"Save\" />\n </div>\n </form>\n</div>\n\n<div class=\"form-security\">\n <h2>Security</h2>\n\n <form class=\"form\">\n <div class=\"form-label\">Change password</div>\n <div class=\"button\" (click)=\"sendPasswordReset()\" id=\"account-passwordreset\" *ngIf=\"!userProfile.usesSSO\">Send email to change password</div>\n <p *ngIf=\"userProfile.usesSSO\">You are logging in through single-sign on (SSO). Use your company's identity provider to change your password.</p>\n\n <ng-container *ngIf=\"allowMFA\">\n <div class=\"form-label\">Add additional login factor (MFA)</div>\n <ng-container *ngIf=\"!usesMFA\">\n <p>Add a code from Google Authenticator or similar to your account to make it more secure.</p>\n <div class=\"button\" (click)=\"sendMFAEnrollment()\" id=\"account-enrollmfa\">Send email to set up 2FA</div>\n </ng-container>\n <ng-container *ngIf=\"usesMFA\">\n <p>An additional factor is <b>enabled</b> for this account.</p>\n <div class=\"button\" (click)=\"resetMFAEnrollment()\" id=\"account-resetmfa\">Reset 2FA</div>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"allowAPI\">\n <div class=\"form-label\">API Access</div>\n <p>Access our <a target=\"_blank\" href=\"https://github.com/theliberators/scrumteamsurvey.docs/wiki/Getting-Started-with-the-API\">API</a> with your personal account.</p>\n <div class=\"button\" (click)=\"createAPITokens()\" id=\"account-apitokens\">Send email with new API tokens</div>\n </ng-container>\n </form>\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}.form-label{margin-top:30px}.currentuserprofileavatar{display:flex}.currentuserprofileavatar .userprofileavatar{margin-bottom:30px;display:flex;background:#2f2f2f;margin-right:15px;width:100px;height:100px;padding:10px}.reuploadform{background:#f0f0f0;position:relative}.reuploadform input{padding:15px 15px 0}.reuploadform .cancel{cursor:pointer;font-size:20pt;position:absolute;right:10px;top:10px}.form-security{margin-top:90px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatError, selector: "mat-error, [matError]", inputs: ["id"] }] }); }
7560
7360
  }
7561
7361
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: UserProfileComponent, decorators: [{
7562
7362
  type: Component,
@@ -8482,5 +8282,5 @@ const ViewModelStateConfigToken = new InjectionToken('viewmodelstate-angular.con
8482
8282
  * Generated bundle index. Do not edit.
8483
8283
  */
8484
8284
 
8485
- export { AactionConfigToken, AccountService$1 as AccountService, ActionClientConfig, ActionCollectionDto, ActionConfigDto, ActionDto, ActionListComponent, ActionListFilter, ActionManageComponent, ActionOptionDto, ActionOptionsDto, ActionPrefillDto, ActionService, ActionTeamDto, ActionTileComponent, ActionsModule, AgeIndicatorComponent, AlertClientConfig, AlertConfigDto, AlertConfigToken, AlertDto, AlertFilterDto, AlertResponseDto, AlertService, AlertsComponent, AlertsModule, ApiConfig, ApiConfigDto, ApiConfigToken, ApiErrorDto, ArrowComponent, BackButtonDirective, BackButtonDirectiveModule, BadgeCollectionDto, BadgeComponent, BadgeDto, BadgeProgressionComponent, BadgeStreakComponent, BadgeTypeEnum, BadgesComponent, BenchmarkIndicatorComponent, BenchmarkOptionDto, BenchmarkTypeEnum, BrandBackgroundDirective, BrandConditionalBackgroundColorDirective, BrandConditionalColorDirective, BrandHoverColorDirective, BrandingModule, BrandingProvider, BrandingSettingsDto, CallbackPipe, CallbackPipeModule, ChannelDefaultBrandingDto, ChannelDto, CheckboxComponent, CheckboxModule, ClickableTooltipDirective, ClientInfoDto, CommunityClientConfig, CommunityClientConfigDto, CommunityConfigToken, CommunityModule, ComponentBase, ComponentWithViewStateBase, ContactService, ContentBrandingDto, ContextItemDto, ContextTypes, DIALOG_GUIDES_TOKEN, DIALOG_GUIDE_TOKEN, DateRangeDto, DateRangePipe, DateRangePipeModule, DefinitionDto, DeltaArrowComponent, DeltaPeriodEnum, DialogAccountComponent, DialogAccountModule, DialogActionFiltersComponent, DialogActionManageComponent, DialogAlertsComponent, DialogExportActionsComponent, DialogExportFactorScoresComponent, DialogExportTeamListComponent, DialogFactorInformationComponent, DialogGuideComponent, DialogGuidesComponent, DialogModelFilterComponent, DialogResourceDownloadComponent, DialogSettingsComponent, DialogSubscribeComponent, DialogSubscribeModule, DialogSupportComponent, DialogSupportModule, DialogTeamFilterComponent, DimensionResultDto, DismissAlertRequestDto, DismissPopupService, DoItYourselfComponent, DoItYourselfWorkshopsComponent, EffectDto, EffectTypeEnum, ErrorConfigToken, ErrorDetailDto, ErrorDto, ErrorServiceConfig, ErrorServiceConfigDto, ErrorServiceModule, ExpandComponent, ExpandItemDto, ExpandModule, ExportActionsRequestDto, ExportFactorScoresRequestDto, ExportTeamListRequestDto, FactorAxisComponent, FactorEffectDto, FactorInformationDialogModule, FactorRecommendationDto, FactorScoreCollectionBenchmarkDto, FactorScoreCollectionCompositionDto, FactorScoreCollectionCompositionSegmentDto, FactorScoreCollectionDeltaDto, FactorScoreCollectionDto, FactorScoreCollectionFiltersDto, FactorScoreCompositionPointDto, FactorScoreCompositionPointsDto, FactorScoreDto, FactorService, FactorStructureConstraintDto, FactorStructureDto, FactorStructureSegmentDto, FactorsComponent, FeedbackQuickTipDto, FeedbackResourceDto, FilterTagsComponent, FocusAreasComponent, FooterComponent, FrontAndBackendErrorHandler, GUIDESTATE_PROVIDER, GetHelpFormComponent, GuardsModule, GuideCollectionDto, GuideConfigDto, GuideDto, GuideMediaTypeEnum, GuidePopupService, GuideSettingsDto, GuideStateDto, GuideStateInBackEndService, GuideStateInBrowserService, GuideStepDto, GuideStepMediaDto, GuidesClientConfig, GuidesConfigToken, GuidesModule, ImageSliderComponent, ImpactIndicatorComponent, IncludeActionsModeEnum, InterventionFilterType, InterventionOwnerEnum, InterventionOwnerToStringPipe, InterventionSortEnum, InterventionStateEnum, InterventionStateToStringPipe, InterventionSummaryDto, InterventionTypeEnum, InterventionTypeToStringPipe, InviteUrlDto, KeyValueDto, LegalDocumentDto, LegalDto, LimitationsApplyComponent, LoadModes, LoadingComponent, LoadingModule, LocalUserDto, LoggingSeverityEnum, MatTagsComponent, MatTagsModule, MeasurementDto, MeetupDto, MeetupResponseDto, MeetupsComponent, MetaDataInputComponent, MetadataInputModule, ModelComponent, ModelDefinitionDto, ModelDemoUrlDto, ModelFactorBreakdownComponent, ModelFactorComponent, ModelFilter, ModelStructureDto, ModelSummaryDto, ModelSwitcherComponent, MultiEmailInputComponent, MultiEmailInputModule, NavButtonComponent, NavigationUrlDto, NavigationUrlTypeEnum, NgAddToCalendarModule, NoReloadStrategy, OpenAccountDialogDirective, OpenActionFiltersDialogDirective, OpenAddActionDialogDirective, OpenAlertsDialogDirective, OpenContactSalesDialog, OpenEditActionDialogDirective, OpenExportActionsDialogDirective, OpenExportFactorScoresDialogDirective, OpenExportTeamListDialogDirective, OpenFactorInformationDialogDirective, OpenFeedbackDialogDirective, OpenGuideDialogDirective, OpenGuidesDialogDirective, OpenLookingForHelpDialog, OpenModelFilterDialog, OpenReportBugDialogDirective, OpenResourceDownloadDialogDirective, OpenSettingsDialogDirective, OpenSubscribeDialogDirective, OpenSupportDialogDirective, OpenTeamFilterDialogDirective, PaginatedResponse, PaginatorComponent, PaginatorModule, PagingOptions, PaletteItem, ParticipantDto, ParticipantsComponent, ParticipationRateDto, PointDto, PointTypeEnum, ProcessingDataDto, QualificationEnum, QualifiedByEnum, QuantitySelectorComponent, QuantitySelectorModule, QuestionnaireTypeDto, QuickTipsComponent, RecentContentComponent, RecommendationComponent, RecommendationsComponent, ReloadOnPushStrategy, ResearchComponent, ResetPasswordRequestDto, ResourceDownloadModule, ResourceDownloadRedirectUrlDto, ResourceDownloadService, ResourceDto, ResourceResponseDto, ResultIndicatorComponent, ResultsClientConfig, ResultsClientDto, ResultsConfigToken, ResultsModule, ResumeGuideHoverComponent, RoadmapComponent, SegmentEnum, SegmentNamePipe, SegmentNamePipeModule, SelectItem, SelectListComponent, SelectListItem, SelectListItemApiDto, SelectListModule, SessionIdInterceptor, SessionIdProvider, SiteDefaultFooterComponent, SiteDefaultHeaderComponent, SiteMicroFooterComponent, SlugifyPipe, SlugifyPipeModule, SnapshotDto, SnapshotInviteUrlsComponent, SnapshotInviteUrlsModule, SnapshotMetaDataDto, StartGuideDirective, SubscriptionTierEnum, TabItemDto, TabNavigatorComponent, TabNavigatorModule, TeamDto, TeamEffectivenessComponent, TeamFlagMatchDto, TeamListFilter, TeamListResponseDto, TeamMetaDataDto, TeamNameAndKeyDto, TeamNotificationSettingsDto, TeamSortEnum, TeamStatusEnum, TeamTraitDto, TermsService, TermsUpdatedComponent, TipBadgeComponent, TopicSelectorComponent, TopicSelectorDto, TopicSelectorModule, TrendDataRequestDto, TrendDataSetDto, TrendService, TrendsComponent, TruncatePipe, TruncatePipeModule, TryNowProfessionalComponent, UpdateInProgressComponent, UserGlobalSettingsDto, UserInfoDto, UserListFilter, UserListResponseDto, UserNameAndKeyDto, UserProfileComponent, UserProfileDto, UserProfileService, UserSettingService, UserSettingsDto, UserSpecificSettingsDto, VIEWSTATE_LOAD_STRATEGY, VIEWSTATE_PROVIDER, VIEWSTATE_RELOAD_STRATEGY, VIEWSTATE_USERSETTINGS_STRATEGY, ValidChangeTokenGuard, ValidKeyGuard, ValidKeySnapshotKeyGuard, ValidKeyTeamKeyGuard, VariableDto, VideoComponent, ViewModelStateBase, ViewModelStateConfig, ViewModelStateConfigDto, ViewModelStateConfigToken, ViewModelStateModule, WidgetFactorScoreComponent, WidgetParticipationRateComponent, compareInputValidator, domainValidator, maxSelectedValidator, minTopicsSelectedValidator, presetCheckValidator };
8285
+ export { AactionConfigToken, AccountService$1 as AccountService, ActionClientConfig, ActionCollectionDto, ActionConfigDto, ActionDto, ActionListComponent, ActionListFilter, ActionManageComponent, ActionOptionDto, ActionOptionsDto, ActionPrefillDto, ActionService, ActionTeamDto, ActionTileComponent, ActionsModule, AgeIndicatorComponent, AlertClientConfig, AlertConfigDto, AlertConfigToken, AlertDto, AlertFilterDto, AlertResponseDto, AlertService, AlertsComponent, AlertsModule, ApiConfig, ApiConfigDto, ApiConfigToken, ApiErrorDto, ArrowComponent, BackButtonDirective, BackButtonDirectiveModule, BadgeCollectionDto, BadgeComponent, BadgeDto, BadgeProgressionComponent, BadgeStreakComponent, BadgeTypeEnum, BadgesComponent, BenchmarkIndicatorComponent, BenchmarkOptionDto, BenchmarkTypeEnum, BrandBackgroundDirective, BrandConditionalBackgroundColorDirective, BrandConditionalColorDirective, BrandHoverColorDirective, BrandingModule, BrandingProvider, BrandingSettingsDto, CallbackPipe, CallbackPipeModule, ChannelDefaultBrandingDto, ChannelDto, CheckboxComponent, CheckboxModule, ClickableTooltipDirective, ClientInfoDto, ComponentBase, ComponentWithViewStateBase, ContactService, ContentBrandingDto, ContextItemDto, ContextTypes, DIALOG_GUIDES_TOKEN, DIALOG_GUIDE_TOKEN, DateRangeDto, DateRangePipe, DateRangePipeModule, DefinitionDto, DeltaArrowComponent, DeltaPeriodEnum, DialogAccountComponent, DialogAccountModule, DialogActionFiltersComponent, DialogActionManageComponent, DialogAlertsComponent, DialogExportActionsComponent, DialogExportFactorScoresComponent, DialogExportTeamListComponent, DialogFactorInformationComponent, DialogGuideComponent, DialogGuidesComponent, DialogModelFilterComponent, DialogResourceDownloadComponent, DialogSettingsComponent, DialogSubscribeComponent, DialogSubscribeModule, DialogSupportComponent, DialogSupportModule, DialogTeamFilterComponent, DimensionResultDto, DismissAlertRequestDto, DismissPopupService, DoItYourselfComponent, DoItYourselfWorkshopsComponent, EffectDto, EffectTypeEnum, ErrorConfigToken, ErrorDetailDto, ErrorDto, ErrorServiceConfig, ErrorServiceConfigDto, ErrorServiceModule, ExpandComponent, ExpandItemDto, ExpandModule, ExportActionsRequestDto, ExportFactorScoresRequestDto, ExportTeamListRequestDto, FactorAxisComponent, FactorEffectDto, FactorInformationDialogModule, FactorRecommendationDto, FactorScoreCollectionBenchmarkDto, FactorScoreCollectionCompositionDto, FactorScoreCollectionCompositionSegmentDto, FactorScoreCollectionDeltaDto, FactorScoreCollectionDto, FactorScoreCollectionFiltersDto, FactorScoreCompositionPointDto, FactorScoreCompositionPointsDto, FactorScoreDto, FactorService, FactorStructureConstraintDto, FactorStructureDto, FactorStructureSegmentDto, FactorsComponent, FeedbackQuickTipDto, FeedbackResourceDto, FilterTagsComponent, FocusAreasComponent, FooterComponent, FrontAndBackendErrorHandler, GUIDESTATE_PROVIDER, GuardsModule, GuideCollectionDto, GuideConfigDto, GuideDto, GuideMediaTypeEnum, GuidePopupService, GuideSettingsDto, GuideStateDto, GuideStateInBackEndService, GuideStateInBrowserService, GuideStepDto, GuideStepMediaDto, GuidesClientConfig, GuidesConfigToken, GuidesModule, ImageSliderComponent, ImpactIndicatorComponent, IncludeActionsModeEnum, InterventionFilterType, InterventionOwnerEnum, InterventionOwnerToStringPipe, InterventionSortEnum, InterventionStateEnum, InterventionStateToStringPipe, InterventionSummaryDto, InterventionTypeEnum, InterventionTypeToStringPipe, InviteUrlDto, KeyValueDto, LegalDocumentDto, LegalDto, LimitationsApplyComponent, LoadModes, LoadingComponent, LoadingModule, LocalUserDto, LoggingSeverityEnum, MatTagsComponent, MatTagsModule, MeasurementDto, MetaDataInputComponent, MetadataInputModule, ModelComponent, ModelDefinitionDto, ModelDemoUrlDto, ModelFactorBreakdownComponent, ModelFactorComponent, ModelFilter, ModelStructureDto, ModelSummaryDto, ModelSwitcherComponent, MultiEmailInputComponent, MultiEmailInputModule, NavButtonComponent, NavigationUrlDto, NavigationUrlTypeEnum, NgAddToCalendarModule, NoReloadStrategy, OpenAccountDialogDirective, OpenActionFiltersDialogDirective, OpenAddActionDialogDirective, OpenAlertsDialogDirective, OpenContactSalesDialog, OpenEditActionDialogDirective, OpenExportActionsDialogDirective, OpenExportFactorScoresDialogDirective, OpenExportTeamListDialogDirective, OpenFactorInformationDialogDirective, OpenFeedbackDialogDirective, OpenGuideDialogDirective, OpenGuidesDialogDirective, OpenLookingForHelpDialog, OpenModelFilterDialog, OpenReportBugDialogDirective, OpenResourceDownloadDialogDirective, OpenSettingsDialogDirective, OpenSubscribeDialogDirective, OpenSupportDialogDirective, OpenTeamFilterDialogDirective, PaginatedResponse, PaginatorComponent, PaginatorModule, PagingOptions, PaletteItem, ParticipantDto, ParticipantsComponent, ParticipationRateDto, PointDto, PointTypeEnum, ProcessingDataDto, QualificationEnum, QualifiedByEnum, QuantitySelectorComponent, QuantitySelectorModule, QuestionnaireTypeDto, QuickTipsComponent, RecommendationComponent, RecommendationsComponent, ReloadOnPushStrategy, ResearchComponent, ResetPasswordRequestDto, ResourceDownloadModule, ResourceDownloadRedirectUrlDto, ResourceDownloadService, ResultIndicatorComponent, ResultsClientConfig, ResultsClientDto, ResultsConfigToken, ResultsModule, ResumeGuideHoverComponent, RoadmapComponent, SegmentEnum, SegmentNamePipe, SegmentNamePipeModule, SelectItem, SelectListComponent, SelectListItem, SelectListItemApiDto, SelectListModule, SessionIdInterceptor, SessionIdProvider, SiteDefaultFooterComponent, SiteDefaultHeaderComponent, SiteMicroFooterComponent, SlugifyPipe, SlugifyPipeModule, SnapshotDto, SnapshotInviteUrlsComponent, SnapshotInviteUrlsModule, SnapshotMetaDataDto, StartGuideDirective, SubscriptionTierEnum, TabItemDto, TabNavigatorComponent, TabNavigatorModule, TeamDto, TeamEffectivenessComponent, TeamFlagMatchDto, TeamListFilter, TeamListResponseDto, TeamMetaDataDto, TeamNameAndKeyDto, TeamNotificationSettingsDto, TeamSortEnum, TeamStatusEnum, TeamTraitDto, TermsService, TermsUpdatedComponent, TipBadgeComponent, TopicSelectorComponent, TopicSelectorDto, TopicSelectorModule, TrendDataRequestDto, TrendDataSetDto, TrendService, TrendsComponent, TruncatePipe, TruncatePipeModule, TryNowProfessionalComponent, UpdateInProgressComponent, UserGlobalSettingsDto, UserInfoDto, UserListFilter, UserListResponseDto, UserNameAndKeyDto, UserProfileComponent, UserProfileDto, UserProfileService, UserSettingService, UserSettingsDto, UserSpecificSettingsDto, VIEWSTATE_LOAD_STRATEGY, VIEWSTATE_PROVIDER, VIEWSTATE_RELOAD_STRATEGY, VIEWSTATE_USERSETTINGS_STRATEGY, ValidChangeTokenGuard, ValidKeyGuard, ValidKeySnapshotKeyGuard, ValidKeyTeamKeyGuard, VariableDto, VideoComponent, ViewModelStateBase, ViewModelStateConfig, ViewModelStateConfigDto, ViewModelStateConfigToken, ViewModelStateModule, WidgetFactorScoreComponent, WidgetParticipationRateComponent, compareInputValidator, domainValidator, maxSelectedValidator, minTopicsSelectedValidator, presetCheckValidator };
8486
8286
  //# sourceMappingURL=the-liberators-ngx-scrumteamsurvey-tools.mjs.map