@the-liberators/ngx-scrumteamsurvey-tools 2.3.90 → 2.3.91
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.
|
@@ -11,9 +11,9 @@ import * as i1$3 from '@angular/material/dialog';
|
|
|
11
11
|
import { MAT_DIALOG_DATA, MatDialogConfig, MatDialogModule } from '@angular/material/dialog';
|
|
12
12
|
import * as i4 from '@angular/material/input';
|
|
13
13
|
import { MatInputModule } from '@angular/material/input';
|
|
14
|
-
import * as
|
|
14
|
+
import * as i5$1 from '@angular/material/menu';
|
|
15
15
|
import { MatMenuModule } from '@angular/material/menu';
|
|
16
|
-
import * as i4$
|
|
16
|
+
import * as i4$2 from '@angular/material/paginator';
|
|
17
17
|
import { MatPaginatorModule } from '@angular/material/paginator';
|
|
18
18
|
import * as i5 from '@angular/material/select';
|
|
19
19
|
import { MatSelectModule } from '@angular/material/select';
|
|
@@ -26,26 +26,26 @@ import { MatSnackBarConfig, MatSnackBarModule } from '@angular/material/snack-ba
|
|
|
26
26
|
import { BehaviorSubject, Subject, timer } from 'rxjs';
|
|
27
27
|
import { take, debounceTime, startWith, map, filter } from 'rxjs/operators';
|
|
28
28
|
import { __decorate, __param } from 'tslib';
|
|
29
|
-
import { LOCAL_STORAGE, StorageServiceModule } from 'ngx-webstorage-service';
|
|
30
29
|
import * as i1$2 from '@angular/common/http';
|
|
31
30
|
import { HttpClient, HttpEventType, HttpResponse, HttpErrorResponse } from '@angular/common/http';
|
|
31
|
+
import { LOCAL_STORAGE, StorageServiceModule } from 'ngx-webstorage-service';
|
|
32
32
|
import * as moment from 'moment';
|
|
33
33
|
import { trigger, state, transition, style, animate } from '@angular/animations';
|
|
34
34
|
import { ENTER, COMMA } from '@angular/cdk/keycodes';
|
|
35
35
|
import * as i2$1 from '@angular/material/autocomplete';
|
|
36
36
|
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
37
|
-
import * as i5$
|
|
37
|
+
import * as i5$2 from '@angular/material/chips';
|
|
38
38
|
import { MatChipsModule } from '@angular/material/chips';
|
|
39
39
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
40
40
|
import * as i2$2 from '@angular/cdk/clipboard';
|
|
41
41
|
import { ClipboardModule } from '@angular/cdk/clipboard';
|
|
42
|
-
import * as i5$
|
|
42
|
+
import * as i5$3 from '@angular/material/checkbox';
|
|
43
43
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
44
44
|
import * as i11 from '@ncstate/sat-popover';
|
|
45
45
|
import { SatPopoverModule } from '@ncstate/sat-popover';
|
|
46
46
|
import * as i2$3 from '@angular/material/progress-spinner';
|
|
47
47
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
48
|
-
import * as i5$
|
|
48
|
+
import * as i5$4 from '@angular/material/slide-toggle';
|
|
49
49
|
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
50
50
|
import * as i7$1 from '@swimlane/ngx-charts';
|
|
51
51
|
import { LegendPosition, NgxChartsModule } from '@swimlane/ngx-charts';
|
|
@@ -264,204 +264,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
264
264
|
type: Injectable
|
|
265
265
|
}], ctorParameters: () => [{ type: ViewModelStateBase }, { type: i1.MatSnackBar }] });
|
|
266
266
|
|
|
267
|
-
class FactorScoreDto {
|
|
268
|
-
}
|
|
269
|
-
class FactorRecommendationDto {
|
|
270
|
-
}
|
|
271
|
-
class ProcessingDataDto {
|
|
272
|
-
}
|
|
273
|
-
class PointDto {
|
|
274
|
-
}
|
|
275
|
-
class FactorScoreCollectionDto {
|
|
276
|
-
}
|
|
277
|
-
class FactorScoreCollectionFiltersDto {
|
|
278
|
-
}
|
|
279
|
-
class FactorScoreCollectionDeltaDto {
|
|
280
|
-
}
|
|
281
|
-
class FactorScoreCollectionBenchmarkDto {
|
|
282
|
-
}
|
|
283
|
-
class BenchmarkOptionDto {
|
|
284
|
-
}
|
|
285
|
-
class FactorScoreCompositionPointsDto {
|
|
286
|
-
}
|
|
287
|
-
class FactorScoreCompositionPointDto {
|
|
288
|
-
}
|
|
289
|
-
class FactorScoreCollectionCompositionDto {
|
|
290
|
-
}
|
|
291
|
-
class FactorScoreCollectionCompositionSegmentDto {
|
|
292
|
-
}
|
|
293
|
-
class InterventionSummaryDto {
|
|
294
|
-
}
|
|
295
|
-
class FeedbackResourceDto {
|
|
296
|
-
}
|
|
297
|
-
class FeedbackQuickTipDto {
|
|
298
|
-
}
|
|
299
|
-
class FactorEffectDto {
|
|
300
|
-
}
|
|
301
|
-
var BenchmarkTypeEnum;
|
|
302
|
-
(function (BenchmarkTypeEnum) {
|
|
303
|
-
BenchmarkTypeEnum["NoBenchmark"] = "NoBenchmark";
|
|
304
|
-
BenchmarkTypeEnum["MostRecentSamples"] = "MostRecentSamples";
|
|
305
|
-
BenchmarkTypeEnum["TopSamplesByExperience"] = "TopSamplesByExperience";
|
|
306
|
-
BenchmarkTypeEnum["TopSamplesByEffectiveness"] = "TopSamplesByEffectiveness";
|
|
307
|
-
BenchmarkTypeEnum["topSamplesByValue"] = "TopSamplesByValue";
|
|
308
|
-
BenchmarkTypeEnum["TopSamplesByResponsiveness"] = "TopSamplesByResponsiveness";
|
|
309
|
-
BenchmarkTypeEnum["TeamsFromSameClient"] = "TeamsFromSameclient";
|
|
310
|
-
BenchmarkTypeEnum["TeamsFromSameBroker"] = "TeamsFromSameBroker";
|
|
311
|
-
BenchmarkTypeEnum["TeamsInSectorFinance"] = "TeamsInSectorFinance";
|
|
312
|
-
BenchmarkTypeEnum["TeamsInSectorIT"] = "TeamsInSectorIT";
|
|
313
|
-
BenchmarkTypeEnum["TeamsFrameworkSAFe"] = "TeamsFrameworkSAFe";
|
|
314
|
-
BenchmarkTypeEnum["TeamsFrameworkScrum"] = "TeamsFrameworkScrum";
|
|
315
|
-
})(BenchmarkTypeEnum || (BenchmarkTypeEnum = {}));
|
|
316
|
-
var ContextTypes;
|
|
317
|
-
(function (ContextTypes) {
|
|
318
|
-
ContextTypes["Unset"] = "Unset";
|
|
319
|
-
ContextTypes["Participant"] = "Participant";
|
|
320
|
-
ContextTypes["Snapshot"] = "Snapshot";
|
|
321
|
-
})(ContextTypes || (ContextTypes = {}));
|
|
322
|
-
var QualifiedByEnum;
|
|
323
|
-
(function (QualifiedByEnum) {
|
|
324
|
-
QualifiedByEnum["benchmark"] = "Benchmark";
|
|
325
|
-
QualifiedByEnum["delta"] = "Delta";
|
|
326
|
-
QualifiedByEnum["none"] = "None";
|
|
327
|
-
})(QualifiedByEnum || (QualifiedByEnum = {}));
|
|
328
|
-
var EffectTypeEnum;
|
|
329
|
-
(function (EffectTypeEnum) {
|
|
330
|
-
EffectTypeEnum["predicts"] = "Predicts";
|
|
331
|
-
EffectTypeEnum["isPartOf"] = "IsPartOf";
|
|
332
|
-
EffectTypeEnum["isPredictedby"] = "IsPredictedBy";
|
|
333
|
-
})(EffectTypeEnum || (EffectTypeEnum = {}));
|
|
334
|
-
var PointTypeEnum;
|
|
335
|
-
(function (PointTypeEnum) {
|
|
336
|
-
PointTypeEnum["unspecified"] = "Unspecified";
|
|
337
|
-
PointTypeEnum["team"] = "Team";
|
|
338
|
-
PointTypeEnum["segment"] = "Segment";
|
|
339
|
-
PointTypeEnum["individual"] = "Individual";
|
|
340
|
-
PointTypeEnum["client"] = "Client";
|
|
341
|
-
})(PointTypeEnum || (PointTypeEnum = {}));
|
|
342
|
-
var QualificationEnum;
|
|
343
|
-
(function (QualificationEnum) {
|
|
344
|
-
QualificationEnum["positive"] = "Positive";
|
|
345
|
-
QualificationEnum["neutral"] = "Neutral";
|
|
346
|
-
QualificationEnum["negative"] = "Negative";
|
|
347
|
-
})(QualificationEnum || (QualificationEnum = {}));
|
|
348
|
-
var DeltaPeriodEnum;
|
|
349
|
-
(function (DeltaPeriodEnum) {
|
|
350
|
-
DeltaPeriodEnum["previousMonth"] = "PreviousMonth";
|
|
351
|
-
DeltaPeriodEnum["previousQuarter"] = "PreviousQuarter";
|
|
352
|
-
DeltaPeriodEnum["previousYear"] = "PreviousYear";
|
|
353
|
-
DeltaPeriodEnum["previousSnapshot"] = "PreviousSnapshot";
|
|
354
|
-
DeltaPeriodEnum["previousHalfYear"] = "PreviousHalfYear";
|
|
355
|
-
DeltaPeriodEnum["none"] = "None";
|
|
356
|
-
})(DeltaPeriodEnum || (DeltaPeriodEnum = {}));
|
|
357
|
-
var IncludeActionsModeEnum;
|
|
358
|
-
(function (IncludeActionsModeEnum) {
|
|
359
|
-
IncludeActionsModeEnum["none"] = "None";
|
|
360
|
-
IncludeActionsModeEnum["includeAll"] = "IncludeAll";
|
|
361
|
-
IncludeActionsModeEnum["includeRelevant"] = "IncludeRelevant";
|
|
362
|
-
})(IncludeActionsModeEnum || (IncludeActionsModeEnum = {}));
|
|
363
|
-
|
|
364
|
-
class PagingOptions {
|
|
365
|
-
}
|
|
366
|
-
|
|
367
|
-
class UserSettingsDto {
|
|
368
|
-
constructor() {
|
|
369
|
-
this.global = new UserGlobalSettingsDto();
|
|
370
|
-
this.user = new UserSpecificSettingsDto();
|
|
371
|
-
}
|
|
372
|
-
}
|
|
373
|
-
class UserGlobalSettingsDto {
|
|
374
|
-
constructor() {
|
|
375
|
-
this.deltaPeriod = DeltaPeriodEnum.previousQuarter;
|
|
376
|
-
this.benchmark = BenchmarkTypeEnum.MostRecentSamples;
|
|
377
|
-
this.overviewFactors = [];
|
|
378
|
-
}
|
|
379
|
-
}
|
|
380
|
-
class UserSpecificSettingsDto {
|
|
381
|
-
constructor() {
|
|
382
|
-
this.teamFilter = new TeamListFilter();
|
|
383
|
-
this.userFilter = new UserListFilter();
|
|
384
|
-
this.modelFilter = new ModelFilter(InterventionFilterType.All);
|
|
385
|
-
this.interventionFilter = new ActionListFilter();
|
|
386
|
-
this.guideSettings = new GuideSettingsDto();
|
|
387
|
-
}
|
|
388
|
-
}
|
|
389
|
-
class GuideSettingsDto {
|
|
390
|
-
constructor() {
|
|
391
|
-
this.completedSteps = [];
|
|
392
|
-
}
|
|
393
|
-
}
|
|
394
|
-
class ModelFilter {
|
|
395
|
-
constructor(interventionFilterType) {
|
|
396
|
-
this.layers = [];
|
|
397
|
-
this.interventionFilter = interventionFilterType;
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
class ModelVisualizationLayer {
|
|
401
|
-
constructor(key, label, selected = false) {
|
|
402
|
-
this.key = key;
|
|
403
|
-
this.label = label;
|
|
404
|
-
this.selected = selected;
|
|
405
|
-
}
|
|
406
|
-
}
|
|
407
|
-
class TeamListFilter extends PagingOptions {
|
|
408
|
-
constructor() {
|
|
409
|
-
super();
|
|
410
|
-
this.tags = [];
|
|
411
|
-
}
|
|
412
|
-
}
|
|
413
|
-
class UserListFilter extends PagingOptions {
|
|
414
|
-
constructor() {
|
|
415
|
-
super();
|
|
416
|
-
}
|
|
417
|
-
}
|
|
418
|
-
class ActionListFilter extends PagingOptions {
|
|
419
|
-
}
|
|
420
|
-
var InterventionFilterType;
|
|
421
|
-
(function (InterventionFilterType) {
|
|
422
|
-
InterventionFilterType["All"] = "All";
|
|
423
|
-
InterventionFilterType["OnlyOpen"] = "OnlyOpen";
|
|
424
|
-
InterventionFilterType["OnlyCompleted"] = "OnlyCompleted";
|
|
425
|
-
InterventionFilterType["None"] = "None";
|
|
426
|
-
})(InterventionFilterType || (InterventionFilterType = {}));
|
|
427
|
-
var TeamSortEnum;
|
|
428
|
-
(function (TeamSortEnum) {
|
|
429
|
-
TeamSortEnum["name"] = "Name";
|
|
430
|
-
TeamSortEnum["created"] = "Created";
|
|
431
|
-
})(TeamSortEnum || (TeamSortEnum = {}));
|
|
432
|
-
var TeamStatusEnum;
|
|
433
|
-
(function (TeamStatusEnum) {
|
|
434
|
-
TeamStatusEnum["active"] = "Active";
|
|
435
|
-
TeamStatusEnum["archived"] = "Archived";
|
|
436
|
-
})(TeamStatusEnum || (TeamStatusEnum = {}));
|
|
437
|
-
|
|
438
|
-
const VIEWSTATE_USERSETTINGS_STRATEGY = new InjectionToken('viewstate.usersettings.strategy');
|
|
439
|
-
class UserSettingService {
|
|
440
|
-
constructor(storage) {
|
|
441
|
-
this.storage = storage;
|
|
442
|
-
this.settings = new UserSettingsDto();
|
|
443
|
-
this.changed = new Subject();
|
|
444
|
-
this.settings = this.storage.get("usersettings") || new UserSettingsDto();
|
|
445
|
-
}
|
|
446
|
-
set(filters) {
|
|
447
|
-
this.settings = filters;
|
|
448
|
-
this.storage.set("usersettings", this.settings);
|
|
449
|
-
this.changed.next(this.settings);
|
|
450
|
-
}
|
|
451
|
-
get() {
|
|
452
|
-
return this.settings;
|
|
453
|
-
}
|
|
454
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: UserSettingService, deps: [{ token: LOCAL_STORAGE }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
455
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: UserSettingService, providedIn: 'root' }); }
|
|
456
|
-
}
|
|
457
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: UserSettingService, decorators: [{
|
|
458
|
-
type: Injectable,
|
|
459
|
-
args: [{ providedIn: 'root' }]
|
|
460
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
461
|
-
type: Inject,
|
|
462
|
-
args: [LOCAL_STORAGE]
|
|
463
|
-
}] }] });
|
|
464
|
-
|
|
465
267
|
class ActionDto {
|
|
466
268
|
constructor() {
|
|
467
269
|
this.team = new ActionTeamDto();
|
|
@@ -835,6 +637,204 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
835
637
|
type: Input
|
|
836
638
|
}] } });
|
|
837
639
|
|
|
640
|
+
class FactorScoreDto {
|
|
641
|
+
}
|
|
642
|
+
class FactorRecommendationDto {
|
|
643
|
+
}
|
|
644
|
+
class ProcessingDataDto {
|
|
645
|
+
}
|
|
646
|
+
class PointDto {
|
|
647
|
+
}
|
|
648
|
+
class FactorScoreCollectionDto {
|
|
649
|
+
}
|
|
650
|
+
class FactorScoreCollectionFiltersDto {
|
|
651
|
+
}
|
|
652
|
+
class FactorScoreCollectionDeltaDto {
|
|
653
|
+
}
|
|
654
|
+
class FactorScoreCollectionBenchmarkDto {
|
|
655
|
+
}
|
|
656
|
+
class BenchmarkOptionDto {
|
|
657
|
+
}
|
|
658
|
+
class FactorScoreCompositionPointsDto {
|
|
659
|
+
}
|
|
660
|
+
class FactorScoreCompositionPointDto {
|
|
661
|
+
}
|
|
662
|
+
class FactorScoreCollectionCompositionDto {
|
|
663
|
+
}
|
|
664
|
+
class FactorScoreCollectionCompositionSegmentDto {
|
|
665
|
+
}
|
|
666
|
+
class InterventionSummaryDto {
|
|
667
|
+
}
|
|
668
|
+
class FeedbackResourceDto {
|
|
669
|
+
}
|
|
670
|
+
class FeedbackQuickTipDto {
|
|
671
|
+
}
|
|
672
|
+
class FactorEffectDto {
|
|
673
|
+
}
|
|
674
|
+
var BenchmarkTypeEnum;
|
|
675
|
+
(function (BenchmarkTypeEnum) {
|
|
676
|
+
BenchmarkTypeEnum["NoBenchmark"] = "NoBenchmark";
|
|
677
|
+
BenchmarkTypeEnum["MostRecentSamples"] = "MostRecentSamples";
|
|
678
|
+
BenchmarkTypeEnum["TopSamplesByExperience"] = "TopSamplesByExperience";
|
|
679
|
+
BenchmarkTypeEnum["TopSamplesByEffectiveness"] = "TopSamplesByEffectiveness";
|
|
680
|
+
BenchmarkTypeEnum["topSamplesByValue"] = "TopSamplesByValue";
|
|
681
|
+
BenchmarkTypeEnum["TopSamplesByResponsiveness"] = "TopSamplesByResponsiveness";
|
|
682
|
+
BenchmarkTypeEnum["TeamsFromSameClient"] = "TeamsFromSameclient";
|
|
683
|
+
BenchmarkTypeEnum["TeamsFromSameBroker"] = "TeamsFromSameBroker";
|
|
684
|
+
BenchmarkTypeEnum["TeamsInSectorFinance"] = "TeamsInSectorFinance";
|
|
685
|
+
BenchmarkTypeEnum["TeamsInSectorIT"] = "TeamsInSectorIT";
|
|
686
|
+
BenchmarkTypeEnum["TeamsFrameworkSAFe"] = "TeamsFrameworkSAFe";
|
|
687
|
+
BenchmarkTypeEnum["TeamsFrameworkScrum"] = "TeamsFrameworkScrum";
|
|
688
|
+
})(BenchmarkTypeEnum || (BenchmarkTypeEnum = {}));
|
|
689
|
+
var ContextTypes;
|
|
690
|
+
(function (ContextTypes) {
|
|
691
|
+
ContextTypes["Unset"] = "Unset";
|
|
692
|
+
ContextTypes["Participant"] = "Participant";
|
|
693
|
+
ContextTypes["Snapshot"] = "Snapshot";
|
|
694
|
+
})(ContextTypes || (ContextTypes = {}));
|
|
695
|
+
var QualifiedByEnum;
|
|
696
|
+
(function (QualifiedByEnum) {
|
|
697
|
+
QualifiedByEnum["benchmark"] = "Benchmark";
|
|
698
|
+
QualifiedByEnum["delta"] = "Delta";
|
|
699
|
+
QualifiedByEnum["none"] = "None";
|
|
700
|
+
})(QualifiedByEnum || (QualifiedByEnum = {}));
|
|
701
|
+
var EffectTypeEnum;
|
|
702
|
+
(function (EffectTypeEnum) {
|
|
703
|
+
EffectTypeEnum["predicts"] = "Predicts";
|
|
704
|
+
EffectTypeEnum["isPartOf"] = "IsPartOf";
|
|
705
|
+
EffectTypeEnum["isPredictedby"] = "IsPredictedBy";
|
|
706
|
+
})(EffectTypeEnum || (EffectTypeEnum = {}));
|
|
707
|
+
var PointTypeEnum;
|
|
708
|
+
(function (PointTypeEnum) {
|
|
709
|
+
PointTypeEnum["unspecified"] = "Unspecified";
|
|
710
|
+
PointTypeEnum["team"] = "Team";
|
|
711
|
+
PointTypeEnum["segment"] = "Segment";
|
|
712
|
+
PointTypeEnum["individual"] = "Individual";
|
|
713
|
+
PointTypeEnum["client"] = "Client";
|
|
714
|
+
})(PointTypeEnum || (PointTypeEnum = {}));
|
|
715
|
+
var QualificationEnum;
|
|
716
|
+
(function (QualificationEnum) {
|
|
717
|
+
QualificationEnum["positive"] = "Positive";
|
|
718
|
+
QualificationEnum["neutral"] = "Neutral";
|
|
719
|
+
QualificationEnum["negative"] = "Negative";
|
|
720
|
+
})(QualificationEnum || (QualificationEnum = {}));
|
|
721
|
+
var DeltaPeriodEnum;
|
|
722
|
+
(function (DeltaPeriodEnum) {
|
|
723
|
+
DeltaPeriodEnum["previousMonth"] = "PreviousMonth";
|
|
724
|
+
DeltaPeriodEnum["previousQuarter"] = "PreviousQuarter";
|
|
725
|
+
DeltaPeriodEnum["previousYear"] = "PreviousYear";
|
|
726
|
+
DeltaPeriodEnum["previousSnapshot"] = "PreviousSnapshot";
|
|
727
|
+
DeltaPeriodEnum["previousHalfYear"] = "PreviousHalfYear";
|
|
728
|
+
DeltaPeriodEnum["none"] = "None";
|
|
729
|
+
})(DeltaPeriodEnum || (DeltaPeriodEnum = {}));
|
|
730
|
+
var IncludeActionsModeEnum;
|
|
731
|
+
(function (IncludeActionsModeEnum) {
|
|
732
|
+
IncludeActionsModeEnum["none"] = "None";
|
|
733
|
+
IncludeActionsModeEnum["includeAll"] = "IncludeAll";
|
|
734
|
+
IncludeActionsModeEnum["includeRelevant"] = "IncludeRelevant";
|
|
735
|
+
})(IncludeActionsModeEnum || (IncludeActionsModeEnum = {}));
|
|
736
|
+
|
|
737
|
+
class PagingOptions {
|
|
738
|
+
}
|
|
739
|
+
|
|
740
|
+
class UserSettingsDto {
|
|
741
|
+
constructor() {
|
|
742
|
+
this.global = new UserGlobalSettingsDto();
|
|
743
|
+
this.user = new UserSpecificSettingsDto();
|
|
744
|
+
}
|
|
745
|
+
}
|
|
746
|
+
class UserGlobalSettingsDto {
|
|
747
|
+
constructor() {
|
|
748
|
+
this.deltaPeriod = DeltaPeriodEnum.previousQuarter;
|
|
749
|
+
this.benchmark = BenchmarkTypeEnum.MostRecentSamples;
|
|
750
|
+
this.overviewFactors = [];
|
|
751
|
+
}
|
|
752
|
+
}
|
|
753
|
+
class UserSpecificSettingsDto {
|
|
754
|
+
constructor() {
|
|
755
|
+
this.teamFilter = new TeamListFilter();
|
|
756
|
+
this.userFilter = new UserListFilter();
|
|
757
|
+
this.modelFilter = new ModelFilter(InterventionFilterType.All);
|
|
758
|
+
this.interventionFilter = new ActionListFilter();
|
|
759
|
+
this.guideSettings = new GuideSettingsDto();
|
|
760
|
+
}
|
|
761
|
+
}
|
|
762
|
+
class GuideSettingsDto {
|
|
763
|
+
constructor() {
|
|
764
|
+
this.completedSteps = [];
|
|
765
|
+
}
|
|
766
|
+
}
|
|
767
|
+
class ModelFilter {
|
|
768
|
+
constructor(interventionFilterType) {
|
|
769
|
+
this.layers = [];
|
|
770
|
+
this.interventionFilter = interventionFilterType;
|
|
771
|
+
}
|
|
772
|
+
}
|
|
773
|
+
class ModelVisualizationLayer {
|
|
774
|
+
constructor(key, label, selected = false) {
|
|
775
|
+
this.key = key;
|
|
776
|
+
this.label = label;
|
|
777
|
+
this.selected = selected;
|
|
778
|
+
}
|
|
779
|
+
}
|
|
780
|
+
class TeamListFilter extends PagingOptions {
|
|
781
|
+
constructor() {
|
|
782
|
+
super();
|
|
783
|
+
this.tags = [];
|
|
784
|
+
}
|
|
785
|
+
}
|
|
786
|
+
class UserListFilter extends PagingOptions {
|
|
787
|
+
constructor() {
|
|
788
|
+
super();
|
|
789
|
+
}
|
|
790
|
+
}
|
|
791
|
+
class ActionListFilter extends PagingOptions {
|
|
792
|
+
}
|
|
793
|
+
var InterventionFilterType;
|
|
794
|
+
(function (InterventionFilterType) {
|
|
795
|
+
InterventionFilterType["All"] = "All";
|
|
796
|
+
InterventionFilterType["OnlyOpen"] = "OnlyOpen";
|
|
797
|
+
InterventionFilterType["OnlyCompleted"] = "OnlyCompleted";
|
|
798
|
+
InterventionFilterType["None"] = "None";
|
|
799
|
+
})(InterventionFilterType || (InterventionFilterType = {}));
|
|
800
|
+
var TeamSortEnum;
|
|
801
|
+
(function (TeamSortEnum) {
|
|
802
|
+
TeamSortEnum["name"] = "Name";
|
|
803
|
+
TeamSortEnum["created"] = "Created";
|
|
804
|
+
})(TeamSortEnum || (TeamSortEnum = {}));
|
|
805
|
+
var TeamStatusEnum;
|
|
806
|
+
(function (TeamStatusEnum) {
|
|
807
|
+
TeamStatusEnum["active"] = "Active";
|
|
808
|
+
TeamStatusEnum["archived"] = "Archived";
|
|
809
|
+
})(TeamStatusEnum || (TeamStatusEnum = {}));
|
|
810
|
+
|
|
811
|
+
const VIEWSTATE_USERSETTINGS_STRATEGY = new InjectionToken('viewstate.usersettings.strategy');
|
|
812
|
+
class UserSettingService {
|
|
813
|
+
constructor(storage) {
|
|
814
|
+
this.storage = storage;
|
|
815
|
+
this.settings = new UserSettingsDto();
|
|
816
|
+
this.changed = new Subject();
|
|
817
|
+
this.settings = this.storage.get("usersettings") || new UserSettingsDto();
|
|
818
|
+
}
|
|
819
|
+
set(filters) {
|
|
820
|
+
this.settings = filters;
|
|
821
|
+
this.storage.set("usersettings", this.settings);
|
|
822
|
+
this.changed.next(this.settings);
|
|
823
|
+
}
|
|
824
|
+
get() {
|
|
825
|
+
return this.settings;
|
|
826
|
+
}
|
|
827
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: UserSettingService, deps: [{ token: LOCAL_STORAGE }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
828
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: UserSettingService, providedIn: 'root' }); }
|
|
829
|
+
}
|
|
830
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: UserSettingService, decorators: [{
|
|
831
|
+
type: Injectable,
|
|
832
|
+
args: [{ providedIn: 'root' }]
|
|
833
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
834
|
+
type: Inject,
|
|
835
|
+
args: [LOCAL_STORAGE]
|
|
836
|
+
}] }] });
|
|
837
|
+
|
|
838
838
|
class DialogActionManageComponent {
|
|
839
839
|
constructor(dialogRef, data) {
|
|
840
840
|
this.dialogRef = dialogRef;
|
|
@@ -1144,10 +1144,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
1144
1144
|
}] } });
|
|
1145
1145
|
|
|
1146
1146
|
class ActionListComponent extends ComponentWithViewStateBase {
|
|
1147
|
-
constructor(snackBar,
|
|
1147
|
+
constructor(snackBar, userSettingsService, actionService, state, route) {
|
|
1148
1148
|
super(state, snackBar);
|
|
1149
1149
|
this.snackBar = snackBar;
|
|
1150
|
-
this.
|
|
1150
|
+
this.userSettingsService = userSettingsService;
|
|
1151
1151
|
this.actionService = actionService;
|
|
1152
1152
|
this.state = state;
|
|
1153
1153
|
this.route = route;
|
|
@@ -1155,6 +1155,10 @@ class ActionListComponent extends ComponentWithViewStateBase {
|
|
|
1155
1155
|
async ngOnInit() {
|
|
1156
1156
|
super.ngOnInit();
|
|
1157
1157
|
this.multipleTeams = this.prefill.teamKey == null || this.prefill.teamKey.length == 0;
|
|
1158
|
+
this.userSettings = this.userSettingsService.get();
|
|
1159
|
+
this.subscription = this.userSettingsService.changed.subscribe((settings) => {
|
|
1160
|
+
this.userSettings = settings;
|
|
1161
|
+
});
|
|
1158
1162
|
this.sortOptionsList = [];
|
|
1159
1163
|
this.sortOptionsList.push(new ActionOptionDto(InterventionSortEnum.age, "Age (oldest first)"));
|
|
1160
1164
|
this.sortOptionsList.push(new ActionOptionDto(InterventionSortEnum.due, "Due (upcoming first)"));
|
|
@@ -1163,12 +1167,12 @@ class ActionListComponent extends ComponentWithViewStateBase {
|
|
|
1163
1167
|
this.sortOptionsList.push(new ActionOptionDto(InterventionSortEnum.type, "Action type"));
|
|
1164
1168
|
this.keywordControl = new FormControl();
|
|
1165
1169
|
this.keywordControl.valueChanges.pipe(debounceTime(1000)).subscribe(data => {
|
|
1166
|
-
this.userSettings.
|
|
1167
|
-
this.userSettings.
|
|
1170
|
+
this.userSettings.user.interventionFilter.keyword = this.keywordControl.value;
|
|
1171
|
+
this.userSettings.user.interventionFilter.page = 0;
|
|
1168
1172
|
this.loadActions();
|
|
1169
1173
|
});
|
|
1170
1174
|
if (this.overrideFilter) {
|
|
1171
|
-
this.userSettings.
|
|
1175
|
+
this.userSettings.user.interventionFilter = this.overrideFilter;
|
|
1172
1176
|
// this is a bit of hack to avoid Angular from throwing errors because the viewstate has been checked
|
|
1173
1177
|
timer(0).subscribe(() => {
|
|
1174
1178
|
this.loadActions();
|
|
@@ -1176,55 +1180,53 @@ class ActionListComponent extends ComponentWithViewStateBase {
|
|
|
1176
1180
|
}
|
|
1177
1181
|
}
|
|
1178
1182
|
async setPaging(event) {
|
|
1179
|
-
this.userSettings.
|
|
1180
|
-
this.userSettings.
|
|
1183
|
+
this.userSettings.user.interventionFilter.pageSize = event.pageSize;
|
|
1184
|
+
this.userSettings.user.interventionFilter.page = event.pageIndex;
|
|
1181
1185
|
await this.loadActions();
|
|
1182
1186
|
}
|
|
1183
1187
|
async setSort(sort) {
|
|
1184
|
-
this.userSettings.
|
|
1188
|
+
this.userSettings.user.interventionFilter.sort = sort;
|
|
1185
1189
|
await this.loadActions();
|
|
1186
1190
|
}
|
|
1187
1191
|
onDataUpdate(data) {
|
|
1188
1192
|
this.actions = data.actions.items;
|
|
1189
1193
|
this.isLoggedIn = data.userInfo.isAdmin || data.userInfo.isCoach;
|
|
1190
|
-
this.userSettings
|
|
1194
|
+
this.userSettings = data.userInfo.settings;
|
|
1191
1195
|
this.filterCount = 0;
|
|
1192
|
-
if (this.userSettings.
|
|
1196
|
+
if (this.userSettings.user.interventionFilter.owner != null) {
|
|
1193
1197
|
this.filterCount++;
|
|
1194
1198
|
}
|
|
1195
|
-
if (this.userSettings.
|
|
1199
|
+
if (this.userSettings.user.interventionFilter.type != null) {
|
|
1196
1200
|
this.filterCount++;
|
|
1197
1201
|
}
|
|
1198
|
-
if (this.userSettings.
|
|
1202
|
+
if (this.userSettings.user.interventionFilter.state != null) {
|
|
1199
1203
|
this.filterCount++;
|
|
1200
1204
|
}
|
|
1201
|
-
if (this.userSettings.
|
|
1205
|
+
if (this.userSettings.user.interventionFilter.expectedImpactOn != null) {
|
|
1202
1206
|
this.filterCount++;
|
|
1203
1207
|
}
|
|
1204
|
-
if (this.userSettings.
|
|
1208
|
+
if (this.userSettings.user.interventionFilter.teamKey != null) {
|
|
1205
1209
|
this.filterCount++;
|
|
1206
1210
|
}
|
|
1207
1211
|
}
|
|
1208
1212
|
;
|
|
1209
1213
|
async loadActions() {
|
|
1210
1214
|
this.actions.items = null;
|
|
1211
|
-
await this.
|
|
1215
|
+
await this.userSettingsService.set(this.userSettings);
|
|
1216
|
+
this.state.forcedReload();
|
|
1212
1217
|
document.getElementById("actionstoolbar").scrollIntoView({
|
|
1213
1218
|
behavior: "smooth",
|
|
1214
1219
|
block: "start",
|
|
1215
1220
|
inline: "nearest"
|
|
1216
1221
|
});
|
|
1217
1222
|
}
|
|
1218
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ActionListComponent, deps: [{ token: i1.MatSnackBar }, { token:
|
|
1219
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ActionListComponent, isStandalone: false, selector: "action-list", inputs: { prefill: "prefill", overrideFilter: "overrideFilter" }, viewQueries: [{ propertyName: "actionManageComponent", first: true, predicate: ActionManageComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"primarycolumn\">\n <h2>Actions</h2>\n <div class=\"listtoolbar\" id=\"actionstoolbar\">\n <div class=\"listtoolbar-item settings\">\n <div class=\"button borderless filters\" id=\"actions-filters\" actionFiltersDialog><span class=\"ph-faders-horizontal-bold icon\"></span> Filters <span class=\"filtercount\" *ngIf=\"filterCount > 0\">{{filterCount}}</span></div>\n <div class=\"button borderless sort\" id=\"actions-sort\" [matMenuTriggerFor]=\"matSortingMenu\"><span class=\"ph-funnel-simple-bold icon\"></span> {{userSettings.
|
|
1223
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ActionListComponent, deps: [{ token: i1.MatSnackBar }, { token: UserSettingService }, { token: ActionService }, { token: VIEWSTATE_PROVIDER }, { token: i1$4.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1224
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ActionListComponent, isStandalone: false, selector: "action-list", inputs: { prefill: "prefill", overrideFilter: "overrideFilter" }, viewQueries: [{ propertyName: "actionManageComponent", first: true, predicate: ActionManageComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"primarycolumn\">\n <h2>Actions</h2>\n <div class=\"listtoolbar\" id=\"actionstoolbar\">\n <div class=\"listtoolbar-item settings\">\n <div class=\"button borderless filters\" id=\"actions-filters\" actionFiltersDialog><span class=\"ph-faders-horizontal-bold icon\"></span> Filters <span class=\"filtercount\" *ngIf=\"filterCount > 0\">{{filterCount}}</span></div>\n <div class=\"button borderless sort\" id=\"actions-sort\" [matMenuTriggerFor]=\"matSortingMenu\"><span class=\"ph-funnel-simple-bold icon\"></span> {{userSettings.user.interventionFilter.sort || \"Sort\"}}</div>\n <mat-menu #matSortingMenu=\"matMenu\">\n <button mat-menu-item *ngFor=\"let sortOption of sortOptionsList\" (click)=\"setSort(sortOption.key)\">\n {{sortOption.label}}\n </button>\n </mat-menu>\n <div class=\"button borderless\" id=\"export-actions\" exportActionsDialog *ngIf=\"isLoggedIn\"><span class=\"ph-download-simple icon\"></span> Export</div>\n </div>\n\n <mat-form-field class=\"listtoolbar-item findbykeyword\" appearance=\"fill\">\n <mat-label>search</mat-label>\n <input matInput name=\"keyword\" id=\"actions-filter-keyword\" type=\"text\" maxlength=\"50\" [formControl]=\"keywordControl\" />\n </mat-form-field>\n \n <div class=\"listtoolbar-item quickactions\">\n <!--<div class=\"viewmodes\">\n <div class=\"viewmode active\"><span class=\"ph-grid-four icon\"></span></div>\n <div class=\"viewmode\"><span class=\"ph-list icon\"></span></div>\n </div>-->\n <a class=\"button primary newaction\" id=\"action-addnew\" addActionDialog [prefill]=\"prefill\"><span class=\"icon ph-plus\"></span> New action</a>\n </div>\n </div>\n\n <div class=\"loading\" *ngIf=\"!actions.items\">\n <div class=\"loading-icon dark\"></div>\n </div>\n\n <div class=\"wirebox calltoaction\" *ngIf=\"actions.items && actions.items.length == 0\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <img src=\"assets/img/improve.png\" />\n <h2>How will you improve?</h2>\n <p>Identifying the areas where you want to improve is only the first step. How do you and your team(s) aim to improve? Add the actions you intend to take and where you expect improvements when successful.</p>\n </div>\n </div>\n </div>\n\n <div class=\"actions\" *ngIf=\"actions && actions.items\">\n <action-tile *ngFor=\"let action of actions.items\" [action]=\"action\" [multipleTeams]=\"multipleTeams\" [actionManageComponent]=\"actionManageComponent\"></action-tile>\n </div>\n\n <paginator [items]=\"actions\" (page)=\"setPaging($event)\" *ngIf=\"actions && actions.items && actions.totalItems > 0\"></paginator>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.primarycolumn .introduction{font-size:19px;line-height:140%;margin-bottom:30px}.primarycolumn .actions{margin-top:30px;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:50px;grid-auto-rows:1fr}@media only screen and (max-width: 1536px){.primarycolumn .actions{grid-template-columns:repeat(2,1fr)}}@media only screen and (max-width: 992px){.primarycolumn .actions{grid-template-columns:repeat(1,1fr)}}.primarycolumn .calltoaction{margin-top:30px}.addintervention h3,.filter h3{margin-top:30px;margin-bottom:30px}\n"], dependencies: [{ kind: "component", type: i5$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "component", type: PaginatorComponent, selector: "paginator", inputs: ["items"], outputs: ["page"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: ActionTileComponent, selector: "action-tile", inputs: ["action", "multipleTeams", "actionManageComponent"] }, { kind: "directive", type: OpenAddActionDialogDirective, selector: "[addActionDialog]", inputs: ["prefill"] }, { kind: "directive", type: OpenActionFiltersDialogDirective, selector: "[actionFiltersDialog]" }, { kind: "directive", type: OpenExportActionsDialogDirective, selector: "[exportActionsDialog]" }] }); }
|
|
1220
1225
|
}
|
|
1221
1226
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ActionListComponent, decorators: [{
|
|
1222
1227
|
type: Component,
|
|
1223
|
-
args: [{ selector: 'action-list', standalone: false, template: "<div class=\"primarycolumn\">\n <h2>Actions</h2>\n <div class=\"listtoolbar\" id=\"actionstoolbar\">\n <div class=\"listtoolbar-item settings\">\n <div class=\"button borderless filters\" id=\"actions-filters\" actionFiltersDialog><span class=\"ph-faders-horizontal-bold icon\"></span> Filters <span class=\"filtercount\" *ngIf=\"filterCount > 0\">{{filterCount}}</span></div>\n <div class=\"button borderless sort\" id=\"actions-sort\" [matMenuTriggerFor]=\"matSortingMenu\"><span class=\"ph-funnel-simple-bold icon\"></span> {{userSettings.
|
|
1224
|
-
}], ctorParameters: () => [{ type: i1.MatSnackBar }, { type:
|
|
1225
|
-
type: Inject,
|
|
1226
|
-
args: [VIEWSTATE_USERSETTINGS_STRATEGY]
|
|
1227
|
-
}] }, { type: ActionService }, { type: ViewModelStateBase, decorators: [{
|
|
1228
|
+
args: [{ selector: 'action-list', standalone: false, template: "<div class=\"primarycolumn\">\n <h2>Actions</h2>\n <div class=\"listtoolbar\" id=\"actionstoolbar\">\n <div class=\"listtoolbar-item settings\">\n <div class=\"button borderless filters\" id=\"actions-filters\" actionFiltersDialog><span class=\"ph-faders-horizontal-bold icon\"></span> Filters <span class=\"filtercount\" *ngIf=\"filterCount > 0\">{{filterCount}}</span></div>\n <div class=\"button borderless sort\" id=\"actions-sort\" [matMenuTriggerFor]=\"matSortingMenu\"><span class=\"ph-funnel-simple-bold icon\"></span> {{userSettings.user.interventionFilter.sort || \"Sort\"}}</div>\n <mat-menu #matSortingMenu=\"matMenu\">\n <button mat-menu-item *ngFor=\"let sortOption of sortOptionsList\" (click)=\"setSort(sortOption.key)\">\n {{sortOption.label}}\n </button>\n </mat-menu>\n <div class=\"button borderless\" id=\"export-actions\" exportActionsDialog *ngIf=\"isLoggedIn\"><span class=\"ph-download-simple icon\"></span> Export</div>\n </div>\n\n <mat-form-field class=\"listtoolbar-item findbykeyword\" appearance=\"fill\">\n <mat-label>search</mat-label>\n <input matInput name=\"keyword\" id=\"actions-filter-keyword\" type=\"text\" maxlength=\"50\" [formControl]=\"keywordControl\" />\n </mat-form-field>\n \n <div class=\"listtoolbar-item quickactions\">\n <!--<div class=\"viewmodes\">\n <div class=\"viewmode active\"><span class=\"ph-grid-four icon\"></span></div>\n <div class=\"viewmode\"><span class=\"ph-list icon\"></span></div>\n </div>-->\n <a class=\"button primary newaction\" id=\"action-addnew\" addActionDialog [prefill]=\"prefill\"><span class=\"icon ph-plus\"></span> New action</a>\n </div>\n </div>\n\n <div class=\"loading\" *ngIf=\"!actions.items\">\n <div class=\"loading-icon dark\"></div>\n </div>\n\n <div class=\"wirebox calltoaction\" *ngIf=\"actions.items && actions.items.length == 0\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <img src=\"assets/img/improve.png\" />\n <h2>How will you improve?</h2>\n <p>Identifying the areas where you want to improve is only the first step. How do you and your team(s) aim to improve? Add the actions you intend to take and where you expect improvements when successful.</p>\n </div>\n </div>\n </div>\n\n <div class=\"actions\" *ngIf=\"actions && actions.items\">\n <action-tile *ngFor=\"let action of actions.items\" [action]=\"action\" [multipleTeams]=\"multipleTeams\" [actionManageComponent]=\"actionManageComponent\"></action-tile>\n </div>\n\n <paginator [items]=\"actions\" (page)=\"setPaging($event)\" *ngIf=\"actions && actions.items && actions.totalItems > 0\"></paginator>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.primarycolumn .introduction{font-size:19px;line-height:140%;margin-bottom:30px}.primarycolumn .actions{margin-top:30px;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:50px;grid-auto-rows:1fr}@media only screen and (max-width: 1536px){.primarycolumn .actions{grid-template-columns:repeat(2,1fr)}}@media only screen and (max-width: 992px){.primarycolumn .actions{grid-template-columns:repeat(1,1fr)}}.primarycolumn .calltoaction{margin-top:30px}.addintervention h3,.filter h3{margin-top:30px;margin-bottom:30px}\n"] }]
|
|
1229
|
+
}], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: UserSettingService }, { type: ActionService }, { type: ViewModelStateBase, decorators: [{
|
|
1228
1230
|
type: Inject,
|
|
1229
1231
|
args: [VIEWSTATE_PROVIDER]
|
|
1230
1232
|
}] }, { type: i1$4.ActivatedRoute }], propDecorators: { prefill: [{
|
|
@@ -1699,7 +1701,7 @@ class AlertsComponent extends ComponentBase {
|
|
|
1699
1701
|
}
|
|
1700
1702
|
}
|
|
1701
1703
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: AlertsComponent, deps: [{ token: AlertService }, { token: DismissedAlertsService }, { token: i1.MatSnackBar }, { token: VIEWSTATE_PROVIDER }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1702
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: AlertsComponent, isStandalone: false, selector: "alerts", inputs: { pageSize: "pageSize", onlyUnread: "onlyUnread" }, usesInheritance: true, ngImport: i0, template: "<div class=\"alerts\" *ngIf=\"filteredAlerts && filteredAlerts.length > 0\">\n <div class=\"alert-item\" *ngFor=\"let alert of filteredAlerts\">\n <div class=\"description\" [innerHtml]=\"alert.body\"></div>\n <div class=\"bar\">\n <span class=\"icon ph-warning-fill\" *ngIf=\"alert.urgency == 'warning'\"></span>\n <span class=\"icon ph-info\" *ngIf=\"alert.urgency == 'information'\"></span>\n <span class=\"icon ph-circle-wavy-warning-fill\" *ngIf=\"alert.urgency == 'critical'\"></span>\n <div class=\"date\">\n {{alert.posted | date : 'short'}}\n </div>\n <div class=\"action\" *ngIf=\"alert.url\"><a target=\"_blank\" [href]=\"alert.url\">Explore ></a></div>\n <div class=\"dismiss\" *ngIf=\"!isDismissed(alert)\"><a href=\"javascript:void(null);\" (click)=\"dismiss(alert)\">Dismiss</a></div>\n </div>\n </div>\n</div>\n\n<div class=\"wirebox calltoaction\" *ngIf=\"!filteredAlerts || filteredAlerts.length == 0\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <p>There are no alert. Or you've dismissed all.</p>\n </div>\n </div>\n</div>\n\n<mat-paginator *ngIf=\"filteredAlerts && filteredAlerts.length > filter.itemsPerPage\" [length]=\"filter.totalItems\" hidePageSize=\"true\" [pageSize]=\"filter.itemsPerPage\" (page)=\"setPaging($event)\"></mat-paginator>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.alerts{margin-bottom:30px}.alerts .alert-item{padding:15px 0;border-top:3px solid #f0f0f0}.alerts .alert-item:first-of-type{border-top:3px solid #f0f0f0}.alerts .alert-item .description{margin-bottom:15px}.alerts .alert-item .bar{display:flex;justify-content:space-between}.alerts .alert-item .bar .date{flex:30%}.alerts .alert-item .bar .icon{margin-right:10px}.alerts .alert-item .bar .dismiss{margin-left:30px}.alerts .alert-item .bar .date,.alerts .alert-item .bar .dismiss,.alerts .alert-item .bar .action{font-style:normal;font-weight:600;font-size:15px;line-height:140%}.alerts .alert-item .bar .date a,.alerts .alert-item .bar .dismiss a,.alerts .alert-item .bar .action a{text-decoration:none}\n"], dependencies: [{ kind: "component", type: i4$
|
|
1704
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: AlertsComponent, isStandalone: false, selector: "alerts", inputs: { pageSize: "pageSize", onlyUnread: "onlyUnread" }, usesInheritance: true, ngImport: i0, template: "<div class=\"alerts\" *ngIf=\"filteredAlerts && filteredAlerts.length > 0\">\n <div class=\"alert-item\" *ngFor=\"let alert of filteredAlerts\">\n <div class=\"description\" [innerHtml]=\"alert.body\"></div>\n <div class=\"bar\">\n <span class=\"icon ph-warning-fill\" *ngIf=\"alert.urgency == 'warning'\"></span>\n <span class=\"icon ph-info\" *ngIf=\"alert.urgency == 'information'\"></span>\n <span class=\"icon ph-circle-wavy-warning-fill\" *ngIf=\"alert.urgency == 'critical'\"></span>\n <div class=\"date\">\n {{alert.posted | date : 'short'}}\n </div>\n <div class=\"action\" *ngIf=\"alert.url\"><a target=\"_blank\" [href]=\"alert.url\">Explore ></a></div>\n <div class=\"dismiss\" *ngIf=\"!isDismissed(alert)\"><a href=\"javascript:void(null);\" (click)=\"dismiss(alert)\">Dismiss</a></div>\n </div>\n </div>\n</div>\n\n<div class=\"wirebox calltoaction\" *ngIf=\"!filteredAlerts || filteredAlerts.length == 0\">\n <div class=\"contentwithborders\">\n <div class=\"center\">\n <p>There are no alert. Or you've dismissed all.</p>\n </div>\n </div>\n</div>\n\n<mat-paginator *ngIf=\"filteredAlerts && filteredAlerts.length > filter.itemsPerPage\" [length]=\"filter.totalItems\" hidePageSize=\"true\" [pageSize]=\"filter.itemsPerPage\" (page)=\"setPaging($event)\"></mat-paginator>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.alerts{margin-bottom:30px}.alerts .alert-item{padding:15px 0;border-top:3px solid #f0f0f0}.alerts .alert-item:first-of-type{border-top:3px solid #f0f0f0}.alerts .alert-item .description{margin-bottom:15px}.alerts .alert-item .bar{display:flex;justify-content:space-between}.alerts .alert-item .bar .date{flex:30%}.alerts .alert-item .bar .icon{margin-right:10px}.alerts .alert-item .bar .dismiss{margin-left:30px}.alerts .alert-item .bar .date,.alerts .alert-item .bar .dismiss,.alerts .alert-item .bar .action{font-style:normal;font-weight:600;font-size:15px;line-height:140%}.alerts .alert-item .bar .date a,.alerts .alert-item .bar .dismiss a,.alerts .alert-item .bar .action a{text-decoration:none}\n"], dependencies: [{ kind: "component", type: i4$2.MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.DatePipe, name: "date" }] }); }
|
|
1703
1705
|
}
|
|
1704
1706
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: AlertsComponent, decorators: [{
|
|
1705
1707
|
type: Component,
|
|
@@ -2779,7 +2781,7 @@ class MatTagsComponent {
|
|
|
2779
2781
|
this.form.controls.tags.setValue(null);
|
|
2780
2782
|
}
|
|
2781
2783
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: MatTagsComponent, deps: [{ token: i1$1.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2782
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: MatTagsComponent, isStandalone: false, selector: "mat-tags", inputs: { allTags: "allTags" }, outputs: { tagsChangedEvent: "tagsChangedEvent" }, viewQueries: [{ propertyName: "tagInput", first: true, predicate: ["tagInput"], descendants: true }], ngImport: i0, template: "<div class=\"mat-form-field\">\n <div class=\"form-label\">Add tags to organize and filter clients</div>\n <mat-form-field appearance=\"fill\">\n <mat-chip-grid #tagList aria-label=\"Tags\" id=\"tags-selecttag\">\n <mat-chip-row *ngFor=\"let tag of tags\" (removed)=\"remove(tag)\">\n {{tag}}\n <span class=\"icon ph-trash-fill\" matChipRemove></span>\n </mat-chip-row>\n <input placeholder=\"New tag ...\" id=\"tags-newtag\" #tagInput [formControl]=\"newTagControl\" [matAutocomplete]=\"auto\" [matChipInputFor]=\"tagList\" [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" (matChipInputTokenEnd)=\"add($event)\">\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"selected($event)\">\n <mat-option class=\"select-option\" *ngFor=\"let tag of filteredTags | async\" [value]=\"tag\">{{tag}}</mat-option>\n </mat-autocomplete>\n </mat-form-field>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.form-label{margin-top:30px}\n"], dependencies: [{ kind: "component", type: i2$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i2$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i5$
|
|
2784
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: MatTagsComponent, isStandalone: false, selector: "mat-tags", inputs: { allTags: "allTags" }, outputs: { tagsChangedEvent: "tagsChangedEvent" }, viewQueries: [{ propertyName: "tagInput", first: true, predicate: ["tagInput"], descendants: true }], ngImport: i0, template: "<div class=\"mat-form-field\">\n <div class=\"form-label\">Add tags to organize and filter clients</div>\n <mat-form-field appearance=\"fill\">\n <mat-chip-grid #tagList aria-label=\"Tags\" id=\"tags-selecttag\">\n <mat-chip-row *ngFor=\"let tag of tags\" (removed)=\"remove(tag)\">\n {{tag}}\n <span class=\"icon ph-trash-fill\" matChipRemove></span>\n </mat-chip-row>\n <input placeholder=\"New tag ...\" id=\"tags-newtag\" #tagInput [formControl]=\"newTagControl\" [matAutocomplete]=\"auto\" [matChipInputFor]=\"tagList\" [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" (matChipInputTokenEnd)=\"add($event)\">\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"selected($event)\">\n <mat-option class=\"select-option\" *ngFor=\"let tag of filteredTags | async\" [value]=\"tag\">{{tag}}</mat-option>\n </mat-autocomplete>\n </mat-form-field>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.form-label{margin-top:30px}\n"], dependencies: [{ kind: "component", type: i2$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i2$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i5$2.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i5$2.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled", "readonly", "matChipInputDisabledInteractive"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i5$2.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i5$2.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
2783
2785
|
}
|
|
2784
2786
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: MatTagsComponent, decorators: [{
|
|
2785
2787
|
type: Component,
|
|
@@ -3790,7 +3792,7 @@ class TopicSelectorComponent {
|
|
|
3790
3792
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: TopicSelectorComponent, deps: [{ token: i1$1.FormBuilder }, { token: i1$3.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3791
3793
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: TopicSelectorComponent, isStandalone: false, selector: "topic-selector", inputs: { topics: "topics", presets: "presets", disabled: "disabled", topicKeys: "topicKeys" }, providers: [
|
|
3792
3794
|
{ provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => TopicSelectorComponent), }
|
|
3793
|
-
], usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"form\">\n <div class=\"topicselector-container\">\n <div class=\"topicselector-metadata\">\n <div class=\"questionnaire-preset\">\n <mat-form-field class=\"questionnaire-preset-select\" appearance=\"fill\">\n <mat-label>Select predefined questionnaire</mat-label>\n <mat-select id=\"question-preset\" formControlName=\"preset\" (selectionChange)=\"selectPreset()\">\n <mat-option [value]=\"type.publicKey\" *ngFor=\"let type of presets\" class=\"select-option\">{{type.name}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <div class=\"questionnaire-accuracy\">\n <div class=\"questionnaire-breakdown-label\">Accuracy</div>\n <div class=\"questionnaire-breakdown-bar-holder\">\n <div class=\"questionnaire-accuracy-bar\" [ngClass]=\"{'low': questionnaireAccuracy < 0.25, 'moderate' : questionnaireAccuracy < 0.5 && questionnaireAccuracy >= 0.25}\" [ngStyle]=\"{'width': (questionnaireAccuracy * 100) + '%' }\">{{questionnaireAccuracy * 100 | number:'1.0-0'}}%</div>\n </div>\n </div>\n <div class=\"questionnaire-segments\">\n <div class=\"questionnaire-segments-label\">Time investment</div>\n <div class=\"questionnaire-breakdowns\">\n <div class=\"questionnaire-breakdown\">\n <div class=\"questionnaire-breakdown-label\">Team members</div>\n <div class=\"progressbar progressbar-positive progressbar-teammember\">\n <div class=\"progressbar-bar\" *ngIf=\"questionsTeamMembers > 0\" [style.width]=\"((questionsTeamMembers / questionsTotal) * 100) + '%'\"></div>\n <div class=\"progressbar-score\">{{durationTeamMembers | number:'1.0-0'}} min</div>\n </div>\n </div>\n <div class=\"questionnaire-breakdown\">\n <div class=\"questionnaire-breakdown-label\">Stakeholders</div>\n <div class=\"progressbar progressbar-positive progressbar-stakeholder\">\n <div class=\"progressbar-bar\" *ngIf=\"questionsStakeholders > 0\" [style.width]=\"((questionsStakeholders / questionsTotal) * 100) + '%'\"></div>\n <div class=\"progressbar-score\">{{durationStakeholders | number:'1.0-0'}} min</div>\n </div>\n </div>\n <div class=\"questionnaire-breakdown\">\n <div class=\"questionnaire-breakdown-label\">Supporters</div>\n <div class=\"progressbar progressbar-positive progressbar-supporter\">\n <div class=\"progressbar-bar\" *ngIf=\"questionsSupporters > 0\" [style.width]=\"((questionsSupporters / questionsTotal) * 100) + '%'\"></div>\n <div class=\"progressbar-score\">{{durationSupporters | number:'1.0-0'}} min</div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"topicselector-warnings\" *ngIf=\"warnings.length > 0\">\n <div class=\"topicselector-warnings-warning\" *ngFor=\"let warning of warnings\">\n <span class=\"icon ph-info-fill\"></span>{{warning}}\n </div>\n </div>\n <a href=\"javascript:void(null)\" *ngIf=\"!form.controls.showTopics.value\" id=\"action-advancedviewtoggle\" class=\"topic-selector-advancedviewtoggle\" (click)=\"form.controls.showTopics.setValue(true)\"><span class=\"icon ph-caret-down-bold\"></span>Customize topics</a>\n <a href=\"javascript:void(null)\" *ngIf=\"form.controls.showTopics.value\" id=\"action-advancedviewtoggle\" class=\"topic-selector-advancedviewtoggle\" (click)=\"form.controls.showTopics.setValue(false)\"><span class=\"icon ph-caret-up-bold\"></span>Hide topics</a>\n </div>\n <div class=\"topicselector-topics\" *ngIf=\"form.controls.showTopics.value\"> \n <div class=\"topic-parent\" *ngFor=\"let topic of getCoreFactors()\" formArrayName=\"topics\">\n <div class=\"name\">\n <h4>{{topic.name}}</h4>\n <div class=\"helpers\">(<a href=\"#\" (click)=\"selectAll(topic, $event)\">all</a> | <a href=\"#\" (click)=\"selectNone(topic, $event)\">none</a>)</div>\n <div class=\"topic-child-moreinformation\">\n <span class=\"icon ph-info-bold\" (click)=\"openFactorInformation(topic.publicKey, $event)\"></span>\n </div>\n </div>\n\n <div *ngIf=\"topic.ownQuestionCount > 0\" class=\"topic-child\">\n <mat-checkbox class=\"topic-child-check\" [formControlName]=\"topic.publicKey\" (click)=\"toggleTopic()\" [id]=\"'topic-' + topic.name | slugify\"></mat-checkbox>\n <div class=\"topic-child-description\">\n {{topic.name}} ({{topic.ownQuestionCount}} questions)\n <div class=\"tags\">\n <div class=\"tags-tag recommended\" *ngIf=\"topic.recommended\">Recommended</div>\n <div class=\"tags-tag teammember\" *ngIf=\"hasSegmentQuestions(topic, SegmentEnum.TeamMember, true)\">For team members</div>\n <div class=\"tags-tag stakeholder\" *ngIf=\"hasSegmentQuestions(topic, SegmentEnum.Stakeholder, true)\">For stakeholders</div>\n <div class=\"tags-tag supporter\" *ngIf=\"hasSegmentQuestions(topic, SegmentEnum.Management, true)\">For supporters</div>\n </div>\n </div>\n <div class=\"topic-child-moreinformation\">\n <span class=\"icon ph-info-bold\" (click)=\"openFactorInformation(topic.publicKey, $event)\"></span>\n </div>\n </div>\n\n\n <div *ngFor=\"let subTopic of getSubFactors(topic.publicKey)\" class=\"topic-child\">\n <mat-checkbox class=\"topic-child-check\" [formControlName]=\"subTopic.publicKey\" (click)=\"toggleTopic()\" [id]=\"'topic-' + subTopic.name | slugify\"></mat-checkbox>\n <div class=\"topic-child-description\">\n {{subTopic.name}} ({{subTopic.questionCount}} questions)\n <div class=\"tags\">\n <div class=\"tags-tag recommended\" *ngIf=\"subTopic.recommended\">Recommended</div>\n <div class=\"tags-tag teammember\" *ngIf=\"hasSegmentQuestions(subTopic, SegmentEnum.TeamMember, false)\">For team members</div>\n <div class=\"tags-tag stakeholder\" *ngIf=\"hasSegmentQuestions(subTopic, SegmentEnum.Stakeholder, false)\">For stakeholders</div>\n <div class=\"tags-tag supporter\" *ngIf=\"hasSegmentQuestions(subTopic, SegmentEnum.Management, false)\">For supporters</div>\n </div>\n </div>\n <div class=\"topic-child-moreinformation\">\n <span class=\"icon ph-info-bold\" (click)=\"openFactorInformation(subTopic.publicKey, $event)\"></span>\n </div>\n </div>\n </div>\n </div>\n </div>\n</form>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.topicselector-container .topicselector-metadata{background:#f0f0f0;border-radius:20px;padding:30px;display:flex;column-gap:30px;flex-direction:column}@media only screen and (max-width: 992px){.topicselector-container .topicselector-metadata{display:block}}.topicselector-container .topicselector-metadata .questionnaire-preset .questionnaire-preset-label{font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif;margin-bottom:5px}.topicselector-container .topicselector-metadata .questionnaire-preset .questionnaire-preset-select{width:100%}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-segments-label{font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif;margin-bottom:5px}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns{display:flex;gap:15px}@media only screen and (max-width: 992px){.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns{display:block}}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown{margin-bottom:15px;flex:auto}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .questionnaire-breakdown-label{font-size:14px;font-weight:700;font-family:StevieSans,sans-serif;margin-bottom:5px;margin-top:5px}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .questionnaire-breakdown-label .icon{color:#ef6f00;font-size:18px;vertical-align:middle;cursor:pointer}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar{margin:0;width:100%}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-teammember .progressbar-bar{background:#00af77}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-teammember .progressbar-score{color:#fff}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-stakeholder .progressbar-bar{background:#fff73f}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-stakeholder .progressbar-score{color:#fff}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-supporter .progressbar-bar{background:#ef4f9f}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-supporter .progressbar-score{color:#fff}.topicselector-container .topicselector-metadata .questionnaire-accuracy{margin-bottom:15px}.topicselector-container .topicselector-metadata .questionnaire-accuracy .questionnaire-breakdown-label{font-size:12px;font-weight:900;text-transform:uppercase;margin-bottom:5px;font-family:StevieSans,sans-serif}.topicselector-container .topicselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder{margin-bottom:15px;background:#2f2f2f;height:20px;border-radius:15px;overflow:hidden}.topicselector-container .topicselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder .questionnaire-accuracy-bar{flex:auto;min-width:50px;font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif;background:#00af77;height:100%;align-content:center;text-align:center}.topicselector-container .topicselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder .questionnaire-accuracy-bar.low{background:#ef6f00}.topicselector-container .topicselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder .questionnaire-accuracy-bar.moderate{background:#fff73f}.topicselector-container .topic-selector-advancedviewtoggle{margin-top:10px;text-align:center;font-weight:700;font-family:StevieSans,sans-serif;font-size:12pt;text-decoration:none}.topicselector-container .topic-selector-advancedviewtoggle .icon{margin-right:10px;vertical-align:middle}.topicselector-container .topicselector-warnings{margin-top:15px}.topicselector-container .topicselector-warnings .topicselector-warnings-warning{display:flex;align-items:center;font-size:12pt}.topicselector-container .topicselector-warnings .topicselector-warnings-warning .icon{color:#1f3f8f;font-size:16px;cursor:pointer;margin-right:10px}.topicselector-container .topicselector-topics{margin-top:30px}.topicselector-container .topicselector-topics .topic-parent{margin-bottom:60px;padding-left:30px}.topicselector-container .topicselector-topics .topic-parent .name{display:flex;align-items:baseline;gap:15px}.topicselector-container .topicselector-topics .topic-parent .name h4{font-weight:700!important;font-family:StevieSans,sans-serif!important;margin:0}.topicselector-container .topicselector-topics .topic-parent .name .helpers{font-size:12pt}.topicselector-container .topicselector-topics .topic-parent .name .helpers a{font-family:StevieSans,sans-serif}.topicselector-container .topicselector-topics .topic-parent .name .topic-child-moreinformation{margin-left:auto;cursor:pointer}.topicselector-container .topicselector-topics .topic-parent .name .topic-child-moreinformation .icon{vertical-align:middle}.topicselector-container .topicselector-topics .topic-parent .topic-child{display:flex;align-items:baseline;gap:15px;margin-bottom:15px;margin-top:15px;cursor:pointer}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description{font-family:StevieSans,sans-serif;font-size:16px;font-weight:500}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags{gap:5px;margin-top:5px;display:flex}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag{padding:4px 8px;border-radius:16px;font-weight:600;font-size:11px;white-space:pre}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag.recommended{background:#2f2f2f;color:#fff}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag.stakeholder{background:#fff73f}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag.teammember{background:#1f3f8f;color:#fff}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag.supporter,.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag.management{background:#ef4f9f}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-moreinformation{margin-left:auto}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-moreinformation .icon{vertical-align:middle;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i5$2.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "pipe", type: i2.DecimalPipe, name: "number" }, { kind: "pipe", type: SlugifyPipe, name: "slugify" }] }); }
|
|
3795
|
+
], usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"form\">\n <div class=\"topicselector-container\">\n <div class=\"topicselector-metadata\">\n <div class=\"questionnaire-preset\">\n <mat-form-field class=\"questionnaire-preset-select\" appearance=\"fill\">\n <mat-label>Select predefined questionnaire</mat-label>\n <mat-select id=\"question-preset\" formControlName=\"preset\" (selectionChange)=\"selectPreset()\">\n <mat-option [value]=\"type.publicKey\" *ngFor=\"let type of presets\" class=\"select-option\">{{type.name}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <div class=\"questionnaire-accuracy\">\n <div class=\"questionnaire-breakdown-label\">Accuracy</div>\n <div class=\"questionnaire-breakdown-bar-holder\">\n <div class=\"questionnaire-accuracy-bar\" [ngClass]=\"{'low': questionnaireAccuracy < 0.25, 'moderate' : questionnaireAccuracy < 0.5 && questionnaireAccuracy >= 0.25}\" [ngStyle]=\"{'width': (questionnaireAccuracy * 100) + '%' }\">{{questionnaireAccuracy * 100 | number:'1.0-0'}}%</div>\n </div>\n </div>\n <div class=\"questionnaire-segments\">\n <div class=\"questionnaire-segments-label\">Time investment</div>\n <div class=\"questionnaire-breakdowns\">\n <div class=\"questionnaire-breakdown\">\n <div class=\"questionnaire-breakdown-label\">Team members</div>\n <div class=\"progressbar progressbar-positive progressbar-teammember\">\n <div class=\"progressbar-bar\" *ngIf=\"questionsTeamMembers > 0\" [style.width]=\"((questionsTeamMembers / questionsTotal) * 100) + '%'\"></div>\n <div class=\"progressbar-score\">{{durationTeamMembers | number:'1.0-0'}} min</div>\n </div>\n </div>\n <div class=\"questionnaire-breakdown\">\n <div class=\"questionnaire-breakdown-label\">Stakeholders</div>\n <div class=\"progressbar progressbar-positive progressbar-stakeholder\">\n <div class=\"progressbar-bar\" *ngIf=\"questionsStakeholders > 0\" [style.width]=\"((questionsStakeholders / questionsTotal) * 100) + '%'\"></div>\n <div class=\"progressbar-score\">{{durationStakeholders | number:'1.0-0'}} min</div>\n </div>\n </div>\n <div class=\"questionnaire-breakdown\">\n <div class=\"questionnaire-breakdown-label\">Supporters</div>\n <div class=\"progressbar progressbar-positive progressbar-supporter\">\n <div class=\"progressbar-bar\" *ngIf=\"questionsSupporters > 0\" [style.width]=\"((questionsSupporters / questionsTotal) * 100) + '%'\"></div>\n <div class=\"progressbar-score\">{{durationSupporters | number:'1.0-0'}} min</div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"topicselector-warnings\" *ngIf=\"warnings.length > 0\">\n <div class=\"topicselector-warnings-warning\" *ngFor=\"let warning of warnings\">\n <span class=\"icon ph-info-fill\"></span>{{warning}}\n </div>\n </div>\n <a href=\"javascript:void(null)\" *ngIf=\"!form.controls.showTopics.value\" id=\"action-advancedviewtoggle\" class=\"topic-selector-advancedviewtoggle\" (click)=\"form.controls.showTopics.setValue(true)\"><span class=\"icon ph-caret-down-bold\"></span>Customize topics</a>\n <a href=\"javascript:void(null)\" *ngIf=\"form.controls.showTopics.value\" id=\"action-advancedviewtoggle\" class=\"topic-selector-advancedviewtoggle\" (click)=\"form.controls.showTopics.setValue(false)\"><span class=\"icon ph-caret-up-bold\"></span>Hide topics</a>\n </div>\n <div class=\"topicselector-topics\" *ngIf=\"form.controls.showTopics.value\"> \n <div class=\"topic-parent\" *ngFor=\"let topic of getCoreFactors()\" formArrayName=\"topics\">\n <div class=\"name\">\n <h4>{{topic.name}}</h4>\n <div class=\"helpers\">(<a href=\"#\" (click)=\"selectAll(topic, $event)\">all</a> | <a href=\"#\" (click)=\"selectNone(topic, $event)\">none</a>)</div>\n <div class=\"topic-child-moreinformation\">\n <span class=\"icon ph-info-bold\" (click)=\"openFactorInformation(topic.publicKey, $event)\"></span>\n </div>\n </div>\n\n <div *ngIf=\"topic.ownQuestionCount > 0\" class=\"topic-child\">\n <mat-checkbox class=\"topic-child-check\" [formControlName]=\"topic.publicKey\" (click)=\"toggleTopic()\" [id]=\"'topic-' + topic.name | slugify\"></mat-checkbox>\n <div class=\"topic-child-description\">\n {{topic.name}} ({{topic.ownQuestionCount}} questions)\n <div class=\"tags\">\n <div class=\"tags-tag recommended\" *ngIf=\"topic.recommended\">Recommended</div>\n <div class=\"tags-tag teammember\" *ngIf=\"hasSegmentQuestions(topic, SegmentEnum.TeamMember, true)\">For team members</div>\n <div class=\"tags-tag stakeholder\" *ngIf=\"hasSegmentQuestions(topic, SegmentEnum.Stakeholder, true)\">For stakeholders</div>\n <div class=\"tags-tag supporter\" *ngIf=\"hasSegmentQuestions(topic, SegmentEnum.Management, true)\">For supporters</div>\n </div>\n </div>\n <div class=\"topic-child-moreinformation\">\n <span class=\"icon ph-info-bold\" (click)=\"openFactorInformation(topic.publicKey, $event)\"></span>\n </div>\n </div>\n\n\n <div *ngFor=\"let subTopic of getSubFactors(topic.publicKey)\" class=\"topic-child\">\n <mat-checkbox class=\"topic-child-check\" [formControlName]=\"subTopic.publicKey\" (click)=\"toggleTopic()\" [id]=\"'topic-' + subTopic.name | slugify\"></mat-checkbox>\n <div class=\"topic-child-description\">\n {{subTopic.name}} ({{subTopic.questionCount}} questions)\n <div class=\"tags\">\n <div class=\"tags-tag recommended\" *ngIf=\"subTopic.recommended\">Recommended</div>\n <div class=\"tags-tag teammember\" *ngIf=\"hasSegmentQuestions(subTopic, SegmentEnum.TeamMember, false)\">For team members</div>\n <div class=\"tags-tag stakeholder\" *ngIf=\"hasSegmentQuestions(subTopic, SegmentEnum.Stakeholder, false)\">For stakeholders</div>\n <div class=\"tags-tag supporter\" *ngIf=\"hasSegmentQuestions(subTopic, SegmentEnum.Management, false)\">For supporters</div>\n </div>\n </div>\n <div class=\"topic-child-moreinformation\">\n <span class=\"icon ph-info-bold\" (click)=\"openFactorInformation(subTopic.publicKey, $event)\"></span>\n </div>\n </div>\n </div>\n </div>\n </div>\n</form>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.topicselector-container .topicselector-metadata{background:#f0f0f0;border-radius:20px;padding:30px;display:flex;column-gap:30px;flex-direction:column}@media only screen and (max-width: 992px){.topicselector-container .topicselector-metadata{display:block}}.topicselector-container .topicselector-metadata .questionnaire-preset .questionnaire-preset-label{font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif;margin-bottom:5px}.topicselector-container .topicselector-metadata .questionnaire-preset .questionnaire-preset-select{width:100%}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-segments-label{font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif;margin-bottom:5px}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns{display:flex;gap:15px}@media only screen and (max-width: 992px){.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns{display:block}}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown{margin-bottom:15px;flex:auto}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .questionnaire-breakdown-label{font-size:14px;font-weight:700;font-family:StevieSans,sans-serif;margin-bottom:5px;margin-top:5px}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .questionnaire-breakdown-label .icon{color:#ef6f00;font-size:18px;vertical-align:middle;cursor:pointer}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar{margin:0;width:100%}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-teammember .progressbar-bar{background:#00af77}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-teammember .progressbar-score{color:#fff}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-stakeholder .progressbar-bar{background:#fff73f}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-stakeholder .progressbar-score{color:#fff}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-supporter .progressbar-bar{background:#ef4f9f}.topicselector-container .topicselector-metadata .questionnaire-segments .questionnaire-breakdowns .questionnaire-breakdown .progressbar.progressbar-supporter .progressbar-score{color:#fff}.topicselector-container .topicselector-metadata .questionnaire-accuracy{margin-bottom:15px}.topicselector-container .topicselector-metadata .questionnaire-accuracy .questionnaire-breakdown-label{font-size:12px;font-weight:900;text-transform:uppercase;margin-bottom:5px;font-family:StevieSans,sans-serif}.topicselector-container .topicselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder{margin-bottom:15px;background:#2f2f2f;height:20px;border-radius:15px;overflow:hidden}.topicselector-container .topicselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder .questionnaire-accuracy-bar{flex:auto;min-width:50px;font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif;background:#00af77;height:100%;align-content:center;text-align:center}.topicselector-container .topicselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder .questionnaire-accuracy-bar.low{background:#ef6f00}.topicselector-container .topicselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder .questionnaire-accuracy-bar.moderate{background:#fff73f}.topicselector-container .topic-selector-advancedviewtoggle{margin-top:10px;text-align:center;font-weight:700;font-family:StevieSans,sans-serif;font-size:12pt;text-decoration:none}.topicselector-container .topic-selector-advancedviewtoggle .icon{margin-right:10px;vertical-align:middle}.topicselector-container .topicselector-warnings{margin-top:15px}.topicselector-container .topicselector-warnings .topicselector-warnings-warning{display:flex;align-items:center;font-size:12pt}.topicselector-container .topicselector-warnings .topicselector-warnings-warning .icon{color:#1f3f8f;font-size:16px;cursor:pointer;margin-right:10px}.topicselector-container .topicselector-topics{margin-top:30px}.topicselector-container .topicselector-topics .topic-parent{margin-bottom:60px;padding-left:30px}.topicselector-container .topicselector-topics .topic-parent .name{display:flex;align-items:baseline;gap:15px}.topicselector-container .topicselector-topics .topic-parent .name h4{font-weight:700!important;font-family:StevieSans,sans-serif!important;margin:0}.topicselector-container .topicselector-topics .topic-parent .name .helpers{font-size:12pt}.topicselector-container .topicselector-topics .topic-parent .name .helpers a{font-family:StevieSans,sans-serif}.topicselector-container .topicselector-topics .topic-parent .name .topic-child-moreinformation{margin-left:auto;cursor:pointer}.topicselector-container .topicselector-topics .topic-parent .name .topic-child-moreinformation .icon{vertical-align:middle}.topicselector-container .topicselector-topics .topic-parent .topic-child{display:flex;align-items:baseline;gap:15px;margin-bottom:15px;margin-top:15px;cursor:pointer}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description{font-family:StevieSans,sans-serif;font-size:16px;font-weight:500}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags{gap:5px;margin-top:5px;display:flex}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag{padding:4px 8px;border-radius:16px;font-weight:600;font-size:11px;white-space:pre}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag.recommended{background:#2f2f2f;color:#fff}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag.stakeholder{background:#fff73f}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag.teammember{background:#1f3f8f;color:#fff}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag.supporter,.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-description .tags .tags-tag.management{background:#ef4f9f}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-moreinformation{margin-left:auto}.topicselector-container .topicselector-topics .topic-parent .topic-child .topic-child-moreinformation .icon{vertical-align:middle;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i5$3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "pipe", type: i2.DecimalPipe, name: "number" }, { kind: "pipe", type: SlugifyPipe, name: "slugify" }] }); }
|
|
3794
3796
|
}
|
|
3795
3797
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: TopicSelectorComponent, decorators: [{
|
|
3796
3798
|
type: Component,
|
|
@@ -4925,11 +4927,11 @@ class ModelFactorCoreComponent extends ComponentWithViewStateBase {
|
|
|
4925
4927
|
(this.settings.user.modelFilter.layers.find(p => p.key == "Supporters" && p.selected) != null && this.factorScore.points.find(p => p.name == "Supporter") != null);
|
|
4926
4928
|
}
|
|
4927
4929
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorCoreComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: UserSettingService }, { token: i1.MatSnackBar }, { token: ArrowUpdateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4928
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorCoreComponent, isStandalone: false, selector: "model-factor-core", inputs: { factor: "factor", allowExpand: "allowExpand", expandPosition: "expandPosition" }, usesInheritance: true, ngImport: i0, template: "<div [class]=\"'model-factor model-factor-' + direction\" [ngClass]=\"{'model-factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + factor.publicKey\" >\n <div [class]=\"'model-factor-expand model-factor-expand-' + expandPosition\" [ngClass]=\"{'expanded': expandIndicators}\" (click)=\"toggleIndicators()\" [id]=\"'factor-' + factor.publicKey + '-expand'\" *ngIf=\"allowExpand\">\n <span class=\"plus\">+</span>\n </div>\n <div class=\"model-factor-inner\" #factorAnchor>\n <div class=\"model-factor-content\" (click)=\"popover.open()\">\n <div class=\"model-factor-name\">\n {{factor.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"model-factor-details\">\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\" *ngIf=\"settings.user.modelFilter.advanced\"></age-indicator>\n <delta-arrow *ngIf=\"dataAvailable\" [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n </div>\n\n <div class=\"model-factor-bottom\" *ngIf=\"settings.user.modelFilter.advanced\">\n <span class=\"meta-actions\" [title]=\"factorScore.interventionSummary.open + ' open improvement actions, versus ' + factorScore.interventionSummary.completed + ' completed improvement actions'\">\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.open, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.open}}</span>/\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.completed, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.completed}}</span>\n </span>\n <span class=\"meta-impeded\" *ngIf=\"factorScore.interventionSummary.impeded > 0\" [title]=\"factorScore.interventionSummary.impeded + ' improvement actions are blocked, and teams are requesting support'\" [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.impeded, expectedImpactOn: factor.publicKey }\">\n <img class=\"icon\" src=\"/assets/img/impeded.svg\" />
|
|
4930
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorCoreComponent, isStandalone: false, selector: "model-factor-core", inputs: { factor: "factor", allowExpand: "allowExpand", expandPosition: "expandPosition" }, usesInheritance: true, ngImport: i0, template: "<div [class]=\"'model-factor model-factor-' + direction\" [ngClass]=\"{'model-factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + factor.publicKey\" >\n <div [class]=\"'model-factor-expand model-factor-expand-' + expandPosition\" [ngClass]=\"{'expanded': expandIndicators}\" (click)=\"toggleIndicators()\" [id]=\"'factor-' + factor.publicKey + '-expand'\" *ngIf=\"allowExpand\">\n <span class=\"plus\">+</span>\n </div>\n <div class=\"model-factor-inner\" #factorAnchor>\n <div class=\"model-factor-content\" (click)=\"popover.open()\">\n <div class=\"model-factor-name\">\n {{factor.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"model-factor-details\">\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\" *ngIf=\"settings.user.modelFilter.advanced\"></age-indicator>\n <delta-arrow *ngIf=\"dataAvailable\" [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n </div>\n\n <div class=\"model-factor-bottom\" *ngIf=\"settings.user.modelFilter.advanced\">\n <span class=\"meta-actions\" [title]=\"factorScore.interventionSummary.open + ' open improvement actions, versus ' + factorScore.interventionSummary.completed + ' completed improvement actions'\">\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.open, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.open}}</span>/\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.completed, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.completed}}</span>\n </span>\n <span class=\"meta-impeded\" *ngIf=\"factorScore.interventionSummary.impeded > 0\" [title]=\"factorScore.interventionSummary.impeded + ' improvement actions are blocked, and teams are requesting support'\" [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.impeded, expectedImpactOn: factor.publicKey }\">\n <img class=\"icon\" src=\"/assets/img/impeded.svg\" />{{factorScore.interventionSummary.impeded}}\n </span>\n <span class=\"meta-warnings\" *ngIf=\"notes.length > 0\" notesDialog [notes]=\"notes\">\n <span class=\"icon ph-warning-fill\"></span>\n </span>\n </div>\n\n <div class=\"model-factor-bottom-empty\" *ngIf=\"!settings.user.modelFilter.advanced\">\n </div>\n </div>\n</div>\n\n<div [id]=\"'factor-' + factor.publicKey + '-indicators'\" class=\"indicators\">\n <model-factor-indicator [indicator]=\"indicator\" *ngFor=\"let indicator of factor.lower\" [actionStatusPosition]=\"expandPosition\" [visible]=\"expandIndicators && allowExpand\"></model-factor-indicator>\n</div>\n\n<sat-popover #popover horizontalAlign=\"after\" [anchor]=\"factorAnchor\" verticalAlign=\"center\" [hasBackdrop]=\"true\" [autoFocus]=\"false\">\n <div class=\"popover\" [id]=\"'popover-' + factor.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"popover.close()\" class=\"close ph-x\"></span>\n <h3 factorInformationDialog [factor]=\"factor\">\n {{factor.name}}\n <span class=\"icon ph-info-fill\"></span>\n </h3>\n <div class=\"description\">{{factor.description}}</div>\n\n <model-factor-benchmark [factor]=\"factorScore\" [benchmark]=\"benchmark\"></model-factor-benchmark>\n <model-factor-breakdown [factor]=\"factorScore\"></model-factor-breakdown>\n <quicktips [dimensionKey]=\"factor.publicKey\" [extraClass]=\"'quicktips-popover'\"></quicktips>\n\n <div class=\"link\" *ngIf=\"factorScore.recommendation.available\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"factor.publicKey\">discover how to improve ></a>\n </div>\n </div>\n <div class=\"arrow\"></div>\n </div>\n</sat-popover>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: DeltaArrowComponent, selector: "delta-arrow", inputs: ["factorScore", "delta", "noDataIndicator"] }, { kind: "component", type: AgeIndicatorComponent, selector: "age-indicator", inputs: ["lastMeasured"] }, { kind: "component", type: QuickTipsComponent, selector: "quicktips", inputs: ["dimensionKey", "extraClass"] }, { kind: "component", type: ModelFactorBreakdownComponent, selector: "model-factor-breakdown", inputs: ["factor", "pageSize"] }, { kind: "directive", type: OpenNotesDialogDirective, selector: "[notesDialog]", inputs: ["notes"] }, { kind: "component", type: i11.SatPopoverComponent, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }, { kind: "directive", type: OpenFactorInformationDialogDirective, selector: "[factorInformationDialog]", inputs: ["factor"] }, { kind: "component", type: ProgressbarComponent, selector: "progressbar", inputs: ["factorScore"] }, { kind: "component", type: ModelFactorIndicatorComponent, selector: "model-factor-indicator", inputs: ["indicator", "actionStatusPosition", "visible"] }, { kind: "component", type: ModelFactorBenchmarkComponent, selector: "model-factor-benchmark", inputs: ["factor", "benchmark"] }] }); }
|
|
4929
4931
|
}
|
|
4930
4932
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorCoreComponent, decorators: [{
|
|
4931
4933
|
type: Component,
|
|
4932
|
-
args: [{ selector: 'model-factor-core', standalone: false, template: "<div [class]=\"'model-factor model-factor-' + direction\" [ngClass]=\"{'model-factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + factor.publicKey\" >\n <div [class]=\"'model-factor-expand model-factor-expand-' + expandPosition\" [ngClass]=\"{'expanded': expandIndicators}\" (click)=\"toggleIndicators()\" [id]=\"'factor-' + factor.publicKey + '-expand'\" *ngIf=\"allowExpand\">\n <span class=\"plus\">+</span>\n </div>\n <div class=\"model-factor-inner\" #factorAnchor>\n <div class=\"model-factor-content\" (click)=\"popover.open()\">\n <div class=\"model-factor-name\">\n {{factor.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"model-factor-details\">\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\" *ngIf=\"settings.user.modelFilter.advanced\"></age-indicator>\n <delta-arrow *ngIf=\"dataAvailable\" [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n </div>\n\n <div class=\"model-factor-bottom\" *ngIf=\"settings.user.modelFilter.advanced\">\n <span class=\"meta-actions\" [title]=\"factorScore.interventionSummary.open + ' open improvement actions, versus ' + factorScore.interventionSummary.completed + ' completed improvement actions'\">\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.open, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.open}}</span>/\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.completed, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.completed}}</span>\n </span>\n <span class=\"meta-impeded\" *ngIf=\"factorScore.interventionSummary.impeded > 0\" [title]=\"factorScore.interventionSummary.impeded + ' improvement actions are blocked, and teams are requesting support'\" [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.impeded, expectedImpactOn: factor.publicKey }\">\n <img class=\"icon\" src=\"/assets/img/impeded.svg\" />
|
|
4934
|
+
args: [{ selector: 'model-factor-core', standalone: false, template: "<div [class]=\"'model-factor model-factor-' + direction\" [ngClass]=\"{'model-factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + factor.publicKey\" >\n <div [class]=\"'model-factor-expand model-factor-expand-' + expandPosition\" [ngClass]=\"{'expanded': expandIndicators}\" (click)=\"toggleIndicators()\" [id]=\"'factor-' + factor.publicKey + '-expand'\" *ngIf=\"allowExpand\">\n <span class=\"plus\">+</span>\n </div>\n <div class=\"model-factor-inner\" #factorAnchor>\n <div class=\"model-factor-content\" (click)=\"popover.open()\">\n <div class=\"model-factor-name\">\n {{factor.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"model-factor-details\">\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\" *ngIf=\"settings.user.modelFilter.advanced\"></age-indicator>\n <delta-arrow *ngIf=\"dataAvailable\" [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n </div>\n\n <div class=\"model-factor-bottom\" *ngIf=\"settings.user.modelFilter.advanced\">\n <span class=\"meta-actions\" [title]=\"factorScore.interventionSummary.open + ' open improvement actions, versus ' + factorScore.interventionSummary.completed + ' completed improvement actions'\">\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.open, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.open}}</span>/\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.completed, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.completed}}</span>\n </span>\n <span class=\"meta-impeded\" *ngIf=\"factorScore.interventionSummary.impeded > 0\" [title]=\"factorScore.interventionSummary.impeded + ' improvement actions are blocked, and teams are requesting support'\" [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.impeded, expectedImpactOn: factor.publicKey }\">\n <img class=\"icon\" src=\"/assets/img/impeded.svg\" />{{factorScore.interventionSummary.impeded}}\n </span>\n <span class=\"meta-warnings\" *ngIf=\"notes.length > 0\" notesDialog [notes]=\"notes\">\n <span class=\"icon ph-warning-fill\"></span>\n </span>\n </div>\n\n <div class=\"model-factor-bottom-empty\" *ngIf=\"!settings.user.modelFilter.advanced\">\n </div>\n </div>\n</div>\n\n<div [id]=\"'factor-' + factor.publicKey + '-indicators'\" class=\"indicators\">\n <model-factor-indicator [indicator]=\"indicator\" *ngFor=\"let indicator of factor.lower\" [actionStatusPosition]=\"expandPosition\" [visible]=\"expandIndicators && allowExpand\"></model-factor-indicator>\n</div>\n\n<sat-popover #popover horizontalAlign=\"after\" [anchor]=\"factorAnchor\" verticalAlign=\"center\" [hasBackdrop]=\"true\" [autoFocus]=\"false\">\n <div class=\"popover\" [id]=\"'popover-' + factor.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"popover.close()\" class=\"close ph-x\"></span>\n <h3 factorInformationDialog [factor]=\"factor\">\n {{factor.name}}\n <span class=\"icon ph-info-fill\"></span>\n </h3>\n <div class=\"description\">{{factor.description}}</div>\n\n <model-factor-benchmark [factor]=\"factorScore\" [benchmark]=\"benchmark\"></model-factor-benchmark>\n <model-factor-breakdown [factor]=\"factorScore\"></model-factor-breakdown>\n <quicktips [dimensionKey]=\"factor.publicKey\" [extraClass]=\"'quicktips-popover'\"></quicktips>\n\n <div class=\"link\" *ngIf=\"factorScore.recommendation.available\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"factor.publicKey\">discover how to improve ></a>\n </div>\n </div>\n <div class=\"arrow\"></div>\n </div>\n</sat-popover>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
|
|
4933
4935
|
}], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
|
|
4934
4936
|
type: Inject,
|
|
4935
4937
|
args: [VIEWSTATE_PROVIDER]
|
|
@@ -6041,7 +6043,7 @@ class FactorsComponent extends ComponentWithViewStateBase {
|
|
|
6041
6043
|
}
|
|
6042
6044
|
;
|
|
6043
6045
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: FactorsComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6044
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: FactorsComponent, isStandalone: false, selector: "factors", usesInheritance: true, ngImport: i0, template: "<div class=\"results\" *ngIf=\"loaded\">\n\n <div class=\"resultstoolbar\">\n <h3>Detailed results</h3>\n <div class=\"legend\">\n <div class=\"column you\" *ngIf=\"showParticipant\">\n <span class=\"marker\"></span>\n <span class=\"label\">you</span>\n </div>\n\n <div [class]=\"'column ' + segment.name | lowercase\" *ngFor=\"let segment of populationSegments\">\n <span class=\"marker\"></span>\n <span class=\"label\">{{segment.name | lowercase}} {{segment.occurances || 1}}x</span>\n </div>\n\n <div class=\"column confidence\">\n <span class=\"marker\"></span>\n <span class=\"label\">benchmark '{{benchmarkName}}' <a [routerLink]=\"[]\" id=\"change-benchmark\" settingsDialog><span class=\"icon ph-faders-bold\"></span></a></span>\n </div>\n </div>\n <div class=\"filters\">\n <mat-slide-toggle *ngIf=\"showParticipant\" class=\"toggle showmyscores\" [(ngModel)]=\"showIndividualScore\">Show my scores</mat-slide-toggle>\n <mat-slide-toggle class=\"toggle showscoringrange\" [(ngModel)]=\"showTeamRange\" *ngIf=\"subscribed\">Show range of scores in my team</mat-slide-toggle>\n <mat-slide-toggle class=\"toggle showscoringrange\" *ngIf=\"!subscribed\" subscribeDialog>Show range of scores in my team</mat-slide-toggle>\n </div>\n </div>\n\n <div class=\"dimensions\">\n <limitationsapply [notes]=\"globalNotes\"></limitationsapply>\n <div class=\"dimension\" *ngFor=\"let factor of factors\" [id]=\"'factor-' + factor.name | slugify\">\n <factor-axis [showIndividualScore]=\"showIndividualScore\" [showTeamRange]=\"showTeamRange\" [dimensionSelector]=\"factor\"></factor-axis>\n </div>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.results{margin-bottom:50px}.results .moreparticipantsneeded{background:#ef6f00;padding:15px;color:#fff}.results .dimensions{border:3px solid #f0f0f0}.results .dimension{border-bottom:3px solid #f0f0f0}.results .dimension:last-of-type{border-bottom:none}.results .resultstoolbar{padding:20px;background:#f0f0f0;position:relative}.results .resultstoolbar .warning{position:absolute;top:25px;right:25px;text-decoration:none;color:#ef6f00}.results .resultstoolbar .warning .icon{font-size:36px}.results .resultstoolbar .legend .column .label a{text-decoration:none}.results .resultstoolbar .legend .column .label .icon{margin-left:5px;font-size:18px}.results .resultstoolbar .legend .column.you .marker{background:#1f3f8f}.results .resultstoolbar .legend .column.teammember .marker{background:#00af77}.results .resultstoolbar .legend .column.stakeholder .marker{background:#fff73f}.results .resultstoolbar .legend .column.supporter .marker{background:#ef6f00}.results .resultstoolbar .legend .column.confidence .marker{background:#ef59a1}.results .resultstoolbar .filters{margin-top:30px;align-items:center;display:flex}@media only screen and (max-width: 1320px){.results .resultstoolbar .filters{display:block}}.results .resultstoolbar .filters .toggle{margin-right:30px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5$
|
|
6046
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: FactorsComponent, isStandalone: false, selector: "factors", usesInheritance: true, ngImport: i0, template: "<div class=\"results\" *ngIf=\"loaded\">\n\n <div class=\"resultstoolbar\">\n <h3>Detailed results</h3>\n <div class=\"legend\">\n <div class=\"column you\" *ngIf=\"showParticipant\">\n <span class=\"marker\"></span>\n <span class=\"label\">you</span>\n </div>\n\n <div [class]=\"'column ' + segment.name | lowercase\" *ngFor=\"let segment of populationSegments\">\n <span class=\"marker\"></span>\n <span class=\"label\">{{segment.name | lowercase}} {{segment.occurances || 1}}x</span>\n </div>\n\n <div class=\"column confidence\">\n <span class=\"marker\"></span>\n <span class=\"label\">benchmark '{{benchmarkName}}' <a [routerLink]=\"[]\" id=\"change-benchmark\" settingsDialog><span class=\"icon ph-faders-bold\"></span></a></span>\n </div>\n </div>\n <div class=\"filters\">\n <mat-slide-toggle *ngIf=\"showParticipant\" class=\"toggle showmyscores\" [(ngModel)]=\"showIndividualScore\">Show my scores</mat-slide-toggle>\n <mat-slide-toggle class=\"toggle showscoringrange\" [(ngModel)]=\"showTeamRange\" *ngIf=\"subscribed\">Show range of scores in my team</mat-slide-toggle>\n <mat-slide-toggle class=\"toggle showscoringrange\" *ngIf=\"!subscribed\" subscribeDialog>Show range of scores in my team</mat-slide-toggle>\n </div>\n </div>\n\n <div class=\"dimensions\">\n <limitationsapply [notes]=\"globalNotes\"></limitationsapply>\n <div class=\"dimension\" *ngFor=\"let factor of factors\" [id]=\"'factor-' + factor.name | slugify\">\n <factor-axis [showIndividualScore]=\"showIndividualScore\" [showTeamRange]=\"showTeamRange\" [dimensionSelector]=\"factor\"></factor-axis>\n </div>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.results{margin-bottom:50px}.results .moreparticipantsneeded{background:#ef6f00;padding:15px;color:#fff}.results .dimensions{border:3px solid #f0f0f0}.results .dimension{border-bottom:3px solid #f0f0f0}.results .dimension:last-of-type{border-bottom:none}.results .resultstoolbar{padding:20px;background:#f0f0f0;position:relative}.results .resultstoolbar .warning{position:absolute;top:25px;right:25px;text-decoration:none;color:#ef6f00}.results .resultstoolbar .warning .icon{font-size:36px}.results .resultstoolbar .legend .column .label a{text-decoration:none}.results .resultstoolbar .legend .column .label .icon{margin-left:5px;font-size:18px}.results .resultstoolbar .legend .column.you .marker{background:#1f3f8f}.results .resultstoolbar .legend .column.teammember .marker{background:#00af77}.results .resultstoolbar .legend .column.stakeholder .marker{background:#fff73f}.results .resultstoolbar .legend .column.supporter .marker{background:#ef6f00}.results .resultstoolbar .legend .column.confidence .marker{background:#ef59a1}.results .resultstoolbar .filters{margin-top:30px;align-items:center;display:flex}@media only screen and (max-width: 1320px){.results .resultstoolbar .filters{display:block}}.results .resultstoolbar .filters .toggle{margin-right:30px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5$4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon", "disabledInteractive"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: OpenSubscribeDialogDirective, selector: "[subscribeDialog]" }, { kind: "directive", type: OpenSettingsDialogDirective, selector: "[settingsDialog]", inputs: ["showSettingStacking"] }, { kind: "component", type: FactorAxisComponent, selector: "factor-axis", inputs: ["dimensionSelector", "showIndividualScore", "showTeamRange"] }, { kind: "component", type: LimitationsApplyComponent, selector: "limitationsapply", inputs: ["notes"] }, { kind: "pipe", type: i2.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: SlugifyPipe, name: "slugify" }] }); }
|
|
6045
6047
|
}
|
|
6046
6048
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: FactorsComponent, decorators: [{
|
|
6047
6049
|
type: Component,
|
|
@@ -7205,11 +7207,11 @@ class WidgetFactorScoreComponent {
|
|
|
7205
7207
|
this.direction = this.factorScore.qualification.toLowerCase();
|
|
7206
7208
|
}
|
|
7207
7209
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: WidgetFactorScoreComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7208
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: WidgetFactorScoreComponent, isStandalone: false, 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
|
|
7210
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: WidgetFactorScoreComponent, isStandalone: false, 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=\"progressbar-score\">{{factorScore.score > 0 ? factorScore.score : \"waiting for data\"}}</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>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4$1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: DeltaArrowComponent, selector: "delta-arrow", inputs: ["factorScore", "delta", "noDataIndicator"] }] }); }
|
|
7209
7211
|
}
|
|
7210
7212
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: WidgetFactorScoreComponent, decorators: [{
|
|
7211
7213
|
type: Component,
|
|
7212
|
-
args: [{ selector: 'widget-factorscore', standalone: false, 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
|
|
7214
|
+
args: [{ selector: 'widget-factorscore', standalone: false, 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=\"progressbar-score\">{{factorScore.score > 0 ? factorScore.score : \"waiting for data\"}}</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>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
|
|
7213
7215
|
}], ctorParameters: () => [], propDecorators: { factorScore: [{
|
|
7214
7216
|
type: Input
|
|
7215
7217
|
}], factorScores: [{
|