@the-liberators/ngx-scrumteamsurvey-tools 2.2.85 → 2.2.87

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.
Files changed (161) hide show
  1. package/esm2022/lib/actions/actions.module.mjs +4 -4
  2. package/esm2022/lib/actions/components/action-list/action-list.component.mjs +3 -3
  3. package/esm2022/lib/actions/components/action-manage/action-manage.component.mjs +11 -5
  4. package/esm2022/lib/actions/components/action-tile/action-tile.component.mjs +3 -3
  5. package/esm2022/lib/actions/dialogs/dialog-export-actions/dialog-export-actions.component.mjs +3 -3
  6. package/esm2022/lib/actions/dialogs/dialog-export-actions/dialog-export-actions.directive.mjs +3 -3
  7. package/esm2022/lib/actions/dialogs/dialog-filters/dialog-filters.component.mjs +6 -6
  8. package/esm2022/lib/actions/dialogs/dialog-manageaction/dialog-manageaction.component.mjs +9 -9
  9. package/esm2022/lib/actions/interfaces/IActionState.mjs +1 -1
  10. package/esm2022/lib/actions/pipes/interventionOwnerToString.pipe.mjs +3 -3
  11. package/esm2022/lib/actions/pipes/interventionStateToString.pipe.mjs +3 -3
  12. package/esm2022/lib/actions/pipes/interventionTypeToString.pipe.mjs +3 -3
  13. package/esm2022/lib/actions/services/actionClientConfig.mjs +3 -3
  14. package/esm2022/lib/actions/services/actionService.mjs +3 -3
  15. package/esm2022/lib/add-calendar/ng-add-to-calendar.module.mjs +4 -4
  16. package/esm2022/lib/add-calendar/service/ng-add-to-calendar.service.mjs +3 -3
  17. package/esm2022/lib/alerts/alerts.module.mjs +4 -4
  18. package/esm2022/lib/alerts/components/alerts-list/alerts.component.mjs +3 -3
  19. package/esm2022/lib/alerts/components/dialog-alerts/dialog-alerts.component.mjs +3 -3
  20. package/esm2022/lib/alerts/components/dialog-alerts/dialog-alerts.directive.mjs +3 -3
  21. package/esm2022/lib/alerts/services/alertClientConfig.mjs +3 -3
  22. package/esm2022/lib/alerts/services/alerts.service.mjs +3 -3
  23. package/esm2022/lib/apiUrlToken.mjs +3 -3
  24. package/esm2022/lib/branding/brandBackground.directive.mjs +3 -3
  25. package/esm2022/lib/branding/brandConditionalBackgroundColor.directive.mjs +3 -3
  26. package/esm2022/lib/branding/brandConditionalColor.directive.mjs +3 -3
  27. package/esm2022/lib/branding/brandHoverColor.directive.mjs +3 -3
  28. package/esm2022/lib/branding/branding.module.mjs +4 -4
  29. package/esm2022/lib/branding/brandingProvider.service.mjs +3 -3
  30. package/esm2022/lib/branding/components/site-default-footer/site-default-footer.component.mjs +3 -3
  31. package/esm2022/lib/branding/components/site-default-header/site-default-header.component.mjs +3 -3
  32. package/esm2022/lib/branding/components/site-micro-footer/site-micro-footer.component.mjs +3 -3
  33. package/esm2022/lib/community/community.module.mjs +4 -4
  34. package/esm2022/lib/community/components/gethelp-form/gethelp-form.component.mjs +3 -3
  35. package/esm2022/lib/community/components/meetups/meetups.component.mjs +3 -3
  36. package/esm2022/lib/community/components/recentcontent/recentcontent.component.mjs +3 -3
  37. package/esm2022/lib/community/services/communityClientConfig.mjs +3 -3
  38. package/esm2022/lib/componentBase.mjs +3 -3
  39. package/esm2022/lib/componentWithViewStateBase.mjs +3 -3
  40. package/esm2022/lib/components/checkbox/checkbox.component.mjs +3 -3
  41. package/esm2022/lib/components/checkbox/checkbox.module.mjs +4 -4
  42. package/esm2022/lib/components/expand/expand.component.mjs +3 -3
  43. package/esm2022/lib/components/expand/expand.module.mjs +4 -4
  44. package/esm2022/lib/components/loading/loading.component.mjs +3 -3
  45. package/esm2022/lib/components/loading/loading.module.mjs +4 -4
  46. package/esm2022/lib/components/mat-tags/mat-tags.component.mjs +3 -3
  47. package/esm2022/lib/components/mat-tags/mat-tags.module.mjs +4 -4
  48. package/esm2022/lib/components/paginator/paginator.component.mjs +3 -3
  49. package/esm2022/lib/components/paginator/paginator.module.mjs +4 -4
  50. package/esm2022/lib/components/scale-selector/scale-selector.component.mjs +3 -3
  51. package/esm2022/lib/components/scale-selector/scale-selector.module.mjs +4 -4
  52. package/esm2022/lib/dialogs/dialog-account/account.service.mjs +3 -3
  53. package/esm2022/lib/dialogs/dialog-account/dialog-account.component.mjs +6 -6
  54. package/esm2022/lib/dialogs/dialog-account/dialog-account.module.mjs +4 -4
  55. package/esm2022/lib/dialogs/dialog-factorinformation/dialog-factorinformation.component.mjs +6 -6
  56. package/esm2022/lib/dialogs/dialog-factorinformation/dialog-factorinformation.module.mjs +4 -4
  57. package/esm2022/lib/dialogs/dialog-resourcedownload/dialog-resourcedownload.component.mjs +6 -6
  58. package/esm2022/lib/dialogs/dialog-resourcedownload/dialog-resourcedownload.module.mjs +4 -4
  59. package/esm2022/lib/dialogs/dialog-resourcedownload/resourceDownload.service.mjs +3 -3
  60. package/esm2022/lib/dialogs/dialog-subscribe/dialog-subscribe.component.mjs +3 -3
  61. package/esm2022/lib/dialogs/dialog-subscribe/dialog-subscribe.directive.mjs +3 -3
  62. package/esm2022/lib/dialogs/dialog-subscribe/dialog-subscribe.module.mjs +4 -4
  63. package/esm2022/lib/dialogs/dialog-support/contactService.service.mjs +3 -3
  64. package/esm2022/lib/dialogs/dialog-support/dialog-support.component.mjs +3 -3
  65. package/esm2022/lib/dialogs/dialog-support/dialog-support.directive.mjs +15 -15
  66. package/esm2022/lib/dialogs/dialog-support/dialog-support.module.mjs +4 -4
  67. package/esm2022/lib/directives/backbutton/backbutton.directive.mjs +3 -3
  68. package/esm2022/lib/directives/backbutton/backbutton.module.mjs +4 -4
  69. package/esm2022/lib/directives/guards/guards.module.mjs +4 -4
  70. package/esm2022/lib/directives/guards/validChangeTokenGuard.mjs +3 -3
  71. package/esm2022/lib/directives/guards/validKeyGuard.mjs +3 -3
  72. package/esm2022/lib/directives/guards/validSnapshotKeyGuard.mjs +3 -3
  73. package/esm2022/lib/directives/guards/validTeamKeyGuard.mjs +3 -3
  74. package/esm2022/lib/errorhandling/errorHandler.mjs +3 -3
  75. package/esm2022/lib/errorhandling/errorService.module.mjs +4 -4
  76. package/esm2022/lib/errorhandling/errorServiceConfig.mjs +3 -3
  77. package/esm2022/lib/guides/components/imageslider/imageslider.component.mjs +3 -3
  78. package/esm2022/lib/guides/components/resumeguidehover/resumeguidehover.component.mjs +3 -3
  79. package/esm2022/lib/guides/dialogs/dialog-guide/dialog-guide.component.mjs +6 -6
  80. package/esm2022/lib/guides/dialogs/dialog-guides/dialog-guides.component.mjs +6 -6
  81. package/esm2022/lib/guides/directives/startguide/startguide.directive.mjs +3 -3
  82. package/esm2022/lib/guides/guides.module.mjs +4 -4
  83. package/esm2022/lib/guides/services/guidePopup.service.mjs +3 -3
  84. package/esm2022/lib/guides/services/guideStateInBackEnd.service.mjs +3 -3
  85. package/esm2022/lib/guides/services/guideStateInBrowser.service.mjs +3 -3
  86. package/esm2022/lib/guides/services/guidesClientConfig.mjs +3 -3
  87. package/esm2022/lib/pipes/callback/callback.module.mjs +4 -4
  88. package/esm2022/lib/pipes/callback/callback.pipe.mjs +3 -3
  89. package/esm2022/lib/pipes/dateRange/ngx-dateRange.module.mjs +4 -4
  90. package/esm2022/lib/pipes/dateRange/ngx-dateRange.pipe.mjs +3 -3
  91. package/esm2022/lib/pipes/segmentName/segmentName.module.mjs +4 -4
  92. package/esm2022/lib/pipes/segmentName/segmentName.pipe.mjs +3 -3
  93. package/esm2022/lib/pipes/slugify/ngx-slugify.module.mjs +4 -4
  94. package/esm2022/lib/pipes/slugify/ngx-slugify.pipe.mjs +3 -3
  95. package/esm2022/lib/results/components/age-indicator/age-indicator.component.mjs +3 -3
  96. package/esm2022/lib/results/components/arrow/arrow.component.mjs +3 -3
  97. package/esm2022/lib/results/components/badge/badge.component.mjs +3 -3
  98. package/esm2022/lib/results/components/badge-progression/badge-progression.component.mjs +3 -3
  99. package/esm2022/lib/results/components/badge-streak/badge-streak.component.mjs +3 -3
  100. package/esm2022/lib/results/components/badges/badges.component.mjs +3 -3
  101. package/esm2022/lib/results/components/benchmark-indicator/benchmark-indicator.component.mjs +3 -3
  102. package/esm2022/lib/results/components/coachingcenter-teaser/coachingcenter-teaser.component.mjs +3 -3
  103. package/esm2022/lib/results/components/delta-arrow/delta-arrow.component.mjs +3 -3
  104. package/esm2022/lib/results/components/doityourself/doityourself.component.mjs +3 -3
  105. package/esm2022/lib/results/components/doityourselfworkshops/doityourselfworkshops.component.mjs +3 -3
  106. package/esm2022/lib/results/components/factor-axis/factor-axis.component.mjs +3 -3
  107. package/esm2022/lib/results/components/factors/factors.component.mjs +3 -3
  108. package/esm2022/lib/results/components/filter-tags/filter-tags.component.mjs +3 -3
  109. package/esm2022/lib/results/components/focusareas/focusareas.component.mjs +3 -3
  110. package/esm2022/lib/results/components/footer/footer.component.mjs +3 -3
  111. package/esm2022/lib/results/components/impact-indicator/impact-indicator.component.mjs +3 -3
  112. package/esm2022/lib/results/components/liberatorkits/liberatorkits.component.mjs +3 -3
  113. package/esm2022/lib/results/components/limitationsapply/limitationsapply.component.mjs +3 -3
  114. package/esm2022/lib/results/components/model/model.component.mjs +3 -3
  115. package/esm2022/lib/results/components/model-factor/model-factor.component.mjs +3 -3
  116. package/esm2022/lib/results/components/model-factor-breakdown/model-factor-breakdown.component.mjs +3 -3
  117. package/esm2022/lib/results/components/model-switcher/model-switcher.component.mjs +3 -3
  118. package/esm2022/lib/results/components/nav-button/nav-button.component.mjs +3 -3
  119. package/esm2022/lib/results/components/participants/participants.component.mjs +3 -3
  120. package/esm2022/lib/results/components/quicktips/quicktips.component.mjs +3 -3
  121. package/esm2022/lib/results/components/recommendation/recommendation.component.mjs +3 -3
  122. package/esm2022/lib/results/components/recommendations/recommendations.component.mjs +3 -3
  123. package/esm2022/lib/results/components/research/research.component.mjs +3 -3
  124. package/esm2022/lib/results/components/roadmap/roadmap.component.mjs +3 -3
  125. package/esm2022/lib/results/components/teamdashboard-teaser/teamdashboard-teaser.component.mjs +3 -3
  126. package/esm2022/lib/results/components/teameffectiveness/teameffectiveness.component.mjs +3 -3
  127. package/esm2022/lib/results/components/termsupdated/termsupdated.component.mjs +3 -3
  128. package/esm2022/lib/results/components/tip-badge/tip-badge.component.mjs +3 -3
  129. package/esm2022/lib/results/components/trends/trends.component.mjs +3 -3
  130. package/esm2022/lib/results/components/update-in-progress/update-in-progress.component.mjs +3 -3
  131. package/esm2022/lib/results/components/userprofile/userprofile.component.mjs +3 -3
  132. package/esm2022/lib/results/components/video/video.component.mjs +3 -3
  133. package/esm2022/lib/results/components/widget-factorscore/widget-factorscore.component.mjs +3 -3
  134. package/esm2022/lib/results/components/widget-participationrate/widget-participationrate.component.mjs +3 -3
  135. package/esm2022/lib/results/dialogs/dialog-export-factorscores/dialog-export-factorscores.component.mjs +3 -3
  136. package/esm2022/lib/results/dialogs/dialog-export-factorscores/dialog-export-factorscores.directive.mjs +3 -3
  137. package/esm2022/lib/results/dialogs/dialog-export-teamlist/dialog-export-teamlist.component.mjs +3 -3
  138. package/esm2022/lib/results/dialogs/dialog-export-teamlist/dialog-export-teamlist.directive.mjs +3 -3
  139. package/esm2022/lib/results/dialogs/dialog-modelfilter/dialog-modelfilter.component.mjs +6 -6
  140. package/esm2022/lib/results/dialogs/dialog-notes/dialog-notes.component.mjs +6 -6
  141. package/esm2022/lib/results/dialogs/dialog-settings/dialog-settings.component.mjs +6 -6
  142. package/esm2022/lib/results/results.module.mjs +4 -4
  143. package/esm2022/lib/results/services/account.service.mjs +3 -3
  144. package/esm2022/lib/results/services/dimissPopupService.mjs +3 -3
  145. package/esm2022/lib/results/services/exportService.mjs +3 -3
  146. package/esm2022/lib/results/services/factorService.mjs +3 -3
  147. package/esm2022/lib/results/services/resultsClientConfig.mjs +3 -3
  148. package/esm2022/lib/results/services/terms.service.mjs +3 -3
  149. package/esm2022/lib/results/services/trend.service.mjs +3 -3
  150. package/esm2022/lib/results/services/userProfile.service.mjs +3 -3
  151. package/esm2022/lib/viewModel/reloadStrategies/noReloadStrategy.mjs +3 -3
  152. package/esm2022/lib/viewModel/reloadStrategies/reloadOnPushStrategy.mjs +3 -3
  153. package/esm2022/lib/viewModel/services/sessionIdInterceptor.service.mjs +3 -3
  154. package/esm2022/lib/viewModel/services/sessionIdProvider.service.mjs +3 -3
  155. package/esm2022/lib/viewModel/userSettings.service.mjs +3 -3
  156. package/esm2022/lib/viewModel/viewModelState.module.mjs +4 -4
  157. package/esm2022/lib/viewModel/viewModelStateConfig.mjs +3 -3
  158. package/fesm2022/the-liberators-ngx-scrumteamsurvey-tools.mjs +546 -540
  159. package/fesm2022/the-liberators-ngx-scrumteamsurvey-tools.mjs.map +1 -1
  160. package/lib/actions/interfaces/IActionState.d.ts +2 -0
  161. package/package.json +7 -7
@@ -24,10 +24,10 @@ export class TermsUpdatedComponent extends ComponentWithViewStateBase {
24
24
  this.legal = data.userInfo.client.legal;
25
25
  }
26
26
  ;
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: TermsUpdatedComponent, deps: [{ token: i1.TermsService }, { token: VIEWSTATE_PROVIDER }, { token: i2.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: TermsUpdatedComponent, selector: "termsupdated", usesInheritance: true, ngImport: i0, template: "<div class=\"termsupdated\">\n <h3>Updated terms of service</h3>\n <p> Before you can continue, we'd like you to review and accept our terms of service. They outline how we protect personal data in compliance with the European General Data Protection Directive (GDPR). They also outline our mutual responsibilities:</p>\n <ol>\n <li *ngFor=\"let document of legal.documents\"><a [href]=\"document.url\" target=\"_blank\">{{document.name}} <span class=\"icon ph-arrow-square-out\"></span></a></li>\n </ol>\n <div class=\"toolbar\">\n <button class=\"button primary acceptterms\" (click)=\"accept()\" [ngClass]=\"{'loading': sending}\"><span class=\"icon ph-check-circle\"></span> Accept and continue</button>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.termsupdated{margin-top:30px;margin-left:30px;margin-right:30px;padding:20px;border:3px solid #f0f0f0}.termsupdated h3{margin-bottom:5px}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: TermsUpdatedComponent, deps: [{ token: i1.TermsService }, { token: VIEWSTATE_PROVIDER }, { token: i2.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: TermsUpdatedComponent, selector: "termsupdated", usesInheritance: true, ngImport: i0, template: "<div class=\"termsupdated\">\n <h3>Updated terms of service</h3>\n <p> Before you can continue, we'd like you to review and accept our terms of service. They outline how we protect personal data in compliance with the European General Data Protection Directive (GDPR). They also outline our mutual responsibilities:</p>\n <ol>\n <li *ngFor=\"let document of legal.documents\"><a [href]=\"document.url\" target=\"_blank\">{{document.name}} <span class=\"icon ph-arrow-square-out\"></span></a></li>\n </ol>\n <div class=\"toolbar\">\n <button class=\"button primary acceptterms\" (click)=\"accept()\" [ngClass]=\"{'loading': sending}\"><span class=\"icon ph-check-circle\"></span> Accept and continue</button>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.termsupdated{margin-top:30px;margin-left:30px;margin-right:30px;padding:20px;border:3px solid #f0f0f0}.termsupdated h3{margin-bottom:5px}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
29
29
  }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: TermsUpdatedComponent, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: TermsUpdatedComponent, decorators: [{
31
31
  type: Component,
32
32
  args: [{ selector: 'termsupdated', template: "<div class=\"termsupdated\">\n <h3>Updated terms of service</h3>\n <p> Before you can continue, we'd like you to review and accept our terms of service. They outline how we protect personal data in compliance with the European General Data Protection Directive (GDPR). They also outline our mutual responsibilities:</p>\n <ol>\n <li *ngFor=\"let document of legal.documents\"><a [href]=\"document.url\" target=\"_blank\">{{document.name}} <span class=\"icon ph-arrow-square-out\"></span></a></li>\n </ol>\n <div class=\"toolbar\">\n <button class=\"button primary acceptterms\" (click)=\"accept()\" [ngClass]=\"{'loading': sending}\"><span class=\"icon ph-check-circle\"></span> Accept and continue</button>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.termsupdated{margin-top:30px;margin-left:30px;margin-right:30px;padding:20px;border:3px solid #f0f0f0}.termsupdated h3{margin-bottom:5px}\n"] }]
33
33
  }], ctorParameters: () => [{ type: i1.TermsService }, { type: i4.ViewModelStateBase, decorators: [{
@@ -38,10 +38,10 @@ export class TipBadgeComponent extends ComponentWithViewStateBase {
38
38
  }
39
39
  }
40
40
  ;
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: TipBadgeComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
42
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: TipBadgeComponent, selector: "tip-badge", inputs: { dimension: "dimension" }, usesInheritance: true, ngImport: i0, template: "<div [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"dimension\" class=\"tipbadge\" *ngIf=\"label && impact > 0\" [matTooltip]=\"'The impact of this recommendation is ' + impact + ' of 100'\">\n <div [class]=\"'badge ' + class\">{{ label }}</div>\n</div>\n\n<div class=\"tipbadge\" *ngIf=\"label && impact == 0 && subscribed\">\n <div [class]=\"'badge noimpact ' + class\" subscribeDialog>{{ label }}</div>\n</div>\n\n<div class=\"tipbadge\" *ngIf=\"label && impact == 0 && !subscribed\">\n <div [class]=\"'badge noimpact ' + class\">{{ label }}</div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.tipbadge{display:inline;cursor:pointer}.tipbadge .badge{display:inline}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i5.OpenSubscribeDialogDirective, selector: "[subscribeDialog]" }] }); }
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: TipBadgeComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: TipBadgeComponent, selector: "tip-badge", inputs: { dimension: "dimension" }, usesInheritance: true, ngImport: i0, template: "<div [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"dimension\" class=\"tipbadge\" *ngIf=\"label && impact > 0\" [matTooltip]=\"'The impact of this recommendation is ' + impact + ' of 100'\">\n <div [class]=\"'badge ' + class\">{{ label }}</div>\n</div>\n\n<div class=\"tipbadge\" *ngIf=\"label && impact == 0 && subscribed\">\n <div [class]=\"'badge noimpact ' + class\" subscribeDialog>{{ label }}</div>\n</div>\n\n<div class=\"tipbadge\" *ngIf=\"label && impact == 0 && !subscribed\">\n <div [class]=\"'badge noimpact ' + class\">{{ label }}</div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.tipbadge{display:inline;cursor:pointer}.tipbadge .badge{display:inline}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i5.OpenSubscribeDialogDirective, selector: "[subscribeDialog]" }] }); }
43
43
  }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: TipBadgeComponent, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: TipBadgeComponent, decorators: [{
45
45
  type: Component,
46
46
  args: [{ selector: 'tip-badge', template: "<div [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"dimension\" class=\"tipbadge\" *ngIf=\"label && impact > 0\" [matTooltip]=\"'The impact of this recommendation is ' + impact + ' of 100'\">\n <div [class]=\"'badge ' + class\">{{ label }}</div>\n</div>\n\n<div class=\"tipbadge\" *ngIf=\"label && impact == 0 && subscribed\">\n <div [class]=\"'badge noimpact ' + class\" subscribeDialog>{{ label }}</div>\n</div>\n\n<div class=\"tipbadge\" *ngIf=\"label && impact == 0 && !subscribed\">\n <div [class]=\"'badge noimpact ' + class\">{{ label }}</div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.tipbadge{display:inline;cursor:pointer}.tipbadge .badge{display:inline}\n"] }]
47
47
  }], ctorParameters: () => [{ type: i6.ViewModelStateBase, decorators: [{
@@ -118,10 +118,10 @@ export class TrendsComponent extends ComponentWithViewStateBase {
118
118
  this.form.controls.factorKeys.setValue(coreFactors);
119
119
  }
120
120
  ;
121
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: TrendsComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.MatSnackBar }, { token: i3.FactorService }, { token: i4.TrendService }, { token: i5.ActivatedRoute }, { token: VIEWSTATE_PROVIDER }], target: i0.ɵɵFactoryTarget.Component }); }
122
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: TrendsComponent, selector: "trends", inputs: { units: "units", unitType: "unitType" }, viewQueries: [{ propertyName: "chartContainer", first: true, predicate: ["chartcontainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" class=\"dataselector\" (ngSubmit)=\"onFormSubmit()\">\n <div class=\"listtoolbar\" id=\"listtoolbar\">\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\" *ngIf=\"units.length > 1\">\n <mat-label>Select {{unitType}}</mat-label>\n <mat-select formControlName=\"unitKey\" id=\"select-units\" class=\"unitKey\" multiple [disabled]=\"units.length == 1\">\n <mat-option class=\"select-option\" *ngFor=\"let unit of units\" [value]=\"unit\">{{unit.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Select factors</mat-label>\n <mat-select formControlName=\"factorKeys\" id=\"select-factors\" class=\"factorKeys\" multiple [compareWith]=\"compareFactorOptions\">\n <mat-option class=\"select-option\" *ngFor=\"let factor of factors\" [ngClass]=\"{'lower' : factor.lower}\" [value]=\"factor\" selected=\"true\">{{factor.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Summarize to periods of</mat-label>\n <mat-select class=\"periodGrouping-dropdown\" id=\"select-periodGrouping\" formControlName=\"periodGrouping\">\n <mat-option class=\"select-option\" *ngFor=\"let item of periodGroupings\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Action count</mat-label>\n <mat-select class=\"selectactions-dropdown\" id=\"select-includeActions\" formControlName=\"includeActions\">\n <mat-option class=\"select-option\" *ngFor=\"let item of includeActionOptions\" [value]=\"item.value\" class=\"select-option\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Select date range </mat-label>\n <mat-date-range-input [rangePicker]=\"picker\" id=\"select-daterange\">\n <input matStartDate formControlName=\"start\" placeholder=\"Start date\">\n <input matEndDate formControlName=\"end\" placeholder=\"End date\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n\n <mat-error *ngIf=\"form.controls.start.hasError('matStartDateInvalid')\">Invalid start date</mat-error>\n <mat-error *ngIf=\"form.controls.end.hasError('matEndDateInvalid')\">Invalid end date</mat-error>\n </mat-form-field>\n\n <div class=\"listtoolbar-item\">\n <button class=\"button primary\" id=\"button-showtrends\" [ngClass]=\"{'loading': loading}\"><span class=\"ph-funnel\"></span> Show trends</button>\n </div>\n </div>\n</form>\n\n<div class=\"message message-warning\" *ngIf=\"generatorNotes.length > 0\">\n <div class=\"ph-warning icon\"></div> {{generatorNotes[0]}}\n</div>\n\n<div class=\"wirebox calltoaction nodata\" *ngIf=\"!data\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <img src=\"assets/img/improve.png\" />\n <h2>Are you actually improving?</h2>\n <p>Learn if your improvements are actually working out. Take more measurements and plot the trends for your {{unitType}}(s). How is that for empiricism?</p>\n </div>\n </div>\n</div>\n\n<div #chartcontainer class=\"linechart\">\n <div class=\"linechart-container\" *ngIf=\"data\">\n <ngx-charts-line-chart [legend]=\"true\"\n (window:resize)=\"onResize()\"\n [view]=\"view\"\n [showXAxisLabel]=\"true\"\n [showYAxisLabel]=\"true\"\n [xAxis]=\"true\"\n [scheme]=\"'vivid'\"\n [yAxis]=\"true\"\n [legendPosition]=\"legendPosition\"\n [xAxisLabel]=\"'Date'\"\n [yAxisLabel]=\"'Score'\"\n [timeline]=\"true\"\n [yScaleMin]=\"0\"\n [yScaleMax]=\"100\"\n [rangeFillOpacity]=\"0.1\"\n [results]=\"data\"\n [customColors]=\"customColors\">\n </ngx-charts-line-chart>\n </div>\n</div>\n\n<div class=\"message message-information\" *ngIf=\"data\">\n <span class=\"ph-info icon\"></span> This chart shows how factors change over time. The horizontal axis shows the time. The vertical axis shows the weighted average score on the factor. The light area around the lines represents the spread of scores (lower and upper 25% of scores). We aggregate results for one or more teams and from one or more organizations to the periods you chose (1 month, quarter, etc). For each period, we take the most recent snapshot of each team in that period (when available). Hit \"Show Trends\" when you're ready.\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.listtoolbar{display:flex;flex-wrap:wrap;column-gap:30px;row-gap:10px}.listtoolbar .select{flex:auto}.nodata{margin-top:30px;margin-bottom:30px}.nodata img{max-width:700px}.linechart-container{border:3px solid #f0f0f0;margin-top:30px;margin-bottom:30px;padding:30px}.toolbar{margin-top:30px}.mat-mdc-option.lower{margin-left:20px}\n"], dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.LineChartComponent, selector: "ngx-charts-line-chart", inputs: ["legend", "legendTitle", "legendPosition", "xAxis", "yAxis", "showXAxisLabel", "showYAxisLabel", "xAxisLabel", "yAxisLabel", "autoScale", "timeline", "gradient", "showGridLines", "curve", "activeEntries", "schemeType", "rangeFillOpacity", "trimXAxisTicks", "trimYAxisTicks", "rotateXAxisTicks", "maxXAxisTickLength", "maxYAxisTickLength", "xAxisTickFormatting", "yAxisTickFormatting", "xAxisTicks", "yAxisTicks", "roundDomains", "tooltipDisabled", "showRefLines", "referenceLines", "showRefLabels", "xScaleMin", "xScaleMax", "yScaleMin", "yScaleMax", "wrapTicks"], outputs: ["activate", "deactivate"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatLabel, selector: "mat-label" }, { kind: "directive", type: i9.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i9.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i10.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i11.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i11.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i11.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i11.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i11.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }] }); }
121
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: TrendsComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.MatSnackBar }, { token: i3.FactorService }, { token: i4.TrendService }, { token: i5.ActivatedRoute }, { token: VIEWSTATE_PROVIDER }], target: i0.ɵɵFactoryTarget.Component }); }
122
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: TrendsComponent, selector: "trends", inputs: { units: "units", unitType: "unitType" }, viewQueries: [{ propertyName: "chartContainer", first: true, predicate: ["chartcontainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" class=\"dataselector\" (ngSubmit)=\"onFormSubmit()\">\n <div class=\"listtoolbar\" id=\"listtoolbar\">\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\" *ngIf=\"units.length > 1\">\n <mat-label>Select {{unitType}}</mat-label>\n <mat-select formControlName=\"unitKey\" id=\"select-units\" class=\"unitKey\" multiple [disabled]=\"units.length == 1\">\n <mat-option class=\"select-option\" *ngFor=\"let unit of units\" [value]=\"unit\">{{unit.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Select factors</mat-label>\n <mat-select formControlName=\"factorKeys\" id=\"select-factors\" class=\"factorKeys\" multiple [compareWith]=\"compareFactorOptions\">\n <mat-option class=\"select-option\" *ngFor=\"let factor of factors\" [ngClass]=\"{'lower' : factor.lower}\" [value]=\"factor\" selected=\"true\">{{factor.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Summarize to periods of</mat-label>\n <mat-select class=\"periodGrouping-dropdown\" id=\"select-periodGrouping\" formControlName=\"periodGrouping\">\n <mat-option class=\"select-option\" *ngFor=\"let item of periodGroupings\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Action count</mat-label>\n <mat-select class=\"selectactions-dropdown\" id=\"select-includeActions\" formControlName=\"includeActions\">\n <mat-option class=\"select-option\" *ngFor=\"let item of includeActionOptions\" [value]=\"item.value\" class=\"select-option\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Select date range </mat-label>\n <mat-date-range-input [rangePicker]=\"picker\" id=\"select-daterange\">\n <input matStartDate formControlName=\"start\" placeholder=\"Start date\">\n <input matEndDate formControlName=\"end\" placeholder=\"End date\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n\n <mat-error *ngIf=\"form.controls.start.hasError('matStartDateInvalid')\">Invalid start date</mat-error>\n <mat-error *ngIf=\"form.controls.end.hasError('matEndDateInvalid')\">Invalid end date</mat-error>\n </mat-form-field>\n\n <div class=\"listtoolbar-item\">\n <button class=\"button primary\" id=\"button-showtrends\" [ngClass]=\"{'loading': loading}\"><span class=\"ph-funnel\"></span> Show trends</button>\n </div>\n </div>\n</form>\n\n<div class=\"message message-warning\" *ngIf=\"generatorNotes.length > 0\">\n <div class=\"ph-warning icon\"></div> {{generatorNotes[0]}}\n</div>\n\n<div class=\"wirebox calltoaction nodata\" *ngIf=\"!data\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <img src=\"assets/img/improve.png\" />\n <h2>Are you actually improving?</h2>\n <p>Learn if your improvements are actually working out. Take more measurements and plot the trends for your {{unitType}}(s). How is that for empiricism?</p>\n </div>\n </div>\n</div>\n\n<div #chartcontainer class=\"linechart\">\n <div class=\"linechart-container\" *ngIf=\"data\">\n <ngx-charts-line-chart [legend]=\"true\"\n (window:resize)=\"onResize()\"\n [view]=\"view\"\n [showXAxisLabel]=\"true\"\n [showYAxisLabel]=\"true\"\n [xAxis]=\"true\"\n [scheme]=\"'vivid'\"\n [yAxis]=\"true\"\n [legendPosition]=\"legendPosition\"\n [xAxisLabel]=\"'Date'\"\n [yAxisLabel]=\"'Score'\"\n [timeline]=\"true\"\n [yScaleMin]=\"0\"\n [yScaleMax]=\"100\"\n [rangeFillOpacity]=\"0.1\"\n [results]=\"data\"\n [customColors]=\"customColors\">\n </ngx-charts-line-chart>\n </div>\n</div>\n\n<div class=\"message message-information\" *ngIf=\"data\">\n <span class=\"ph-info icon\"></span> This chart shows how factors change over time. The horizontal axis shows the time. The vertical axis shows the weighted average score on the factor. The light area around the lines represents the spread of scores (lower and upper 25% of scores). We aggregate results for one or more teams and from one or more organizations to the periods you chose (1 month, quarter, etc). For each period, we take the most recent snapshot of each team in that period (when available). Hit \"Show Trends\" when you're ready.\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.listtoolbar{display:flex;flex-wrap:wrap;column-gap:30px;row-gap:10px}.listtoolbar .select{flex:auto}.nodata{margin-top:30px;margin-bottom:30px}.nodata img{max-width:700px}.linechart-container{border:3px solid #f0f0f0;margin-top:30px;margin-bottom:30px;padding:30px}.toolbar{margin-top:30px}.mat-mdc-option.lower{margin-left:20px}\n"], dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.LineChartComponent, selector: "ngx-charts-line-chart", inputs: ["legend", "legendTitle", "legendPosition", "xAxis", "yAxis", "showXAxisLabel", "showYAxisLabel", "xAxisLabel", "yAxisLabel", "autoScale", "timeline", "gradient", "showGridLines", "curve", "activeEntries", "schemeType", "rangeFillOpacity", "trimXAxisTicks", "trimYAxisTicks", "rotateXAxisTicks", "maxXAxisTickLength", "maxYAxisTickLength", "xAxisTickFormatting", "yAxisTickFormatting", "xAxisTicks", "yAxisTicks", "roundDomains", "tooltipDisabled", "showRefLines", "referenceLines", "showRefLabels", "xScaleMin", "xScaleMax", "yScaleMin", "yScaleMax", "wrapTicks"], outputs: ["activate", "deactivate"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatLabel, selector: "mat-label" }, { kind: "directive", type: i9.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i9.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i10.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i11.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i11.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i11.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i11.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i11.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }] }); }
123
123
  }
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: TrendsComponent, decorators: [{
124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: TrendsComponent, decorators: [{
125
125
  type: Component,
126
126
  args: [{ selector: 'trends', template: "<form [formGroup]=\"form\" class=\"dataselector\" (ngSubmit)=\"onFormSubmit()\">\n <div class=\"listtoolbar\" id=\"listtoolbar\">\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\" *ngIf=\"units.length > 1\">\n <mat-label>Select {{unitType}}</mat-label>\n <mat-select formControlName=\"unitKey\" id=\"select-units\" class=\"unitKey\" multiple [disabled]=\"units.length == 1\">\n <mat-option class=\"select-option\" *ngFor=\"let unit of units\" [value]=\"unit\">{{unit.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Select factors</mat-label>\n <mat-select formControlName=\"factorKeys\" id=\"select-factors\" class=\"factorKeys\" multiple [compareWith]=\"compareFactorOptions\">\n <mat-option class=\"select-option\" *ngFor=\"let factor of factors\" [ngClass]=\"{'lower' : factor.lower}\" [value]=\"factor\" selected=\"true\">{{factor.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Summarize to periods of</mat-label>\n <mat-select class=\"periodGrouping-dropdown\" id=\"select-periodGrouping\" formControlName=\"periodGrouping\">\n <mat-option class=\"select-option\" *ngFor=\"let item of periodGroupings\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Action count</mat-label>\n <mat-select class=\"selectactions-dropdown\" id=\"select-includeActions\" formControlName=\"includeActions\">\n <mat-option class=\"select-option\" *ngFor=\"let item of includeActionOptions\" [value]=\"item.value\" class=\"select-option\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field class=\"listtoolbar-item select\" appearance=\"fill\">\n <mat-label>Select date range </mat-label>\n <mat-date-range-input [rangePicker]=\"picker\" id=\"select-daterange\">\n <input matStartDate formControlName=\"start\" placeholder=\"Start date\">\n <input matEndDate formControlName=\"end\" placeholder=\"End date\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n\n <mat-error *ngIf=\"form.controls.start.hasError('matStartDateInvalid')\">Invalid start date</mat-error>\n <mat-error *ngIf=\"form.controls.end.hasError('matEndDateInvalid')\">Invalid end date</mat-error>\n </mat-form-field>\n\n <div class=\"listtoolbar-item\">\n <button class=\"button primary\" id=\"button-showtrends\" [ngClass]=\"{'loading': loading}\"><span class=\"ph-funnel\"></span> Show trends</button>\n </div>\n </div>\n</form>\n\n<div class=\"message message-warning\" *ngIf=\"generatorNotes.length > 0\">\n <div class=\"ph-warning icon\"></div> {{generatorNotes[0]}}\n</div>\n\n<div class=\"wirebox calltoaction nodata\" *ngIf=\"!data\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <img src=\"assets/img/improve.png\" />\n <h2>Are you actually improving?</h2>\n <p>Learn if your improvements are actually working out. Take more measurements and plot the trends for your {{unitType}}(s). How is that for empiricism?</p>\n </div>\n </div>\n</div>\n\n<div #chartcontainer class=\"linechart\">\n <div class=\"linechart-container\" *ngIf=\"data\">\n <ngx-charts-line-chart [legend]=\"true\"\n (window:resize)=\"onResize()\"\n [view]=\"view\"\n [showXAxisLabel]=\"true\"\n [showYAxisLabel]=\"true\"\n [xAxis]=\"true\"\n [scheme]=\"'vivid'\"\n [yAxis]=\"true\"\n [legendPosition]=\"legendPosition\"\n [xAxisLabel]=\"'Date'\"\n [yAxisLabel]=\"'Score'\"\n [timeline]=\"true\"\n [yScaleMin]=\"0\"\n [yScaleMax]=\"100\"\n [rangeFillOpacity]=\"0.1\"\n [results]=\"data\"\n [customColors]=\"customColors\">\n </ngx-charts-line-chart>\n </div>\n</div>\n\n<div class=\"message message-information\" *ngIf=\"data\">\n <span class=\"ph-info icon\"></span> This chart shows how factors change over time. The horizontal axis shows the time. The vertical axis shows the weighted average score on the factor. The light area around the lines represents the spread of scores (lower and upper 25% of scores). We aggregate results for one or more teams and from one or more organizations to the periods you chose (1 month, quarter, etc). For each period, we take the most recent snapshot of each team in that period (when available). Hit \"Show Trends\" when you're ready.\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.listtoolbar{display:flex;flex-wrap:wrap;column-gap:30px;row-gap:10px}.listtoolbar .select{flex:auto}.nodata{margin-top:30px;margin-bottom:30px}.nodata img{max-width:700px}.linechart-container{border:3px solid #f0f0f0;margin-top:30px;margin-bottom:30px;padding:30px}.toolbar{margin-top:30px}.mat-mdc-option.lower{margin-left:20px}\n"] }]
127
127
  }], ctorParameters: () => [{ type: i1.UntypedFormBuilder }, { type: i2.MatSnackBar }, { type: i3.FactorService }, { type: i4.TrendService }, { type: i5.ActivatedRoute }, { type: i12.ViewModelStateBase, decorators: [{
@@ -23,10 +23,10 @@ export class UpdateInProgressComponent extends ComponentWithViewStateBase {
23
23
  }
24
24
  }
25
25
  ;
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdateInProgressComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
27
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: UpdateInProgressComponent, selector: "update-in-progress", usesInheritance: true, ngImport: i0, template: "<div class=\"update-in-progress\" *ngIf=\"delayedReloading\">\n <span class=\"icon ph-floppy-disk-bold\"></span>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.update-in-progress{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%;-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;background:#2f2f2f;position:fixed;right:0;width:20px;height:20px;bottom:0;padding:5px;display:flex;justify-content:center;align-items:center}.update-in-progress .icon{color:#f0f0f0;font-size:18px;animation:beating;animation-duration:1s;animation-iteration-count:infinite}@keyframes beating{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: UpdateInProgressComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: UpdateInProgressComponent, selector: "update-in-progress", usesInheritance: true, ngImport: i0, template: "<div class=\"update-in-progress\" *ngIf=\"delayedReloading\">\n <span class=\"icon ph-floppy-disk-bold\"></span>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.update-in-progress{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%;-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;background:#2f2f2f;position:fixed;right:0;width:20px;height:20px;bottom:0;padding:5px;display:flex;justify-content:center;align-items:center}.update-in-progress .icon{color:#f0f0f0;font-size:18px;animation:beating;animation-duration:1s;animation-iteration-count:infinite}@keyframes beating{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdateInProgressComponent, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: UpdateInProgressComponent, decorators: [{
30
30
  type: Component,
31
31
  args: [{ selector: 'update-in-progress', template: "<div class=\"update-in-progress\" *ngIf=\"delayedReloading\">\n <span class=\"icon ph-floppy-disk-bold\"></span>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.update-in-progress{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%;-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;background:#2f2f2f;position:fixed;right:0;width:20px;height:20px;bottom:0;padding:5px;display:flex;justify-content:center;align-items:center}.update-in-progress .icon{color:#f0f0f0;font-size:18px;animation:beating;animation-duration:1s;animation-iteration-count:infinite}@keyframes beating{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}\n"] }]
32
32
  }], ctorParameters: () => [{ type: i3.ViewModelStateBase, decorators: [{
@@ -145,10 +145,10 @@ export class UserProfileComponent extends ComponentWithViewStateBase {
145
145
  }
146
146
  }
147
147
  ;
148
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UserProfileComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.AuthService }, { token: i2.UserProfileService }, { token: i3.AccountService }, { token: i4.UntypedFormBuilder }, { token: i5.MatSnackBar }, { token: i6.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
149
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: UserProfileComponent, 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 </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%}.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: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatLabel, selector: "mat-label" }, { kind: "directive", type: i9.MatError, selector: "mat-error, [matError]", inputs: ["id"] }] }); }
148
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: UserProfileComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.AuthService }, { token: i2.UserProfileService }, { token: i3.AccountService }, { token: i4.UntypedFormBuilder }, { token: i5.MatSnackBar }, { token: i6.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
149
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: UserProfileComponent, 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 </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%}.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: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatLabel, selector: "mat-label" }, { kind: "directive", type: i9.MatError, selector: "mat-error, [matError]", inputs: ["id"] }] }); }
150
150
  }
151
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UserProfileComponent, decorators: [{
151
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: UserProfileComponent, decorators: [{
152
152
  type: Component,
153
153
  args: [{ selector: 'userprofile', 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 </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%}.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"] }]
154
154
  }], ctorParameters: () => [{ type: i10.ViewModelStateBase, decorators: [{
@@ -9,10 +9,10 @@ export class VideoComponent {
9
9
  openVideo() {
10
10
  window.open(this.videoUrl, "_blank");
11
11
  }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: VideoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: VideoComponent, selector: "explainervideo", inputs: { videoUrl: "videoUrl", videoTitle: "videoTitle" }, ngImport: i0, template: "<div class=\"box explainervideo\" brandbackground [palette]=\"'theme'\" (click)=\"openVideo()\">\n <span class=\"ph-monitor-play-bold icon video\"></span>\n <div class=\"name\">\n <h3>\n {{videoTitle}}\n </h3>\n <div class=\"tags\">\n <span class=\"tag external\"><span class=\"icon ph-arrow-square-out\"></span> youtube</span>\n </div>\n </div>\n</div>\n\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%}.box{cursor:pointer;padding:20px;display:flex}.box .video{vertical-align:middle;margin-right:15px;font-size:60px;width:60px;color:#fff;text-decoration:none}.box .name{color:#fff}.box .name:hover{-webkit-transition:all .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:underline}.box h3{font-size:30px;margin-bottom:5px}.box .tags{display:block}\n"], dependencies: [{ kind: "directive", type: i1.BrandBackgroundDirective, selector: "[brandbackground]", inputs: ["palette"] }] }); }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: VideoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: VideoComponent, selector: "explainervideo", inputs: { videoUrl: "videoUrl", videoTitle: "videoTitle" }, ngImport: i0, template: "<div class=\"box explainervideo\" brandbackground [palette]=\"'theme'\" (click)=\"openVideo()\">\n <span class=\"ph-monitor-play-bold icon video\"></span>\n <div class=\"name\">\n <h3>\n {{videoTitle}}\n </h3>\n <div class=\"tags\">\n <span class=\"tag external\"><span class=\"icon ph-arrow-square-out\"></span> youtube</span>\n </div>\n </div>\n</div>\n\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%}.box{cursor:pointer;padding:20px;display:flex}.box .video{vertical-align:middle;margin-right:15px;font-size:60px;width:60px;color:#fff;text-decoration:none}.box .name{color:#fff}.box .name:hover{-webkit-transition:all .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:underline}.box h3{font-size:30px;margin-bottom:5px}.box .tags{display:block}\n"], dependencies: [{ kind: "directive", type: i1.BrandBackgroundDirective, selector: "[brandbackground]", inputs: ["palette"] }] }); }
14
14
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: VideoComponent, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: VideoComponent, decorators: [{
16
16
  type: Component,
17
17
  args: [{ selector: 'explainervideo', template: "<div class=\"box explainervideo\" brandbackground [palette]=\"'theme'\" (click)=\"openVideo()\">\n <span class=\"ph-monitor-play-bold icon video\"></span>\n <div class=\"name\">\n <h3>\n {{videoTitle}}\n </h3>\n <div class=\"tags\">\n <span class=\"tag external\"><span class=\"icon ph-arrow-square-out\"></span> youtube</span>\n </div>\n </div>\n</div>\n\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%}.box{cursor:pointer;padding:20px;display:flex}.box .video{vertical-align:middle;margin-right:15px;font-size:60px;width:60px;color:#fff;text-decoration:none}.box .name{color:#fff}.box .name:hover{-webkit-transition:all .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:underline}.box h3{font-size:30px;margin-bottom:5px}.box .tags{display:block}\n"] }]
18
18
  }], ctorParameters: () => [], propDecorators: { videoUrl: [{
@@ -25,10 +25,10 @@ export class WidgetFactorScoreComponent {
25
25
  this.points = this.factorScore.points.filter(p => p.type == PointTypeEnum.team || p.type == PointTypeEnum.client);
26
26
  this.direction = this.factorScore.qualification.toLowerCase();
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: WidgetFactorScoreComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: WidgetFactorScoreComponent, selector: "widget-factorscore", inputs: { factorScore: "factorScore", factorScores: "factorScores", delta: "delta" }, ngImport: i0, template: "<div class=\"widget factorscore\">\n <div class=\"label\">\n {{factorScore.name}}\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n <div [class]=\"'progressbar progressbar-inverted progressbar-' + direction + ' progressbar-spread'\">\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-bar\" *ngIf=\"!confidenceAvailable\" [style]=\"'width: ' + score + '%'\"></div>\n <div class=\"benchmark\" [style]=\"'left: ' + benchmark + '%'\" [matTooltip]=\"'Teams in benchmark \\'' + benchmarkName + '\\' score an average of ' + benchmark + ' points'\" *ngIf=\"benchmark != 0\"></div>\n <div class=\"progressbar-score\">{{factorScore.score > 0 ? factorScore.score : \"waiting for data\"}}</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%}\n"], dependencies: [{ kind: "directive", type: i1.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: "component", type: i3.DeltaArrowComponent, selector: "delta-arrow", inputs: ["factorScore", "delta", "noDataIndicator"] }] }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: WidgetFactorScoreComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: WidgetFactorScoreComponent, selector: "widget-factorscore", inputs: { factorScore: "factorScore", factorScores: "factorScores", delta: "delta" }, ngImport: i0, template: "<div class=\"widget factorscore\">\n <div class=\"label\">\n {{factorScore.name}}\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n <div [class]=\"'progressbar progressbar-inverted progressbar-' + direction + ' progressbar-spread'\">\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-bar\" *ngIf=\"!confidenceAvailable\" [style]=\"'width: ' + score + '%'\"></div>\n <div class=\"benchmark\" [style]=\"'left: ' + benchmark + '%'\" [matTooltip]=\"'Teams in benchmark \\'' + benchmarkName + '\\' score an average of ' + benchmark + ' points'\" *ngIf=\"benchmark != 0\"></div>\n <div class=\"progressbar-score\">{{factorScore.score > 0 ? factorScore.score : \"waiting for data\"}}</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%}\n"], dependencies: [{ kind: "directive", type: i1.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: "component", type: i3.DeltaArrowComponent, selector: "delta-arrow", inputs: ["factorScore", "delta", "noDataIndicator"] }] }); }
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: WidgetFactorScoreComponent, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: WidgetFactorScoreComponent, decorators: [{
32
32
  type: Component,
33
33
  args: [{ selector: 'widget-factorscore', template: "<div class=\"widget factorscore\">\n <div class=\"label\">\n {{factorScore.name}}\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n <div [class]=\"'progressbar progressbar-inverted progressbar-' + direction + ' progressbar-spread'\">\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-bar\" *ngIf=\"!confidenceAvailable\" [style]=\"'width: ' + score + '%'\"></div>\n <div class=\"benchmark\" [style]=\"'left: ' + benchmark + '%'\" [matTooltip]=\"'Teams in benchmark \\'' + benchmarkName + '\\' score an average of ' + benchmark + ' points'\" *ngIf=\"benchmark != 0\"></div>\n <div class=\"progressbar-score\">{{factorScore.score > 0 ? factorScore.score : \"waiting for data\"}}</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%}\n"] }]
34
34
  }], ctorParameters: () => [], propDecorators: { factorScore: [{
@@ -20,10 +20,10 @@ export class WidgetParticipationRateComponent {
20
20
  ;
21
21
  this.direction = this.data.qualification.toLowerCase();
22
22
  }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: WidgetParticipationRateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: WidgetParticipationRateComponent, selector: "widget-participationrate", inputs: { data: "data" }, ngImport: i0, template: "<div class=\"widget factorscore\">\n <div class=\"label\">\n Participation rate (%)\n </div>\n <div [class]=\"'progressbar progressbar-inverted progressbar-' + direction + ' progressbar-spread'\">\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-bar\" *ngIf=\"!confidenceAvailable\" [style]=\"'width: ' + percentage + '%'\"></div>\n <div class=\"progressbar-score\">{{data.percentage > 0 ? data.percentage : \"no recent data\"}}</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%}\n"], dependencies: [{ kind: "directive", type: i1.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"] }] }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: WidgetParticipationRateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: WidgetParticipationRateComponent, selector: "widget-participationrate", inputs: { data: "data" }, ngImport: i0, template: "<div class=\"widget factorscore\">\n <div class=\"label\">\n Participation rate (%)\n </div>\n <div [class]=\"'progressbar progressbar-inverted progressbar-' + direction + ' progressbar-spread'\">\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-bar\" *ngIf=\"!confidenceAvailable\" [style]=\"'width: ' + percentage + '%'\"></div>\n <div class=\"progressbar-score\">{{data.percentage > 0 ? data.percentage : \"no recent data\"}}</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%}\n"], dependencies: [{ kind: "directive", type: i1.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"] }] }); }
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: WidgetParticipationRateComponent, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: WidgetParticipationRateComponent, decorators: [{
27
27
  type: Component,
28
28
  args: [{ selector: 'widget-participationrate', template: "<div class=\"widget factorscore\">\n <div class=\"label\">\n Participation rate (%)\n </div>\n <div [class]=\"'progressbar progressbar-inverted progressbar-' + direction + ' progressbar-spread'\">\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-bar\" *ngIf=\"!confidenceAvailable\" [style]=\"'width: ' + percentage + '%'\"></div>\n <div class=\"progressbar-score\">{{data.percentage > 0 ? data.percentage : \"no recent data\"}}</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%}\n"] }]
29
29
  }], ctorParameters: () => [], propDecorators: { data: [{
@@ -81,10 +81,10 @@ export class DialogExportFactorScoresComponent extends ComponentWithViewStateBas
81
81
  });
82
82
  }
83
83
  ;
84
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: DialogExportFactorScoresComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }, { token: i2.ExportService }, { token: i3.MatDialogRef }, { token: i4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
85
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: DialogExportFactorScoresComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>Export summary results</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>Export team-level results to .csv for your own analyses.</p>\n <form [formGroup]=\"form\" (ngSubmit)=\"submit()\">\n <mat-form-field class=\"periodGrouping\" subscriptSizing=\"dynamic\">\n <mat-label>Summarize to periods of</mat-label>\n <mat-select class=\"periodGrouping-dropdown\" formControlName=\"periodGrouping\">\n <mat-option class=\"select-option\" *ngFor=\"let item of periodGroupings\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field subscriptSizing=\"dynamic\">\n <mat-label>Select date range</mat-label>\n <mat-date-range-input [rangePicker]=\"picker\">\n <input matStartDate formControlName=\"start\" placeholder=\"Start date\">\n <input matEndDate formControlName=\"end\" placeholder=\"End date\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n\n <mat-error *ngIf=\"form.controls.start.hasError('matStartDateInvalid')\">Invalid start date</mat-error>\n <mat-error *ngIf=\"form.controls.end.hasError('matEndDateInvalid')\">Invalid end date</mat-error>\n </mat-form-field>\n\n <mat-form-field class=\"benchmark\" subscriptSizing=\"dynamic\">\n <mat-label>Which benchmark should be exported along?</mat-label>\n <mat-select class=\"benchmark-dropdown\" formControlName=\"benchmarkType\">\n <mat-option class=\"select-option\" *ngFor=\"let item of benchmarkTypes\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <div class=\"toolbar\">\n <button class=\"button primary\" type=\"submit\" [ngClass]=\"{'loading': sending }\" [disabled]=\"sending\">export</button>\n <button class=\"button\" mat-dialog-close>cancel</button>\n </div>\n </form>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.errors{margin-bottom:15px}.confirmation h4{margin:0 0 5px}.confirmation p{margin:0}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i7.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i9.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i9.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i9.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i9.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }] }); }
84
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: DialogExportFactorScoresComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }, { token: i2.ExportService }, { token: i3.MatDialogRef }, { token: i4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
85
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: DialogExportFactorScoresComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>Export summary results</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>Export team-level results to .csv for your own analyses.</p>\n <form [formGroup]=\"form\" (ngSubmit)=\"submit()\">\n <mat-form-field class=\"periodGrouping\" subscriptSizing=\"dynamic\">\n <mat-label>Summarize to periods of</mat-label>\n <mat-select class=\"periodGrouping-dropdown\" formControlName=\"periodGrouping\">\n <mat-option class=\"select-option\" *ngFor=\"let item of periodGroupings\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field subscriptSizing=\"dynamic\">\n <mat-label>Select date range</mat-label>\n <mat-date-range-input [rangePicker]=\"picker\">\n <input matStartDate formControlName=\"start\" placeholder=\"Start date\">\n <input matEndDate formControlName=\"end\" placeholder=\"End date\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n\n <mat-error *ngIf=\"form.controls.start.hasError('matStartDateInvalid')\">Invalid start date</mat-error>\n <mat-error *ngIf=\"form.controls.end.hasError('matEndDateInvalid')\">Invalid end date</mat-error>\n </mat-form-field>\n\n <mat-form-field class=\"benchmark\" subscriptSizing=\"dynamic\">\n <mat-label>Which benchmark should be exported along?</mat-label>\n <mat-select class=\"benchmark-dropdown\" formControlName=\"benchmarkType\">\n <mat-option class=\"select-option\" *ngFor=\"let item of benchmarkTypes\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <div class=\"toolbar\">\n <button class=\"button primary\" type=\"submit\" [ngClass]=\"{'loading': sending }\" [disabled]=\"sending\">export</button>\n <button class=\"button\" mat-dialog-close>cancel</button>\n </div>\n </form>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.errors{margin-bottom:15px}.confirmation h4{margin:0 0 5px}.confirmation p{margin:0}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i7.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i9.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i9.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i9.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i9.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }] }); }
86
86
  }
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: DialogExportFactorScoresComponent, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: DialogExportFactorScoresComponent, decorators: [{
88
88
  type: Component,
89
89
  args: [{ template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>Export summary results</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>Export team-level results to .csv for your own analyses.</p>\n <form [formGroup]=\"form\" (ngSubmit)=\"submit()\">\n <mat-form-field class=\"periodGrouping\" subscriptSizing=\"dynamic\">\n <mat-label>Summarize to periods of</mat-label>\n <mat-select class=\"periodGrouping-dropdown\" formControlName=\"periodGrouping\">\n <mat-option class=\"select-option\" *ngFor=\"let item of periodGroupings\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field subscriptSizing=\"dynamic\">\n <mat-label>Select date range</mat-label>\n <mat-date-range-input [rangePicker]=\"picker\">\n <input matStartDate formControlName=\"start\" placeholder=\"Start date\">\n <input matEndDate formControlName=\"end\" placeholder=\"End date\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n\n <mat-error *ngIf=\"form.controls.start.hasError('matStartDateInvalid')\">Invalid start date</mat-error>\n <mat-error *ngIf=\"form.controls.end.hasError('matEndDateInvalid')\">Invalid end date</mat-error>\n </mat-form-field>\n\n <mat-form-field class=\"benchmark\" subscriptSizing=\"dynamic\">\n <mat-label>Which benchmark should be exported along?</mat-label>\n <mat-select class=\"benchmark-dropdown\" formControlName=\"benchmarkType\">\n <mat-option class=\"select-option\" *ngFor=\"let item of benchmarkTypes\" [value]=\"item.value\">{{item.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n\n <div class=\"toolbar\">\n <button class=\"button primary\" type=\"submit\" [ngClass]=\"{'loading': sending }\" [disabled]=\"sending\">export</button>\n <button class=\"button\" mat-dialog-close>cancel</button>\n </div>\n </form>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.errors{margin-bottom:15px}.confirmation h4{margin:0 0 5px}.confirmation p{margin:0}\n"] }]
90
90
  }], ctorParameters: () => [{ type: i10.ViewModelStateBase, decorators: [{
@@ -15,10 +15,10 @@ export class OpenExportFactorScoresDialogDirective {
15
15
  dialogConfig.exitAnimationDuration = 0;
16
16
  this.dialog.open(DialogExportFactorScoresComponent, dialogConfig);
17
17
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: OpenExportFactorScoresDialogDirective, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
19
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: OpenExportFactorScoresDialogDirective, selector: "[exportFactorScoresDialog]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: OpenExportFactorScoresDialogDirective, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: OpenExportFactorScoresDialogDirective, selector: "[exportFactorScoresDialog]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: OpenExportFactorScoresDialogDirective, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: OpenExportFactorScoresDialogDirective, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  selector: '[exportFactorScoresDialog]',
@@ -77,10 +77,10 @@ export class DialogExportTeamListComponent extends ComponentWithViewStateBase {
77
77
  });
78
78
  }
79
79
  ;
80
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: DialogExportTeamListComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }, { token: VIEWSTATE_USERSETTINGS_STRATEGY }, { token: i2.ExportService }, { token: i3.MatDialogRef }, { token: i4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
81
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: DialogExportTeamListComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>Export team summaries</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>Download most of what we show in this overview to .csv for your own analyses (max 250 teams).</p>\n <form [formGroup]=\"form\" (ngSubmit)=\"exportTeamSummaries()\">\n\n <div class=\"toolbar\">\n <button class=\"button primary\" id=\"submit-export-teamlist\" type=\"submit\" [ngClass]=\"{'loading': sending }\" [disabled]=\"sending\">export</button>\n <button class=\"button\" mat-dialog-close>cancel</button>\n </div>\n </form>\n\n <h2>Export participation report</h2>\n <p>Download a list of teams, their snapshots and the number of completed participants for each segment to .csv (max 250 teams).</p>\n <form [formGroup]=\"form\" (ngSubmit)=\"exportParticipationRate()\">\n\n <div class=\"toolbar\">\n <button class=\"button primary\" id=\"submit-export-participationrate\" type=\"submit\" [ngClass]=\"{'loading': sending }\" [disabled]=\"sending\">export</button>\n <button class=\"button\" mat-dialog-close>cancel</button>\n </div>\n </form>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.errors{margin-bottom:15px}.confirmation h4{margin:0 0 5px}.confirmation p{margin:0}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] }); }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: DialogExportTeamListComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }, { token: VIEWSTATE_USERSETTINGS_STRATEGY }, { token: i2.ExportService }, { token: i3.MatDialogRef }, { token: i4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
81
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: DialogExportTeamListComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>Export team summaries</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>Download most of what we show in this overview to .csv for your own analyses (max 250 teams).</p>\n <form [formGroup]=\"form\" (ngSubmit)=\"exportTeamSummaries()\">\n\n <div class=\"toolbar\">\n <button class=\"button primary\" id=\"submit-export-teamlist\" type=\"submit\" [ngClass]=\"{'loading': sending }\" [disabled]=\"sending\">export</button>\n <button class=\"button\" mat-dialog-close>cancel</button>\n </div>\n </form>\n\n <h2>Export participation report</h2>\n <p>Download a list of teams, their snapshots and the number of completed participants for each segment to .csv (max 250 teams).</p>\n <form [formGroup]=\"form\" (ngSubmit)=\"exportParticipationRate()\">\n\n <div class=\"toolbar\">\n <button class=\"button primary\" id=\"submit-export-participationrate\" type=\"submit\" [ngClass]=\"{'loading': sending }\" [disabled]=\"sending\">export</button>\n <button class=\"button\" mat-dialog-close>cancel</button>\n </div>\n </form>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.errors{margin-bottom:15px}.confirmation h4{margin:0 0 5px}.confirmation p{margin:0}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] }); }
82
82
  }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: DialogExportTeamListComponent, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: DialogExportTeamListComponent, decorators: [{
84
84
  type: Component,
85
85
  args: [{ template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>Export team summaries</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>Download most of what we show in this overview to .csv for your own analyses (max 250 teams).</p>\n <form [formGroup]=\"form\" (ngSubmit)=\"exportTeamSummaries()\">\n\n <div class=\"toolbar\">\n <button class=\"button primary\" id=\"submit-export-teamlist\" type=\"submit\" [ngClass]=\"{'loading': sending }\" [disabled]=\"sending\">export</button>\n <button class=\"button\" mat-dialog-close>cancel</button>\n </div>\n </form>\n\n <h2>Export participation report</h2>\n <p>Download a list of teams, their snapshots and the number of completed participants for each segment to .csv (max 250 teams).</p>\n <form [formGroup]=\"form\" (ngSubmit)=\"exportParticipationRate()\">\n\n <div class=\"toolbar\">\n <button class=\"button primary\" id=\"submit-export-participationrate\" type=\"submit\" [ngClass]=\"{'loading': sending }\" [disabled]=\"sending\">export</button>\n <button class=\"button\" mat-dialog-close>cancel</button>\n </div>\n </form>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.errors{margin-bottom:15px}.confirmation h4{margin:0 0 5px}.confirmation p{margin:0}\n"] }]
86
86
  }], ctorParameters: () => [{ type: i6.ViewModelStateBase, decorators: [{
@@ -15,10 +15,10 @@ export class OpenExportTeamListDialogDirective {
15
15
  dialogConfig.exitAnimationDuration = 0;
16
16
  this.dialog.open(DialogExportTeamListComponent, dialogConfig);
17
17
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: OpenExportTeamListDialogDirective, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
19
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: OpenExportTeamListDialogDirective, selector: "[exportTeamListDialog]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: OpenExportTeamListDialogDirective, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: OpenExportTeamListDialogDirective, selector: "[exportTeamListDialog]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: OpenExportTeamListDialogDirective, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: OpenExportTeamListDialogDirective, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  selector: '[exportTeamListDialog]',
@@ -44,10 +44,10 @@ export class DialogModelFilterComponent extends ComponentWithViewStateBase {
44
44
  this.models = data.factorScores.modelStructure.models;
45
45
  this.form.controls.activeModel.setValue(this.models.find(p => p.publicKey == data.userInfo.settings.user.modelKey) ?? this.models[0]);
46
46
  }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: DialogModelFilterComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: VIEWSTATE_USERSETTINGS_STRATEGY }, { token: i1.MatSnackBar }, { token: i2.MatDialogRef }, { token: i3.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
48
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: DialogModelFilterComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dialog-header\" id=\"dialog-modelfilter\">\n <h1 mat-dialog-title>Switch evidence-based model</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\" class=\"modelfilter\">\n <mat-form-field class=\"activeModel\" subscriptSizing=\"dynamic\">\n <mat-label>Select active model</mat-label>\n <mat-select class=\"activemodel-dropdown\" formControlName=\"activeModel\">\n <mat-option class=\"select-option\" *ngFor=\"let model of models\" [value]=\"model\">{{model.name}} <span class=\"badge badge-beta\" *ngIf=\"model.isInBeta\">beta</span></mat-option>\n </mat-select>\n </mat-form-field>\n\n <p [innerHtml]=\"form.controls.activeModel.value.description\" *ngIf=\"form.controls.activeModel.value.description\"></p>\n\n <div class=\"toolbar\">\n <button class=\"button primary\" id=\"modelfilter-apply\" type=\"submit\" (click)=\"submit()\" [ngClass]=\"{'loading': sending }\">switch</button>\n <button class=\"button cancel\" id=\"modelfilter-cancel\" mat-dialog-close>cancel</button>\n </div>\n </form>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.toolbar{margin-top:30px}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }] }); }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: DialogModelFilterComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: VIEWSTATE_USERSETTINGS_STRATEGY }, { token: i1.MatSnackBar }, { token: i2.MatDialogRef }, { token: i3.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: DialogModelFilterComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dialog-header\" id=\"dialog-modelfilter\">\n <h1 mat-dialog-title>Switch evidence-based model</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\" class=\"modelfilter\">\n <mat-form-field class=\"activeModel\" subscriptSizing=\"dynamic\">\n <mat-label>Select active model</mat-label>\n <mat-select class=\"activemodel-dropdown\" formControlName=\"activeModel\">\n <mat-option class=\"select-option\" *ngFor=\"let model of models\" [value]=\"model\">{{model.name}} <span class=\"badge badge-beta\" *ngIf=\"model.isInBeta\">beta</span></mat-option>\n </mat-select>\n </mat-form-field>\n\n <p [innerHtml]=\"form.controls.activeModel.value.description\" *ngIf=\"form.controls.activeModel.value.description\"></p>\n\n <div class=\"toolbar\">\n <button class=\"button primary\" id=\"modelfilter-apply\" type=\"submit\" (click)=\"submit()\" [ngClass]=\"{'loading': sending }\">switch</button>\n <button class=\"button cancel\" id=\"modelfilter-cancel\" mat-dialog-close>cancel</button>\n </div>\n </form>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.toolbar{margin-top:30px}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }] }); }
49
49
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: DialogModelFilterComponent, decorators: [{
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: DialogModelFilterComponent, decorators: [{
51
51
  type: Component,
52
52
  args: [{ template: "<div class=\"dialog-header\" id=\"dialog-modelfilter\">\n <h1 mat-dialog-title>Switch evidence-based model</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\" class=\"modelfilter\">\n <mat-form-field class=\"activeModel\" subscriptSizing=\"dynamic\">\n <mat-label>Select active model</mat-label>\n <mat-select class=\"activemodel-dropdown\" formControlName=\"activeModel\">\n <mat-option class=\"select-option\" *ngFor=\"let model of models\" [value]=\"model\">{{model.name}} <span class=\"badge badge-beta\" *ngIf=\"model.isInBeta\">beta</span></mat-option>\n </mat-select>\n </mat-form-field>\n\n <p [innerHtml]=\"form.controls.activeModel.value.description\" *ngIf=\"form.controls.activeModel.value.description\"></p>\n\n <div class=\"toolbar\">\n <button class=\"button primary\" id=\"modelfilter-apply\" type=\"submit\" (click)=\"submit()\" [ngClass]=\"{'loading': sending }\">switch</button>\n <button class=\"button cancel\" id=\"modelfilter-cancel\" mat-dialog-close>cancel</button>\n </div>\n </form>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.toolbar{margin-top:30px}\n"] }]
53
53
  }], ctorParameters: () => [{ type: i8.ViewModelStateBase, decorators: [{
@@ -69,10 +69,10 @@ export class OpenModelFilterDialog {
69
69
  dialogConfig.exitAnimationDuration = 0;
70
70
  this.dialog.open(DialogModelFilterComponent, dialogConfig);
71
71
  }
72
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: OpenModelFilterDialog, deps: [{ token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
73
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: OpenModelFilterDialog, selector: "[modelFilterDialog]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
72
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: OpenModelFilterDialog, deps: [{ token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
73
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: OpenModelFilterDialog, selector: "[modelFilterDialog]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
74
74
  }
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: OpenModelFilterDialog, decorators: [{
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: OpenModelFilterDialog, decorators: [{
76
76
  type: Directive,
77
77
  args: [{
78
78
  selector: '[modelFilterDialog]',
@@ -7,10 +7,10 @@ export class DialogNotesComponent {
7
7
  constructor(notes) {
8
8
  this.notes = notes;
9
9
  }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: DialogNotesComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: DialogNotesComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>Limititations to your results</h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n <ul *ngFor=\"let item of notes\">\n <li>{{item}}</li>\n </ul>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.item{padding:15px 0;border-top:3px solid #f0f0f0}.item:first-of-type{border-top:3px solid #f0f0f0}.item .description{margin-bottom:15px}.item .bar{display:flex}.item .bar .date{flex:30%}.item .bar .dismiss{margin-right:30px}.item .bar .date,.item .bar .dismiss,.item .bar .action{font-style:normal;font-weight:600;font-size:15px;line-height:140%}.item .bar .date a,.item .bar .dismiss a,.item .bar .action a{text-decoration:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] }); }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: DialogNotesComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: DialogNotesComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>Limititations to your results</h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n <ul *ngFor=\"let item of notes\">\n <li>{{item}}</li>\n </ul>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.item{padding:15px 0;border-top:3px solid #f0f0f0}.item:first-of-type{border-top:3px solid #f0f0f0}.item .description{margin-bottom:15px}.item .bar{display:flex}.item .bar .date{flex:30%}.item .bar .dismiss{margin-right:30px}.item .bar .date,.item .bar .dismiss,.item .bar .action{font-style:normal;font-weight:600;font-size:15px;line-height:140%}.item .bar .date a,.item .bar .dismiss a,.item .bar .action a{text-decoration:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] }); }
12
12
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: DialogNotesComponent, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: DialogNotesComponent, decorators: [{
14
14
  type: Component,
15
15
  args: [{ template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>Limititations to your results</h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n <ul *ngFor=\"let item of notes\">\n <li>{{item}}</li>\n </ul>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.item{padding:15px 0;border-top:3px solid #f0f0f0}.item:first-of-type{border-top:3px solid #f0f0f0}.item .description{margin-bottom:15px}.item .bar{display:flex}.item .bar .date{flex:30%}.item .bar .dismiss{margin-right:30px}.item .bar .date,.item .bar .dismiss,.item .bar .action{font-style:normal;font-weight:600;font-size:15px;line-height:140%}.item .bar .date a,.item .bar .dismiss a,.item .bar .action a{text-decoration:none}\n"] }]
16
16
  }], ctorParameters: () => [{ type: undefined, decorators: [{
@@ -29,10 +29,10 @@ export class OpenNotesDialogDirective {
29
29
  dialogConfig.exitAnimationDuration = 0;
30
30
  this.dialog.open(DialogNotesComponent, dialogConfig);
31
31
  }
32
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: OpenNotesDialogDirective, deps: [{ token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
33
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: OpenNotesDialogDirective, selector: "[notesDialog]", inputs: { notes: "notes" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: OpenNotesDialogDirective, deps: [{ token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Directive }); }
33
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: OpenNotesDialogDirective, selector: "[notesDialog]", inputs: { notes: "notes" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
34
34
  }
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: OpenNotesDialogDirective, decorators: [{
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: OpenNotesDialogDirective, decorators: [{
36
36
  type: Directive,
37
37
  args: [{
38
38
  selector: '[notesDialog]',