vcomply-workflow-engine 3.0.17 → 3.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (19) hide show
  1. package/bundles/vcomply-workflow-engine.umd.js +1119 -415
  2. package/bundles/vcomply-workflow-engine.umd.js.map +1 -1
  3. package/esm2015/lib/sharedComponents/assessment-list/assessment-list.component.js +4 -2
  4. package/esm2015/lib/sharedComponents/assessment-list/assessment-list.component.ngfactory.js +5 -5
  5. package/esm2015/lib/sharedComponents/assessment-list/assessment-list.component.ngsummary.json +1 -1
  6. package/esm2015/lib/sharedComponents/frequency/frequency-due-date/frequency-due-date.component.js +2 -2
  7. package/esm2015/lib/sharedComponents/frequency/frequency-due-date/frequency-due-date.component.ngfactory.js +3 -3
  8. package/esm2015/lib/sharedComponents/responsibility-centers-list/responsibility-centers-list.component.js +2 -2
  9. package/esm2015/lib/sharedComponents/responsibility-centers-list/responsibility-centers-list.component.ngfactory.js +2 -2
  10. package/esm2015/lib/workflow-compliance/workflow-compliance.component.js +1161 -432
  11. package/esm2015/lib/workflow-policy/workflow-policy.component.js +27 -14
  12. package/esm2015/lib/workflow-policy/workflow-policy.component.ngfactory.js +2 -2
  13. package/esm2015/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.js +7 -1
  14. package/fesm2015/vcomply-workflow-engine.js +1196 -446
  15. package/fesm2015/vcomply-workflow-engine.js.map +1 -1
  16. package/lib/sharedComponents/assessment-list/assessment-list.component.d.ts +1 -0
  17. package/lib/workflow-compliance/workflow-compliance.component.d.ts +8 -8
  18. package/package.json +2 -2
  19. package/vcomply-workflow-engine.metadata.json +1 -1
@@ -3187,7 +3187,19 @@ class WorkflowComplianceComponent {
3187
3187
  this.disableRadioAssignee = [];
3188
3188
  this.isResponsibilitySimplified = false;
3189
3189
  this.queryParam = '';
3190
- this.recentResponsibilityUrl = { "byResponsibilities": { "type": ["recent_responsibilities"], "subType": ["CC"] }, "byStatus": { "type": [], "subType": [] }, "filterObject": { "responsibilityCenter": [], "entrustedBy": [], "entrustedTo": [], "riskIds": [], "responsibilityCategory": [] }, "timePeriodDetails": { "type": "", "selectedPeriod": "", "selectedYear": "" }, "status": "" };
3190
+ this.recentResponsibilityUrl = {
3191
+ byResponsibilities: { type: ['recent_responsibilities'], subType: ['CC'] },
3192
+ byStatus: { type: [], subType: [] },
3193
+ filterObject: {
3194
+ responsibilityCenter: [],
3195
+ entrustedBy: [],
3196
+ entrustedTo: [],
3197
+ riskIds: [],
3198
+ responsibilityCategory: [],
3199
+ },
3200
+ timePeriodDetails: { type: '', selectedPeriod: '', selectedYear: '' },
3201
+ status: '',
3202
+ };
3191
3203
  this.isResponsibilityRcLinkEnabled = false;
3192
3204
  this.url = 'q={"byResponsibilities":{"type":["responsibilities_in_queue"],"subType":["CC"]},"byStatus":{"type":["responsibilities_in_queue"],"subType":[]},"filterObject":{"responsibilityCenter":[],"entrustedBy":[],"entrustedTo":[],"riskIds":[],"responsibilityCategory":[]},"timePeriodDetails":{"type":"","selectedPeriod":"","selectedYear":""},"status":""}';
3193
3205
  this.pickerChanged = new EventEmitter();
@@ -3224,7 +3236,11 @@ class WorkflowComplianceComponent {
3224
3236
  this.submitted = false;
3225
3237
  this.smileyMessage = `Done!`;
3226
3238
  this.actionButtons = [
3227
- { buttonText: 'Entrust More Responsibilities', class: 'white-btn', id: 'addMore' },
3239
+ {
3240
+ buttonText: 'Entrust More Responsibilities',
3241
+ class: 'white-btn',
3242
+ id: 'addMore',
3243
+ },
3228
3244
  { buttonText: 'View Responsibilities', class: 'blue-btn', id: 'view' },
3229
3245
  ];
3230
3246
  this.showSmiley = false;
@@ -3268,7 +3284,7 @@ class WorkflowComplianceComponent {
3268
3284
  this.responsibilityForm = {
3269
3285
  assignors: {
3270
3286
  enable: false,
3271
- list: []
3287
+ list: [],
3272
3288
  },
3273
3289
  responsibility: {
3274
3290
  name: '',
@@ -3276,11 +3292,11 @@ class WorkflowComplianceComponent {
3276
3292
  },
3277
3293
  assigneeGroups: {
3278
3294
  whoCanComplete: 'ANYONE',
3279
- list: []
3295
+ list: [],
3280
3296
  },
3281
3297
  assignees: {
3282
3298
  whoCanComplete: 'ALL',
3283
- list: []
3299
+ list: [],
3284
3300
  },
3285
3301
  frequency: '',
3286
3302
  description: '',
@@ -3297,25 +3313,25 @@ class WorkflowComplianceComponent {
3297
3313
  sequentialWorkflow: true,
3298
3314
  reviewFrequency: {
3299
3315
  reviewCompleteDays: 2,
3300
- reviewNOtCompletedDays: 2
3316
+ reviewNOtCompletedDays: 2,
3301
3317
  },
3302
- list: []
3318
+ list: [],
3303
3319
  },
3304
3320
  groupReviewers: {
3305
3321
  sequentialWorkflow: true,
3306
3322
  reviewFrequency: {
3307
3323
  reviewCompleteDays: 2,
3308
- reviewNOtCompletedDays: 2
3324
+ reviewNOtCompletedDays: 2,
3309
3325
  },
3310
- list: []
3326
+ list: [],
3311
3327
  },
3312
3328
  overseers: {
3313
3329
  notifyList: [],
3314
- list: []
3330
+ list: [],
3315
3331
  },
3316
3332
  overseersGroups: {
3317
3333
  notifyList: [],
3318
- list: []
3334
+ list: [],
3319
3335
  },
3320
3336
  formatAndEvidence: {
3321
3337
  formatRequired: false,
@@ -3332,10 +3348,11 @@ class WorkflowComplianceComponent {
3332
3348
  sample: 5,
3333
3349
  percentage: 30,
3334
3350
  frequency_pattern: '1~0~3~1',
3335
- frequency_time: '23:59:00'
3351
+ frequency_time: '23:59:00',
3336
3352
  },
3337
3353
  assessment: {
3338
- category_id: '', assessment_id: ''
3354
+ category_id: '',
3355
+ assessment_id: '',
3339
3356
  },
3340
3357
  new_checkpoints: {},
3341
3358
  linkedProgram: [],
@@ -3354,10 +3371,28 @@ class WorkflowComplianceComponent {
3354
3371
  ASSURANCE: false,
3355
3372
  APPS: false,
3356
3373
  REQUIRES_AUDIT: false,
3357
- CHECKPOINTS_NEW: false
3374
+ CHECKPOINTS_NEW: false,
3358
3375
  };
3359
3376
  this.activeSelector = '';
3360
- this.sideSelectorElements = ['assurance', 'framework', 'assignors', 'assignees', 'category', 'program', 'rc', 'checkpoints', 'frequency', 'reviewer', 'reviewerFrequency', 'overseer', 'overseerNotify', 'riskCalculator', 'isAssessment', 'requires_audit', 'checkpoints-new'];
3377
+ this.sideSelectorElements = [
3378
+ 'assurance',
3379
+ 'framework',
3380
+ 'assignors',
3381
+ 'assignees',
3382
+ 'category',
3383
+ 'program',
3384
+ 'rc',
3385
+ 'checkpoints',
3386
+ 'frequency',
3387
+ 'reviewer',
3388
+ 'reviewerFrequency',
3389
+ 'overseer',
3390
+ 'overseerNotify',
3391
+ 'riskCalculator',
3392
+ 'isAssessment',
3393
+ 'requires_audit',
3394
+ 'checkpoints-new',
3395
+ ];
3361
3396
  this.focus = {
3362
3397
  responsibilityName: false,
3363
3398
  description: false,
@@ -3366,27 +3401,27 @@ class WorkflowComplianceComponent {
3366
3401
  this.categories = {
3367
3402
  regulations: {
3368
3403
  list: [],
3369
- selectedList: []
3404
+ selectedList: [],
3370
3405
  },
3371
3406
  standards: {
3372
3407
  list: [],
3373
- selectedList: []
3408
+ selectedList: [],
3374
3409
  },
3375
3410
  internalControls: {
3376
3411
  list: [],
3377
- selectedList: []
3412
+ selectedList: [],
3378
3413
  },
3379
3414
  others: {
3380
3415
  list: [],
3381
- selectedList: []
3382
- }
3416
+ selectedList: [],
3417
+ },
3383
3418
  };
3384
3419
  this.allPrograms = [];
3385
3420
  this.riskClassification = [
3386
3421
  { name: 'Low', value: 1, class: 'low' },
3387
3422
  { name: 'Low-Medium', value: 2, class: 'low-med' },
3388
3423
  { name: 'Medium-High', value: 3, class: 'med-high' },
3389
- { name: 'High', value: 4, class: 'high' }
3424
+ { name: 'High', value: 4, class: 'high' },
3390
3425
  ];
3391
3426
  this.assignorMode = 'checkbox';
3392
3427
  this.rcMode = 'checkbox';
@@ -3408,7 +3443,7 @@ class WorkflowComplianceComponent {
3408
3443
  time: '11:59 pm',
3409
3444
  failedTime: '',
3410
3445
  continuous_failed_days: 0,
3411
- onCompletionReportDetails: {}
3446
+ onCompletionReportDetails: {},
3412
3447
  };
3413
3448
  this.frequencyPlaceholder = 'How often does the responsibility occur?';
3414
3449
  this.shortMonth = [];
@@ -3432,7 +3467,9 @@ class WorkflowComplianceComponent {
3432
3467
  this.authService.getUserInfo().subscribe((res) => {
3433
3468
  const complianceSubmodule = res.roleActions[res.roleActions.findIndex((ele) => ele.moduleName == 'compliance')].subModule;
3434
3469
  const permissions = complianceSubmodule[complianceSubmodule.findIndex((ele) => ele.subModuleName == 'Programs')].permissions;
3435
- this.managePermission = (permissions[permissions.findIndex((ele) => ele.name == 'manage programs')].enable) ? true : false;
3470
+ this.managePermission = permissions[permissions.findIndex((ele) => ele.name == 'manage programs')].enable
3471
+ ? true
3472
+ : false;
3436
3473
  if (this.managePermission) {
3437
3474
  this.hiddenList.push('CATEGORY');
3438
3475
  this.categoriesListLoaded = true;
@@ -3477,7 +3514,7 @@ class WorkflowComplianceComponent {
3477
3514
  this.checkWhetherAllListsLoaded();
3478
3515
  this.getOrganizationDetails();
3479
3516
  this.getUserDetails();
3480
- this.shortMonth = this.frequencyService.monthArray.map(month => month.substring(0, 3));
3517
+ this.shortMonth = this.frequencyService.monthArray.map((month) => month.substring(0, 3));
3481
3518
  if (this.mode === 'CREATE') {
3482
3519
  this.organizationId = this.authService.getOrganizationId();
3483
3520
  this.memberId = this.authService.getMemberId();
@@ -3493,7 +3530,7 @@ class WorkflowComplianceComponent {
3493
3530
  this.authService.getSubscriptionDetails().subscribe((res) => {
3494
3531
  this.subscriptionDetails = res;
3495
3532
  if (this.subscriptionDetails[0].assessment_flag) {
3496
- this.hiddenList = this.hiddenList.filter(ele => ele !== 'ASSESSMENT');
3533
+ this.hiddenList = this.hiddenList.filter((ele) => ele !== 'ASSESSMENT');
3497
3534
  this.hideElementsFromMoreOptions.emit(this.hiddenList);
3498
3535
  }
3499
3536
  });
@@ -3527,7 +3564,9 @@ class WorkflowComplianceComponent {
3527
3564
  }
3528
3565
  addMoreInfo(event) {
3529
3566
  this.scrollToBottom = true;
3530
- if (event.code === 'CHECKPOINTS_NEW' && event.checkpoint_new && this.checkpointCount) {
3567
+ if (event.code === 'CHECKPOINTS_NEW' &&
3568
+ event.checkpoint_new &&
3569
+ this.checkpointCount) {
3531
3570
  }
3532
3571
  else {
3533
3572
  this.moreOptions[event.code] = event.checked;
@@ -3542,7 +3581,7 @@ class WorkflowComplianceComponent {
3542
3581
  if (program_id) {
3543
3582
  params = params.append('program_ids', program_id);
3544
3583
  }
3545
- (_a = this.responsibilityService) === null || _a === void 0 ? void 0 : _a.getResponsibilityCenterList(params).subscribe(res => {
3584
+ (_a = this.responsibilityService) === null || _a === void 0 ? void 0 : _a.getResponsibilityCenterList(params).subscribe((res) => {
3546
3585
  this.responsibilityCentersList = res;
3547
3586
  this.rcListLoaded = true;
3548
3587
  const ids = this.returnIds(this.responsibilityForm.rc, 'item_id');
@@ -3557,7 +3596,11 @@ class WorkflowComplianceComponent {
3557
3596
  this.responsibilityForm.rc = this.setList(this.responsibilityCentersList, [this.selectedRC], 'item_id');
3558
3597
  this.moreOptions.RC = true;
3559
3598
  this.actionButtons = [
3560
- { buttonText: 'Go to risk treatment', class: 'blue-btn', id: 'view' },
3599
+ {
3600
+ buttonText: 'Go to risk treatment',
3601
+ class: 'blue-btn',
3602
+ id: 'view',
3603
+ },
3561
3604
  ];
3562
3605
  // Previously there was only RC was emitting which made the checked options to de check now checking the condition and sending all the selected options
3563
3606
  let checkedMoreOptions = [];
@@ -3568,7 +3611,7 @@ class WorkflowComplianceComponent {
3568
3611
  }
3569
3612
  this.populateOption.emit(checkedMoreOptions);
3570
3613
  }
3571
- }, err => {
3614
+ }, (err) => {
3572
3615
  console.error(err);
3573
3616
  this.rcListLoaded = true;
3574
3617
  });
@@ -3576,7 +3619,9 @@ class WorkflowComplianceComponent {
3576
3619
  getUserDetails() {
3577
3620
  this.authService.getUserInfo().subscribe((res) => {
3578
3621
  this.isNotificationPending = res.notification_pending_flag;
3579
- this.actionButtons[1].buttonText = this.isNotificationPending ? 'View Responsibilities in Queue' : 'View Responsibilities';
3622
+ this.actionButtons[1].buttonText = this.isNotificationPending
3623
+ ? 'View Responsibilities in Queue'
3624
+ : 'View Responsibilities';
3580
3625
  });
3581
3626
  }
3582
3627
  getAssurance() {
@@ -3584,12 +3629,14 @@ class WorkflowComplianceComponent {
3584
3629
  this.responsibilityService.getAssurance().subscribe((res) => {
3585
3630
  var _a;
3586
3631
  this.assuranceCategoriesList = res;
3587
- if ((this.subscriptionDetails && !this.subscriptionDetails[0].assurance_flag) || ((_a = this.assuranceCategoriesList) === null || _a === void 0 ? void 0 : _a.length) == 0) {
3632
+ if ((this.subscriptionDetails &&
3633
+ !this.subscriptionDetails[0].assurance_flag) ||
3634
+ ((_a = this.assuranceCategoriesList) === null || _a === void 0 ? void 0 : _a.length) == 0) {
3588
3635
  this.hiddenList.push('ASSURANCE');
3589
3636
  }
3590
3637
  this.hideElementsFromMoreOptions.emit(this.hiddenList);
3591
3638
  this.assuranceCategoryListLoaded = true;
3592
- }, err => {
3639
+ }, (err) => {
3593
3640
  console.error(err);
3594
3641
  this.assuranceCategoryListLoaded = true;
3595
3642
  });
@@ -3599,12 +3646,14 @@ class WorkflowComplianceComponent {
3599
3646
  this.responsibilityService.getAssuranceForRequiresAudit().subscribe((res) => {
3600
3647
  var _a;
3601
3648
  this.assuranceRequiresAuditList = res;
3602
- if ((this.subscriptionDetails && !this.subscriptionDetails[0].audit_flag) || ((_a = this.assuranceRequiresAuditList) === null || _a === void 0 ? void 0 : _a.length) == 0) {
3649
+ if ((this.subscriptionDetails &&
3650
+ !this.subscriptionDetails[0].audit_flag) ||
3651
+ ((_a = this.assuranceRequiresAuditList) === null || _a === void 0 ? void 0 : _a.length) == 0) {
3603
3652
  this.hiddenList.push('REQUIRES_AUDIT');
3604
3653
  }
3605
3654
  this.hideElementsFromMoreOptions.emit(this.hiddenList);
3606
3655
  // this.assuranceCategoryListLoaded = true;
3607
- }, err => {
3656
+ }, (err) => {
3608
3657
  console.error(err);
3609
3658
  // this.assuranceCategoryListLoaded = true;
3610
3659
  });
@@ -3617,7 +3666,7 @@ class WorkflowComplianceComponent {
3617
3666
  getCategoryList() {
3618
3667
  this.loader = true;
3619
3668
  this.uiKitService.isLoader = true;
3620
- this.responsibilityService.getCategoriesList().subscribe(res => {
3669
+ this.responsibilityService.getCategoriesList().subscribe((res) => {
3621
3670
  const data = res;
3622
3671
  this.allCategories = cloneDeep(res);
3623
3672
  data.forEach((element) => {
@@ -3635,7 +3684,7 @@ class WorkflowComplianceComponent {
3635
3684
  }
3636
3685
  });
3637
3686
  this.categoriesListLoaded = true;
3638
- }, err => {
3687
+ }, (err) => {
3639
3688
  console.error(err);
3640
3689
  this.categoriesListLoaded = true;
3641
3690
  });
@@ -3661,16 +3710,29 @@ class WorkflowComplianceComponent {
3661
3710
  this.loader = true;
3662
3711
  this.programService.getProgram(programId).subscribe((res) => {
3663
3712
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
3664
- if ((res === null || res === void 0 ? void 0 : res.assessment) && ((_a = res === null || res === void 0 ? void 0 : res.assessment) === null || _a === void 0 ? void 0 : _a.length) && ((_c = Object.keys((_b = this.responsibilityForm) === null || _b === void 0 ? void 0 : _b.assessment)) === null || _c === void 0 ? void 0 : _c.length)) {
3665
- const categoryAssessment = res === null || res === void 0 ? void 0 : res.assessment.filter((assessment) => { var _a, _b; return ((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.assessment) === null || _b === void 0 ? void 0 : _b.category_id) === (assessment === null || assessment === void 0 ? void 0 : assessment.category_id); });
3666
- if ((categoryAssessment === null || categoryAssessment === void 0 ? void 0 : categoryAssessment.length) && ((_e = (_d = categoryAssessment[0]) === null || _d === void 0 ? void 0 : _d.assessmentIds) === null || _e === void 0 ? void 0 : _e.length)) {
3713
+ if ((res === null || res === void 0 ? void 0 : res.assessment) &&
3714
+ ((_a = res === null || res === void 0 ? void 0 : res.assessment) === null || _a === void 0 ? void 0 : _a.length) &&
3715
+ ((_c = Object.keys((_b = this.responsibilityForm) === null || _b === void 0 ? void 0 : _b.assessment)) === null || _c === void 0 ? void 0 : _c.length)) {
3716
+ const categoryAssessment = res === null || res === void 0 ? void 0 : res.assessment.filter((assessment) => {
3717
+ var _a, _b;
3718
+ return ((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.assessment) === null || _b === void 0 ? void 0 : _b.category_id) ===
3719
+ (assessment === null || assessment === void 0 ? void 0 : assessment.category_id);
3720
+ });
3721
+ if ((categoryAssessment === null || categoryAssessment === void 0 ? void 0 : categoryAssessment.length) &&
3722
+ ((_e = (_d = categoryAssessment[0]) === null || _d === void 0 ? void 0 : _d.assessmentIds) === null || _e === void 0 ? void 0 : _e.length)) {
3667
3723
  const isExist = (_g = (_f = categoryAssessment[0]) === null || _f === void 0 ? void 0 : _f.assessmentIds) === null || _g === void 0 ? void 0 : _g.includes((_j = (_h = this.responsibilityForm) === null || _h === void 0 ? void 0 : _h.assessment) === null || _j === void 0 ? void 0 : _j.assessment_id);
3668
3724
  if (!isExist) {
3669
- this.responsibilityForm.assessment = { assessment_id: "", category_id: "" };
3725
+ this.responsibilityForm.assessment = {
3726
+ assessment_id: '',
3727
+ category_id: '',
3728
+ };
3670
3729
  }
3671
3730
  }
3672
3731
  else {
3673
- this.responsibilityForm.assessment = { assessment_id: "", category_id: "" };
3732
+ this.responsibilityForm.assessment = {
3733
+ assessment_id: '',
3734
+ category_id: '',
3735
+ };
3674
3736
  }
3675
3737
  }
3676
3738
  this.loader = false;
@@ -3697,7 +3759,7 @@ class WorkflowComplianceComponent {
3697
3759
  this.refreshAllLists();
3698
3760
  }
3699
3761
  this.assignorsListLoaded = true;
3700
- }, err => {
3762
+ }, (err) => {
3701
3763
  console.error(err);
3702
3764
  this.assignorsListLoaded = true;
3703
3765
  this.assignorsListLoader = false;
@@ -3729,7 +3791,7 @@ class WorkflowComplianceComponent {
3729
3791
  this.refreshAllLists();
3730
3792
  }
3731
3793
  this.assigneesListLoaded = true;
3732
- }, err => {
3794
+ }, (err) => {
3733
3795
  console.error(err);
3734
3796
  this.assigneesListLoaded = true;
3735
3797
  this.userListLoader = false;
@@ -3768,10 +3830,14 @@ class WorkflowComplianceComponent {
3768
3830
  reviewersList: [...new Set(this.reviewersList)],
3769
3831
  overseersList: [...new Set(this.overseersList)],
3770
3832
  };
3771
- if (((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_assignee_ids) || ((_c = this.responsibilityForm.assignees.list) === null || _c === void 0 ? void 0 : _c.length)) {
3833
+ if (((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_assignee_ids) ||
3834
+ ((_c = this.responsibilityForm.assignees.list) === null || _c === void 0 ? void 0 : _c.length)) {
3772
3835
  if ((_d = this.responsibilityForm.assignees.list) === null || _d === void 0 ? void 0 : _d.length) {
3773
3836
  const ids = this.returnIds(this.responsibilityForm.assignees.list, 'my_member_id');
3774
- const allIds = [...new Set(ids), ...new Set((_f = (_e = this.responsibilityForm) === null || _e === void 0 ? void 0 : _e.program[0]) === null || _f === void 0 ? void 0 : _f.default_assignee_ids)];
3837
+ const allIds = [
3838
+ ...new Set(ids),
3839
+ ...new Set((_f = (_e = this.responsibilityForm) === null || _e === void 0 ? void 0 : _e.program[0]) === null || _f === void 0 ? void 0 : _f.default_assignee_ids),
3840
+ ];
3775
3841
  const assignors = this.assigneesList.filter((element) => allIds === null || allIds === void 0 ? void 0 : allIds.includes(element === null || element === void 0 ? void 0 : element.my_member_id));
3776
3842
  if (assignors === null || assignors === void 0 ? void 0 : assignors.length) {
3777
3843
  this.responsibilityForm.assignees.list = assignors;
@@ -3781,7 +3847,10 @@ class WorkflowComplianceComponent {
3781
3847
  }
3782
3848
  }
3783
3849
  else {
3784
- const assignors = this.assigneesList.filter((element) => { var _a, _b, _c; return (_c = (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_assignee_ids) === null || _c === void 0 ? void 0 : _c.includes(element === null || element === void 0 ? void 0 : element.my_member_id); });
3850
+ const assignors = this.assigneesList.filter((element) => {
3851
+ var _a, _b, _c;
3852
+ return (_c = (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_assignee_ids) === null || _c === void 0 ? void 0 : _c.includes(element === null || element === void 0 ? void 0 : element.my_member_id);
3853
+ });
3785
3854
  if (assignors === null || assignors === void 0 ? void 0 : assignors.length) {
3786
3855
  this.responsibilityForm.assignees.list = assignors;
3787
3856
  }
@@ -3794,12 +3863,19 @@ class WorkflowComplianceComponent {
3794
3863
  this.populateProgramAssigneeGroup();
3795
3864
  }
3796
3865
  const checkedMoreOptions = [];
3797
- if (((_h = (_g = this.responsibilityForm) === null || _g === void 0 ? void 0 : _g.program[0]) === null || _h === void 0 ? void 0 : _h.default_reviewers) || ((_l = (_k = (_j = this.responsibilityForm) === null || _j === void 0 ? void 0 : _j.reviewers) === null || _k === void 0 ? void 0 : _k.list) === null || _l === void 0 ? void 0 : _l.length) || ((_p = (_o = (_m = this.responsibilityForm) === null || _m === void 0 ? void 0 : _m.groupReviewers) === null || _o === void 0 ? void 0 : _o.list) === null || _p === void 0 ? void 0 : _p.length)) {
3866
+ if (((_h = (_g = this.responsibilityForm) === null || _g === void 0 ? void 0 : _g.program[0]) === null || _h === void 0 ? void 0 : _h.default_reviewers) ||
3867
+ ((_l = (_k = (_j = this.responsibilityForm) === null || _j === void 0 ? void 0 : _j.reviewers) === null || _k === void 0 ? void 0 : _k.list) === null || _l === void 0 ? void 0 : _l.length) ||
3868
+ ((_p = (_o = (_m = this.responsibilityForm) === null || _m === void 0 ? void 0 : _m.groupReviewers) === null || _o === void 0 ? void 0 : _o.list) === null || _p === void 0 ? void 0 : _p.length)) {
3798
3869
  const ids = this.returnIds(this.responsibilityForm.reviewers.list, 'my_member_id');
3799
- const allIds = [...new Set(ids), ...new Set(this.responsibilityForm.program[0].default_reviewers)];
3870
+ const allIds = [
3871
+ ...new Set(ids),
3872
+ ...new Set(this.responsibilityForm.program[0].default_reviewers),
3873
+ ];
3800
3874
  const reviewers = this.reviewersList.filter((element) => allIds === null || allIds === void 0 ? void 0 : allIds.includes(element === null || element === void 0 ? void 0 : element.my_member_id));
3801
3875
  // const reviewers = this.reviewersList.filter((element: any) => this.responsibilityForm.program[0].default_reviewers?.includes(element?.my_member_id));
3802
- if (((reviewers === null || reviewers === void 0 ? void 0 : reviewers.length) || (this.featureFlag_groups && ((_s = (_r = (_q = this.responsibilityForm) === null || _q === void 0 ? void 0 : _q.groupReviewers) === null || _r === void 0 ? void 0 : _r.list) === null || _s === void 0 ? void 0 : _s.length) > 0))) {
3876
+ if ((reviewers === null || reviewers === void 0 ? void 0 : reviewers.length) ||
3877
+ (this.featureFlag_groups &&
3878
+ ((_s = (_r = (_q = this.responsibilityForm) === null || _q === void 0 ? void 0 : _q.groupReviewers) === null || _r === void 0 ? void 0 : _r.list) === null || _s === void 0 ? void 0 : _s.length) > 0)) {
3803
3879
  this.responsibilityForm.reviewers.list = reviewers;
3804
3880
  this.responsibilityForm.reviewers.list = reviewers;
3805
3881
  if (this.featureFlag_groups) {
@@ -3817,13 +3893,21 @@ class WorkflowComplianceComponent {
3817
3893
  if (this.featureFlag_groups) {
3818
3894
  this.populateProgramReviewerGroup();
3819
3895
  }
3820
- if (this.responsibilityForm.program[0].default_overseers || ((_v = (_u = (_t = this.responsibilityForm) === null || _t === void 0 ? void 0 : _t.overseers) === null || _u === void 0 ? void 0 : _u.list) === null || _v === void 0 ? void 0 : _v.length) || ((_y = (_x = (_w = this.responsibilityForm) === null || _w === void 0 ? void 0 : _w.overseers) === null || _x === void 0 ? void 0 : _x.notifyList) === null || _y === void 0 ? void 0 : _y.length)) {
3896
+ if (this.responsibilityForm.program[0].default_overseers ||
3897
+ ((_v = (_u = (_t = this.responsibilityForm) === null || _t === void 0 ? void 0 : _t.overseers) === null || _u === void 0 ? void 0 : _u.list) === null || _v === void 0 ? void 0 : _v.length) ||
3898
+ ((_y = (_x = (_w = this.responsibilityForm) === null || _w === void 0 ? void 0 : _w.overseers) === null || _x === void 0 ? void 0 : _x.notifyList) === null || _y === void 0 ? void 0 : _y.length)) {
3821
3899
  const ids = this.returnIds((_0 = (_z = this.responsibilityForm) === null || _z === void 0 ? void 0 : _z.overseers) === null || _0 === void 0 ? void 0 : _0.list, 'my_member_id');
3822
- const allDefaultCCIds = [...new Set(ids), ...new Set((_3 = (_2 = (_1 = this.responsibilityForm) === null || _1 === void 0 ? void 0 : _1.program[0]) === null || _2 === void 0 ? void 0 : _2.default_overseers) === null || _3 === void 0 ? void 0 : _3.cc_email)];
3900
+ const allDefaultCCIds = [
3901
+ ...new Set(ids),
3902
+ ...new Set((_3 = (_2 = (_1 = this.responsibilityForm) === null || _1 === void 0 ? void 0 : _1.program[0]) === null || _2 === void 0 ? void 0 : _2.default_overseers) === null || _3 === void 0 ? void 0 : _3.cc_email),
3903
+ ];
3823
3904
  const overseersCC = (_4 = this.overseersList) === null || _4 === void 0 ? void 0 : _4.filter((element) => allDefaultCCIds === null || allDefaultCCIds === void 0 ? void 0 : allDefaultCCIds.includes(element === null || element === void 0 ? void 0 : element.my_member_id));
3824
3905
  // const overseers = this.overseersList.filter((element: any) => this.responsibilityForm.program[0].default_overseers.cc_email.includes(element.my_member_id));
3825
3906
  const notifyListIds = this.returnIds(this.responsibilityForm.overseers.notifyList, 'my_member_id');
3826
- const allDefaultCCFailureIds = [...new Set(notifyListIds), ...new Set((_7 = (_6 = (_5 = this.responsibilityForm) === null || _5 === void 0 ? void 0 : _5.program[0]) === null || _6 === void 0 ? void 0 : _6.default_overseers) === null || _7 === void 0 ? void 0 : _7.failure_cc_email)];
3907
+ const allDefaultCCFailureIds = [
3908
+ ...new Set(notifyListIds),
3909
+ ...new Set((_7 = (_6 = (_5 = this.responsibilityForm) === null || _5 === void 0 ? void 0 : _5.program[0]) === null || _6 === void 0 ? void 0 : _6.default_overseers) === null || _7 === void 0 ? void 0 : _7.failure_cc_email),
3910
+ ];
3827
3911
  const overseersCCFailure = (_8 = this.overseersList) === null || _8 === void 0 ? void 0 : _8.filter((element) => allDefaultCCFailureIds === null || allDefaultCCFailureIds === void 0 ? void 0 : allDefaultCCFailureIds.includes(element === null || element === void 0 ? void 0 : element.my_member_id));
3828
3912
  // const notifyOverseers = this.overseersList.filter((element: any) => this.responsibilityForm.program[0].default_overseers.failure_cc_email.includes(element.my_member_id));
3829
3913
  // if (overseers?.length) {
@@ -3847,7 +3931,8 @@ class WorkflowComplianceComponent {
3847
3931
  if (overseersCCFailure === null || overseersCCFailure === void 0 ? void 0 : overseersCCFailure.length) {
3848
3932
  this.responsibilityForm.overseers.notifyList = overseersCCFailure;
3849
3933
  if (this.featureFlag_groups) {
3850
- this.responsibilityForm.overseers.notifyList = this.assignUserMemberId(this.responsibilityForm.overseers.notifyList);
3934
+ this.responsibilityForm.overseers.notifyList =
3935
+ this.assignUserMemberId(this.responsibilityForm.overseers.notifyList);
3851
3936
  }
3852
3937
  this.moreOptions.OVERSEER = true;
3853
3938
  }
@@ -3868,7 +3953,7 @@ class WorkflowComplianceComponent {
3868
3953
  }
3869
3954
  }
3870
3955
  this.populateOption.emit(checkedMoreOptions);
3871
- }, err => {
3956
+ }, (err) => {
3872
3957
  this.userListLoader = false;
3873
3958
  console.error(err);
3874
3959
  }, () => {
@@ -3881,7 +3966,10 @@ class WorkflowComplianceComponent {
3881
3966
  if (program_id) {
3882
3967
  params = params.append('program_ids', program_id);
3883
3968
  }
3884
- this.responsibilityService.getOrganizationGroups(params).pipe(takeUntil(this.unSubscribeProgram)).subscribe((res) => {
3969
+ this.responsibilityService
3970
+ .getOrganizationGroups(params)
3971
+ .pipe(takeUntil(this.unSubscribeProgram))
3972
+ .subscribe((res) => {
3885
3973
  var _a, _b, _c, _d, _e;
3886
3974
  const data = res !== null && res !== void 0 ? res : [];
3887
3975
  if (!program_id) {
@@ -3899,20 +3987,29 @@ class WorkflowComplianceComponent {
3899
3987
  }
3900
3988
  this.groupsList = groups;
3901
3989
  this.groupsListLoaded = true;
3902
- if (this.featureFlag_groups && ((_a = this.OrgGroup) === null || _a === void 0 ? void 0 : _a.length) && ((_b = this.responsibilityForm.program) === null || _b === void 0 ? void 0 : _b.length) && program_id) {
3990
+ if (this.featureFlag_groups &&
3991
+ ((_a = this.OrgGroup) === null || _a === void 0 ? void 0 : _a.length) &&
3992
+ ((_b = this.responsibilityForm.program) === null || _b === void 0 ? void 0 : _b.length) &&
3993
+ program_id) {
3903
3994
  this.refreshListsWhileProgramSelected();
3904
3995
  }
3905
3996
  else {
3906
3997
  this.refreshAllLists();
3907
3998
  }
3908
- if (((_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.program[0]) === null || _d === void 0 ? void 0 : _d.default_assignee_group_ids) && program_id) {
3909
- const selectedGroups = data.filter((element) => { var _a; return (_a = this.responsibilityForm.program[0].default_assignee_group_ids) === null || _a === void 0 ? void 0 : _a.includes(element.group_id); });
3999
+ if (((_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.program[0]) === null || _d === void 0 ? void 0 : _d.default_assignee_group_ids) &&
4000
+ program_id) {
4001
+ const selectedGroups = data.filter((element) => {
4002
+ var _a;
4003
+ return (_a = this.responsibilityForm.program[0].default_assignee_group_ids) === null || _a === void 0 ? void 0 : _a.includes(element.group_id);
4004
+ });
3910
4005
  if (groups === null || groups === void 0 ? void 0 : groups.length) {
3911
4006
  let memberIds = [];
3912
4007
  selectedGroups.forEach((eachGroup) => {
3913
4008
  var _a;
3914
4009
  if ((_a = eachGroup === null || eachGroup === void 0 ? void 0 : eachGroup.member_ids) === null || _a === void 0 ? void 0 : _a.length) {
3915
- memberIds = [...new Set(memberIds.concat(eachGroup === null || eachGroup === void 0 ? void 0 : eachGroup.member_ids))];
4010
+ memberIds = [
4011
+ ...new Set(memberIds.concat(eachGroup === null || eachGroup === void 0 ? void 0 : eachGroup.member_ids)),
4012
+ ];
3916
4013
  }
3917
4014
  });
3918
4015
  if ((_e = this.responsibilityForm.assignees.list) === null || _e === void 0 ? void 0 : _e.length) {
@@ -3931,7 +4028,7 @@ class WorkflowComplianceComponent {
3931
4028
  }
3932
4029
  }
3933
4030
  }
3934
- }, err => {
4031
+ }, (err) => {
3935
4032
  console.error(err);
3936
4033
  this.groupsListLoaded = true;
3937
4034
  });
@@ -3950,58 +4047,85 @@ class WorkflowComplianceComponent {
3950
4047
  member_id: currentUser.id,
3951
4048
  member_name: currentUser.name,
3952
4049
  organisation_id: currentUser.organisation_id,
3953
- _id: this.authService.getUserDetails()._id
4050
+ _id: this.authService.getUserDetails()._id,
3954
4051
  };
3955
- const testPlanCategory = typeof (res === null || res === void 0 ? void 0 : res.testplan_category_id) === 'string' ? [] : res === null || res === void 0 ? void 0 : res.testplan_category_id;
3956
- const requiredAuditCategoryId = ((_b = res === null || res === void 0 ? void 0 : res.audit_category_details) === null || _b === void 0 ? void 0 : _b.category_id) ? [(_c = res === null || res === void 0 ? void 0 : res.audit_category_details) === null || _c === void 0 ? void 0 : _c.category_id] : [];
4052
+ const testPlanCategory = typeof (res === null || res === void 0 ? void 0 : res.testplan_category_id) === 'string'
4053
+ ? []
4054
+ : res === null || res === void 0 ? void 0 : res.testplan_category_id;
4055
+ const requiredAuditCategoryId = ((_b = res === null || res === void 0 ? void 0 : res.audit_category_details) === null || _b === void 0 ? void 0 : _b.category_id)
4056
+ ? [(_c = res === null || res === void 0 ? void 0 : res.audit_category_details) === null || _c === void 0 ? void 0 : _c.category_id]
4057
+ : [];
3957
4058
  const reviewerDetails = Object.keys(res === null || res === void 0 ? void 0 : res.reviewer_arr);
3958
4059
  this.hasReviewer = (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0;
3959
- this.assigneeRadioSelect = (((_d = res === null || res === void 0 ? void 0 : res.assigned_to_member_id) === null || _d === void 0 ? void 0 : _d.length) == 0) ? true : false;
4060
+ this.assigneeRadioSelect =
4061
+ ((_d = res === null || res === void 0 ? void 0 : res.assigned_to_member_id) === null || _d === void 0 ? void 0 : _d.length) == 0 ? true : false;
3960
4062
  this.isEntrust = res.isGroupAssignTo ? true : false;
3961
4063
  let linkage = res === null || res === void 0 ? void 0 : res.linkedProgramDetails;
3962
4064
  linkage.push(res === null || res === void 0 ? void 0 : res.programDetails);
3963
4065
  this.responsibilityForm = {
3964
4066
  assignors: {
3965
4067
  enable: false,
3966
- list: ((_e = this.setList(this.assignorsList, [res.member_id], 'member_id')) === null || _e === void 0 ? void 0 : _e.length) > 0 ? this.setList(this.assignorsList, [res.member_id], 'member_id') : [currentsUerInfo],
4068
+ list: ((_e = this.setList(this.assignorsList, [res.member_id], 'member_id')) === null || _e === void 0 ? void 0 : _e.length) > 0
4069
+ ? this.setList(this.assignorsList, [res.member_id], 'member_id')
4070
+ : [currentsUerInfo],
3967
4071
  },
3968
4072
  responsibility: {
3969
4073
  name: res === null || res === void 0 ? void 0 : res.report_name,
3970
4074
  keyResponsibility: res === null || res === void 0 ? void 0 : res.key_compliance,
3971
4075
  },
3972
4076
  assignees: {
3973
- whoCanComplete: (res.isGroupAssignTo) ? 'ANY_ONE' : 'ALL',
3974
- list: (((_f = res.assigned_to_member_id) === null || _f === void 0 ? void 0 : _f.length) == 0) ? this.setList(this.assigneesList, [Number(res.assigned_to)], 'employee_id') :
3975
- this.setList(this.assigneesList, res.assigned_to_member_id, 'my_member_id'),
4077
+ whoCanComplete: res.isGroupAssignTo ? 'ANY_ONE' : 'ALL',
4078
+ list: ((_f = res.assigned_to_member_id) === null || _f === void 0 ? void 0 : _f.length) == 0
4079
+ ? this.setList(this.assigneesList, [Number(res.assigned_to)], 'employee_id')
4080
+ : this.setList(this.assigneesList, res.assigned_to_member_id, 'my_member_id'),
3976
4081
  },
3977
4082
  frequency: res === null || res === void 0 ? void 0 : res.frequency_details,
3978
4083
  description: res === null || res === void 0 ? void 0 : res.remarks,
3979
4084
  objective: res === null || res === void 0 ? void 0 : res.objective,
3980
4085
  rc: this.setList(this.responsibilityCentersList, [Number(res === null || res === void 0 ? void 0 : res.rc_id)], 'rc_id'),
3981
- responsibilityCenterType: (this.isResponsibilityRcLinkEnabled && (res === null || res === void 0 ? void 0 : res.responsibilityCenterType)) ? parseInt(res === null || res === void 0 ? void 0 : res.responsibilityCenterType) : 0,
3982
- category: ((_g = res === null || res === void 0 ? void 0 : res.program_cat_ids) === null || _g === void 0 ? void 0 : _g.length) ? res === null || res === void 0 ? void 0 : res.category_ids_array.filter((ele) => { var _a; return !((_a = res.program_cat_ids) === null || _a === void 0 ? void 0 : _a.includes(ele)); }) : res === null || res === void 0 ? void 0 : res.category_ids_array,
4086
+ responsibilityCenterType: this.isResponsibilityRcLinkEnabled && (res === null || res === void 0 ? void 0 : res.responsibilityCenterType)
4087
+ ? parseInt(res === null || res === void 0 ? void 0 : res.responsibilityCenterType)
4088
+ : 0,
4089
+ category: ((_g = res === null || res === void 0 ? void 0 : res.program_cat_ids) === null || _g === void 0 ? void 0 : _g.length)
4090
+ ? res === null || res === void 0 ? void 0 : res.category_ids_array.filter((ele) => { var _a; return !((_a = res.program_cat_ids) === null || _a === void 0 ? void 0 : _a.includes(ele)); })
4091
+ : res === null || res === void 0 ? void 0 : res.category_ids_array,
3983
4092
  program_selected_ids: (_h = res === null || res === void 0 ? void 0 : res.category_id.split(',')) !== null && _h !== void 0 ? _h : [],
3984
4093
  category_id: (_j = res === null || res === void 0 ? void 0 : res.category_id) !== null && _j !== void 0 ? _j : '',
3985
4094
  linkedProgram: linkage !== null && linkage !== void 0 ? linkage : res === null || res === void 0 ? void 0 : res.linkedProgramDetails,
3986
- program: ((_k = res === null || res === void 0 ? void 0 : res.programDetails) === null || _k === void 0 ? void 0 : _k.category_id) ? [res === null || res === void 0 ? void 0 : res.programDetails] : [],
4095
+ program: ((_k = res === null || res === void 0 ? void 0 : res.programDetails) === null || _k === void 0 ? void 0 : _k.category_id)
4096
+ ? [res === null || res === void 0 ? void 0 : res.programDetails]
4097
+ : [],
3987
4098
  checkpointInstruction: res === null || res === void 0 ? void 0 : res.checkpoint_description,
3988
4099
  customTags: (res === null || res === void 0 ? void 0 : res.custom_tags) ? JSON.parse(res === null || res === void 0 ? void 0 : res.custom_tags) : '',
3989
- checkpoints: (res === null || res === void 0 ? void 0 : res.checkpoint_details) ? JSON.parse(res === null || res === void 0 ? void 0 : res.checkpoint_details) : '',
4100
+ checkpoints: (res === null || res === void 0 ? void 0 : res.checkpoint_details)
4101
+ ? JSON.parse(res === null || res === void 0 ? void 0 : res.checkpoint_details)
4102
+ : '',
3990
4103
  reviewers: {
3991
- sequentialWorkflow: (((_m = (_l = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _l === void 0 ? void 0 : _l.level1) === null || _m === void 0 ? void 0 : _m.type) == 'SEQUENTIAL') ? true : false,
4104
+ sequentialWorkflow: ((_m = (_l = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _l === void 0 ? void 0 : _l.level1) === null || _m === void 0 ? void 0 : _m.type) == 'SEQUENTIAL' ? true : false,
3992
4105
  reviewFrequency: {
3993
- reviewCompleteDays: ((reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0) ? res === null || res === void 0 ? void 0 : res.review_after_days : 2,
3994
- reviewNOtCompletedDays: ((reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0) ? res === null || res === void 0 ? void 0 : res.review_failed_after_days : 2
4106
+ reviewCompleteDays: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0 ? res === null || res === void 0 ? void 0 : res.review_after_days : 2,
4107
+ reviewNOtCompletedDays: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0 ? res === null || res === void 0 ? void 0 : res.review_failed_after_days : 2,
3995
4108
  },
3996
- acceptedData: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0 ? (_p = (_o = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _o === void 0 ? void 0 : _o.level1) === null || _p === void 0 ? void 0 : _p.reviewers : [],
3997
- list: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0 ? this.setReviewerPayload((_r = (_q = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _q === void 0 ? void 0 : _q.level1) === null || _r === void 0 ? void 0 : _r.reviewers, 'object', (_t = (_s = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _s === void 0 ? void 0 : _s.level1) === null || _t === void 0 ? void 0 : _t.type) : []
4109
+ acceptedData: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0
4110
+ ? (_p = (_o = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _o === void 0 ? void 0 : _o.level1) === null || _p === void 0 ? void 0 : _p.reviewers
4111
+ : [],
4112
+ list: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0
4113
+ ? this.setReviewerPayload((_r = (_q = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _q === void 0 ? void 0 : _q.level1) === null || _r === void 0 ? void 0 : _r.reviewers, 'object', (_t = (_s = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _s === void 0 ? void 0 : _s.level1) === null || _t === void 0 ? void 0 : _t.type)
4114
+ : [],
3998
4115
  },
3999
4116
  overseers: {
4000
- list: (res === null || res === void 0 ? void 0 : res.cc_email) ? this.setList(this.overseersList, Object.keys(res === null || res === void 0 ? void 0 : res.cc_email).map(Number), 'employee_id') : [],
4001
- notifyList: (res === null || res === void 0 ? void 0 : res.failure_cc_email) ? this.setList(this.overseersList, Object.keys(res === null || res === void 0 ? void 0 : res.failure_cc_email).map(Number), 'employee_id') : [],
4117
+ list: (res === null || res === void 0 ? void 0 : res.cc_email)
4118
+ ? this.setList(this.overseersList, Object.keys(res === null || res === void 0 ? void 0 : res.cc_email).map(Number), 'employee_id')
4119
+ : [],
4120
+ notifyList: (res === null || res === void 0 ? void 0 : res.failure_cc_email)
4121
+ ? this.setList(this.overseersList, Object.keys(res === null || res === void 0 ? void 0 : res.failure_cc_email).map(Number), 'employee_id')
4122
+ : [],
4002
4123
  },
4003
4124
  formatAndEvidence: {
4004
- formatRequired: (((_u = res === null || res === void 0 ? void 0 : res.report_format) === null || _u === void 0 ? void 0 : _u.length) > 0 || ((_v = res === null || res === void 0 ? void 0 : res.link_for_details) === null || _v === void 0 ? void 0 : _v.length) > 0) ? true : false,
4125
+ formatRequired: ((_u = res === null || res === void 0 ? void 0 : res.report_format) === null || _u === void 0 ? void 0 : _u.length) > 0 ||
4126
+ ((_v = res === null || res === void 0 ? void 0 : res.link_for_details) === null || _v === void 0 ? void 0 : _v.length) > 0
4127
+ ? true
4128
+ : false,
4005
4129
  formatFiles: res === null || res === void 0 ? void 0 : res.report_format,
4006
4130
  formatLinks: res === null || res === void 0 ? void 0 : res.link_for_details,
4007
4131
  evidenceRequired: (res === null || res === void 0 ? void 0 : res.report_upload_flag) ? true : false,
@@ -4009,16 +4133,22 @@ class WorkflowComplianceComponent {
4009
4133
  assuranceList: this.setList(this.assuranceCategoriesList, testPlanCategory, 'category_id'),
4010
4134
  requiresAuditList: this.setList(this.assuranceRequiresAuditList, requiredAuditCategoryId, 'category_id'),
4011
4135
  riskClass: res === null || res === void 0 ? void 0 : res.risk_class,
4012
- riskMatrix: res === null || res === void 0 ? void 0 : res.risk_matrix_data
4136
+ riskMatrix: res === null || res === void 0 ? void 0 : res.risk_matrix_data,
4013
4137
  };
4014
4138
  if (this.featureFlag_groups) {
4015
4139
  this.populateAssigneeData(res);
4016
4140
  this.populateOverseerData(res);
4017
4141
  this.populateReviewerData(res);
4018
4142
  }
4019
- this.responsibilityCenterType = (this.isResponsibilityRcLinkEnabled && (res === null || res === void 0 ? void 0 : res.responsibilityCenterType)) ? parseInt(res === null || res === void 0 ? void 0 : res.responsibilityCenterType) : 0;
4020
- this.selectedProgram = ((_w = res === null || res === void 0 ? void 0 : res.programDetails) === null || _w === void 0 ? void 0 : _w.category_id) ? res.programDetails : undefined;
4021
- if (((_x = this.selectedProgram) === null || _x === void 0 ? void 0 : _x._id) && ((_y = this.orgDetails) === null || _y === void 0 ? void 0 : _y.hasProgramFullPermission)) {
4143
+ this.responsibilityCenterType =
4144
+ this.isResponsibilityRcLinkEnabled && (res === null || res === void 0 ? void 0 : res.responsibilityCenterType)
4145
+ ? parseInt(res === null || res === void 0 ? void 0 : res.responsibilityCenterType)
4146
+ : 0;
4147
+ this.selectedProgram = ((_w = res === null || res === void 0 ? void 0 : res.programDetails) === null || _w === void 0 ? void 0 : _w.category_id)
4148
+ ? res.programDetails
4149
+ : undefined;
4150
+ if (((_x = this.selectedProgram) === null || _x === void 0 ? void 0 : _x._id) &&
4151
+ ((_y = this.orgDetails) === null || _y === void 0 ? void 0 : _y.hasProgramFullPermission)) {
4022
4152
  this.getListsAccordingToProgram((_z = this.selectedProgram) === null || _z === void 0 ? void 0 : _z._id);
4023
4153
  }
4024
4154
  this.isNotificationPending = res.notification_pending;
@@ -4029,7 +4159,8 @@ class WorkflowComplianceComponent {
4029
4159
  this.actionButtons[1].buttonText = 'View Responsibilities';
4030
4160
  }
4031
4161
  // 5~0~0~0 this is for other frequency
4032
- if (res.frequency_details !== '' && res.frequency_details !== '5~0~0~0') {
4162
+ if (res.frequency_details !== '' &&
4163
+ res.frequency_details !== '5~0~0~0') {
4033
4164
  this.frequencyDataPopulation(res);
4034
4165
  this.getFrequencyPlaceholder(res);
4035
4166
  res.placeholder = this.frequencyPlaceholder;
@@ -4043,7 +4174,10 @@ class WorkflowComplianceComponent {
4043
4174
  this.organizationId = this.authService.getOrganizationId();
4044
4175
  this.memberId = this.authService.getMemberId();
4045
4176
  }
4046
- if ((((_0 = this.responsibilityForm.assignees.list) === null || _0 === void 0 ? void 0 : _0.length) === 0 && (!this.featureFlag_groups || (((_2 = (_1 = this.responsibilityForm) === null || _1 === void 0 ? void 0 : _1.assigneeGroups.list) === null || _2 === void 0 ? void 0 : _2.length) === 0 && this.featureFlag_groups)))) {
4177
+ if (((_0 = this.responsibilityForm.assignees.list) === null || _0 === void 0 ? void 0 : _0.length) === 0 &&
4178
+ (!this.featureFlag_groups ||
4179
+ (((_2 = (_1 = this.responsibilityForm) === null || _1 === void 0 ? void 0 : _1.assigneeGroups.list) === null || _2 === void 0 ? void 0 : _2.length) === 0 &&
4180
+ this.featureFlag_groups))) {
4047
4181
  this.isEntrust = true;
4048
4182
  this.mode = 'CREATE';
4049
4183
  this.assigneeRadioSelect = false;
@@ -4060,7 +4194,9 @@ class WorkflowComplianceComponent {
4060
4194
  if ((res === null || res === void 0 ? void 0 : res.rc_id) > 0) {
4061
4195
  this.rcSelected.emit(true);
4062
4196
  }
4063
- if (this.isResponsibilityRcLinkEnabled && ((_3 = res === null || res === void 0 ? void 0 : res.responsibilityCenterArr) === null || _3 === void 0 ? void 0 : _3.length) && (res === null || res === void 0 ? void 0 : res.responsibilityCenterType) === 1) {
4197
+ if (this.isResponsibilityRcLinkEnabled &&
4198
+ ((_3 = res === null || res === void 0 ? void 0 : res.responsibilityCenterArr) === null || _3 === void 0 ? void 0 : _3.length) &&
4199
+ (res === null || res === void 0 ? void 0 : res.responsibilityCenterType) === 1) {
4064
4200
  this.responsibilityForm.rc = this.setList(this.responsibilityCentersList, res.responsibilityCenterArr, 'rc_id');
4065
4201
  this.rcSelected.emit(true);
4066
4202
  }
@@ -4073,7 +4209,7 @@ class WorkflowComplianceComponent {
4073
4209
  sample: 0,
4074
4210
  percentage: 0,
4075
4211
  frequency_pattern: '',
4076
- frequency_time: ''
4212
+ frequency_time: '',
4077
4213
  };
4078
4214
  }
4079
4215
  if ((_4 = res.assessment) === null || _4 === void 0 ? void 0 : _4.assessment_id) {
@@ -4102,16 +4238,22 @@ class WorkflowComplianceComponent {
4102
4238
  return data;
4103
4239
  }
4104
4240
  returnIds(list, key) {
4105
- return list === null || list === void 0 ? void 0 : list.map(ele => { if (ele[key]) {
4106
- return ele[key];
4107
- } }).filter(ele => ele);
4241
+ return list === null || list === void 0 ? void 0 : list.map((ele) => {
4242
+ if (ele[key]) {
4243
+ return ele[key];
4244
+ }
4245
+ }).filter((ele) => ele);
4108
4246
  }
4109
4247
  populateProgramAssigneeGroup() {
4110
4248
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
4111
- if (((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_assignee_group_ids) || ((_e = (_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.assigneeGroups) === null || _d === void 0 ? void 0 : _d.list) === null || _e === void 0 ? void 0 : _e.length)) {
4249
+ if (((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_assignee_group_ids) ||
4250
+ ((_e = (_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.assigneeGroups) === null || _d === void 0 ? void 0 : _d.list) === null || _e === void 0 ? void 0 : _e.length)) {
4112
4251
  if ((_h = (_g = (_f = this.responsibilityForm) === null || _f === void 0 ? void 0 : _f.assigneeGroups) === null || _g === void 0 ? void 0 : _g.list) === null || _h === void 0 ? void 0 : _h.length) {
4113
4252
  const ids = this.returnIds((_k = (_j = this.responsibilityForm) === null || _j === void 0 ? void 0 : _j.assigneeGroups) === null || _k === void 0 ? void 0 : _k.list, 'group_id');
4114
- const allIds = [...new Set(ids), ...new Set((_m = (_l = this.responsibilityForm) === null || _l === void 0 ? void 0 : _l.program[0]) === null || _m === void 0 ? void 0 : _m.default_assignee_group_ids)];
4253
+ const allIds = [
4254
+ ...new Set(ids),
4255
+ ...new Set((_m = (_l = this.responsibilityForm) === null || _l === void 0 ? void 0 : _l.program[0]) === null || _m === void 0 ? void 0 : _m.default_assignee_group_ids),
4256
+ ];
4115
4257
  const assigneeGroups = (_o = this.groupAssigneeList) === null || _o === void 0 ? void 0 : _o.filter((element) => allIds === null || allIds === void 0 ? void 0 : allIds.includes(element === null || element === void 0 ? void 0 : element.group_id));
4116
4258
  if (assigneeGroups === null || assigneeGroups === void 0 ? void 0 : assigneeGroups.length) {
4117
4259
  this.responsibilityForm.assigneeGroups.list = assigneeGroups;
@@ -4121,7 +4263,10 @@ class WorkflowComplianceComponent {
4121
4263
  }
4122
4264
  }
4123
4265
  else {
4124
- const assigneeGroups = (_p = this.groupAssigneeList) === null || _p === void 0 ? void 0 : _p.filter((element) => { var _a, _b, _c; return (_c = (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_assignee_group_ids) === null || _c === void 0 ? void 0 : _c.includes(element === null || element === void 0 ? void 0 : element.group_id); });
4266
+ const assigneeGroups = (_p = this.groupAssigneeList) === null || _p === void 0 ? void 0 : _p.filter((element) => {
4267
+ var _a, _b, _c;
4268
+ return (_c = (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_assignee_group_ids) === null || _c === void 0 ? void 0 : _c.includes(element === null || element === void 0 ? void 0 : element.group_id);
4269
+ });
4125
4270
  if (assigneeGroups === null || assigneeGroups === void 0 ? void 0 : assigneeGroups.length) {
4126
4271
  this.responsibilityForm.assigneeGroups.list = assigneeGroups;
4127
4272
  }
@@ -4133,13 +4278,22 @@ class WorkflowComplianceComponent {
4133
4278
  }
4134
4279
  populateProgramOverseerGroup() {
4135
4280
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2;
4136
- if (((_c = (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_overseers) === null || _c === void 0 ? void 0 : _c.cc_email_groups) || ((_f = (_e = (_d = this.responsibilityForm) === null || _d === void 0 ? void 0 : _d.overseersGroups) === null || _e === void 0 ? void 0 : _e.notifyList) === null || _f === void 0 ? void 0 : _f.length) || ((_j = (_h = (_g = this.responsibilityForm) === null || _g === void 0 ? void 0 : _g.overseersGroups) === null || _h === void 0 ? void 0 : _h.list) === null || _j === void 0 ? void 0 : _j.length) || ((_m = (_l = (_k = this.responsibilityForm) === null || _k === void 0 ? void 0 : _k.program[0]) === null || _l === void 0 ? void 0 : _l.default_overseers) === null || _m === void 0 ? void 0 : _m.failure_cc_email_groups)) {
4281
+ if (((_c = (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_overseers) === null || _c === void 0 ? void 0 : _c.cc_email_groups) ||
4282
+ ((_f = (_e = (_d = this.responsibilityForm) === null || _d === void 0 ? void 0 : _d.overseersGroups) === null || _e === void 0 ? void 0 : _e.notifyList) === null || _f === void 0 ? void 0 : _f.length) ||
4283
+ ((_j = (_h = (_g = this.responsibilityForm) === null || _g === void 0 ? void 0 : _g.overseersGroups) === null || _h === void 0 ? void 0 : _h.list) === null || _j === void 0 ? void 0 : _j.length) ||
4284
+ ((_m = (_l = (_k = this.responsibilityForm) === null || _k === void 0 ? void 0 : _k.program[0]) === null || _l === void 0 ? void 0 : _l.default_overseers) === null || _m === void 0 ? void 0 : _m.failure_cc_email_groups)) {
4137
4285
  if ((_q = (_p = (_o = this.responsibilityForm) === null || _o === void 0 ? void 0 : _o.overseersGroups) === null || _p === void 0 ? void 0 : _p.list) === null || _q === void 0 ? void 0 : _q.length) {
4138
4286
  const ids = this.returnIds((_s = (_r = this.responsibilityForm) === null || _r === void 0 ? void 0 : _r.overseersGroups) === null || _s === void 0 ? void 0 : _s.list, 'group_id');
4139
- const allDefaultCCGroupIds = [...new Set(ids), ...new Set((_v = (_u = (_t = this.responsibilityForm) === null || _t === void 0 ? void 0 : _t.program[0]) === null || _u === void 0 ? void 0 : _u.default_overseers) === null || _v === void 0 ? void 0 : _v.cc_email_groups)];
4287
+ const allDefaultCCGroupIds = [
4288
+ ...new Set(ids),
4289
+ ...new Set((_v = (_u = (_t = this.responsibilityForm) === null || _t === void 0 ? void 0 : _t.program[0]) === null || _u === void 0 ? void 0 : _u.default_overseers) === null || _v === void 0 ? void 0 : _v.cc_email_groups),
4290
+ ];
4140
4291
  const overseersCCGroup = (_w = this.groupOverseerList) === null || _w === void 0 ? void 0 : _w.filter((element) => allDefaultCCGroupIds === null || allDefaultCCGroupIds === void 0 ? void 0 : allDefaultCCGroupIds.includes(element === null || element === void 0 ? void 0 : element.group_id));
4141
4292
  const notifyListIds = this.returnIds(this.responsibilityForm.overseersGroups.notifyList, 'group_id');
4142
- const allDefaultCCFailureGroupIds = [...new Set(notifyListIds), ...new Set((_z = (_y = (_x = this.responsibilityForm) === null || _x === void 0 ? void 0 : _x.program[0]) === null || _y === void 0 ? void 0 : _y.default_overseers) === null || _z === void 0 ? void 0 : _z.failure_cc_email_groups)];
4293
+ const allDefaultCCFailureGroupIds = [
4294
+ ...new Set(notifyListIds),
4295
+ ...new Set((_z = (_y = (_x = this.responsibilityForm) === null || _x === void 0 ? void 0 : _x.program[0]) === null || _y === void 0 ? void 0 : _y.default_overseers) === null || _z === void 0 ? void 0 : _z.failure_cc_email_groups),
4296
+ ];
4143
4297
  const overseersCCFailureGroup = (_0 = this.groupOverseerList) === null || _0 === void 0 ? void 0 : _0.filter((element) => allDefaultCCFailureGroupIds === null || allDefaultCCFailureGroupIds === void 0 ? void 0 : allDefaultCCFailureGroupIds.includes(element === null || element === void 0 ? void 0 : element.group_id));
4144
4298
  if (overseersCCGroup === null || overseersCCGroup === void 0 ? void 0 : overseersCCGroup.length) {
4145
4299
  this.responsibilityForm.overseersGroups.list = overseersCCGroup;
@@ -4149,7 +4303,8 @@ class WorkflowComplianceComponent {
4149
4303
  this.responsibilityForm.overseersGroups.list = [];
4150
4304
  }
4151
4305
  if (overseersCCFailureGroup === null || overseersCCFailureGroup === void 0 ? void 0 : overseersCCFailureGroup.length) {
4152
- this.responsibilityForm.overseersGroups.notifyList = overseersCCFailureGroup;
4306
+ this.responsibilityForm.overseersGroups.notifyList =
4307
+ overseersCCFailureGroup;
4153
4308
  this.moreOptions.OVERSEER = true;
4154
4309
  }
4155
4310
  else {
@@ -4157,14 +4312,21 @@ class WorkflowComplianceComponent {
4157
4312
  }
4158
4313
  }
4159
4314
  else {
4160
- const overseersCCGroup = (_1 = this.groupOverseerList) === null || _1 === void 0 ? void 0 : _1.filter((element) => { var _a, _b, _c, _d; return (_d = (_c = (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_overseers) === null || _c === void 0 ? void 0 : _c.cc_email_groups) === null || _d === void 0 ? void 0 : _d.includes(element === null || element === void 0 ? void 0 : element.group_id); });
4161
- const overseersCCFailureGroup = (_2 = this.groupOverseerList) === null || _2 === void 0 ? void 0 : _2.filter((element) => { var _a, _b, _c, _d; return (_d = (_c = (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_overseers) === null || _c === void 0 ? void 0 : _c.failure_cc_email_groups) === null || _d === void 0 ? void 0 : _d.includes(element === null || element === void 0 ? void 0 : element.group_id); });
4315
+ const overseersCCGroup = (_1 = this.groupOverseerList) === null || _1 === void 0 ? void 0 : _1.filter((element) => {
4316
+ var _a, _b, _c, _d;
4317
+ return (_d = (_c = (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_overseers) === null || _c === void 0 ? void 0 : _c.cc_email_groups) === null || _d === void 0 ? void 0 : _d.includes(element === null || element === void 0 ? void 0 : element.group_id);
4318
+ });
4319
+ const overseersCCFailureGroup = (_2 = this.groupOverseerList) === null || _2 === void 0 ? void 0 : _2.filter((element) => {
4320
+ var _a, _b, _c, _d;
4321
+ return (_d = (_c = (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_overseers) === null || _c === void 0 ? void 0 : _c.failure_cc_email_groups) === null || _d === void 0 ? void 0 : _d.includes(element === null || element === void 0 ? void 0 : element.group_id);
4322
+ });
4162
4323
  if (overseersCCGroup === null || overseersCCGroup === void 0 ? void 0 : overseersCCGroup.length) {
4163
4324
  this.responsibilityForm.overseersGroups.list = overseersCCGroup;
4164
4325
  this.moreOptions.OVERSEER = true;
4165
4326
  }
4166
4327
  if (overseersCCFailureGroup.length) {
4167
- this.responsibilityForm.overseersGroups.notifyList = overseersCCFailureGroup;
4328
+ this.responsibilityForm.overseersGroups.notifyList =
4329
+ overseersCCFailureGroup;
4168
4330
  this.moreOptions.OVERSEER = true;
4169
4331
  }
4170
4332
  }
@@ -4176,11 +4338,17 @@ class WorkflowComplianceComponent {
4176
4338
  }
4177
4339
  populateProgramReviewerGroup() {
4178
4340
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
4179
- if (((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_reviewer_group_ids) || ((_e = (_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.groupReviewers) === null || _d === void 0 ? void 0 : _d.list) === null || _e === void 0 ? void 0 : _e.length)) {
4341
+ if (((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.default_reviewer_group_ids) ||
4342
+ ((_e = (_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.groupReviewers) === null || _d === void 0 ? void 0 : _d.list) === null || _e === void 0 ? void 0 : _e.length)) {
4180
4343
  const ids = this.returnIds((_g = (_f = this.responsibilityForm) === null || _f === void 0 ? void 0 : _f.groupReviewers) === null || _g === void 0 ? void 0 : _g.list, 'group_id');
4181
- const allIds = [...new Set(ids), ...new Set((_h = this.responsibilityForm.program[0]) === null || _h === void 0 ? void 0 : _h.default_reviewer_group_ids)];
4344
+ const allIds = [
4345
+ ...new Set(ids),
4346
+ ...new Set((_h = this.responsibilityForm.program[0]) === null || _h === void 0 ? void 0 : _h.default_reviewer_group_ids),
4347
+ ];
4182
4348
  const reviewersGroup = this.groupReviewerList.filter((element) => allIds === null || allIds === void 0 ? void 0 : allIds.includes(element === null || element === void 0 ? void 0 : element.group_id));
4183
- if (((reviewersGroup === null || reviewersGroup === void 0 ? void 0 : reviewersGroup.length) || (this.featureFlag_groups && ((_l = (_k = (_j = this.responsibilityForm) === null || _j === void 0 ? void 0 : _j.groupReviewers) === null || _k === void 0 ? void 0 : _k.list) === null || _l === void 0 ? void 0 : _l.length) > 0))) {
4349
+ if ((reviewersGroup === null || reviewersGroup === void 0 ? void 0 : reviewersGroup.length) ||
4350
+ (this.featureFlag_groups &&
4351
+ ((_l = (_k = (_j = this.responsibilityForm) === null || _j === void 0 ? void 0 : _j.groupReviewers) === null || _k === void 0 ? void 0 : _k.list) === null || _l === void 0 ? void 0 : _l.length) > 0)) {
4184
4352
  this.responsibilityForm.groupReviewers.list = reviewersGroup;
4185
4353
  this.moreOptions.REVIEWER = true;
4186
4354
  }
@@ -4196,80 +4364,123 @@ class WorkflowComplianceComponent {
4196
4364
  var _a, _b, _c, _d, _e, _f, _g, _h;
4197
4365
  let overseerUserList = [];
4198
4366
  let overseerUserNotifyList = [];
4199
- let overseerEmployeesList = (res === null || res === void 0 ? void 0 : res.cc_email) ? Object.keys(res === null || res === void 0 ? void 0 : res.cc_email).map(Number) : [];
4200
- overseerUserList = ((overseerEmployeesList === null || overseerEmployeesList === void 0 ? void 0 : overseerEmployeesList.length) > 0 && ((_b = (_a = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _a === void 0 ? void 0 : _a.ccEmailGroupIds) === null || _b === void 0 ? void 0 : _b.length) > 0) ? overseerEmployeesList.filter((employeeIds) => { var _a, _b; return (_b = (_a = res === null || res === void 0 ? void 0 : res.existingUserIds) === null || _a === void 0 ? void 0 : _a.ccEmailEmpIds) === null || _b === void 0 ? void 0 : _b.includes(employeeIds); }) : [...overseerEmployeesList];
4201
- let overseerEmployeeNotifyList = (res === null || res === void 0 ? void 0 : res.failure_cc_email) ? Object.keys(res === null || res === void 0 ? void 0 : res.failure_cc_email).map(Number) : [];
4202
- overseerUserNotifyList = ((overseerEmployeeNotifyList === null || overseerEmployeeNotifyList === void 0 ? void 0 : overseerEmployeeNotifyList.length) > 0 && ((_d = (_c = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _c === void 0 ? void 0 : _c.failureCCEmailGroupIds) === null || _d === void 0 ? void 0 : _d.length) > 0) ? overseerEmployeeNotifyList.filter((employeeIds) => { var _a, _b; return (_b = (_a = res === null || res === void 0 ? void 0 : res.existingUserIds) === null || _a === void 0 ? void 0 : _a.failureCCEmailEmpIds) === null || _b === void 0 ? void 0 : _b.includes(employeeIds); }) : [...overseerEmployeeNotifyList];
4203
- this.responsibilityForm["overseers"] = {
4204
- list: (res === null || res === void 0 ? void 0 : res.cc_email) ? this.setList(this.overseersList, overseerUserList, 'employee_id') : [],
4205
- notifyList: (res === null || res === void 0 ? void 0 : res.failure_cc_email) ? this.setList(this.overseersList, overseerUserNotifyList, 'employee_id') : [],
4367
+ let overseerEmployeesList = (res === null || res === void 0 ? void 0 : res.cc_email)
4368
+ ? Object.keys(res === null || res === void 0 ? void 0 : res.cc_email).map(Number)
4369
+ : [];
4370
+ overseerUserList =
4371
+ (overseerEmployeesList === null || overseerEmployeesList === void 0 ? void 0 : overseerEmployeesList.length) > 0 &&
4372
+ ((_b = (_a = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _a === void 0 ? void 0 : _a.ccEmailGroupIds) === null || _b === void 0 ? void 0 : _b.length) > 0
4373
+ ? overseerEmployeesList.filter((employeeIds) => { var _a, _b; return (_b = (_a = res === null || res === void 0 ? void 0 : res.existingUserIds) === null || _a === void 0 ? void 0 : _a.ccEmailEmpIds) === null || _b === void 0 ? void 0 : _b.includes(employeeIds); })
4374
+ : [...overseerEmployeesList];
4375
+ let overseerEmployeeNotifyList = (res === null || res === void 0 ? void 0 : res.failure_cc_email)
4376
+ ? Object.keys(res === null || res === void 0 ? void 0 : res.failure_cc_email).map(Number)
4377
+ : [];
4378
+ overseerUserNotifyList =
4379
+ (overseerEmployeeNotifyList === null || overseerEmployeeNotifyList === void 0 ? void 0 : overseerEmployeeNotifyList.length) > 0 &&
4380
+ ((_d = (_c = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _c === void 0 ? void 0 : _c.failureCCEmailGroupIds) === null || _d === void 0 ? void 0 : _d.length) > 0
4381
+ ? overseerEmployeeNotifyList.filter((employeeIds) => { var _a, _b; return (_b = (_a = res === null || res === void 0 ? void 0 : res.existingUserIds) === null || _a === void 0 ? void 0 : _a.failureCCEmailEmpIds) === null || _b === void 0 ? void 0 : _b.includes(employeeIds); })
4382
+ : [...overseerEmployeeNotifyList];
4383
+ this.responsibilityForm['overseers'] = {
4384
+ list: (res === null || res === void 0 ? void 0 : res.cc_email)
4385
+ ? this.setList(this.overseersList, overseerUserList, 'employee_id')
4386
+ : [],
4387
+ notifyList: (res === null || res === void 0 ? void 0 : res.failure_cc_email)
4388
+ ? this.setList(this.overseersList, overseerUserNotifyList, 'employee_id')
4389
+ : [],
4206
4390
  };
4207
- this.responsibilityForm["overseersGroups"] = {
4208
- list: ((_e = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _e === void 0 ? void 0 : _e.ccEmailGroupIds) ? this.setList(this.OrgGroup, (_f = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _f === void 0 ? void 0 : _f.ccEmailGroupIds, 'group_id') : [],
4209
- notifyList: ((_g = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _g === void 0 ? void 0 : _g.failureCCEmailGroupIds) ? this.setList(this.OrgGroup, (_h = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _h === void 0 ? void 0 : _h.failureCCEmailGroupIds, 'group_id') : []
4391
+ this.responsibilityForm['overseersGroups'] = {
4392
+ list: ((_e = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _e === void 0 ? void 0 : _e.ccEmailGroupIds)
4393
+ ? this.setList(this.OrgGroup, (_f = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _f === void 0 ? void 0 : _f.ccEmailGroupIds, 'group_id')
4394
+ : [],
4395
+ notifyList: ((_g = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _g === void 0 ? void 0 : _g.failureCCEmailGroupIds)
4396
+ ? this.setList(this.OrgGroup, (_h = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _h === void 0 ? void 0 : _h.failureCCEmailGroupIds, 'group_id')
4397
+ : [],
4210
4398
  };
4211
4399
  }
4212
4400
  populateReviewerData(res) {
4213
4401
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
4214
4402
  const reviewerDetails = Object.keys(res === null || res === void 0 ? void 0 : res.reviewer_arr);
4215
4403
  this.hasReviewer = (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0;
4216
- const groupReviewerDetails = ((_b = (_a = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _a === void 0 ? void 0 : _a.reviewerGroupIds) === null || _b === void 0 ? void 0 : _b.length) ? Object.assign((_c = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _c === void 0 ? void 0 : _c.reviewerGroupIds) : [];
4404
+ const groupReviewerDetails = ((_b = (_a = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _a === void 0 ? void 0 : _a.reviewerGroupIds) === null || _b === void 0 ? void 0 : _b.length)
4405
+ ? Object.assign((_c = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _c === void 0 ? void 0 : _c.reviewerGroupIds)
4406
+ : [];
4217
4407
  let reviewer_users = [];
4218
- reviewer_users = (((_f = (_e = (_d = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _d === void 0 ? void 0 : _d.level1) === null || _e === void 0 ? void 0 : _e.reviewers) === null || _f === void 0 ? void 0 : _f.length) > 0 && ((_h = (_g = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _g === void 0 ? void 0 : _g.reviewerGroupIds) === null || _h === void 0 ? void 0 : _h.length) > 0) ? (_k = (_j = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _j === void 0 ? void 0 : _j.level1) === null || _k === void 0 ? void 0 : _k.reviewers.filter((memberId) => { var _a, _b; return (_b = (_a = res === null || res === void 0 ? void 0 : res.existingUserIds) === null || _a === void 0 ? void 0 : _a.reviewerIds) === null || _b === void 0 ? void 0 : _b.includes(memberId === null || memberId === void 0 ? void 0 : memberId.member_id); }) : (_m = (_l = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _l === void 0 ? void 0 : _l.level1) === null || _m === void 0 ? void 0 : _m.reviewers;
4219
- this.responsibilityForm["reviewers"] = {
4220
- sequentialWorkflow: (((_p = (_o = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _o === void 0 ? void 0 : _o.level1) === null || _p === void 0 ? void 0 : _p.type) == 'SEQUENTIAL') ? true : false,
4408
+ reviewer_users =
4409
+ ((_f = (_e = (_d = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _d === void 0 ? void 0 : _d.level1) === null || _e === void 0 ? void 0 : _e.reviewers) === null || _f === void 0 ? void 0 : _f.length) > 0 &&
4410
+ ((_h = (_g = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _g === void 0 ? void 0 : _g.reviewerGroupIds) === null || _h === void 0 ? void 0 : _h.length) > 0
4411
+ ? (_k = (_j = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _j === void 0 ? void 0 : _j.level1) === null || _k === void 0 ? void 0 : _k.reviewers.filter((memberId) => { var _a, _b; return (_b = (_a = res === null || res === void 0 ? void 0 : res.existingUserIds) === null || _a === void 0 ? void 0 : _a.reviewerIds) === null || _b === void 0 ? void 0 : _b.includes(memberId === null || memberId === void 0 ? void 0 : memberId.member_id); })
4412
+ : (_m = (_l = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _l === void 0 ? void 0 : _l.level1) === null || _m === void 0 ? void 0 : _m.reviewers;
4413
+ this.responsibilityForm['reviewers'] = {
4414
+ sequentialWorkflow: ((_p = (_o = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _o === void 0 ? void 0 : _o.level1) === null || _p === void 0 ? void 0 : _p.type) == 'SEQUENTIAL' ? true : false,
4221
4415
  reviewFrequency: {
4222
- reviewCompleteDays: ((reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0) ? res === null || res === void 0 ? void 0 : res.review_after_days : 2,
4223
- reviewNOtCompletedDays: ((reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0) ? res === null || res === void 0 ? void 0 : res.review_failed_after_days : 2
4416
+ reviewCompleteDays: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0 ? res === null || res === void 0 ? void 0 : res.review_after_days : 2,
4417
+ reviewNOtCompletedDays: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0 ? res === null || res === void 0 ? void 0 : res.review_failed_after_days : 2,
4224
4418
  },
4225
4419
  acceptedData: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0 ? reviewer_users : [],
4226
- list: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0 ? this.setReviewerPayload(reviewer_users, 'object', (_r = (_q = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _q === void 0 ? void 0 : _q.level1) === null || _r === void 0 ? void 0 : _r.type) : []
4420
+ list: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0
4421
+ ? this.setReviewerPayload(reviewer_users, 'object', (_r = (_q = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _q === void 0 ? void 0 : _q.level1) === null || _r === void 0 ? void 0 : _r.type)
4422
+ : [],
4227
4423
  };
4228
- this.responsibilityForm["groupReviewers"] = {
4229
- sequentialWorkflow: (((_t = (_s = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _s === void 0 ? void 0 : _s.level1) === null || _t === void 0 ? void 0 : _t.type) == 'SEQUENTIAL') ? true : false,
4424
+ this.responsibilityForm['groupReviewers'] = {
4425
+ sequentialWorkflow: ((_t = (_s = res === null || res === void 0 ? void 0 : res.reviewer_arr) === null || _s === void 0 ? void 0 : _s.level1) === null || _t === void 0 ? void 0 : _t.type) == 'SEQUENTIAL' ? true : false,
4230
4426
  reviewFrequency: {
4231
- reviewCompleteDays: ((reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0) ? res === null || res === void 0 ? void 0 : res.review_after_days : 2,
4232
- reviewNOtCompletedDays: ((reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0) ? res === null || res === void 0 ? void 0 : res.review_failed_after_days : 2
4427
+ reviewCompleteDays: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0 ? res === null || res === void 0 ? void 0 : res.review_after_days : 2,
4428
+ reviewNOtCompletedDays: (reviewerDetails === null || reviewerDetails === void 0 ? void 0 : reviewerDetails.length) > 0 ? res === null || res === void 0 ? void 0 : res.review_failed_after_days : 2,
4233
4429
  },
4234
- list: (groupReviewerDetails === null || groupReviewerDetails === void 0 ? void 0 : groupReviewerDetails.length) > 0 ? this.setList(this.OrgGroup, groupReviewerDetails, 'group_id') : []
4430
+ list: (groupReviewerDetails === null || groupReviewerDetails === void 0 ? void 0 : groupReviewerDetails.length) > 0
4431
+ ? this.setList(this.OrgGroup, groupReviewerDetails, 'group_id')
4432
+ : [],
4235
4433
  };
4236
4434
  }
4237
4435
  populateAssigneeData(res) {
4238
4436
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
4239
4437
  let AssigneeAnyUserList = [];
4240
4438
  let AssigneeAllUserList = [];
4241
- let assigneeAnyOneList = ((res === null || res === void 0 ? void 0 : res.assigned_to_member_id) && this.isEntrust) ? res === null || res === void 0 ? void 0 : res.assigned_to_member_id : [];
4242
- AssigneeAnyUserList = (((_a = res === null || res === void 0 ? void 0 : res.assigned_to_member_id) === null || _a === void 0 ? void 0 : _a.length) > 0 && ((_c = (_b = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _b === void 0 ? void 0 : _b.assigneeAnyoneGroupIds) === null || _c === void 0 ? void 0 : _c.length) > 0) ? assigneeAnyOneList.filter((employeeIds) => { var _a, _b; return (_b = (_a = res === null || res === void 0 ? void 0 : res.existingUserIds) === null || _a === void 0 ? void 0 : _a.assigneeAnyoneIds) === null || _b === void 0 ? void 0 : _b.includes(employeeIds); }) : [...assigneeAnyOneList];
4243
- AssigneeAllUserList = ((res === null || res === void 0 ? void 0 : res.assigned_to) && !this.isEntrust) ? res === null || res === void 0 ? void 0 : res.assigned_to : [];
4439
+ let assigneeAnyOneList = (res === null || res === void 0 ? void 0 : res.assigned_to_member_id) && this.isEntrust
4440
+ ? res === null || res === void 0 ? void 0 : res.assigned_to_member_id
4441
+ : [];
4442
+ AssigneeAnyUserList =
4443
+ ((_a = res === null || res === void 0 ? void 0 : res.assigned_to_member_id) === null || _a === void 0 ? void 0 : _a.length) > 0 &&
4444
+ ((_c = (_b = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _b === void 0 ? void 0 : _b.assigneeAnyoneGroupIds) === null || _c === void 0 ? void 0 : _c.length) > 0
4445
+ ? assigneeAnyOneList.filter((employeeIds) => { var _a, _b; return (_b = (_a = res === null || res === void 0 ? void 0 : res.existingUserIds) === null || _a === void 0 ? void 0 : _a.assigneeAnyoneIds) === null || _b === void 0 ? void 0 : _b.includes(employeeIds); })
4446
+ : [...assigneeAnyOneList];
4447
+ AssigneeAllUserList =
4448
+ (res === null || res === void 0 ? void 0 : res.assigned_to) && !this.isEntrust ? res === null || res === void 0 ? void 0 : res.assigned_to : [];
4244
4449
  const assignedToUserDetails = this.setList(this.assigneesList, [Number(res === null || res === void 0 ? void 0 : res.assigned_to)], 'employee_id');
4245
4450
  if (assignedToUserDetails === null || assignedToUserDetails === void 0 ? void 0 : assignedToUserDetails.length) {
4246
4451
  const member_id = (_d = assignedToUserDetails[0]) === null || _d === void 0 ? void 0 : _d.my_member_id;
4247
4452
  if ((_f = (_e = res === null || res === void 0 ? void 0 : res.existingUserIds) === null || _e === void 0 ? void 0 : _e.assigneeAllIds) === null || _f === void 0 ? void 0 : _f.includes(member_id)) {
4248
4453
  AssigneeAllUserList = res === null || res === void 0 ? void 0 : res.assigned_to;
4249
- res.userGroupIds["assigneeAllGroupIds"] = [];
4454
+ res.userGroupIds['assigneeAllGroupIds'] = [];
4250
4455
  }
4251
4456
  else if (((_h = (_g = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _g === void 0 ? void 0 : _g.assigneeAllGroupIds) === null || _h === void 0 ? void 0 : _h.length) > 0) {
4252
4457
  AssigneeAllUserList = [];
4253
4458
  }
4254
4459
  }
4255
- this.responsibilityForm["assignees"] = {
4256
- whoCanComplete: (res.isGroupAssignTo) ? 'ANY_ONE' : 'ALL',
4257
- list: (((_j = res === null || res === void 0 ? void 0 : res.assigned_to_member_id) === null || _j === void 0 ? void 0 : _j.length) == 0) ? this.setList(this.assigneesList, [Number(AssigneeAllUserList)], 'employee_id') :
4258
- this.setList(this.assigneesList, AssigneeAnyUserList, 'my_member_id'),
4460
+ this.responsibilityForm['assignees'] = {
4461
+ whoCanComplete: res.isGroupAssignTo ? 'ANY_ONE' : 'ALL',
4462
+ list: ((_j = res === null || res === void 0 ? void 0 : res.assigned_to_member_id) === null || _j === void 0 ? void 0 : _j.length) == 0
4463
+ ? this.setList(this.assigneesList, [Number(AssigneeAllUserList)], 'employee_id')
4464
+ : this.setList(this.assigneesList, AssigneeAnyUserList, 'my_member_id'),
4259
4465
  };
4260
- this.responsibilityForm["assigneeGroups"] = {
4466
+ this.responsibilityForm['assigneeGroups'] = {
4261
4467
  whoCanComplete: (res === null || res === void 0 ? void 0 : res.isGroupAssignTo) ? 'ANY_ONE' : 'ALL',
4262
- list: (((_l = (_k = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _k === void 0 ? void 0 : _k.assigneeAnyoneGroupIds) === null || _l === void 0 ? void 0 : _l.length) == 0) ? ((_o = (_m = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _m === void 0 ? void 0 : _m.assigneeAllGroupIds) === null || _o === void 0 ? void 0 : _o.length) > 0 ? this.setList(this.OrgGroup, (_p = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _p === void 0 ? void 0 : _p.assigneeAllGroupIds, 'group_id') : [] :
4263
- this.setList(this.OrgGroup, (_q = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _q === void 0 ? void 0 : _q.assigneeAnyoneGroupIds, 'group_id'),
4468
+ list: ((_l = (_k = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _k === void 0 ? void 0 : _k.assigneeAnyoneGroupIds) === null || _l === void 0 ? void 0 : _l.length) == 0
4469
+ ? ((_o = (_m = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _m === void 0 ? void 0 : _m.assigneeAllGroupIds) === null || _o === void 0 ? void 0 : _o.length) > 0
4470
+ ? this.setList(this.OrgGroup, (_p = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _p === void 0 ? void 0 : _p.assigneeAllGroupIds, 'group_id')
4471
+ : []
4472
+ : this.setList(this.OrgGroup, (_q = res === null || res === void 0 ? void 0 : res.userGroupIds) === null || _q === void 0 ? void 0 : _q.assigneeAnyoneGroupIds, 'group_id'),
4264
4473
  };
4265
- this.allGroupAssignee = (((_t = (_s = (_r = this.responsibilityForm) === null || _r === void 0 ? void 0 : _r.assigneeGroups) === null || _s === void 0 ? void 0 : _s.list) === null || _t === void 0 ? void 0 : _t.length) > 0 && !this.isEntrust);
4474
+ this.allGroupAssignee =
4475
+ ((_t = (_s = (_r = this.responsibilityForm) === null || _r === void 0 ? void 0 : _r.assigneeGroups) === null || _s === void 0 ? void 0 : _s.list) === null || _t === void 0 ? void 0 : _t.length) > 0 &&
4476
+ !this.isEntrust;
4266
4477
  }
4267
4478
  /**
4268
- * this function is for getting the users data based on member_id of users of selected User Group
4269
- * @param userlist contains users data
4270
- * @param selectedgroups contains selected User Group data
4271
- * @returns user data of Selected user group.
4272
- */
4479
+ * this function is for getting the users data based on member_id of users of selected User Group
4480
+ * @param userlist contains users data
4481
+ * @param selectedgroups contains selected User Group data
4482
+ * @returns user data of Selected user group.
4483
+ */
4273
4484
  getGroupsUserEmployeesId(userList, selectedGroups) {
4274
4485
  let groupMemberIds = [];
4275
4486
  let groupUserEmployee = [];
@@ -4295,9 +4506,10 @@ class WorkflowComplianceComponent {
4295
4506
  var _a, _b;
4296
4507
  let index = -1;
4297
4508
  if (((_a = (acceptedData !== null && acceptedData !== void 0 ? acceptedData : [])) === null || _a === void 0 ? void 0 : _a.length) > 0) {
4298
- index = (_b = acceptedData === null || acceptedData === void 0 ? void 0 : acceptedData.findIndex(ele => ele.member_id === element)) !== null && _b !== void 0 ? _b : -1;
4509
+ index =
4510
+ (_b = acceptedData === null || acceptedData === void 0 ? void 0 : acceptedData.findIndex((ele) => ele.member_id === element)) !== null && _b !== void 0 ? _b : -1;
4299
4511
  }
4300
- let acceptStatus = (index > -1 && acceptedData) ? acceptedData[index].reviewer_accept : 0;
4512
+ let acceptStatus = index > -1 && acceptedData ? acceptedData[index].reviewer_accept : 0;
4301
4513
  if (acceptStatus === 0 && reviewerType === 'ANYONE') {
4302
4514
  acceptStatus = 1;
4303
4515
  }
@@ -4308,10 +4520,14 @@ class WorkflowComplianceComponent {
4308
4520
  }
4309
4521
  checkWhetherAllListsLoaded() {
4310
4522
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
4311
- if (this.rcListLoaded && this.assigneesListLoaded && this.assignorsListLoaded &&
4312
- this.categoriesListLoaded && this.assuranceCategoryListLoaded && this.groupsListLoaded) {
4523
+ if (this.rcListLoaded &&
4524
+ this.assigneesListLoaded &&
4525
+ this.assignorsListLoaded &&
4526
+ this.categoriesListLoaded &&
4527
+ this.assuranceCategoryListLoaded &&
4528
+ this.groupsListLoaded) {
4313
4529
  if (((_a = this.frameworkDetails) === null || _a === void 0 ? void 0 : _a.length) > 0) {
4314
- this.entrustFramework(this.frameworkDetails[0]);
4530
+ this.assignFromFramework(this.frameworkDetails[0]);
4315
4531
  }
4316
4532
  if (this.mode === 'EDIT') {
4317
4533
  this.getEditResponsibilityDetails(this.responsibilityId);
@@ -4322,13 +4538,25 @@ class WorkflowComplianceComponent {
4322
4538
  if (this.selectedProgram) {
4323
4539
  this.responsibilityForm.program.push(this.selectedProgram);
4324
4540
  this.responsibilityForm.program_selected_ids.push(this.selectedProgram.category_id);
4325
- this.responsibilityForm.category_id = (_c = (_b = this.selectedProgram) === null || _b === void 0 ? void 0 : _b.category_id) === null || _c === void 0 ? void 0 : _c.toString();
4541
+ this.responsibilityForm.category_id =
4542
+ (_c = (_b = this.selectedProgram) === null || _b === void 0 ? void 0 : _b.category_id) === null || _c === void 0 ? void 0 : _c.toString();
4326
4543
  if ((_d = this.orgDetails) === null || _d === void 0 ? void 0 : _d.hasProgramFullPermission) {
4327
- this.responsibilityForm.assignees.whoCanComplete = (((_e = this.selectedProgram) === null || _e === void 0 ? void 0 : _e.default_assignee_type) == 'ANYONE') ? 'ANY_ONE' : 'ALL';
4328
- this.responsibilityForm.reviewers.sequentialWorkflow = (((_f = this.selectedProgram) === null || _f === void 0 ? void 0 : _f.default_reviewers_type) == 'SEQUENTIAL') ? true : false;
4329
- this.responsibilityForm.formatAndEvidence.evidenceRequired = ((_g = this.selectedProgram) === null || _g === void 0 ? void 0 : _g.evidence_upload_flag) ? true : false;
4544
+ this.responsibilityForm.assignees.whoCanComplete =
4545
+ ((_e = this.selectedProgram) === null || _e === void 0 ? void 0 : _e.default_assignee_type) == 'ANYONE'
4546
+ ? 'ANY_ONE'
4547
+ : 'ALL';
4548
+ this.responsibilityForm.reviewers.sequentialWorkflow =
4549
+ ((_f = this.selectedProgram) === null || _f === void 0 ? void 0 : _f.default_reviewers_type) == 'SEQUENTIAL'
4550
+ ? true
4551
+ : false;
4552
+ this.responsibilityForm.formatAndEvidence.evidenceRequired = ((_g = this
4553
+ .selectedProgram) === null || _g === void 0 ? void 0 : _g.evidence_upload_flag)
4554
+ ? true
4555
+ : false;
4330
4556
  }
4331
- const programCustomTags = ((_h = this.selectedProgram) === null || _h === void 0 ? void 0 : _h.custom_tags) ? JSON.parse(this.selectedProgram.custom_tags) : [];
4557
+ const programCustomTags = ((_h = this.selectedProgram) === null || _h === void 0 ? void 0 : _h.custom_tags)
4558
+ ? JSON.parse(this.selectedProgram.custom_tags)
4559
+ : [];
4332
4560
  programCustomTags.forEach((tag) => {
4333
4561
  const tagData = JSON.parse(tag);
4334
4562
  const index = this.responsibilityForm.customTags.findIndex((tagElement) => tagElement.tag_name == tagData.tag_name);
@@ -4339,7 +4567,8 @@ class WorkflowComplianceComponent {
4339
4567
  const checkedMoreOptions = [];
4340
4568
  this.moreOptions.PROGRAM = true;
4341
4569
  checkedMoreOptions.push('PROGRAM');
4342
- if (((_j = this.selectedProgram) === null || _j === void 0 ? void 0 : _j.evidence_upload_flag) && ((_k = this.orgDetails) === null || _k === void 0 ? void 0 : _k.hasProgramFullPermission)) {
4570
+ if (((_j = this.selectedProgram) === null || _j === void 0 ? void 0 : _j.evidence_upload_flag) &&
4571
+ ((_k = this.orgDetails) === null || _k === void 0 ? void 0 : _k.hasProgramFullPermission)) {
4343
4572
  checkedMoreOptions.push('FORMATE_EVIDENCE');
4344
4573
  this.moreOptions.FORMATE_EVIDENCE = true;
4345
4574
  }
@@ -4368,7 +4597,8 @@ class WorkflowComplianceComponent {
4368
4597
  if (this.invalidType === 'who') {
4369
4598
  this.invalidType = '';
4370
4599
  }
4371
- if (!this.isEntrust && this.responsibilityForm.assignees.whoCanComplete !== 'ANY_ONE') {
4600
+ if (!this.isEntrust &&
4601
+ this.responsibilityForm.assignees.whoCanComplete !== 'ANY_ONE') {
4372
4602
  this.responsibilityForm.assignees.list = this.setList(this.assigneesList, [selectedItems.employee_id], 'employee_id');
4373
4603
  this.callRefreshList();
4374
4604
  }
@@ -4393,7 +4623,11 @@ class WorkflowComplianceComponent {
4393
4623
  case 'category':
4394
4624
  this.responsibilityForm.category = selectedItems;
4395
4625
  selectedItems.forEach((element) => {
4396
- const tag = element.custom_tags !== '' && element.custom_tags !== "null" && element.custom_tags != "[]" ? JSON.parse(element.custom_tags) : [];
4626
+ const tag = element.custom_tags !== '' &&
4627
+ element.custom_tags !== 'null' &&
4628
+ element.custom_tags != '[]'
4629
+ ? JSON.parse(element.custom_tags)
4630
+ : [];
4397
4631
  if ((tag === null || tag === void 0 ? void 0 : tag.length) > 0) {
4398
4632
  tag.forEach((tagData) => {
4399
4633
  const index = this.responsibilityForm.customTags.findIndex((tagElement) => tagElement.tag_name == tagData.tag_name);
@@ -4406,19 +4640,32 @@ class WorkflowComplianceComponent {
4406
4640
  break;
4407
4641
  case 'program':
4408
4642
  this.responsibilityForm.linkedProgram = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.linkedProgram;
4409
- if ((this.selectedProgram && !(((_c = this.selectedProgram) === null || _c === void 0 ? void 0 : _c.programType) === 0 && ((_e = (_d = this.selectedProgram) === null || _d === void 0 ? void 0 : _d.name) === null || _e === void 0 ? void 0 : _e.toLowerCase()) === 'uncategorized' || !((_f = this.orgDetails) === null || _f === void 0 ? void 0 : _f.hasProgramFullPermission))) && !this.feature.isFeatureEnabled('ff_deprecate_primary_program_flag')) {
4410
- this.responsibilityForm.category = (selectedItems.categories) ? selectedItems.categories : [];
4643
+ if (this.selectedProgram &&
4644
+ !((((_c = this.selectedProgram) === null || _c === void 0 ? void 0 : _c.programType) === 0 &&
4645
+ ((_e = (_d = this.selectedProgram) === null || _d === void 0 ? void 0 : _d.name) === null || _e === void 0 ? void 0 : _e.toLowerCase()) === 'uncategorized') ||
4646
+ !((_f = this.orgDetails) === null || _f === void 0 ? void 0 : _f.hasProgramFullPermission)) &&
4647
+ !this.feature.isFeatureEnabled('ff_deprecate_primary_program_flag')) {
4648
+ this.responsibilityForm.category = selectedItems.categories
4649
+ ? selectedItems.categories
4650
+ : [];
4411
4651
  let categoryId = (_g = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.categories) === null || _g === void 0 ? void 0 : _g.toString();
4412
4652
  if ((_h = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.categories) === null || _h === void 0 ? void 0 : _h.length) {
4413
- this.responsibilityForm.category_id = ((_j = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _j === void 0 ? void 0 : _j.category_id) + ',' + categoryId;
4653
+ this.responsibilityForm.category_id =
4654
+ ((_j = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _j === void 0 ? void 0 : _j.category_id) + ',' + categoryId;
4414
4655
  }
4415
4656
  else {
4416
- this.responsibilityForm.category_id = (_l = (_k = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _k === void 0 ? void 0 : _k.category_id) === null || _l === void 0 ? void 0 : _l.toString();
4657
+ this.responsibilityForm.category_id =
4658
+ (_l = (_k = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _k === void 0 ? void 0 : _k.category_id) === null || _l === void 0 ? void 0 : _l.toString();
4417
4659
  }
4418
- this.responsibilityForm.program_selected_ids = [...new Set(selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.categories), ...new Set([(_m = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _m === void 0 ? void 0 : _m.category_id])];
4419
- const programCustomTags = ((_o = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _o === void 0 ? void 0 : _o.custom_tags) ? JSON.parse((_p = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _p === void 0 ? void 0 : _p.custom_tags) : [];
4660
+ this.responsibilityForm.program_selected_ids = [
4661
+ ...new Set(selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.categories),
4662
+ ...new Set([(_m = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _m === void 0 ? void 0 : _m.category_id]),
4663
+ ];
4664
+ const programCustomTags = ((_o = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _o === void 0 ? void 0 : _o.custom_tags)
4665
+ ? JSON.parse((_p = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _p === void 0 ? void 0 : _p.custom_tags)
4666
+ : [];
4420
4667
  programCustomTags === null || programCustomTags === void 0 ? void 0 : programCustomTags.forEach((tag) => {
4421
- const tagData = typeof tag === "string" ? JSON.parse(tag) : tag;
4668
+ const tagData = typeof tag === 'string' ? JSON.parse(tag) : tag;
4422
4669
  const index = this.responsibilityForm.customTags.findIndex((tagElement) => tagElement.tag_name == tagData.tag_name);
4423
4670
  if (index == -1) {
4424
4671
  this.responsibilityForm.customTags.push(tagData);
@@ -4427,40 +4674,62 @@ class WorkflowComplianceComponent {
4427
4674
  }
4428
4675
  else {
4429
4676
  if ((_q = this.responsibilityForm) === null || _q === void 0 ? void 0 : _q.assessment) {
4430
- ((_s = Object.keys((_r = this.responsibilityForm) === null || _r === void 0 ? void 0 : _r.assessment)) === null || _s === void 0 ? void 0 : _s.length) ? this.getProgramDetails(selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program._id) : null;
4677
+ ((_s = Object.keys((_r = this.responsibilityForm) === null || _r === void 0 ? void 0 : _r.assessment)) === null || _s === void 0 ? void 0 : _s.length)
4678
+ ? this.getProgramDetails(selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program._id)
4679
+ : null;
4431
4680
  }
4432
- this.responsibilityForm.category = (selectedItems.categories) ? selectedItems.categories : [];
4681
+ this.responsibilityForm.category = selectedItems.categories
4682
+ ? selectedItems.categories
4683
+ : [];
4433
4684
  this.responsibilityForm.program = [];
4434
4685
  this.responsibilityForm.category_id = '';
4435
4686
  this.responsibilityForm.program_selected_ids = [];
4436
4687
  this.responsibilityForm.customTags = [];
4437
- this.responsibilityForm.program = (selectedItems.program) ? [selectedItems.program] : [];
4688
+ this.responsibilityForm.program = selectedItems.program
4689
+ ? [selectedItems.program]
4690
+ : [];
4438
4691
  let categoryId = (_t = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.categories) === null || _t === void 0 ? void 0 : _t.toString();
4439
4692
  if ((_u = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.categories) === null || _u === void 0 ? void 0 : _u.length) {
4440
- this.responsibilityForm.category_id = ((_v = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _v === void 0 ? void 0 : _v.category_id) + ',' + categoryId;
4693
+ this.responsibilityForm.category_id =
4694
+ ((_v = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _v === void 0 ? void 0 : _v.category_id) + ',' + categoryId;
4441
4695
  }
4442
4696
  else {
4443
- this.responsibilityForm.category_id = (_x = (_w = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _w === void 0 ? void 0 : _w.category_id) === null || _x === void 0 ? void 0 : _x.toString();
4697
+ this.responsibilityForm.category_id =
4698
+ (_x = (_w = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _w === void 0 ? void 0 : _w.category_id) === null || _x === void 0 ? void 0 : _x.toString();
4444
4699
  }
4445
- this.responsibilityForm.program_selected_ids = [...new Set(selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.categories), ...new Set([(_y = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _y === void 0 ? void 0 : _y.category_id])];
4446
- const programCustomTags = ((_z = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _z === void 0 ? void 0 : _z.custom_tags) ? JSON.parse((_0 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _0 === void 0 ? void 0 : _0.custom_tags) : [];
4700
+ this.responsibilityForm.program_selected_ids = [
4701
+ ...new Set(selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.categories),
4702
+ ...new Set([(_y = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _y === void 0 ? void 0 : _y.category_id]),
4703
+ ];
4704
+ const programCustomTags = ((_z = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _z === void 0 ? void 0 : _z.custom_tags)
4705
+ ? JSON.parse((_0 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _0 === void 0 ? void 0 : _0.custom_tags)
4706
+ : [];
4447
4707
  programCustomTags === null || programCustomTags === void 0 ? void 0 : programCustomTags.forEach((tag) => {
4448
- const tagData = typeof tag === "string" ? JSON.parse(tag) : tag;
4708
+ const tagData = typeof tag === 'string' ? JSON.parse(tag) : tag;
4449
4709
  const index = this.responsibilityForm.customTags.findIndex((tagElement) => tagElement.tag_name == tagData.tag_name);
4450
4710
  if (index == -1) {
4451
4711
  this.responsibilityForm.customTags.push(tagData);
4452
4712
  }
4453
4713
  });
4454
4714
  if ((_1 = this.orgDetails) === null || _1 === void 0 ? void 0 : _1.hasProgramFullPermission) {
4455
- this.responsibilityForm.assignees.whoCanComplete = (((_2 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _2 === void 0 ? void 0 : _2.default_assignee_type) == 'ANYONE') ? 'ANY_ONE' : 'ALL';
4456
- this.responsibilityForm.reviewers.sequentialWorkflow = (((_3 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _3 === void 0 ? void 0 : _3.default_reviewers_type) == 'SEQUENTIAL') ? true : false;
4457
- this.responsibilityForm.formatAndEvidence.evidenceRequired = ((_4 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _4 === void 0 ? void 0 : _4.evidence_upload_flag) ? true : false;
4715
+ this.responsibilityForm.assignees.whoCanComplete =
4716
+ ((_2 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _2 === void 0 ? void 0 : _2.default_assignee_type) == 'ANYONE'
4717
+ ? 'ANY_ONE'
4718
+ : 'ALL';
4719
+ this.responsibilityForm.reviewers.sequentialWorkflow =
4720
+ ((_3 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _3 === void 0 ? void 0 : _3.default_reviewers_type) == 'SEQUENTIAL'
4721
+ ? true
4722
+ : false;
4723
+ this.responsibilityForm.formatAndEvidence.evidenceRequired =
4724
+ ((_4 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _4 === void 0 ? void 0 : _4.evidence_upload_flag) ? true : false;
4458
4725
  if ((_5 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _5 === void 0 ? void 0 : _5.evidence_upload_flag) {
4459
4726
  this.moreOptions.FORMATE_EVIDENCE = true;
4460
4727
  }
4461
4728
  }
4462
- if (!(((_6 = this.selectedProgram) === null || _6 === void 0 ? void 0 : _6.programType) === 0 && ((_8 = (_7 = this.selectedProgram) === null || _7 === void 0 ? void 0 : _7.name) === null || _8 === void 0 ? void 0 : _8.toLowerCase()) === 'uncategorized')) {
4463
- if (((_9 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _9 === void 0 ? void 0 : _9._id) && ((_10 = this.orgDetails) === null || _10 === void 0 ? void 0 : _10.hasProgramFullPermission)) {
4729
+ if (!(((_6 = this.selectedProgram) === null || _6 === void 0 ? void 0 : _6.programType) === 0 &&
4730
+ ((_8 = (_7 = this.selectedProgram) === null || _7 === void 0 ? void 0 : _7.name) === null || _8 === void 0 ? void 0 : _8.toLowerCase()) === 'uncategorized')) {
4731
+ if (((_9 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.program) === null || _9 === void 0 ? void 0 : _9._id) &&
4732
+ ((_10 = this.orgDetails) === null || _10 === void 0 ? void 0 : _10.hasProgramFullPermission)) {
4464
4733
  this.filterListsAccordingToProgram(selectedItems.program._id);
4465
4734
  }
4466
4735
  else {
@@ -4501,21 +4770,27 @@ class WorkflowComplianceComponent {
4501
4770
  break;
4502
4771
  case 'requires_audit':
4503
4772
  this.responsibilityForm.requiresAuditList = this.setList(this.assuranceRequiresAuditList, [selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.category_id], 'category_id');
4504
- this.responsibilityForm['audit_category_details']['category_id'] = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.category_id;
4773
+ this.responsibilityForm['audit_category_details']['category_id'] =
4774
+ selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.category_id;
4505
4775
  break;
4506
4776
  case 'checkpoints':
4507
4777
  this.responsibilityForm.checkpoints = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.checkpointDetails;
4508
- this.responsibilityForm.checkpointInstruction = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.checkpointInstruction;
4778
+ this.responsibilityForm.checkpointInstruction =
4779
+ selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.checkpointInstruction;
4509
4780
  break;
4510
4781
  case 'calculatedrisk':
4511
4782
  this.responsibilityForm.riskClass = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.riskClass;
4512
4783
  this.responsibilityForm.riskMatrix = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.riskMatrix;
4513
4784
  break;
4514
4785
  case 'formate_evidence':
4515
- this.responsibilityForm.formatAndEvidence.formatRequired = (_11 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.isFormateUploaded) !== null && _11 !== void 0 ? _11 : false;
4516
- this.responsibilityForm.formatAndEvidence.formatFiles = (_12 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.files) !== null && _12 !== void 0 ? _12 : [];
4517
- this.responsibilityForm.formatAndEvidence.formatLinks = (_13 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.links) !== null && _13 !== void 0 ? _13 : [];
4518
- this.responsibilityForm.formatAndEvidence.evidenceRequired = (_14 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.isEvidenceRequired) !== null && _14 !== void 0 ? _14 : false;
4786
+ this.responsibilityForm.formatAndEvidence.formatRequired =
4787
+ (_11 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.isFormateUploaded) !== null && _11 !== void 0 ? _11 : false;
4788
+ this.responsibilityForm.formatAndEvidence.formatFiles =
4789
+ (_12 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.files) !== null && _12 !== void 0 ? _12 : [];
4790
+ this.responsibilityForm.formatAndEvidence.formatLinks =
4791
+ (_13 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.links) !== null && _13 !== void 0 ? _13 : [];
4792
+ this.responsibilityForm.formatAndEvidence.evidenceRequired =
4793
+ (_14 = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.isEvidenceRequired) !== null && _14 !== void 0 ? _14 : false;
4519
4794
  break;
4520
4795
  case 'reviewFrequency':
4521
4796
  this.responsibilityForm.reviewers.reviewFrequency = {
@@ -4532,7 +4807,8 @@ class WorkflowComplianceComponent {
4532
4807
  */
4533
4808
  callRefreshList() {
4534
4809
  var _a, _b;
4535
- if (((_a = this.responsibilityForm.program) === null || _a === void 0 ? void 0 : _a.length) && ((_b = this.orgDetails) === null || _b === void 0 ? void 0 : _b.hasProgramFullPermission)) {
4810
+ if (((_a = this.responsibilityForm.program) === null || _a === void 0 ? void 0 : _a.length) &&
4811
+ ((_b = this.orgDetails) === null || _b === void 0 ? void 0 : _b.hasProgramFullPermission)) {
4536
4812
  this.refreshListsWhileProgramSelected();
4537
4813
  }
4538
4814
  else {
@@ -4634,7 +4910,7 @@ class WorkflowComplianceComponent {
4634
4910
  sample: 0,
4635
4911
  percentage: 0,
4636
4912
  frequency_pattern: '',
4637
- frequency_time: ''
4913
+ frequency_time: '',
4638
4914
  };
4639
4915
  break;
4640
4916
  case 'assurance':
@@ -4646,8 +4922,8 @@ class WorkflowComplianceComponent {
4646
4922
  break;
4647
4923
  case 'assessment':
4648
4924
  this.responsibilityForm.assessment = {
4649
- category_id: "",
4650
- assessment_id: "",
4925
+ category_id: '',
4926
+ assessment_id: '',
4651
4927
  };
4652
4928
  break;
4653
4929
  case 'new-checkpoints':
@@ -4670,8 +4946,13 @@ class WorkflowComplianceComponent {
4670
4946
  userObj.push(ele.employee_id);
4671
4947
  });
4672
4948
  this.responsibilityForm.reviewers.list = this.setList(this.reviewersList, userObj, 'employee_id');
4673
- this.responsibilityForm.groupReviewers = { list: (((_a = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups) === null || _a === void 0 ? void 0 : _a.length) > 0) ? selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups : [] };
4674
- this.responsibilityForm.reviewers.sequentialWorkflow = ((_d = (_c = (_b = this.responsibilityForm) === null || _b === void 0 ? void 0 : _b.groupReviewers) === null || _c === void 0 ? void 0 : _c.list) === null || _d === void 0 ? void 0 : _d.length) > 0 ? false : this.responsibilityForm.reviewers.sequentialWorkflow;
4949
+ this.responsibilityForm.groupReviewers = {
4950
+ list: ((_a = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups) === null || _a === void 0 ? void 0 : _a.length) > 0 ? selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups : [],
4951
+ };
4952
+ this.responsibilityForm.reviewers.sequentialWorkflow =
4953
+ ((_d = (_c = (_b = this.responsibilityForm) === null || _b === void 0 ? void 0 : _b.groupReviewers) === null || _c === void 0 ? void 0 : _c.list) === null || _d === void 0 ? void 0 : _d.length) > 0
4954
+ ? false
4955
+ : this.responsibilityForm.reviewers.sequentialWorkflow;
4675
4956
  }
4676
4957
  saveOverseerData(selectedItems, type) {
4677
4958
  var _a, _b;
@@ -4679,12 +4960,14 @@ class WorkflowComplianceComponent {
4679
4960
  case 'overseerList':
4680
4961
  let overseerselectedlist = this.returnIds(selectedItems.users, 'employee_id');
4681
4962
  this.responsibilityForm.overseers.list = this.setList(this.overseersList, overseerselectedlist, 'employee_id');
4682
- this.responsibilityForm.overseersGroups['list'] = (((_a = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups) === null || _a === void 0 ? void 0 : _a.length) > 0) ? selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups : [];
4963
+ this.responsibilityForm.overseersGroups['list'] =
4964
+ ((_a = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups) === null || _a === void 0 ? void 0 : _a.length) > 0 ? selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups : [];
4683
4965
  break;
4684
4966
  case 'overseerNotifyList':
4685
4967
  let overseerselectedNotifylist = this.returnIds(selectedItems.users, 'employee_id');
4686
4968
  this.responsibilityForm.overseers.notifyList = this.setList(this.overseersList, overseerselectedNotifylist, 'employee_id');
4687
- this.responsibilityForm.overseersGroups['notifyList'] = (((_b = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups) === null || _b === void 0 ? void 0 : _b.length) > 0) ? selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups : [];
4969
+ this.responsibilityForm.overseersGroups['notifyList'] =
4970
+ ((_b = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups) === null || _b === void 0 ? void 0 : _b.length) > 0 ? selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.groups : [];
4688
4971
  break;
4689
4972
  }
4690
4973
  }
@@ -4694,59 +4977,95 @@ class WorkflowComplianceComponent {
4694
4977
  this.activeDeselector();
4695
4978
  this.responsibilityForm.responsibility = {
4696
4979
  name: event.report_name,
4697
- keyResponsibility: (event.key_compliance) ? true : false,
4980
+ keyResponsibility: event.key_compliance ? true : false,
4698
4981
  };
4699
- const newStartDate = event.start_date || event.start_date != null || event.start_date !== '' ? new Date(event.start_date * 1000) : new Date();
4700
- const pvtTemplate = event.frequency_template && event.frequency_template !== '' ? event.frequency_template : event.frequency;
4982
+ const newStartDate = event.start_date || event.start_date != null || event.start_date !== ''
4983
+ ? new Date(event.start_date * 1000)
4984
+ : new Date();
4985
+ const pvtTemplate = event.frequency_template && event.frequency_template !== ''
4986
+ ? event.frequency_template
4987
+ : event.frequency;
4701
4988
  const frequencyDetailsObject = this.frequencyService.shortHand_freqCal(pvtTemplate, newStartDate.getDate(), newStartDate.getMonth(), newStartDate.getFullYear());
4702
4989
  this.responsibilityForm.frequency_details = frequencyDetailsObject === null || frequencyDetailsObject === void 0 ? void 0 : frequencyDetailsObject.pattern;
4703
4990
  event.frequency_details = this.responsibilityForm.frequency_details;
4704
4991
  event.frequency_time = '23:59:00';
4705
- event.reminder_before_days = event.remind_days_before_due_date ? event.remind_days_before_due_date : 2;
4706
- ;
4707
- event.failed_after_days = event.mark_failed_after ? event.mark_failed_after : 2;
4992
+ event.reminder_before_days = event.remind_days_before_due_date
4993
+ ? event.remind_days_before_due_date
4994
+ : 2;
4995
+ event.failed_after_days = event.mark_failed_after
4996
+ ? event.mark_failed_after
4997
+ : 2;
4708
4998
  event.lifecycle_details = '0000-00-00~~0';
4709
4999
  event.start_of_day_utc = this.frequencyService.frameworkStartDate(event);
4710
5000
  event.on_completion_of = [];
4711
5001
  event.dom_utc = new Date().getTime();
4712
- event.continuous_failed_days = frequencyDetailsObject.continuous_failed_days;
4713
- this.responsibilityForm.frequency = this.responsibilityForm.frequency_details;
5002
+ event.continuous_failed_days =
5003
+ frequencyDetailsObject.continuous_failed_days;
5004
+ this.responsibilityForm.frequency =
5005
+ this.responsibilityForm.frequency_details;
4714
5006
  this.responsibilityForm.frequency_time = '23:59:00';
4715
- this.responsibilityForm.reminder_before_days = event.remind_days_before_due_date ? event.remind_days_before_due_date : 2;
4716
- ;
4717
- this.responsibilityForm.failed_after_days = event.mark_failed_after ? event.mark_failed_after : 2;
5007
+ this.responsibilityForm.reminder_before_days =
5008
+ event.remind_days_before_due_date ? event.remind_days_before_due_date : 2;
5009
+ this.responsibilityForm.failed_after_days = event.mark_failed_after
5010
+ ? event.mark_failed_after
5011
+ : 2;
4718
5012
  this.responsibilityForm.lifecycleDetails = '0000-00-00~~0';
4719
- this.responsibilityForm.start_of_day_utc = this.frequencyService.frameworkStartDate(event).toFixed().toString();
5013
+ this.responsibilityForm.start_of_day_utc = this.frequencyService
5014
+ .frameworkStartDate(event)
5015
+ .toFixed()
5016
+ .toString();
4720
5017
  this.responsibilityForm.on_completion_of = [];
4721
5018
  this.responsibilityForm.dom_utc = new Date().getTime();
4722
- this.responsibilityForm.description = event.remarks.trim() != '' ? event.remarks : '';
4723
- this.responsibilityForm.customTags = event.custom_tags && event.custom_tags !== null && event.custom_tags !== 'null' && event.custom_tags !== '' ? JSON.parse(event.custom_tags) : [];
4724
- this.responsibilityForm.objective = event.control_objective ? event.control_objective : '';
5019
+ this.responsibilityForm.description =
5020
+ event.remarks.trim() != '' ? event.remarks : '';
5021
+ this.responsibilityForm.customTags =
5022
+ event.custom_tags &&
5023
+ event.custom_tags !== null &&
5024
+ event.custom_tags !== 'null' &&
5025
+ event.custom_tags !== ''
5026
+ ? JSON.parse(event.custom_tags)
5027
+ : [];
5028
+ this.responsibilityForm.objective = event.control_objective
5029
+ ? event.control_objective
5030
+ : '';
4725
5031
  this.responsibilityForm.category = this.setList(this.allCategories, [event.category_id], 'category_id'); //
4726
5032
  this.responsibilityForm.reviewers.reviewFrequency.reviewCompleteDays = 2;
4727
5033
  this.responsibilityForm.reviewers.reviewFrequency.reviewNOtCompletedDays = 2;
4728
- this.responsibilityForm.rc = this.responsibilityCentersList.find((rc) => rc.rc_id === event.entity_id) ? [this.responsibilityCentersList.find((rc) => rc.rc_id === event.entity_id)] : [];
5034
+ this.responsibilityForm.rc = this.responsibilityCentersList.find((rc) => rc.rc_id === event.entity_id)
5035
+ ? [
5036
+ this.responsibilityCentersList.find((rc) => rc.rc_id === event.entity_id),
5037
+ ]
5038
+ : [];
4729
5039
  this.responsibilityForm.riskClass = this.isRiskEnable ? 1 : 2;
4730
5040
  this.responsibilityForm.private_library_id = event.report_id;
4731
- this.responsibilityForm.frequency = this.responsibilityForm.frequency_details;
5041
+ this.responsibilityForm.frequency =
5042
+ this.responsibilityForm.frequency_details;
4732
5043
  this.responsibilityForm.classification = this.isRiskEnable ? 1 : 2;
4733
- this.responsibilityForm.continuous_failed_days = frequencyDetailsObject.continuous_failed_days;
4734
- this.responsibilityForm.startDate = this.frequencyService.frameworkStartDate(event);
5044
+ this.responsibilityForm.continuous_failed_days =
5045
+ frequencyDetailsObject.continuous_failed_days;
5046
+ this.responsibilityForm.startDate =
5047
+ this.frequencyService.frameworkStartDate(event);
4735
5048
  this.responsibilityForm.formatAndEvidence = {
4736
5049
  evidenceRequired: event.report_upload_flag ? true : false,
4737
5050
  formatFiles: event.report_format,
4738
- formatLinks: !(event.report_format_link) || event.report_format_link == '' ? [] : [event.report_format_link],
4739
- formatRequired: (((_a = event.report_format) === null || _a === void 0 ? void 0 : _a.length) > 0 || ((event.report_format_link) && event.report_format_link != '')) ? true : false
5051
+ formatLinks: !event.report_format_link || event.report_format_link == ''
5052
+ ? []
5053
+ : [event.report_format_link],
5054
+ formatRequired: ((_a = event.report_format) === null || _a === void 0 ? void 0 : _a.length) > 0 ||
5055
+ (event.report_format_link && event.report_format_link != '')
5056
+ ? true
5057
+ : false,
4740
5058
  };
4741
5059
  this.responsibilityForm.audit_category_details = {
4742
5060
  category_id: 0,
4743
5061
  sample: 5,
4744
5062
  percentage: 30,
4745
5063
  frequency_pattern: '1~0~3~1',
4746
- frequency_time: '23:59:00'
5064
+ frequency_time: '23:59:00',
4747
5065
  };
4748
5066
  event.frequency_time = '11:59 pm';
4749
- if (event.frequency_details !== '' && event.frequency_details !== '5~0~0~0') {
5067
+ if (event.frequency_details !== '' &&
5068
+ event.frequency_details !== '5~0~0~0') {
4750
5069
  this.frequencyPopulation(event);
4751
5070
  }
4752
5071
  else {
@@ -4765,7 +5084,8 @@ class WorkflowComplianceComponent {
4765
5084
  checkedMoreOptions.push('CATEGORY');
4766
5085
  this.moreOptions.CATEGORY = true;
4767
5086
  }
4768
- if (((_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.formatAndEvidence) === null || _d === void 0 ? void 0 : _d.evidenceRequired) || ((_f = (_e = this.responsibilityForm) === null || _e === void 0 ? void 0 : _e.formatAndEvidence) === null || _f === void 0 ? void 0 : _f.formatRequired)) {
5087
+ if (((_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.formatAndEvidence) === null || _d === void 0 ? void 0 : _d.evidenceRequired) ||
5088
+ ((_f = (_e = this.responsibilityForm) === null || _e === void 0 ? void 0 : _e.formatAndEvidence) === null || _f === void 0 ? void 0 : _f.formatRequired)) {
4769
5089
  checkedMoreOptions.push('FORMATE_EVIDENCE');
4770
5090
  this.moreOptions.FORMATE_EVIDENCE = true;
4771
5091
  }
@@ -4773,11 +5093,13 @@ class WorkflowComplianceComponent {
4773
5093
  checkedMoreOptions.push('RC');
4774
5094
  this.moreOptions.RC = true;
4775
5095
  }
5096
+ console.log('dwcewdec ewfwe ===>', event, this.responsibilityForm);
4776
5097
  this.populateOption.emit(checkedMoreOptions);
4777
5098
  // event.placeholder
4778
5099
  }
4779
5100
  assignFromFramework(freqObj) {
4780
5101
  var _a, _b, _c, _d, _e, _f, _g, _h;
5102
+ console.log('objec ===>', freqObj);
4781
5103
  if (freqObj.data) {
4782
5104
  // this.reset();
4783
5105
  this.activeDeselector();
@@ -4792,7 +5114,8 @@ class WorkflowComplianceComponent {
4792
5114
  event.start_of_day_utc = Date.now() / 1000;
4793
5115
  event.on_completion_of = [];
4794
5116
  event.dom_utc = new Date().getTime();
4795
- event.continuous_failed_days = frequencyDetailsObject.continuous_failed_days;
5117
+ event.continuous_failed_days =
5118
+ frequencyDetailsObject.continuous_failed_days;
4796
5119
  this.getFrequencyPlaceholder(event);
4797
5120
  event.placeholder = this.frequencyPlaceholder;
4798
5121
  event.frequency_time = '11:59 pm';
@@ -4802,7 +5125,8 @@ class WorkflowComplianceComponent {
4802
5125
  this.responsibilityForm.frequency = (_c = frequencyDetailsObject === null || frequencyDetailsObject === void 0 ? void 0 : frequencyDetailsObject.pattern) !== null && _c !== void 0 ? _c : '';
4803
5126
  this.responsibilityForm.startDate = event.start_of_day_utc;
4804
5127
  this.responsibilityForm.reminder_before_days = event.reminder_before_days;
4805
- this.responsibilityForm.continuous_failed_days = event.continuous_failed_days;
5128
+ this.responsibilityForm.continuous_failed_days =
5129
+ event.continuous_failed_days;
4806
5130
  this.responsibilityForm.failed_after_days = event.failed_after_days;
4807
5131
  this.selectedFrameworkValues = (_d = freqObj.selectedFrameworkData) !== null && _d !== void 0 ? _d : undefined;
4808
5132
  if ((_e = freqObj === null || freqObj === void 0 ? void 0 : freqObj.data) === null || _e === void 0 ? void 0 : _e.description) {
@@ -4855,11 +5179,17 @@ class WorkflowComplianceComponent {
4855
5179
  const assignees = cloneDeep((_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.assignees) === null || _d === void 0 ? void 0 : _d.list);
4856
5180
  const assigneeGroupList = cloneDeep((_f = (_e = this.responsibilityForm) === null || _e === void 0 ? void 0 : _e.assigneeGroups) === null || _f === void 0 ? void 0 : _f.list);
4857
5181
  const reviewers = cloneDeep(this.responsibilityForm.reviewers.list);
4858
- const groupReviewersList = this.featureFlag_groups ? cloneDeep((_h = (_g = this.responsibilityForm) === null || _g === void 0 ? void 0 : _g.groupReviewers) === null || _h === void 0 ? void 0 : _h.list) : [];
5182
+ const groupReviewersList = this.featureFlag_groups
5183
+ ? cloneDeep((_h = (_g = this.responsibilityForm) === null || _g === void 0 ? void 0 : _g.groupReviewers) === null || _h === void 0 ? void 0 : _h.list)
5184
+ : [];
4859
5185
  const overseerList = cloneDeep((_k = (_j = this.responsibilityForm) === null || _j === void 0 ? void 0 : _j.overseers) === null || _k === void 0 ? void 0 : _k.list);
4860
- const groupOverseerList = this.featureFlag_groups ? cloneDeep((_m = (_l = this.responsibilityForm) === null || _l === void 0 ? void 0 : _l.overseersGroups) === null || _m === void 0 ? void 0 : _m.list) : [];
5186
+ const groupOverseerList = this.featureFlag_groups
5187
+ ? cloneDeep((_m = (_l = this.responsibilityForm) === null || _l === void 0 ? void 0 : _l.overseersGroups) === null || _m === void 0 ? void 0 : _m.list)
5188
+ : [];
4861
5189
  const notifyOverseers = cloneDeep((_p = (_o = this.responsibilityForm) === null || _o === void 0 ? void 0 : _o.overseers) === null || _p === void 0 ? void 0 : _p.notifyList);
4862
- const groupNotifyOverseers = this.featureFlag_groups ? cloneDeep((_r = (_q = this.responsibilityForm) === null || _q === void 0 ? void 0 : _q.overseersGroups) === null || _r === void 0 ? void 0 : _r.notifyList) : [];
5190
+ const groupNotifyOverseers = this.featureFlag_groups
5191
+ ? cloneDeep((_r = (_q = this.responsibilityForm) === null || _q === void 0 ? void 0 : _q.overseersGroups) === null || _r === void 0 ? void 0 : _r.notifyList)
5192
+ : [];
4863
5193
  assignors === null || assignors === void 0 ? void 0 : assignors.forEach((user) => {
4864
5194
  assignorAndAssigneesIds.push(user.member_id);
4865
5195
  this.assignorId.push(user.member_id);
@@ -4874,7 +5204,7 @@ class WorkflowComplianceComponent {
4874
5204
  this.assignorId.push(this.memberId);
4875
5205
  }
4876
5206
  allUsers === null || allUsers === void 0 ? void 0 : allUsers.forEach((user) => {
4877
- allUsersIds.push((user === null || user === void 0 ? void 0 : user.my_member_id));
5207
+ allUsersIds.push(user === null || user === void 0 ? void 0 : user.my_member_id);
4878
5208
  });
4879
5209
  assigneeGroupList === null || assigneeGroupList === void 0 ? void 0 : assigneeGroupList.forEach((group) => {
4880
5210
  assigneeGroupIds.push(group === null || group === void 0 ? void 0 : group.group_id);
@@ -4914,29 +5244,39 @@ class WorkflowComplianceComponent {
4914
5244
  groupOverseerIds = [...new Set(groupOverseerIds)];
4915
5245
  this.assignorsList = behalfUsers.filter((user) => !(overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user.member_id)));
4916
5246
  this.assigneesList = allUsers;
4917
- this.reviewersList = allUsers.filter((user) => !((overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
4918
- this.overseersList = allUsers.filter((user) => !((assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5247
+ this.reviewersList = allUsers.filter((user) => !((overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5248
+ (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5249
+ this.overseersList = allUsers.filter((user) => !((assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5250
+ (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
4919
5251
  this.disableList(allUsers, assignorAndAssigneesIds, assigneeIds, reviewersIds, overseerIds);
4920
5252
  if (this.featureFlag_groups) {
4921
- this.groupAssigneeList = allGroups.filter((group) => !((groupReviewerIds === null || groupReviewerIds === void 0 ? void 0 : groupReviewerIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) || (groupOverseerIds === null || groupOverseerIds === void 0 ? void 0 : groupOverseerIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
5253
+ this.groupAssigneeList = allGroups.filter((group) => !((groupReviewerIds === null || groupReviewerIds === void 0 ? void 0 : groupReviewerIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) ||
5254
+ (groupOverseerIds === null || groupOverseerIds === void 0 ? void 0 : groupOverseerIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
4922
5255
  this.reviewerMemberIdsList = this.assignUserMemberId(this.allUsersList);
4923
5256
  this.overseersList = this.assignUserMemberId(this.allUsersList);
4924
- this.groupReviewerList = allGroups.filter((group) => !((groupOverseerIds === null || groupOverseerIds === void 0 ? void 0 : groupOverseerIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) || (assigneeGroupIds === null || assigneeGroupIds === void 0 ? void 0 : assigneeGroupIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
4925
- this.groupOverseerList = allGroups.filter((group) => !((assigneeGroupIds === null || assigneeGroupIds === void 0 ? void 0 : assigneeGroupIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) || (groupReviewerIds === null || groupReviewerIds === void 0 ? void 0 : groupReviewerIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
5257
+ this.groupReviewerList = allGroups.filter((group) => !((groupOverseerIds === null || groupOverseerIds === void 0 ? void 0 : groupOverseerIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) ||
5258
+ (assigneeGroupIds === null || assigneeGroupIds === void 0 ? void 0 : assigneeGroupIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
5259
+ this.groupOverseerList = allGroups.filter((group) => !((assigneeGroupIds === null || assigneeGroupIds === void 0 ? void 0 : assigneeGroupIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) ||
5260
+ (groupReviewerIds === null || groupReviewerIds === void 0 ? void 0 : groupReviewerIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
4926
5261
  }
4927
5262
  }
4928
5263
  disableList(allUsers, assignorAndAssigneesIds, assigneeIds, reviewersIds, overseerIds) {
4929
- let disableAssigneeList = allUsers.filter((user) => ((reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5264
+ let disableAssigneeList = allUsers.filter((user) => (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5265
+ (overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)));
4930
5266
  this.disableAssigneeIds = this.returnIds(disableAssigneeList, 'my_member_id');
4931
5267
  this.disableRadioAssignee = this.returnIds(disableAssigneeList, 'employee_id');
4932
- let disableReviewerList = allUsers.filter((user) => ((overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5268
+ let disableReviewerList = allUsers.filter((user) => (overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5269
+ (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)));
4933
5270
  this.disableReviewerIds = this.returnIds(disableReviewerList, 'employee_id');
4934
- let disableOverseerList = allUsers.filter((user) => ((assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5271
+ let disableOverseerList = allUsers.filter((user) => (assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5272
+ (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)));
4935
5273
  this.disableOverseerIds = this.returnIds(disableOverseerList, 'employee_id');
4936
5274
  if (this.featureFlag_groups) {
4937
- let disableReviewerList = allUsers.filter((user) => ((overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5275
+ let disableReviewerList = allUsers.filter((user) => (overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5276
+ (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)));
4938
5277
  this.disableReviewerIds = this.returnIds(disableReviewerList, 'member_id');
4939
- let disableOverseersList = allUsers.filter((user) => ((assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5278
+ let disableOverseersList = allUsers.filter((user) => (assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5279
+ (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)));
4940
5280
  this.disableOverseerIds = this.returnIds(disableOverseersList, 'member_id');
4941
5281
  }
4942
5282
  }
@@ -4957,13 +5297,21 @@ class WorkflowComplianceComponent {
4957
5297
  const allGroups = cloneDeep(this.OrgGroup);
4958
5298
  const assignors = cloneDeep(this.responsibilityForm.assignors.list);
4959
5299
  const assignees = cloneDeep((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.assignees) === null || _b === void 0 ? void 0 : _b.list);
4960
- const assigneeGroupList = this.featureFlag_groups ? cloneDeep((_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.assigneeGroups) === null || _d === void 0 ? void 0 : _d.list) : [];
5300
+ const assigneeGroupList = this.featureFlag_groups
5301
+ ? cloneDeep((_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.assigneeGroups) === null || _d === void 0 ? void 0 : _d.list)
5302
+ : [];
4961
5303
  const reviewers = cloneDeep((_f = (_e = this.responsibilityForm) === null || _e === void 0 ? void 0 : _e.reviewers) === null || _f === void 0 ? void 0 : _f.list);
4962
- const groupReviewersList = this.featureFlag_groups ? cloneDeep((_h = (_g = this.responsibilityForm) === null || _g === void 0 ? void 0 : _g.groupReviewers) === null || _h === void 0 ? void 0 : _h.list) : [];
5304
+ const groupReviewersList = this.featureFlag_groups
5305
+ ? cloneDeep((_h = (_g = this.responsibilityForm) === null || _g === void 0 ? void 0 : _g.groupReviewers) === null || _h === void 0 ? void 0 : _h.list)
5306
+ : [];
4963
5307
  const overseerList = cloneDeep((_k = (_j = this.responsibilityForm) === null || _j === void 0 ? void 0 : _j.overseers) === null || _k === void 0 ? void 0 : _k.list);
4964
- const groupOverseerList = this.featureFlag_groups ? cloneDeep((_m = (_l = this.responsibilityForm) === null || _l === void 0 ? void 0 : _l.overseersGroups) === null || _m === void 0 ? void 0 : _m.list) : [];
5308
+ const groupOverseerList = this.featureFlag_groups
5309
+ ? cloneDeep((_m = (_l = this.responsibilityForm) === null || _l === void 0 ? void 0 : _l.overseersGroups) === null || _m === void 0 ? void 0 : _m.list)
5310
+ : [];
4965
5311
  const notifyOverseers = cloneDeep((_p = (_o = this.responsibilityForm) === null || _o === void 0 ? void 0 : _o.overseers) === null || _p === void 0 ? void 0 : _p.notifyList);
4966
- const groupNotifyOverseers = this.featureFlag_groups ? cloneDeep((_r = (_q = this.responsibilityForm) === null || _q === void 0 ? void 0 : _q.overseersGroups) === null || _r === void 0 ? void 0 : _r.notifyList) : [];
5312
+ const groupNotifyOverseers = this.featureFlag_groups
5313
+ ? cloneDeep((_r = (_q = this.responsibilityForm) === null || _q === void 0 ? void 0 : _q.overseersGroups) === null || _r === void 0 ? void 0 : _r.notifyList)
5314
+ : [];
4967
5315
  assignors === null || assignors === void 0 ? void 0 : assignors.forEach((user) => {
4968
5316
  this.assignorId.push(user === null || user === void 0 ? void 0 : user.member_id);
4969
5317
  assignorAndAssigneesIds.push(user === null || user === void 0 ? void 0 : user.member_id);
@@ -5014,14 +5362,31 @@ class WorkflowComplianceComponent {
5014
5362
  this.overseerIds = [...new Set(this.overseerIds)];
5015
5363
  this.assignorsList = behalfUsers.filter((user) => !(overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user.member_id)));
5016
5364
  this.assigneesList = (_v = this.programPeopleList) === null || _v === void 0 ? void 0 : _v.assigneesList;
5017
- this.reviewersList = (_w = this.programPeopleList) === null || _w === void 0 ? void 0 : _w.reviewersList.filter((user) => !((overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5018
- this.overseersList = (_x = this.programPeopleList) === null || _x === void 0 ? void 0 : _x.overseersList.filter((user) => !((assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5365
+ this.reviewersList = (_w = this.programPeopleList) === null || _w === void 0 ? void 0 : _w.reviewersList.filter((user) => !((overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5366
+ (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5367
+ this.overseersList = (_x = this.programPeopleList) === null || _x === void 0 ? void 0 : _x.overseersList.filter((user) => !((assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5368
+ (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5019
5369
  if (this.featureFlag_groups) {
5020
- this.groupAssigneeList = this.selectedProgram && ((_z = (_y = this.selectedProgram) === null || _y === void 0 ? void 0 : _y.assignee_group_ids) === null || _z === void 0 ? void 0 : _z.length) > 0 ? this.programGroupList(allGroups, (_0 = this.selectedProgram) === null || _0 === void 0 ? void 0 : _0.assignee_group_ids) : allGroups.filter((group) => !((groupReviewerIds === null || groupReviewerIds === void 0 ? void 0 : groupReviewerIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) || (groupOverseerIds === null || groupOverseerIds === void 0 ? void 0 : groupOverseerIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
5370
+ this.groupAssigneeList =
5371
+ this.selectedProgram &&
5372
+ ((_z = (_y = this.selectedProgram) === null || _y === void 0 ? void 0 : _y.assignee_group_ids) === null || _z === void 0 ? void 0 : _z.length) > 0
5373
+ ? this.programGroupList(allGroups, (_0 = this.selectedProgram) === null || _0 === void 0 ? void 0 : _0.assignee_group_ids)
5374
+ : allGroups.filter((group) => !((groupReviewerIds === null || groupReviewerIds === void 0 ? void 0 : groupReviewerIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) ||
5375
+ (groupOverseerIds === null || groupOverseerIds === void 0 ? void 0 : groupOverseerIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
5021
5376
  this.reviewerMemberIdsList = this.assignUserMemberId(this.programPeopleList.reviewersList);
5022
- this.groupReviewerList = this.selectedProgram && ((_2 = (_1 = this.selectedProgram) === null || _1 === void 0 ? void 0 : _1.reviewer_group_ids) === null || _2 === void 0 ? void 0 : _2.length) > 0 ? this.programGroupList(allGroups, (_3 = this.selectedProgram) === null || _3 === void 0 ? void 0 : _3.reviewer_group_ids) : allGroups.filter((group) => !((groupOverseerIds === null || groupOverseerIds === void 0 ? void 0 : groupOverseerIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) || (assigneeGroupIds === null || assigneeGroupIds === void 0 ? void 0 : assigneeGroupIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
5377
+ this.groupReviewerList =
5378
+ this.selectedProgram &&
5379
+ ((_2 = (_1 = this.selectedProgram) === null || _1 === void 0 ? void 0 : _1.reviewer_group_ids) === null || _2 === void 0 ? void 0 : _2.length) > 0
5380
+ ? this.programGroupList(allGroups, (_3 = this.selectedProgram) === null || _3 === void 0 ? void 0 : _3.reviewer_group_ids)
5381
+ : allGroups.filter((group) => !((groupOverseerIds === null || groupOverseerIds === void 0 ? void 0 : groupOverseerIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) ||
5382
+ (assigneeGroupIds === null || assigneeGroupIds === void 0 ? void 0 : assigneeGroupIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
5023
5383
  this.overseersList = this.assignUserMemberId(this.programPeopleList.overseersList);
5024
- this.groupOverseerList = this.selectedProgram && ((_6 = (_5 = (_4 = this.selectedProgram) === null || _4 === void 0 ? void 0 : _4.overseers) === null || _5 === void 0 ? void 0 : _5.cc_email_groups) === null || _6 === void 0 ? void 0 : _6.length) > 0 ? this.programGroupList(allGroups, (_8 = (_7 = this.selectedProgram) === null || _7 === void 0 ? void 0 : _7.overseers) === null || _8 === void 0 ? void 0 : _8.cc_email_groups) : allGroups.filter((group) => !((assigneeGroupIds === null || assigneeGroupIds === void 0 ? void 0 : assigneeGroupIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) || (groupReviewerIds === null || groupReviewerIds === void 0 ? void 0 : groupReviewerIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
5384
+ this.groupOverseerList =
5385
+ this.selectedProgram &&
5386
+ ((_6 = (_5 = (_4 = this.selectedProgram) === null || _4 === void 0 ? void 0 : _4.overseers) === null || _5 === void 0 ? void 0 : _5.cc_email_groups) === null || _6 === void 0 ? void 0 : _6.length) > 0
5387
+ ? this.programGroupList(allGroups, (_8 = (_7 = this.selectedProgram) === null || _7 === void 0 ? void 0 : _7.overseers) === null || _8 === void 0 ? void 0 : _8.cc_email_groups)
5388
+ : allGroups.filter((group) => !((assigneeGroupIds === null || assigneeGroupIds === void 0 ? void 0 : assigneeGroupIds.includes(group === null || group === void 0 ? void 0 : group.group_id)) ||
5389
+ (groupReviewerIds === null || groupReviewerIds === void 0 ? void 0 : groupReviewerIds.includes(group === null || group === void 0 ? void 0 : group.group_id))));
5025
5390
  }
5026
5391
  this.disableProgramList(assignorAndAssigneesIds, assigneeIds, reviewersIds, overseerIds);
5027
5392
  }
@@ -5031,23 +5396,28 @@ class WorkflowComplianceComponent {
5031
5396
  let assigneeProgram = [];
5032
5397
  let groupIds = args[0];
5033
5398
  if (this.selectedProgram && ((_a = this.selectedProgram) === null || _a === void 0 ? void 0 : _a.assignee_group_ids)) {
5034
- assigneeProgram = allGroups.filter((group) => (groupIds.includes(group.group_id)));
5399
+ assigneeProgram = allGroups.filter((group) => groupIds.includes(group.group_id));
5035
5400
  }
5036
5401
  return assigneeProgram;
5037
5402
  }
5038
5403
  disableProgramList(assignorAndAssigneesIds, assigneeIds, reviewersIds, overseerIds) {
5039
5404
  var _a, _b, _c;
5040
- let disableAssigneeList = (_a = this.programPeopleList) === null || _a === void 0 ? void 0 : _a.assigneesList.filter((user) => ((reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5405
+ let disableAssigneeList = (_a = this.programPeopleList) === null || _a === void 0 ? void 0 : _a.assigneesList.filter((user) => (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5406
+ (overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)));
5041
5407
  this.disableAssigneeIds = this.returnIds(disableAssigneeList, 'my_member_id');
5042
5408
  this.disableRadioAssignee = this.returnIds(disableAssigneeList, 'employee_id');
5043
- let disableReviewerList = (_b = this.programPeopleList) === null || _b === void 0 ? void 0 : _b.reviewersList.filter((user) => ((overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5409
+ let disableReviewerList = (_b = this.programPeopleList) === null || _b === void 0 ? void 0 : _b.reviewersList.filter((user) => (overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5410
+ (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)));
5044
5411
  this.disableReviewerIds = this.returnIds(disableReviewerList, 'employee_id');
5045
- let disableOverseerList = (_c = this.programPeopleList) === null || _c === void 0 ? void 0 : _c.overseersList.filter((user) => ((assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5412
+ let disableOverseerList = (_c = this.programPeopleList) === null || _c === void 0 ? void 0 : _c.overseersList.filter((user) => (assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5413
+ (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)));
5046
5414
  this.disableOverseerIds = this.returnIds(disableOverseerList, 'employee_id');
5047
5415
  if (this.featureFlag_groups) {
5048
- let disableReviewerList = this.reviewerMemberIdsList.filter((user) => ((overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5416
+ let disableReviewerList = this.reviewerMemberIdsList.filter((user) => (overseerIds === null || overseerIds === void 0 ? void 0 : overseerIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5417
+ (assigneeIds === null || assigneeIds === void 0 ? void 0 : assigneeIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)));
5049
5418
  this.disableReviewerIds = this.returnIds(disableReviewerList, 'member_id');
5050
- let disableOverseerList = this.overseersList.filter((user) => ((assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) || (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id))));
5419
+ let disableOverseerList = this.overseersList.filter((user) => (assignorAndAssigneesIds === null || assignorAndAssigneesIds === void 0 ? void 0 : assignorAndAssigneesIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)) ||
5420
+ (reviewersIds === null || reviewersIds === void 0 ? void 0 : reviewersIds.includes(user === null || user === void 0 ? void 0 : user.my_member_id)));
5051
5421
  this.disableOverseerIds = this.returnIds(disableOverseerList, 'member_id');
5052
5422
  }
5053
5423
  }
@@ -5082,24 +5452,42 @@ class WorkflowComplianceComponent {
5082
5452
  validateResponsibility() {
5083
5453
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
5084
5454
  this.submitted = true;
5085
- if (this.responsibilityForm.assignors.enable && ((_a = this.responsibilityForm.assignors.list) === null || _a === void 0 ? void 0 : _a.length) === 0) {
5086
- this.invalidType = "whom";
5455
+ if (this.responsibilityForm.assignors.enable &&
5456
+ ((_a = this.responsibilityForm.assignors.list) === null || _a === void 0 ? void 0 : _a.length) === 0) {
5457
+ this.invalidType = 'whom';
5087
5458
  return;
5088
5459
  }
5089
- if (!this.responsibilityForm.responsibility.name || this.responsibilityForm.responsibility.name.trim() == '') {
5460
+ if (!this.responsibilityForm.responsibility.name ||
5461
+ this.responsibilityForm.responsibility.name.trim() == '') {
5090
5462
  this.invalidType = 'what';
5091
5463
  }
5092
- else if (!((_c = (_b = this.responsibilityForm) === null || _b === void 0 ? void 0 : _b.assignees) === null || _c === void 0 ? void 0 : _c.list) || ((_f = (_e = (_d = this.responsibilityForm) === null || _d === void 0 ? void 0 : _d.assignees) === null || _e === void 0 ? void 0 : _e.list) === null || _f === void 0 ? void 0 : _f.length) == 0 && (!this.featureFlag_groups || ((!((_h = (_g = this.responsibilityForm) === null || _g === void 0 ? void 0 : _g.assigneeGroups) === null || _h === void 0 ? void 0 : _h.list) || ((_l = (_k = (_j = this.responsibilityForm) === null || _j === void 0 ? void 0 : _j.assigneeGroups) === null || _k === void 0 ? void 0 : _k.list) === null || _l === void 0 ? void 0 : _l.length) == 0) && this.featureFlag_groups))) {
5464
+ else if (!((_c = (_b = this.responsibilityForm) === null || _b === void 0 ? void 0 : _b.assignees) === null || _c === void 0 ? void 0 : _c.list) ||
5465
+ (((_f = (_e = (_d = this.responsibilityForm) === null || _d === void 0 ? void 0 : _d.assignees) === null || _e === void 0 ? void 0 : _e.list) === null || _f === void 0 ? void 0 : _f.length) == 0 &&
5466
+ (!this.featureFlag_groups ||
5467
+ ((!((_h = (_g = this.responsibilityForm) === null || _g === void 0 ? void 0 : _g.assigneeGroups) === null || _h === void 0 ? void 0 : _h.list) ||
5468
+ ((_l = (_k = (_j = this.responsibilityForm) === null || _j === void 0 ? void 0 : _j.assigneeGroups) === null || _k === void 0 ? void 0 : _k.list) === null || _l === void 0 ? void 0 : _l.length) == 0) &&
5469
+ this.featureFlag_groups)))) {
5093
5470
  this.invalidType = 'who';
5094
5471
  }
5095
- else if (!this.responsibilityForm.frequency || this.responsibilityForm.frequency == '' || this.responsibilityForm.frequency === '' || this.responsibilityForm.frequency === '5~0~0~0') {
5472
+ else if (!this.responsibilityForm.frequency ||
5473
+ this.responsibilityForm.frequency == '' ||
5474
+ this.responsibilityForm.frequency === '' ||
5475
+ this.responsibilityForm.frequency === '5~0~0~0') {
5096
5476
  this.invalidType = 'when';
5097
5477
  }
5098
5478
  else {
5099
5479
  this.invalidType = '';
5100
5480
  }
5101
- if (!this.responsibilityForm.responsibility.name || this.responsibilityForm.responsibility.name.trim() == ''
5102
- || (!this.responsibilityForm.frequency || this.responsibilityForm.frequency === '' || this.responsibilityForm.frequency === '5~0~0~0') || (((_m = this.responsibilityForm.assignees.list) === null || _m === void 0 ? void 0 : _m.length) == 0 && (!this.featureFlag_groups || ((!this.responsibilityForm.assigneeGroups.list || ((_o = this.responsibilityForm.assigneeGroups.list) === null || _o === void 0 ? void 0 : _o.length) == 0) && this.featureFlag_groups)))) {
5481
+ if (!this.responsibilityForm.responsibility.name ||
5482
+ this.responsibilityForm.responsibility.name.trim() == '' ||
5483
+ !this.responsibilityForm.frequency ||
5484
+ this.responsibilityForm.frequency === '' ||
5485
+ this.responsibilityForm.frequency === '5~0~0~0' ||
5486
+ (((_m = this.responsibilityForm.assignees.list) === null || _m === void 0 ? void 0 : _m.length) == 0 &&
5487
+ (!this.featureFlag_groups ||
5488
+ ((!this.responsibilityForm.assigneeGroups.list ||
5489
+ ((_o = this.responsibilityForm.assigneeGroups.list) === null || _o === void 0 ? void 0 : _o.length) == 0) &&
5490
+ this.featureFlag_groups)))) {
5103
5491
  return false;
5104
5492
  }
5105
5493
  else {
@@ -5110,22 +5498,26 @@ class WorkflowComplianceComponent {
5110
5498
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23;
5111
5499
  this.loader = true;
5112
5500
  this.uiKitService.isLoader = true;
5113
- let startDate = moment(parseInt(entrustForm.startDate) * 1000).format("YYYY-MM-DD HH:mm:ss");
5114
- startDate = moment(startDate.split(' ')[0] + " 00:00:00").format("YYYY-MM-DD HH:mm:ss");
5115
- const rcDetails = ((_a = entrustForm.rc) === null || _a === void 0 ? void 0 : _a.length) > 0 ? entrustForm.rc.map((rc) => {
5116
- if (rc) {
5117
- const rcDetailsArr = {
5118
- parent_rc_ids: rc.parent_rc_ids,
5119
- rc_id: rc.rc_id
5120
- };
5121
- return rcDetailsArr;
5122
- }
5123
- }) : [];
5124
- const rcDetailsIdArr = ((_b = entrustForm.rc) === null || _b === void 0 ? void 0 : _b.length) > 0 ? entrustForm.rc.map((rc) => {
5125
- if (rc) {
5126
- return rc.rc_id;
5127
- }
5128
- }) : [];
5501
+ let startDate = moment(parseInt(entrustForm.startDate) * 1000).format('YYYY-MM-DD HH:mm:ss');
5502
+ startDate = moment(startDate.split(' ')[0] + ' 00:00:00').format('YYYY-MM-DD HH:mm:ss');
5503
+ const rcDetails = ((_a = entrustForm.rc) === null || _a === void 0 ? void 0 : _a.length) > 0
5504
+ ? entrustForm.rc.map((rc) => {
5505
+ if (rc) {
5506
+ const rcDetailsArr = {
5507
+ parent_rc_ids: rc.parent_rc_ids,
5508
+ rc_id: rc.rc_id,
5509
+ };
5510
+ return rcDetailsArr;
5511
+ }
5512
+ })
5513
+ : [];
5514
+ const rcDetailsIdArr = ((_b = entrustForm.rc) === null || _b === void 0 ? void 0 : _b.length) > 0
5515
+ ? entrustForm.rc.map((rc) => {
5516
+ if (rc) {
5517
+ return rc.rc_id;
5518
+ }
5519
+ })
5520
+ : [];
5129
5521
  const moreOptions = this.moreOptions;
5130
5522
  const checkContinuousFailedValue = (details) => {
5131
5523
  const frequencyType = parseInt(details.split('~')[0]);
@@ -5147,7 +5539,7 @@ class WorkflowComplianceComponent {
5147
5539
  subProgramIds: (_c = ele === null || ele === void 0 ? void 0 : ele.child_id) === null || _c === void 0 ? void 0 : _c.filter((el) => {
5148
5540
  var _a;
5149
5541
  return (_a = this.responsibilityForm.category) === null || _a === void 0 ? void 0 : _a.includes(el);
5150
- })
5542
+ }),
5151
5543
  };
5152
5544
  linkedProgramIds === null || linkedProgramIds === void 0 ? void 0 : linkedProgramIds.push(program);
5153
5545
  linkedCategoryIds === null || linkedCategoryIds === void 0 ? void 0 : linkedCategoryIds.push(ele === null || ele === void 0 ? void 0 : ele.category_id);
@@ -5156,49 +5548,88 @@ class WorkflowComplianceComponent {
5156
5548
  let categoryIdsExceptDefault = [];
5157
5549
  categoryIdsExceptDefault = (_f = (_e = this.responsibilityForm) === null || _e === void 0 ? void 0 : _e.category) === null || _f === void 0 ? void 0 : _f.filter((el) => {
5158
5550
  var _a, _b, _c, _d, _e;
5159
- return (el !== ((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.category_id) && !((_e = (_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.program[0]) === null || _d === void 0 ? void 0 : _d.child_id) === null || _e === void 0 ? void 0 : _e.includes(el)));
5551
+ return (el !== ((_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.program[0]) === null || _b === void 0 ? void 0 : _b.category_id) &&
5552
+ !((_e = (_d = (_c = this.responsibilityForm) === null || _c === void 0 ? void 0 : _c.program[0]) === null || _d === void 0 ? void 0 : _d.child_id) === null || _e === void 0 ? void 0 : _e.includes(el)));
5160
5553
  });
5161
- this.combineUserAndUserGroupMembers((this.mode === 'EDIT' && this.responsibilityForm.assignees.whoCanComplete === 'ALL' && ((_j = (_h = (_g = this.rawResponsibility) === null || _g === void 0 ? void 0 : _g.userGroupIds) === null || _h === void 0 ? void 0 : _h.assigneeAllGroupIds) === null || _j === void 0 ? void 0 : _j.length)));
5162
- const remarks = (entrustForm.description.replace(/\ /g, '').trim() !== '') ? entrustForm.description : '';
5163
- const objective = (entrustForm.objective.replace(/\ /g, '').trim() !== '') ? entrustForm.objective : '';
5554
+ this.combineUserAndUserGroupMembers(this.mode === 'EDIT' &&
5555
+ this.responsibilityForm.assignees.whoCanComplete === 'ALL' &&
5556
+ ((_j = (_h = (_g = this.rawResponsibility) === null || _g === void 0 ? void 0 : _g.userGroupIds) === null || _h === void 0 ? void 0 : _h.assigneeAllGroupIds) === null || _j === void 0 ? void 0 : _j.length));
5557
+ const remarks = entrustForm.description.replace(/\ /g, '').trim() !== ''
5558
+ ? entrustForm.description
5559
+ : '';
5560
+ const objective = entrustForm.objective.replace(/\ /g, '').trim() !== ''
5561
+ ? entrustForm.objective
5562
+ : '';
5164
5563
  let payload = {
5165
5564
  app_association: [],
5166
5565
  assigned_to: this.returnIds(this.assigneeUserList, 'employee_id').toString(),
5167
- program_cat_ids: (moreOptions === null || moreOptions === void 0 ? void 0 : moreOptions.PROGRAM) ? (((_k = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.program) === null || _k === void 0 ? void 0 : _k.length) ? [(_l = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.program[0]) === null || _l === void 0 ? void 0 : _l.category_id] : []) : [],
5566
+ program_cat_ids: (moreOptions === null || moreOptions === void 0 ? void 0 : moreOptions.PROGRAM)
5567
+ ? ((_k = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.program) === null || _k === void 0 ? void 0 : _k.length)
5568
+ ? [(_l = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.program[0]) === null || _l === void 0 ? void 0 : _l.category_id]
5569
+ : []
5570
+ : [],
5168
5571
  linked_program_ids: linkedProgramIds,
5169
- linked_category_ids: this.getUniqueIds([...categoryIdsExceptDefault, ...linkedCategoryIds]),
5572
+ linked_category_ids: this.getUniqueIds([
5573
+ ...categoryIdsExceptDefault,
5574
+ ...linkedCategoryIds,
5575
+ ]),
5170
5576
  // category_id: (this.responsibilityForm?.program_selected_ids?.length > 0) ? this.responsibilityForm?.category_id : '',
5171
- category_id: (((_o = (_m = this.responsibilityForm) === null || _m === void 0 ? void 0 : _m.program_selected_ids) === null || _o === void 0 ? void 0 : _o.length) > 0) ? (_r = this.getUniqueIds([...(_p = this.responsibilityForm) === null || _p === void 0 ? void 0 : _p.category, ...linkedCategoryIds, ...[(_q = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.program[0]) === null || _q === void 0 ? void 0 : _q.category_id]])) === null || _r === void 0 ? void 0 : _r.toString() : '',
5172
- cc_email: (moreOptions.OVERSEER) ? this.returnIds(this.overseerUserList, 'employee_id').toString() : '',
5173
- checkpoint_description: (moreOptions.CHECKPOINTS) ? entrustForm.checkpointInstruction : '',
5174
- checkpoint_details: (moreOptions.CHECKPOINTS) ? JSON.stringify(this.responsibilityForm.checkpoints) : '',
5577
+ category_id: ((_o = (_m = this.responsibilityForm) === null || _m === void 0 ? void 0 : _m.program_selected_ids) === null || _o === void 0 ? void 0 : _o.length) > 0
5578
+ ? (_r = this.getUniqueIds([
5579
+ ...(_p = this.responsibilityForm) === null || _p === void 0 ? void 0 : _p.category,
5580
+ ...linkedCategoryIds,
5581
+ ...[(_q = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.program[0]) === null || _q === void 0 ? void 0 : _q.category_id],
5582
+ ])) === null || _r === void 0 ? void 0 : _r.toString()
5583
+ : '',
5584
+ cc_email: moreOptions.OVERSEER
5585
+ ? this.returnIds(this.overseerUserList, 'employee_id').toString()
5586
+ : '',
5587
+ checkpoint_description: moreOptions.CHECKPOINTS
5588
+ ? entrustForm.checkpointInstruction
5589
+ : '',
5590
+ checkpoint_details: moreOptions.CHECKPOINTS
5591
+ ? JSON.stringify(this.responsibilityForm.checkpoints)
5592
+ : '',
5175
5593
  checkpoint_flag: 0,
5176
5594
  collaborator_mark_done: 0,
5177
5595
  comment: '',
5178
- continuous_failed_days: checkContinuousFailedValue(entrustForm.frequency) ? entrustForm.continuous_failed_days : 0,
5596
+ continuous_failed_days: checkContinuousFailedValue(entrustForm.frequency)
5597
+ ? entrustForm.continuous_failed_days
5598
+ : 0,
5179
5599
  cost_of_compliance: '',
5180
5600
  created_by: ((_s = entrustForm.assignors.list) === null || _s === void 0 ? void 0 : _s.length) < 1 ? 0 : this.memberId,
5181
5601
  creation_window: 0,
5182
5602
  custom_tags: JSON.stringify(entrustForm.customTags),
5183
- entity_tree: (moreOptions.RC) ? ((this.isResponsibilityRcLinkEnabled && this.responsibilityCenterType == 1) ? [] : rcDetails) : [],
5603
+ entity_tree: moreOptions.RC
5604
+ ? this.isResponsibilityRcLinkEnabled &&
5605
+ this.responsibilityCenterType == 1
5606
+ ? []
5607
+ : rcDetails
5608
+ : [],
5184
5609
  entrust_from_risk: this.openedFrom === 'RISK_TREATMENT' ? true : false,
5185
5610
  failed_after_days: entrustForm.failed_after_days,
5186
5611
  failed_time_utc: entrustForm.failed_time_utc,
5187
- failure_cc_email: (moreOptions.OVERSEER) ? this.returnIds(this.overseerUserNotifyList, 'employee_id').toString() : '',
5612
+ failure_cc_email: moreOptions.OVERSEER
5613
+ ? this.returnIds(this.overseerUserNotifyList, 'employee_id').toString()
5614
+ : '',
5188
5615
  frequency_details: entrustForm.frequency,
5189
- frequency_time: (_t = entrustForm.timeIn24Hr) !== null && _t !== void 0 ? _t : "23:59:00",
5616
+ frequency_time: (_t = entrustForm.timeIn24Hr) !== null && _t !== void 0 ? _t : '23:59:00',
5190
5617
  grc_object_id: 0,
5191
5618
  grc_relationship: '',
5192
5619
  if_testplan_failed: 0,
5193
5620
  impact: '',
5194
- isGroupAssignTo: (entrustForm.assignees.whoCanComplete == 'ANY_ONE') ? 1 : 0,
5621
+ isGroupAssignTo: entrustForm.assignees.whoCanComplete == 'ANY_ONE' ? 1 : 0,
5195
5622
  is_key_compliance: entrustForm.responsibility.keyResponsibility ? 1 : 0,
5196
5623
  library_report_id: 0,
5197
5624
  lifecycle_details: (_u = entrustForm.lifecycleDetails) !== null && _u !== void 0 ? _u : '0000-00-00~~0',
5198
- link_for_details: (moreOptions.FORMATE_EVIDENCE) ? entrustForm.formatAndEvidence.formatLinks : [],
5625
+ link_for_details: moreOptions.FORMATE_EVIDENCE
5626
+ ? entrustForm.formatAndEvidence.formatLinks
5627
+ : [],
5199
5628
  linkages: { compliance: [] },
5200
- member_id: ((_v = this.returnIds(entrustForm.assignors.list, 'member_id')) === null || _v === void 0 ? void 0 : _v.length) > 0 ? this.returnIds(entrustForm.assignors.list, 'member_id')[0] : this.memberId,
5201
- objective: (moreOptions.OBJECTIVE) ? objective : '',
5629
+ member_id: ((_v = this.returnIds(entrustForm.assignors.list, 'member_id')) === null || _v === void 0 ? void 0 : _v.length) > 0
5630
+ ? this.returnIds(entrustForm.assignors.list, 'member_id')[0]
5631
+ : this.memberId,
5632
+ objective: moreOptions.OBJECTIVE ? objective : '',
5202
5633
  on_completion_of: entrustForm.reportId ? [entrustForm.reportId] : [],
5203
5634
  on_completion_of_type: 1,
5204
5635
  organisation_id: this.organizationId,
@@ -5208,66 +5639,126 @@ class WorkflowComplianceComponent {
5208
5639
  private_library_id: 0,
5209
5640
  remarks: remarks,
5210
5641
  reminder_before_days: entrustForm.reminder_before_days,
5211
- report_format: (moreOptions.FORMATE_EVIDENCE) ? entrustForm.formatAndEvidence.formatFiles : [],
5642
+ report_format: moreOptions.FORMATE_EVIDENCE
5643
+ ? entrustForm.formatAndEvidence.formatFiles
5644
+ : [],
5212
5645
  report_format_link: '',
5213
5646
  report_name: entrustForm.responsibility.name,
5214
- report_upload_flag: entrustForm.formatAndEvidence.evidenceRequired ? 1 : 0,
5215
- review_after_days: (moreOptions.REVIEWER) ? entrustForm.reviewers.reviewFrequency.reviewCompleteDays === '' ? 0 : Number(entrustForm.reviewers.reviewFrequency.reviewCompleteDays) : 0,
5216
- review_failed_after_days: (moreOptions.REVIEWER) ? entrustForm.reviewers.reviewFrequency.reviewNOtCompletedDays === '' ? 0 : Number(entrustForm.reviewers.reviewFrequency.reviewNOtCompletedDays) : 0,
5217
- reviewer_arr: (moreOptions.REVIEWER) ? {
5218
- level1: {
5219
- reviewers: this.setReviewerPayload(this.reviewerUserList, 'list', entrustForm.reviewers.acceptedData, (entrustForm.reviewers.sequentialWorkflow) ? 'SEQUENTIAL' : 'ANYONE'),
5220
- type: (entrustForm.reviewers.sequentialWorkflow) ? 'SEQUENTIAL' : 'ANYONE'
5221
- },
5222
- } : {},
5647
+ report_upload_flag: entrustForm.formatAndEvidence.evidenceRequired
5648
+ ? 1
5649
+ : 0,
5650
+ review_after_days: moreOptions.REVIEWER
5651
+ ? entrustForm.reviewers.reviewFrequency.reviewCompleteDays === ''
5652
+ ? 0
5653
+ : Number(entrustForm.reviewers.reviewFrequency.reviewCompleteDays)
5654
+ : 0,
5655
+ review_failed_after_days: moreOptions.REVIEWER
5656
+ ? entrustForm.reviewers.reviewFrequency.reviewNOtCompletedDays === ''
5657
+ ? 0
5658
+ : Number(entrustForm.reviewers.reviewFrequency.reviewNOtCompletedDays)
5659
+ : 0,
5660
+ reviewer_arr: moreOptions.REVIEWER
5661
+ ? {
5662
+ level1: {
5663
+ reviewers: this.setReviewerPayload(this.reviewerUserList, 'list', entrustForm.reviewers.acceptedData, entrustForm.reviewers.sequentialWorkflow
5664
+ ? 'SEQUENTIAL'
5665
+ : 'ANYONE'),
5666
+ type: entrustForm.reviewers.sequentialWorkflow
5667
+ ? 'SEQUENTIAL'
5668
+ : 'ANYONE',
5669
+ },
5670
+ }
5671
+ : {},
5223
5672
  userGroupIds: {
5224
- assigneeAllGroupIds: entrustForm.assignees.whoCanComplete !== 'ANY_ONE' ? this.returnIds((_w = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assigneeGroups) === null || _w === void 0 ? void 0 : _w.list, 'group_id') : [],
5225
- assigneeAnyoneGroupIds: entrustForm.assignees.whoCanComplete === 'ANY_ONE' ? this.returnIds((_x = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assigneeGroups) === null || _x === void 0 ? void 0 : _x.list, 'group_id') : [],
5673
+ assigneeAllGroupIds: entrustForm.assignees.whoCanComplete !== 'ANY_ONE'
5674
+ ? this.returnIds((_w = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assigneeGroups) === null || _w === void 0 ? void 0 : _w.list, 'group_id')
5675
+ : [],
5676
+ assigneeAnyoneGroupIds: entrustForm.assignees.whoCanComplete === 'ANY_ONE'
5677
+ ? this.returnIds((_x = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assigneeGroups) === null || _x === void 0 ? void 0 : _x.list, 'group_id')
5678
+ : [],
5226
5679
  ccEmailGroupIds: (_0 = this.returnIds((_z = (_y = this.responsibilityForm) === null || _y === void 0 ? void 0 : _y.overseersGroups) === null || _z === void 0 ? void 0 : _z.list, 'group_id')) !== null && _0 !== void 0 ? _0 : [],
5227
5680
  failureCCEmailGroupIds: (_3 = this.returnIds((_2 = (_1 = this.responsibilityForm) === null || _1 === void 0 ? void 0 : _1.overseersGroups) === null || _2 === void 0 ? void 0 : _2.notifyList, 'group_id')) !== null && _3 !== void 0 ? _3 : [],
5228
- reviewerGroupIds: (_6 = this.returnIds((_5 = (_4 = this.responsibilityForm) === null || _4 === void 0 ? void 0 : _4.groupReviewers) === null || _5 === void 0 ? void 0 : _5.list, 'group_id')) !== null && _6 !== void 0 ? _6 : []
5681
+ reviewerGroupIds: (_6 = this.returnIds((_5 = (_4 = this.responsibilityForm) === null || _4 === void 0 ? void 0 : _4.groupReviewers) === null || _5 === void 0 ? void 0 : _5.list, 'group_id')) !== null && _6 !== void 0 ? _6 : [],
5229
5682
  },
5230
5683
  existingUserIds: {
5231
- assigneeAllIds: entrustForm.assignees.whoCanComplete !== 'ANY_ONE' ? this.returnIds((_7 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assignees) === null || _7 === void 0 ? void 0 : _7.list, 'my_member_id') : [],
5232
- assigneeAnyoneIds: entrustForm.assignees.whoCanComplete === 'ANY_ONE' ? this.returnIds((_8 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assignees) === null || _8 === void 0 ? void 0 : _8.list, 'my_member_id') : [],
5684
+ assigneeAllIds: entrustForm.assignees.whoCanComplete !== 'ANY_ONE'
5685
+ ? this.returnIds((_7 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assignees) === null || _7 === void 0 ? void 0 : _7.list, 'my_member_id')
5686
+ : [],
5687
+ assigneeAnyoneIds: entrustForm.assignees.whoCanComplete === 'ANY_ONE'
5688
+ ? this.returnIds((_8 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assignees) === null || _8 === void 0 ? void 0 : _8.list, 'my_member_id')
5689
+ : [],
5233
5690
  ccEmailEmpIds: (_10 = this.returnIds((_9 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.overseers) === null || _9 === void 0 ? void 0 : _9.list, 'employee_id')) !== null && _10 !== void 0 ? _10 : [],
5234
5691
  failureCCEmailEmpIds: (_12 = this.returnIds((_11 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.overseers) === null || _11 === void 0 ? void 0 : _11.notifyList, 'employee_id')) !== null && _12 !== void 0 ? _12 : [],
5235
- reviewerIds: (_15 = this.returnIds((_14 = (_13 = this.responsibilityForm) === null || _13 === void 0 ? void 0 : _13.reviewers) === null || _14 === void 0 ? void 0 : _14.list, 'member_id')) !== null && _15 !== void 0 ? _15 : []
5692
+ reviewerIds: (_15 = this.returnIds((_14 = (_13 = this.responsibilityForm) === null || _13 === void 0 ? void 0 : _13.reviewers) === null || _14 === void 0 ? void 0 : _14.list, 'member_id')) !== null && _15 !== void 0 ? _15 : [],
5236
5693
  },
5237
5694
  reviewer_checkpoints: [{ checkpoints: [], instruction: '' }],
5238
5695
  reviewer_id: 0,
5239
5696
  risk_class: this.isRiskEnable ? entrustForm.riskClass : 2,
5240
5697
  risk_ids: '',
5241
- risk_matrix_data: (moreOptions.RISK_CLASSIFICATION) ? entrustForm.riskMatrix : '0,0,0,0,0,0',
5698
+ risk_matrix_data: moreOptions.RISK_CLASSIFICATION
5699
+ ? entrustForm.riskMatrix
5700
+ : '0,0,0,0,0,0',
5242
5701
  sample_size: 0,
5243
5702
  start_date_utc: startDate,
5244
5703
  statutory_day: 0,
5245
- test_required_flag: (moreOptions.ASSURANCE) ? (((_16 = entrustForm.assuranceList) === null || _16 === void 0 ? void 0 : _16.length) > 0 ? 1 : 0) : 0,
5246
- testplan_category_id: (moreOptions.ASSURANCE) ? this.returnIds(entrustForm.assuranceList, 'category_id') : [],
5704
+ test_required_flag: moreOptions.ASSURANCE
5705
+ ? ((_16 = entrustForm.assuranceList) === null || _16 === void 0 ? void 0 : _16.length) > 0
5706
+ ? 1
5707
+ : 0
5708
+ : 0,
5709
+ testplan_category_id: moreOptions.ASSURANCE
5710
+ ? this.returnIds(entrustForm.assuranceList, 'category_id')
5711
+ : [],
5247
5712
  testplan_category_manager: '',
5248
- audit_category_details: moreOptions.REQUIRES_AUDIT && ((_18 = (_17 = this.responsibilityForm) === null || _17 === void 0 ? void 0 : _17.audit_category_details) === null || _18 === void 0 ? void 0 : _18.category_id) ? {
5249
- category_id: this.responsibilityForm.audit_category_details.category_id,
5250
- sample: this.selectedSample === 0 ? this.sampleValue : 0,
5251
- percentage: this.selectedSample === 1 ? this.samplePercentage : 0,
5252
- frequency_pattern: `1~0~${this.sendAuditRemindersValue}~1`,
5253
- frequency_time: moment(this.auditTime, 'HH:mm a').format('HH:mm:ss')
5254
- } : {
5255
- category_id: 0,
5256
- sample: 0,
5257
- percentage: 0,
5258
- frequency_pattern: ``,
5259
- frequency_time: ''
5260
- },
5713
+ audit_category_details: moreOptions.REQUIRES_AUDIT &&
5714
+ ((_18 = (_17 = this.responsibilityForm) === null || _17 === void 0 ? void 0 : _17.audit_category_details) === null || _18 === void 0 ? void 0 : _18.category_id)
5715
+ ? {
5716
+ category_id: this.responsibilityForm.audit_category_details.category_id,
5717
+ sample: this.selectedSample === 0 ? this.sampleValue : 0,
5718
+ percentage: this.selectedSample === 1 ? this.samplePercentage : 0,
5719
+ frequency_pattern: `1~0~${this.sendAuditRemindersValue}~1`,
5720
+ frequency_time: moment(this.auditTime, 'HH:mm a').format('HH:mm:ss'),
5721
+ }
5722
+ : {
5723
+ category_id: 0,
5724
+ sample: 0,
5725
+ percentage: 0,
5726
+ frequency_pattern: ``,
5727
+ frequency_time: '',
5728
+ },
5261
5729
  assessment: {
5262
- category_id: moreOptions.ASSESSMENT ? (_19 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assessment) === null || _19 === void 0 ? void 0 : _19.category_id : '',
5263
- assessment_id: moreOptions.ASSESSMENT ? (_20 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assessment) === null || _20 === void 0 ? void 0 : _20.assessment_id : ''
5730
+ category_id: moreOptions.ASSESSMENT
5731
+ ? (_19 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assessment) === null || _19 === void 0 ? void 0 : _19.category_id
5732
+ : '',
5733
+ assessment_id: moreOptions.ASSESSMENT
5734
+ ? (_20 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assessment) === null || _20 === void 0 ? void 0 : _20.assessment_id
5735
+ : '',
5264
5736
  },
5265
- assessment_checkpoint: moreOptions.CHECKPOINTS_NEW ? (((_21 = Object.keys(entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.new_checkpoints)) === null || _21 === void 0 ? void 0 : _21.length) > 0 ? entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.new_checkpoints : {}) : {},
5266
- questionnaire_type: moreOptions.CHECKPOINTS_NEW ? (((_22 = Object.keys(entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.new_checkpoints)) === null || _22 === void 0 ? void 0 : _22.length) > 0 ? 'assessment_checkpoint' : (moreOptions.ASSESSMENT && ((_23 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assessment) === null || _23 === void 0 ? void 0 : _23.category_id) ? 'assessment' : (JSON.stringify(this.responsibilityForm.checkpoints) != '' && moreOptions.CHECKPOINTS ? 'checkpoint' : ''))) : ''
5737
+ assessment_checkpoint: moreOptions.CHECKPOINTS_NEW
5738
+ ? ((_21 = Object.keys(entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.new_checkpoints)) === null || _21 === void 0 ? void 0 : _21.length) > 0
5739
+ ? entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.new_checkpoints
5740
+ : {}
5741
+ : {},
5742
+ questionnaire_type: moreOptions.CHECKPOINTS_NEW
5743
+ ? ((_22 = Object.keys(entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.new_checkpoints)) === null || _22 === void 0 ? void 0 : _22.length) > 0
5744
+ ? 'assessment_checkpoint'
5745
+ : moreOptions.ASSESSMENT && ((_23 = entrustForm === null || entrustForm === void 0 ? void 0 : entrustForm.assessment) === null || _23 === void 0 ? void 0 : _23.category_id)
5746
+ ? 'assessment'
5747
+ : JSON.stringify(this.responsibilityForm.checkpoints) != '' &&
5748
+ moreOptions.CHECKPOINTS
5749
+ ? 'checkpoint'
5750
+ : ''
5751
+ : '',
5267
5752
  };
5268
5753
  if (this.isResponsibilityRcLinkEnabled) {
5269
- payload['responsibilityCenterType'] = (this.isResponsibilityRcLinkEnabled && moreOptions.RC) ? this.responsibilityCenterType : 0;
5270
- payload["responsibilityCenterArr"] = (this.isResponsibilityRcLinkEnabled && moreOptions.RC) ? rcDetailsIdArr : [];
5754
+ payload['responsibilityCenterType'] =
5755
+ this.isResponsibilityRcLinkEnabled && moreOptions.RC
5756
+ ? this.responsibilityCenterType
5757
+ : 0;
5758
+ payload['responsibilityCenterArr'] =
5759
+ this.isResponsibilityRcLinkEnabled && moreOptions.RC
5760
+ ? rcDetailsIdArr
5761
+ : [];
5271
5762
  }
5272
5763
  this.responsibilityPayload = payload;
5273
5764
  if (this.mode == 'CREATE' && !this.isDuplicateEntrust) {
@@ -5281,16 +5772,17 @@ class WorkflowComplianceComponent {
5281
5772
  this.smileyMessage = `You have entrusted ${res.calculate_no_of_responsibiities} responsibilities. These would be reflected within your account in sometime.`;
5282
5773
  }
5283
5774
  if (this.isNotificationPending && payload.created_by == 0) {
5284
- this.smileyMessage = 'This responsibility has been added to the notification queue.';
5775
+ this.smileyMessage =
5776
+ 'This responsibility has been added to the notification queue.';
5285
5777
  }
5286
5778
  else {
5287
5779
  if (payload.created_by > 0) {
5288
- this.actionButtons[1].buttonText = "View Responsibilities";
5780
+ this.actionButtons[1].buttonText = 'View Responsibilities';
5289
5781
  this.smileyMessage = `You just created a responsibility on behalf ${entrustForm.assignors.list.find((member) => member.member_id === payload.member_id).member_name}`;
5290
5782
  }
5291
5783
  }
5292
5784
  //this.reset();
5293
- }, err => {
5785
+ }, (err) => {
5294
5786
  console.log(err);
5295
5787
  this.loader = false;
5296
5788
  this.uiKitService.isLoader = false;
@@ -5299,7 +5791,9 @@ class WorkflowComplianceComponent {
5299
5791
  }
5300
5792
  if (this.mode == 'EDIT' || this.isDuplicateEntrust) {
5301
5793
  this.smileyMessage = `The responsibility has been modified.`;
5302
- this.responsibilityService.updateEntrust(payload, this.responsibilityId, true).subscribe((res) => {
5794
+ this.responsibilityService
5795
+ .updateEntrust(payload, this.responsibilityId, true)
5796
+ .subscribe((res) => {
5303
5797
  this.responsibilityData = res;
5304
5798
  this.loader = false;
5305
5799
  this.uiKitService.isLoader = false;
@@ -5307,7 +5801,7 @@ class WorkflowComplianceComponent {
5307
5801
  this.uiKitService.isSmileyOn = true;
5308
5802
  this.isDuplicateEntrust = false;
5309
5803
  // this.resetForm();
5310
- }, err => {
5804
+ }, (err) => {
5311
5805
  console.log(err);
5312
5806
  this.loader = false;
5313
5807
  this.uiKitService.isLoader = false;
@@ -5318,14 +5812,19 @@ class WorkflowComplianceComponent {
5318
5812
  uniqueIdUserGroups(totalUserList, selectedGroup, selectedUsers) {
5319
5813
  let groupUserList = this.getGroupsUserEmployeesId(totalUserList, selectedGroup);
5320
5814
  let ids = new Set(selectedUsers.map((user) => user === null || user === void 0 ? void 0 : user.my_member_id));
5321
- let userList = [...selectedUsers, ...groupUserList.filter((groupUser) => !ids.has(groupUser === null || groupUser === void 0 ? void 0 : groupUser.my_member_id))];
5815
+ let userList = [
5816
+ ...selectedUsers,
5817
+ ...groupUserList.filter((groupUser) => !ids.has(groupUser === null || groupUser === void 0 ? void 0 : groupUser.my_member_id)),
5818
+ ];
5322
5819
  return userList;
5323
5820
  }
5324
5821
  combineUserAndUserGroupMembers(isGroup) {
5325
5822
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2;
5326
5823
  if (this.featureFlag_groups) {
5327
- console.log("this.responsibilityForm?.assigneeGroups?.list ==>", this.allUsersList, (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.assigneeGroups) === null || _b === void 0 ? void 0 : _b.list);
5328
- this.assigneeUserList = isGroup ? [{ employee_id: (_c = this.rawResponsibility) === null || _c === void 0 ? void 0 : _c.assigned_to }] : this.uniqueIdUserGroups(this.allUsersList, (_e = (_d = this.responsibilityForm) === null || _d === void 0 ? void 0 : _d.assigneeGroups) === null || _e === void 0 ? void 0 : _e.list, (_g = (_f = this.responsibilityForm) === null || _f === void 0 ? void 0 : _f.assignees) === null || _g === void 0 ? void 0 : _g.list);
5824
+ console.log('this.responsibilityForm?.assigneeGroups?.list ==>', this.allUsersList, (_b = (_a = this.responsibilityForm) === null || _a === void 0 ? void 0 : _a.assigneeGroups) === null || _b === void 0 ? void 0 : _b.list);
5825
+ this.assigneeUserList = isGroup
5826
+ ? [{ employee_id: (_c = this.rawResponsibility) === null || _c === void 0 ? void 0 : _c.assigned_to }]
5827
+ : this.uniqueIdUserGroups(this.allUsersList, (_e = (_d = this.responsibilityForm) === null || _d === void 0 ? void 0 : _d.assigneeGroups) === null || _e === void 0 ? void 0 : _e.list, (_g = (_f = this.responsibilityForm) === null || _f === void 0 ? void 0 : _f.assignees) === null || _g === void 0 ? void 0 : _g.list);
5329
5828
  this.reviewerUserList = this.uniqueIdUserGroups(this.allUsersList, (_j = (_h = this.responsibilityForm) === null || _h === void 0 ? void 0 : _h.groupReviewers) === null || _j === void 0 ? void 0 : _j.list, (_l = (_k = this.responsibilityForm) === null || _k === void 0 ? void 0 : _k.reviewers) === null || _l === void 0 ? void 0 : _l.list);
5330
5829
  this.overseerUserList = this.uniqueIdUserGroups(this.allUsersList, (_o = (_m = this.responsibilityForm) === null || _m === void 0 ? void 0 : _m.overseersGroups) === null || _o === void 0 ? void 0 : _o.list, (_q = (_p = this.responsibilityForm) === null || _p === void 0 ? void 0 : _p.overseers) === null || _q === void 0 ? void 0 : _q.list);
5331
5830
  this.overseerUserNotifyList = this.uniqueIdUserGroups(this.allUsersList, (_s = (_r = this.responsibilityForm) === null || _r === void 0 ? void 0 : _r.overseersGroups) === null || _s === void 0 ? void 0 : _s.notifyList, (_u = (_t = this.responsibilityForm) === null || _t === void 0 ? void 0 : _t.overseers) === null || _u === void 0 ? void 0 : _u.notifyList);
@@ -5334,7 +5833,8 @@ class WorkflowComplianceComponent {
5334
5833
  this.assigneeUserList = (_w = (_v = this.responsibilityForm) === null || _v === void 0 ? void 0 : _v.assignees) === null || _w === void 0 ? void 0 : _w.list;
5335
5834
  this.reviewerUserList = (_y = (_x = this.responsibilityForm) === null || _x === void 0 ? void 0 : _x.reviewers) === null || _y === void 0 ? void 0 : _y.list;
5336
5835
  this.overseerUserList = (_0 = (_z = this.responsibilityForm) === null || _z === void 0 ? void 0 : _z.overseers) === null || _0 === void 0 ? void 0 : _0.list;
5337
- this.overseerUserNotifyList = (_2 = (_1 = this.responsibilityForm) === null || _1 === void 0 ? void 0 : _1.overseers) === null || _2 === void 0 ? void 0 : _2.notifyList;
5836
+ this.overseerUserNotifyList =
5837
+ (_2 = (_1 = this.responsibilityForm) === null || _1 === void 0 ? void 0 : _1.overseers) === null || _2 === void 0 ? void 0 : _2.notifyList;
5338
5838
  }
5339
5839
  }
5340
5840
  /**
@@ -5347,7 +5847,7 @@ class WorkflowComplianceComponent {
5347
5847
  this.responsibilityForm = {
5348
5848
  assignors: {
5349
5849
  enable: false,
5350
- list: []
5850
+ list: [],
5351
5851
  },
5352
5852
  responsibility: {
5353
5853
  name: '',
@@ -5355,11 +5855,11 @@ class WorkflowComplianceComponent {
5355
5855
  },
5356
5856
  assigneeGroups: {
5357
5857
  whoCanComplete: 'ALL',
5358
- list: []
5858
+ list: [],
5359
5859
  },
5360
5860
  assignees: {
5361
5861
  whoCanComplete: 'ALL',
5362
- list: []
5862
+ list: [],
5363
5863
  },
5364
5864
  frequency: '',
5365
5865
  description: '',
@@ -5373,25 +5873,25 @@ class WorkflowComplianceComponent {
5373
5873
  sequentialWorkflow: true,
5374
5874
  reviewFrequency: {
5375
5875
  reviewCompleteDays: 2,
5376
- reviewNOtCompletedDays: 2
5876
+ reviewNOtCompletedDays: 2,
5377
5877
  },
5378
- list: []
5878
+ list: [],
5379
5879
  },
5380
5880
  groupReviewers: {
5381
5881
  sequentialWorkflow: true,
5382
5882
  reviewFrequency: {
5383
5883
  reviewCompleteDays: 2,
5384
- reviewNOtCompletedDays: 2
5884
+ reviewNOtCompletedDays: 2,
5385
5885
  },
5386
- list: []
5886
+ list: [],
5387
5887
  },
5388
5888
  overseers: {
5389
5889
  notifyList: [],
5390
- list: []
5890
+ list: [],
5391
5891
  },
5392
5892
  overseersGroups: {
5393
5893
  notifyList: [],
5394
- list: []
5894
+ list: [],
5395
5895
  },
5396
5896
  formatAndEvidence: {
5397
5897
  formatRequired: false,
@@ -5404,7 +5904,7 @@ class WorkflowComplianceComponent {
5404
5904
  riskClass: 1,
5405
5905
  riskMatrix: '0,0,0,0,0,0',
5406
5906
  program: [],
5407
- program_selected_ids: []
5907
+ program_selected_ids: [],
5408
5908
  };
5409
5909
  this.moreOptions = {
5410
5910
  OBJECTIVE: false,
@@ -5433,7 +5933,7 @@ class WorkflowComplianceComponent {
5433
5933
  time: '11:59 pm',
5434
5934
  failedTime: '',
5435
5935
  continuous_failed_days: 0,
5436
- onCompletionReportDetails: {}
5936
+ onCompletionReportDetails: {},
5437
5937
  };
5438
5938
  this.sampleValue = undefined;
5439
5939
  this.samplePercentage = undefined;
@@ -5462,12 +5962,14 @@ class WorkflowComplianceComponent {
5462
5962
  let url;
5463
5963
  let urlSubstring = '';
5464
5964
  this.disconnectRefresh.emit(false);
5465
- if (this.isNotificationPending && this.responsibilityPayload.created_by == 0) {
5965
+ if (this.isNotificationPending &&
5966
+ this.responsibilityPayload.created_by == 0) {
5466
5967
  if (this.isResponsibilitySimplified) {
5467
5968
  urlSubstring = 'compliance/manage-responsibility?' + this.url;
5468
5969
  }
5469
5970
  else {
5470
- urlSubstring = 'compliance/manage-responsibilities/responsibilities-queue';
5971
+ urlSubstring =
5972
+ 'compliance/manage-responsibilities/responsibilities-queue';
5471
5973
  }
5472
5974
  }
5473
5975
  else {
@@ -5519,7 +6021,7 @@ class WorkflowComplianceComponent {
5519
6021
  continuous_failed_days: event.continuous_failed_days,
5520
6022
  startDate: Number(event === null || event === void 0 ? void 0 : event.start_of_day_utc),
5521
6023
  reportId: (_a = event === null || event === void 0 ? void 0 : event.on_completion_of[0]) !== null && _a !== void 0 ? _a : 0,
5522
- timeIn12hr: this.frequencyService.timeIn12(event.frequency_time != '' ? event.frequency_time : '23:59:00')
6024
+ timeIn12hr: this.frequencyService.timeIn12(event.frequency_time != '' ? event.frequency_time : '23:59:00'),
5523
6025
  };
5524
6026
  let onCompletionReportDetails = this.getOnCompletionReportDetails(event);
5525
6027
  if (onCompletionReportDetails != null) {
@@ -5537,11 +6039,13 @@ class WorkflowComplianceComponent {
5537
6039
  this.frequencyDetails.startDate = event === null || event === void 0 ? void 0 : event.start_of_day_utc;
5538
6040
  this.frequencyDetails.selectedReport = (_a = event === null || event === void 0 ? void 0 : event.on_completion_of[0]) !== null && _a !== void 0 ? _a : 0;
5539
6041
  this.frequencyDetails.dateOfModified = event === null || event === void 0 ? void 0 : event.dom_utc;
5540
- this.frequencyDetails.continuous_failed_days = event === null || event === void 0 ? void 0 : event.continuous_failed_days;
6042
+ this.frequencyDetails.continuous_failed_days =
6043
+ event === null || event === void 0 ? void 0 : event.continuous_failed_days;
5541
6044
  this.frequencyPlaceholder = event === null || event === void 0 ? void 0 : event.placeholder;
5542
6045
  let onCompletionReportDetails = this.getOnCompletionReportDetails(event);
5543
6046
  if (onCompletionReportDetails != null) {
5544
- this.frequencyDetails.onCompletionReportDetails = onCompletionReportDetails;
6047
+ this.frequencyDetails.onCompletionReportDetails =
6048
+ onCompletionReportDetails;
5545
6049
  }
5546
6050
  }
5547
6051
  frequencyData(event) {
@@ -5550,7 +6054,8 @@ class WorkflowComplianceComponent {
5550
6054
  this.invalidType = '';
5551
6055
  }
5552
6056
  this.responsibilityForm.frequency = event.pattern;
5553
- this.responsibilityForm.reminder_before_days = (event.case === "daily") ? 0 : event.window;
6057
+ this.responsibilityForm.reminder_before_days =
6058
+ event.case === 'daily' ? 0 : event.window;
5554
6059
  //this.responsibilityForm.reminder_before_days = event.window;
5555
6060
  this.responsibilityForm.failed_after_days = event.failedAfter;
5556
6061
  this.responsibilityForm.failed_time_utc = event.failed_time_utc;
@@ -5558,7 +6063,8 @@ class WorkflowComplianceComponent {
5558
6063
  this.responsibilityForm.reportId = (_a = event.reportId) !== null && _a !== void 0 ? _a : 0;
5559
6064
  this.responsibilityForm.startDate = event.startFrom;
5560
6065
  this.responsibilityForm.timeIn24Hr = event.timeIn24Hr;
5561
- this.responsibilityForm.continuous_failed_days = event.continuous_failed_days;
6066
+ this.responsibilityForm.continuous_failed_days =
6067
+ event.continuous_failed_days;
5562
6068
  this.activateSelector('frequency', false);
5563
6069
  let payload = {
5564
6070
  frequency_details: event.pattern,
@@ -5570,7 +6076,7 @@ class WorkflowComplianceComponent {
5570
6076
  on_completion_of: [event.reportId],
5571
6077
  dom_utc: Math.floor(Date.now() / 1000),
5572
6078
  continuous_failed_days: event.continuous_failed_days,
5573
- placeholder: event.placeholder
6079
+ placeholder: event.placeholder,
5574
6080
  };
5575
6081
  event.frequency_details = event.pattern;
5576
6082
  let onCompletionReportDetails = this.getOnCompletionReportDetails(event);
@@ -5596,7 +6102,9 @@ class WorkflowComplianceComponent {
5596
6102
  try {
5597
6103
  if (res.frequency_details) {
5598
6104
  const frequencyDetails = res === null || res === void 0 ? void 0 : res.frequency_details.split('~');
5599
- const frequencyTime = (res === null || res === void 0 ? void 0 : res.frequency_time) === '00:00:00' ? '12:00 am' : this.frequencyService.timeIn12(res === null || res === void 0 ? void 0 : res.frequency_time);
6105
+ const frequencyTime = (res === null || res === void 0 ? void 0 : res.frequency_time) === '00:00:00'
6106
+ ? '12:00 am'
6107
+ : this.frequencyService.timeIn12(res === null || res === void 0 ? void 0 : res.frequency_time);
5600
6108
  switch (parseInt(frequencyDetails[0])) {
5601
6109
  case 1:
5602
6110
  this.getDailyPlaceholder(frequencyDetails, frequencyTime);
@@ -5618,10 +6126,22 @@ class WorkflowComplianceComponent {
5618
6126
  break;
5619
6127
  case 0:
5620
6128
  {
5621
- const dateObject = new Date(moment(frequencyDetails[1] + '-' + frequencyDetails[2] + '-' + frequencyDetails[3] + ' 00:00:00', 'YYYY-MM-DD HH:mm:ss').unix() * 1000);
6129
+ const dateObject = new Date(moment(frequencyDetails[1] +
6130
+ '-' +
6131
+ frequencyDetails[2] +
6132
+ '-' +
6133
+ frequencyDetails[3] +
6134
+ ' 00:00:00', 'YYYY-MM-DD HH:mm:ss').unix() * 1000);
5622
6135
  // tslint:disable-next-line: max-line-length
5623
6136
  this.frequencyPlaceholder =
5624
- 'One Time ' + dateObject.getDate() + ' ' + this.shortMonth[dateObject.getMonth()] + ' ' + dateObject.getFullYear() + ' by ' + frequencyTime;
6137
+ 'One Time ' +
6138
+ dateObject.getDate() +
6139
+ ' ' +
6140
+ this.shortMonth[dateObject.getMonth()] +
6141
+ ' ' +
6142
+ dateObject.getFullYear() +
6143
+ ' by ' +
6144
+ frequencyTime;
5625
6145
  }
5626
6146
  break;
5627
6147
  case 8:
@@ -5630,7 +6150,8 @@ class WorkflowComplianceComponent {
5630
6150
  break;
5631
6151
  case 10:
5632
6152
  {
5633
- this.frequencyPlaceholder = 'You have selected an ongoing frequency.';
6153
+ this.frequencyPlaceholder =
6154
+ 'You have selected an ongoing frequency.';
5634
6155
  }
5635
6156
  break;
5636
6157
  case 6:
@@ -5651,10 +6172,21 @@ class WorkflowComplianceComponent {
5651
6172
  * @param {number} reportId - number
5652
6173
  */
5653
6174
  getOnCompletionOf(frequencyDetails, reportId, onCompletionReportDetails) {
5654
- this.frequencyPlaceholder = frequencyDetails[3] + ' ' + (parseInt(frequencyDetails[3]) > 1 ? 'days' : 'day') + ' after completion of ';
6175
+ this.frequencyPlaceholder =
6176
+ frequencyDetails[3] +
6177
+ ' ' +
6178
+ (parseInt(frequencyDetails[3]) > 1 ? 'days' : 'day') +
6179
+ ' after completion of ';
5655
6180
  if (onCompletionReportDetails) {
5656
6181
  if (reportId === onCompletionReportDetails.ReportId) {
5657
- this.frequencyPlaceholder = frequencyDetails[3] + ' ' + (parseInt(frequencyDetails[3]) > 1 ? 'days' : 'day') + ' after completion of ' + (onCompletionReportDetails ? onCompletionReportDetails.report_name : '');
6182
+ this.frequencyPlaceholder =
6183
+ frequencyDetails[3] +
6184
+ ' ' +
6185
+ (parseInt(frequencyDetails[3]) > 1 ? 'days' : 'day') +
6186
+ ' after completion of ' +
6187
+ (onCompletionReportDetails
6188
+ ? onCompletionReportDetails.report_name
6189
+ : '');
5658
6190
  }
5659
6191
  }
5660
6192
  this.loader = false;
@@ -5674,7 +6206,11 @@ class WorkflowComplianceComponent {
5674
6206
  this.frequencyPlaceholder = 'Daily by ' + frequencyTime;
5675
6207
  }
5676
6208
  else if (parseInt(frequencyDetails[3]) > 1) {
5677
- this.frequencyPlaceholder = 'Every ' + parseInt(frequencyDetails[3]) + ' days by ' + frequencyTime;
6209
+ this.frequencyPlaceholder =
6210
+ 'Every ' +
6211
+ parseInt(frequencyDetails[3]) +
6212
+ ' days by ' +
6213
+ frequencyTime;
5678
6214
  }
5679
6215
  }
5680
6216
  }
@@ -5697,16 +6233,25 @@ class WorkflowComplianceComponent {
5697
6233
  return this.frequencyService.dayName[parseInt(ele) - 1];
5698
6234
  });
5699
6235
  if (parseInt(frequencyDetails[3]) === 1) {
5700
- this.frequencyPlaceholder = 'Every ' + selectedDay.join() + ' by ' + frequencyTime;
6236
+ this.frequencyPlaceholder =
6237
+ 'Every ' + selectedDay.join() + ' by ' + frequencyTime;
5701
6238
  }
5702
6239
  if (parseInt(frequencyDetails[3]) === 2) {
5703
- this.frequencyPlaceholder = 'Every alternate ' + selectedDay.join() + ' by ' + frequencyTime;
6240
+ this.frequencyPlaceholder =
6241
+ 'Every alternate ' + selectedDay.join() + ' by ' + frequencyTime;
5704
6242
  }
5705
6243
  if (parseInt(frequencyDetails[3]) === 3) {
5706
- this.frequencyPlaceholder = 'Every 3rd ' + selectedDay.join() + ' by ' + frequencyTime;
6244
+ this.frequencyPlaceholder =
6245
+ 'Every 3rd ' + selectedDay.join() + ' by ' + frequencyTime;
5707
6246
  }
5708
6247
  if (parseInt(frequencyDetails[3]) > 3) {
5709
- this.frequencyPlaceholder = 'Every ' + parseInt(frequencyDetails[1]) + 'th ' + selectedDay.join() + ' by ' + frequencyTime;
6248
+ this.frequencyPlaceholder =
6249
+ 'Every ' +
6250
+ parseInt(frequencyDetails[1]) +
6251
+ 'th ' +
6252
+ selectedDay.join() +
6253
+ ' by ' +
6254
+ frequencyTime;
5710
6255
  }
5711
6256
  }
5712
6257
  }
@@ -5722,25 +6267,49 @@ class WorkflowComplianceComponent {
5722
6267
  return this.shortMonth[parseInt(ele) - 1];
5723
6268
  });
5724
6269
  if (parseInt(frequencyDetails[1]) === 1) {
5725
- this.frequencyPlaceholder = '1st of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6270
+ this.frequencyPlaceholder =
6271
+ '1st of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
5726
6272
  }
5727
6273
  else if (parseInt(frequencyDetails[1]) === 2) {
5728
- this.frequencyPlaceholder = '2nd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6274
+ this.frequencyPlaceholder =
6275
+ '2nd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
5729
6276
  }
5730
6277
  else if (parseInt(frequencyDetails[1]) === 3) {
5731
- this.frequencyPlaceholder = '3rd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
5732
- }
5733
- else if (parseInt(frequencyDetails[1]) === 21 || parseInt(frequencyDetails[1]) === 31) {
5734
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'st of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6278
+ this.frequencyPlaceholder =
6279
+ '3rd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6280
+ }
6281
+ else if (parseInt(frequencyDetails[1]) === 21 ||
6282
+ parseInt(frequencyDetails[1]) === 31) {
6283
+ this.frequencyPlaceholder =
6284
+ parseInt(frequencyDetails[1]) +
6285
+ 'st of every ' +
6286
+ selectedMonth.join(', ') +
6287
+ ' by ' +
6288
+ frequencyTime;
5735
6289
  }
5736
6290
  else if (parseInt(frequencyDetails[1]) === 22) {
5737
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'nd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6291
+ this.frequencyPlaceholder =
6292
+ parseInt(frequencyDetails[1]) +
6293
+ 'nd of every ' +
6294
+ selectedMonth.join(', ') +
6295
+ ' by ' +
6296
+ frequencyTime;
5738
6297
  }
5739
6298
  else if (parseInt(frequencyDetails[1]) === 23) {
5740
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'rd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6299
+ this.frequencyPlaceholder =
6300
+ parseInt(frequencyDetails[1]) +
6301
+ 'rd of every ' +
6302
+ selectedMonth.join(', ') +
6303
+ ' by ' +
6304
+ frequencyTime;
5741
6305
  }
5742
6306
  else if (parseInt(frequencyDetails[1]) > 3) {
5743
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'th of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6307
+ this.frequencyPlaceholder =
6308
+ parseInt(frequencyDetails[1]) +
6309
+ 'th of every ' +
6310
+ selectedMonth.join(', ') +
6311
+ ' by ' +
6312
+ frequencyTime;
5744
6313
  }
5745
6314
  }
5746
6315
  }
@@ -5753,27 +6322,64 @@ class WorkflowComplianceComponent {
5753
6322
  */
5754
6323
  getQuarterlyPlaceholder(frequencyDetails, frequencyTime) {
5755
6324
  {
5756
- const quarterly = ['January, April, July, October', 'February, May, August, November', ' March, June, September, December'];
6325
+ const quarterly = [
6326
+ 'January, April, July, October',
6327
+ 'February, May, August, November',
6328
+ ' March, June, September, December',
6329
+ ];
5757
6330
  if (parseInt(frequencyDetails[1]) === 1) {
5758
- this.frequencyPlaceholder = '1st of every ' + quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] + ' by ' + frequencyTime;
6331
+ this.frequencyPlaceholder =
6332
+ '1st of every ' +
6333
+ quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] +
6334
+ ' by ' +
6335
+ frequencyTime;
5759
6336
  }
5760
6337
  else if (parseInt(frequencyDetails[1]) === 2) {
5761
- this.frequencyPlaceholder = '2nd of every ' + quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] + ' by ' + frequencyTime;
6338
+ this.frequencyPlaceholder =
6339
+ '2nd of every ' +
6340
+ quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] +
6341
+ ' by ' +
6342
+ frequencyTime;
5762
6343
  }
5763
6344
  else if (parseInt(frequencyDetails[1]) === 3) {
5764
- this.frequencyPlaceholder = '3rd of every ' + quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] + ' by ' + frequencyTime;
5765
- }
5766
- else if (parseInt(frequencyDetails[1]) === 21 || parseInt(frequencyDetails[1]) === 31) {
5767
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'st of every ' + quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] + ' by ' + frequencyTime;
6345
+ this.frequencyPlaceholder =
6346
+ '3rd of every ' +
6347
+ quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] +
6348
+ ' by ' +
6349
+ frequencyTime;
6350
+ }
6351
+ else if (parseInt(frequencyDetails[1]) === 21 ||
6352
+ parseInt(frequencyDetails[1]) === 31) {
6353
+ this.frequencyPlaceholder =
6354
+ parseInt(frequencyDetails[1]) +
6355
+ 'st of every ' +
6356
+ quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] +
6357
+ ' by ' +
6358
+ frequencyTime;
5768
6359
  }
5769
6360
  else if (parseInt(frequencyDetails[1]) === 22) {
5770
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'nd of every ' + quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] + ' by ' + frequencyTime;
6361
+ this.frequencyPlaceholder =
6362
+ parseInt(frequencyDetails[1]) +
6363
+ 'nd of every ' +
6364
+ quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] +
6365
+ ' by ' +
6366
+ frequencyTime;
5771
6367
  }
5772
6368
  else if (parseInt(frequencyDetails[1]) === 23) {
5773
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'rd of every ' + quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] + ' by ' + frequencyTime;
6369
+ this.frequencyPlaceholder =
6370
+ parseInt(frequencyDetails[1]) +
6371
+ 'rd of every ' +
6372
+ quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] +
6373
+ ' by ' +
6374
+ frequencyTime;
5774
6375
  }
5775
6376
  else if (parseInt(frequencyDetails[1]) > 3) {
5776
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'th of every ' + quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] + ' by ' + frequencyTime;
6377
+ this.frequencyPlaceholder =
6378
+ parseInt(frequencyDetails[1]) +
6379
+ 'th of every ' +
6380
+ quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] +
6381
+ ' by ' +
6382
+ frequencyTime;
5777
6383
  }
5778
6384
  }
5779
6385
  }
@@ -5788,25 +6394,49 @@ class WorkflowComplianceComponent {
5788
6394
  return this.shortMonth[parseInt(ele) - 1];
5789
6395
  });
5790
6396
  if (parseInt(frequencyDetails[1]) === 1) {
5791
- this.frequencyPlaceholder = '1st of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6397
+ this.frequencyPlaceholder =
6398
+ '1st of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
5792
6399
  }
5793
6400
  else if (parseInt(frequencyDetails[1]) === 2) {
5794
- this.frequencyPlaceholder = '2nd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6401
+ this.frequencyPlaceholder =
6402
+ '2nd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
5795
6403
  }
5796
6404
  else if (parseInt(frequencyDetails[1]) === 3) {
5797
- this.frequencyPlaceholder = '3rd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
5798
- }
5799
- else if (parseInt(frequencyDetails[1]) === 21 || parseInt(frequencyDetails[1]) === 31) {
5800
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'st of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6405
+ this.frequencyPlaceholder =
6406
+ '3rd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6407
+ }
6408
+ else if (parseInt(frequencyDetails[1]) === 21 ||
6409
+ parseInt(frequencyDetails[1]) === 31) {
6410
+ this.frequencyPlaceholder =
6411
+ parseInt(frequencyDetails[1]) +
6412
+ 'st of every ' +
6413
+ selectedMonth.join(', ') +
6414
+ ' by ' +
6415
+ frequencyTime;
5801
6416
  }
5802
6417
  else if (parseInt(frequencyDetails[1]) === 22) {
5803
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'nd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6418
+ this.frequencyPlaceholder =
6419
+ parseInt(frequencyDetails[1]) +
6420
+ 'nd of every ' +
6421
+ selectedMonth.join(', ') +
6422
+ ' by ' +
6423
+ frequencyTime;
5804
6424
  }
5805
6425
  else if (parseInt(frequencyDetails[1]) === 23) {
5806
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'rd of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6426
+ this.frequencyPlaceholder =
6427
+ parseInt(frequencyDetails[1]) +
6428
+ 'rd of every ' +
6429
+ selectedMonth.join(', ') +
6430
+ ' by ' +
6431
+ frequencyTime;
5807
6432
  }
5808
6433
  else if (parseInt(frequencyDetails[1]) > 3) {
5809
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'th of every ' + selectedMonth.join(', ') + ' by ' + frequencyTime;
6434
+ this.frequencyPlaceholder =
6435
+ parseInt(frequencyDetails[1]) +
6436
+ 'th of every ' +
6437
+ selectedMonth.join(', ') +
6438
+ ' by ' +
6439
+ frequencyTime;
5810
6440
  }
5811
6441
  }
5812
6442
  }
@@ -5824,53 +6454,126 @@ class WorkflowComplianceComponent {
5824
6454
  const yearSequence = parseInt(frequencyDetails[3]) > 0 ? parseInt(frequencyDetails[3]) : 1;
5825
6455
  if (parseInt(frequencyDetails[1]) < 2) {
5826
6456
  if (parseInt(frequencyDetails[1]) === 1) {
5827
- this.frequencyPlaceholder = '1st of every ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ' by ' + frequencyTime;
6457
+ this.frequencyPlaceholder =
6458
+ '1st of every ' +
6459
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6460
+ ' by ' +
6461
+ frequencyTime;
5828
6462
  }
5829
6463
  if (parseInt(frequencyDetails[1]) === 2) {
5830
- this.frequencyPlaceholder = '2nd of every ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ' by ' + frequencyTime;
6464
+ this.frequencyPlaceholder =
6465
+ '2nd of every ' +
6466
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6467
+ ' by ' +
6468
+ frequencyTime;
5831
6469
  }
5832
6470
  if (parseInt(frequencyDetails[1]) === 3) {
5833
- this.frequencyPlaceholder = '3rd of every ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ' by ' + frequencyTime;
6471
+ this.frequencyPlaceholder =
6472
+ '3rd of every ' +
6473
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6474
+ ' by ' +
6475
+ frequencyTime;
5834
6476
  }
5835
6477
  if (parseInt(frequencyDetails[1]) > 3) {
5836
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'th of every ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ' by ' + frequencyTime;
5837
- }
5838
- if (parseInt(frequencyDetails[1]) === 31 || parseInt(frequencyDetails[1]) === 21) {
5839
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'st of every ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ' by ' + frequencyTime;
6478
+ this.frequencyPlaceholder =
6479
+ parseInt(frequencyDetails[1]) +
6480
+ 'th of every ' +
6481
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6482
+ ' by ' +
6483
+ frequencyTime;
6484
+ }
6485
+ if (parseInt(frequencyDetails[1]) === 31 ||
6486
+ parseInt(frequencyDetails[1]) === 21) {
6487
+ this.frequencyPlaceholder =
6488
+ parseInt(frequencyDetails[1]) +
6489
+ 'st of every ' +
6490
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6491
+ ' by ' +
6492
+ frequencyTime;
5840
6493
  }
5841
6494
  if (parseInt(frequencyDetails[1]) === 22) {
5842
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'nd of every ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ' by ' + frequencyTime;
6495
+ this.frequencyPlaceholder =
6496
+ parseInt(frequencyDetails[1]) +
6497
+ 'nd of every ' +
6498
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6499
+ ' by ' +
6500
+ frequencyTime;
5843
6501
  }
5844
6502
  if (parseInt(frequencyDetails[1]) === 23) {
5845
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'rd of every ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ' by ' + frequencyTime;
6503
+ this.frequencyPlaceholder =
6504
+ parseInt(frequencyDetails[1]) +
6505
+ 'rd of every ' +
6506
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6507
+ ' by ' +
6508
+ frequencyTime;
5846
6509
  }
5847
6510
  }
5848
6511
  if (parseInt(frequencyDetails[1]) > 1) {
5849
6512
  if (parseInt(frequencyDetails[1]) === 1) {
5850
6513
  // tslint:disable-next-line: max-line-length
5851
- this.frequencyPlaceholder = '1st ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ', Interval: every ' + yearSequence + ' years by ' + frequencyTime;
6514
+ this.frequencyPlaceholder =
6515
+ '1st ' +
6516
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6517
+ ', Interval: every ' +
6518
+ yearSequence +
6519
+ ' years by ' +
6520
+ frequencyTime;
5852
6521
  }
5853
6522
  if (parseInt(frequencyDetails[1]) === 2) {
5854
6523
  // tslint:disable-next-line: max-line-length
5855
- this.frequencyPlaceholder = '2nd ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ', Interval: every ' + yearSequence + ' years by ' + frequencyTime;
6524
+ this.frequencyPlaceholder =
6525
+ '2nd ' +
6526
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6527
+ ', Interval: every ' +
6528
+ yearSequence +
6529
+ ' years by ' +
6530
+ frequencyTime;
5856
6531
  }
5857
6532
  if (parseInt(frequencyDetails[1]) === 3) {
5858
6533
  // tslint:disable-next-line: max-line-length
5859
- this.frequencyPlaceholder = '3rd ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ', Interval: every ' + yearSequence + ' years by ' + frequencyTime;
6534
+ this.frequencyPlaceholder =
6535
+ '3rd ' +
6536
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6537
+ ', Interval: every ' +
6538
+ yearSequence +
6539
+ ' years by ' +
6540
+ frequencyTime;
5860
6541
  }
5861
6542
  if (parseInt(frequencyDetails[1]) > 3) {
5862
6543
  // tslint:disable-next-line: max-line-length
5863
6544
  this.frequencyPlaceholder =
5864
- parseInt(frequencyDetails[1]) + 'th of ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ', Interval: every ' + yearSequence + ' years by ' + frequencyTime;
5865
- }
5866
- if (parseInt(frequencyDetails[1]) === 31 || parseInt(frequencyDetails[1]) === 21) {
5867
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'st of every ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ' by ' + frequencyTime;
6545
+ parseInt(frequencyDetails[1]) +
6546
+ 'th of ' +
6547
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6548
+ ', Interval: every ' +
6549
+ yearSequence +
6550
+ ' years by ' +
6551
+ frequencyTime;
6552
+ }
6553
+ if (parseInt(frequencyDetails[1]) === 31 ||
6554
+ parseInt(frequencyDetails[1]) === 21) {
6555
+ this.frequencyPlaceholder =
6556
+ parseInt(frequencyDetails[1]) +
6557
+ 'st of every ' +
6558
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6559
+ ' by ' +
6560
+ frequencyTime;
5868
6561
  }
5869
6562
  if (parseInt(frequencyDetails[1]) === 22) {
5870
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'nd of every ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ' by ' + frequencyTime;
6563
+ this.frequencyPlaceholder =
6564
+ parseInt(frequencyDetails[1]) +
6565
+ 'nd of every ' +
6566
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6567
+ ' by ' +
6568
+ frequencyTime;
5871
6569
  }
5872
6570
  if (parseInt(frequencyDetails[1]) === 23) {
5873
- this.frequencyPlaceholder = parseInt(frequencyDetails[1]) + 'rd of every ' + this.shortMonth[parseInt(frequencyDetails[2]) - 1] + ' by ' + frequencyTime;
6571
+ this.frequencyPlaceholder =
6572
+ parseInt(frequencyDetails[1]) +
6573
+ 'rd of every ' +
6574
+ this.shortMonth[parseInt(frequencyDetails[2]) - 1] +
6575
+ ' by ' +
6576
+ frequencyTime;
5874
6577
  }
5875
6578
  }
5876
6579
  }
@@ -5880,11 +6583,16 @@ class WorkflowComplianceComponent {
5880
6583
  * @param {any} frequencyDetails - [4,1,1,1]
5881
6584
  */
5882
6585
  getRandomPlaceholder(frequencyDetails, frequencyTime) {
5883
- const quarterly = ['January, April, July, October', 'February, May, August, November', ' March, June, September, December'];
6586
+ const quarterly = [
6587
+ 'January, April, July, October',
6588
+ 'February, May, August, November',
6589
+ ' March, June, September, December',
6590
+ ];
5884
6591
  {
5885
6592
  switch (parseInt(frequencyDetails[1])) {
5886
6593
  case 1:
5887
- this.frequencyPlaceholder = 'Every week for ' + frequencyDetails[3] + ' random instances';
6594
+ this.frequencyPlaceholder =
6595
+ 'Every week for ' + frequencyDetails[3] + ' random instances';
5888
6596
  break;
5889
6597
  case 2:
5890
6598
  this.frequencyPlaceholder =
@@ -5898,10 +6606,16 @@ class WorkflowComplianceComponent {
5898
6606
  ' random instances';
5899
6607
  break;
5900
6608
  case 3:
5901
- this.frequencyPlaceholder = 'Every ' + quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] + ' for ' + frequencyDetails[3] + ' random instances';
6609
+ this.frequencyPlaceholder =
6610
+ 'Every ' +
6611
+ quarterly[parseInt(frequencyDetails[2].split(',')[0]) - 1] +
6612
+ ' for ' +
6613
+ frequencyDetails[3] +
6614
+ ' random instances';
5902
6615
  break;
5903
6616
  case 4:
5904
- this.frequencyPlaceholder = 'Every year for ' + frequencyDetails[3] + ' random instances';
6617
+ this.frequencyPlaceholder =
6618
+ 'Every year for ' + frequencyDetails[3] + ' random instances';
5905
6619
  }
5906
6620
  }
5907
6621
  }
@@ -5913,6 +6627,7 @@ class WorkflowComplianceComponent {
5913
6627
  onEditWhat(event) {
5914
6628
  setTimeout(() => {
5915
6629
  var _a, _b;
6630
+ // this will make the execution after the above boolean has changed
5916
6631
  this.isEditWhat = false;
5917
6632
  (_b = (_a = this.whatInput) === null || _a === void 0 ? void 0 : _a.nativeElement) === null || _b === void 0 ? void 0 : _b.focus();
5918
6633
  }, 0);
@@ -5935,7 +6650,8 @@ class WorkflowComplianceComponent {
5935
6650
  checkedMoreOptions.push('PROGRAM');
5936
6651
  this.moreOptions.PROGRAM = true;
5937
6652
  }
5938
- if (this.responsibilityForm.formatAndEvidence.evidenceRequired || this.responsibilityForm.formatAndEvidence.formatRequired) {
6653
+ if (this.responsibilityForm.formatAndEvidence.evidenceRequired ||
6654
+ this.responsibilityForm.formatAndEvidence.formatRequired) {
5939
6655
  checkedMoreOptions.push('FORMATE_EVIDENCE');
5940
6656
  this.moreOptions.FORMATE_EVIDENCE = true;
5941
6657
  }
@@ -5943,7 +6659,9 @@ class WorkflowComplianceComponent {
5943
6659
  checkedMoreOptions.push('RC');
5944
6660
  this.moreOptions.RC = true;
5945
6661
  }
5946
- if (this.isResponsibilityRcLinkEnabled && (res === null || res === void 0 ? void 0 : res.responsibilityCenterArr) && ((_c = res === null || res === void 0 ? void 0 : res.responsibilityCenterArr) === null || _c === void 0 ? void 0 : _c.length)) {
6662
+ if (this.isResponsibilityRcLinkEnabled &&
6663
+ (res === null || res === void 0 ? void 0 : res.responsibilityCenterArr) &&
6664
+ ((_c = res === null || res === void 0 ? void 0 : res.responsibilityCenterArr) === null || _c === void 0 ? void 0 : _c.length)) {
5947
6665
  checkedMoreOptions.push('RC');
5948
6666
  this.moreOptions.RC = true;
5949
6667
  }
@@ -5951,11 +6669,15 @@ class WorkflowComplianceComponent {
5951
6669
  checkedMoreOptions.push('CHECKPOINTS');
5952
6670
  this.moreOptions.CHECKPOINTS = true;
5953
6671
  }
5954
- if (((_g = (_f = (_e = this.responsibilityForm) === null || _e === void 0 ? void 0 : _e.reviewers) === null || _f === void 0 ? void 0 : _f.list) === null || _g === void 0 ? void 0 : _g.length) > 0 || ((_k = (_j = (_h = this.responsibilityForm) === null || _h === void 0 ? void 0 : _h.groupReviewer) === null || _j === void 0 ? void 0 : _j.list) === null || _k === void 0 ? void 0 : _k.length) > 0) {
6672
+ if (((_g = (_f = (_e = this.responsibilityForm) === null || _e === void 0 ? void 0 : _e.reviewers) === null || _f === void 0 ? void 0 : _f.list) === null || _g === void 0 ? void 0 : _g.length) > 0 ||
6673
+ ((_k = (_j = (_h = this.responsibilityForm) === null || _h === void 0 ? void 0 : _h.groupReviewer) === null || _j === void 0 ? void 0 : _j.list) === null || _k === void 0 ? void 0 : _k.length) > 0) {
5955
6674
  checkedMoreOptions.push('REVIEWER');
5956
6675
  this.moreOptions.REVIEWER = true;
5957
6676
  }
5958
- if (((_o = (_m = (_l = this.responsibilityForm) === null || _l === void 0 ? void 0 : _l.overseers) === null || _m === void 0 ? void 0 : _m.list) === null || _o === void 0 ? void 0 : _o.length) > 0 || ((_r = (_q = (_p = this.responsibilityForm) === null || _p === void 0 ? void 0 : _p.overseers) === null || _q === void 0 ? void 0 : _q.notifyList) === null || _r === void 0 ? void 0 : _r.length) > 0 || ((_u = (_t = (_s = this.responsibilityForm) === null || _s === void 0 ? void 0 : _s.overseersGroups) === null || _t === void 0 ? void 0 : _t.list) === null || _u === void 0 ? void 0 : _u.length) > 0 || ((_x = (_w = (_v = this.responsibilityForm) === null || _v === void 0 ? void 0 : _v.overseersGroups) === null || _w === void 0 ? void 0 : _w.notifyList) === null || _x === void 0 ? void 0 : _x.length) > 0) {
6677
+ if (((_o = (_m = (_l = this.responsibilityForm) === null || _l === void 0 ? void 0 : _l.overseers) === null || _m === void 0 ? void 0 : _m.list) === null || _o === void 0 ? void 0 : _o.length) > 0 ||
6678
+ ((_r = (_q = (_p = this.responsibilityForm) === null || _p === void 0 ? void 0 : _p.overseers) === null || _q === void 0 ? void 0 : _q.notifyList) === null || _r === void 0 ? void 0 : _r.length) > 0 ||
6679
+ ((_u = (_t = (_s = this.responsibilityForm) === null || _s === void 0 ? void 0 : _s.overseersGroups) === null || _t === void 0 ? void 0 : _t.list) === null || _u === void 0 ? void 0 : _u.length) > 0 ||
6680
+ ((_x = (_w = (_v = this.responsibilityForm) === null || _v === void 0 ? void 0 : _v.overseersGroups) === null || _w === void 0 ? void 0 : _w.notifyList) === null || _x === void 0 ? void 0 : _x.length) > 0) {
5959
6681
  checkedMoreOptions.push('OVERSEER');
5960
6682
  this.moreOptions.OVERSEER = true;
5961
6683
  }
@@ -5979,7 +6701,8 @@ class WorkflowComplianceComponent {
5979
6701
  }
5980
6702
  // Format & Evidence
5981
6703
  testFunction() {
5982
- if (this.responsibilityForm.responsibility.name.trim() !== '' && this.isEditWhat === false) {
6704
+ if (this.responsibilityForm.responsibility.name.trim() !== '' &&
6705
+ this.isEditWhat === false) {
5983
6706
  this.isEditWhat = true;
5984
6707
  }
5985
6708
  if (this.responsibilityForm.description == '<br>') {
@@ -5990,7 +6713,8 @@ class WorkflowComplianceComponent {
5990
6713
  }
5991
6714
  }
5992
6715
  reviewerTypeChange(event) {
5993
- this.responsibilityForm.reviewers.sequentialWorkflow = event === 'SEQUENTIAL' ? true : false;
6716
+ this.responsibilityForm.reviewers.sequentialWorkflow =
6717
+ event === 'SEQUENTIAL' ? true : false;
5994
6718
  }
5995
6719
  selectedSampleData(event) {
5996
6720
  this.selectedSample = event;
@@ -6014,13 +6738,15 @@ class WorkflowComplianceComponent {
6014
6738
  this.selectedSample = 1;
6015
6739
  }
6016
6740
  this.tempCheckValue = this.selectedSample;
6017
- this.sendAuditRemindersValue = testPlanCategory.frequency_pattern ? parseInt(testPlanCategory.frequency_pattern.split('~')[2]) : 2;
6741
+ this.sendAuditRemindersValue = testPlanCategory.frequency_pattern
6742
+ ? parseInt(testPlanCategory.frequency_pattern.split('~')[2])
6743
+ : 2;
6018
6744
  this.auditTime = moment(testPlanCategory === null || testPlanCategory === void 0 ? void 0 : testPlanCategory.frequency_time, 'HH:mm:ss').format('HH:mm a');
6019
6745
  }
6020
6746
  //on sample toggle on/off
6021
6747
  checkInputValue(event) {
6022
6748
  let key = event.charCode; // key = event.keyCode; (Both can be used)
6023
- return ((key > 47 && key < 58) || key == 45);
6749
+ return (key > 47 && key < 58) || key == 45;
6024
6750
  }
6025
6751
  switchEnable(event) {
6026
6752
  if (event) {
@@ -6041,7 +6767,9 @@ class WorkflowComplianceComponent {
6041
6767
  * @param assessmentDetails : selected assessment details like it's object id and category_id
6042
6768
  */
6043
6769
  getAssessmentDetails(assessmentDetails, type) {
6044
- this.responsibilityService.getAssessmentDetailsByID(assessmentDetails.assessment_id).subscribe((res) => {
6770
+ this.responsibilityService
6771
+ .getAssessmentDetailsByID(assessmentDetails.assessment_id)
6772
+ .subscribe((res) => {
6045
6773
  if ((res === null || res === void 0 ? void 0 : res.length) > 0) {
6046
6774
  if (type === 'assessment') {
6047
6775
  const categoryDetails = res[0].category.find((ele) => ele._id == assessmentDetails.category_id);
@@ -6052,9 +6780,9 @@ class WorkflowComplianceComponent {
6052
6780
  assessmentDetails: {
6053
6781
  id: assessmentDetails.assessment_id,
6054
6782
  assessment_name: res[0].assessment_name,
6055
- questions: res[0].questionsCount
6783
+ questions: res[0].questionsCount,
6056
6784
  },
6057
- category_details: categoryDetails
6785
+ category_details: categoryDetails,
6058
6786
  };
6059
6787
  this.responsibilityForm.assessment = JSON.parse(JSON.stringify(assessmentData));
6060
6788
  }
@@ -6073,9 +6801,9 @@ class WorkflowComplianceComponent {
6073
6801
  this.responsibilityForm.checkpoints = [];
6074
6802
  }
6075
6803
  /**
6076
- *
6077
- * @param event Assessment details
6078
- */
6804
+ *
6805
+ * @param event Assessment details
6806
+ */
6079
6807
  postAssessment(event) {
6080
6808
  var _a;
6081
6809
  this.responsibilityForm.new_checkpoints = event.assessmentDetails;
@@ -6115,7 +6843,7 @@ class WorkflowComplianceComponent {
6115
6843
  }
6116
6844
  openAssigneeChangeConfirmation(event) {
6117
6845
  if (event) {
6118
- this.responsibilityForm.assignees.whoCanComplete = "ANY_ONE";
6846
+ this.responsibilityForm.assignees.whoCanComplete = 'ANY_ONE';
6119
6847
  }
6120
6848
  else {
6121
6849
  this.responsibilityForm.assignees.whoCanComplete = '';
@@ -6127,7 +6855,8 @@ class WorkflowComplianceComponent {
6127
6855
  * @param {any} event - any - the event that is triggered when the user selects a radio button
6128
6856
  */
6129
6857
  onReviewerWorkflowChange(event) {
6130
- this.responsibilityForm.reviewers.sequentialWorkflow = event === 'sequential' ? true : false;
6858
+ this.responsibilityForm.reviewers.sequentialWorkflow =
6859
+ event === 'sequential' ? true : false;
6131
6860
  if (this.mode === 'EDIT' && this.hasReviewer) {
6132
6861
  this.onReviewerTypeChange.emit(event);
6133
6862
  }
@@ -6510,10 +7239,10 @@ class WorkflowPolicyComponent {
6510
7239
  this.categoriesListLoaded = false;
6511
7240
  this.groupsListLoaded = false;
6512
7241
  this.categoryConfig = {
6513
- panelTitle: 'Select Category',
6514
- floatingTextSingular: 'Category selected',
6515
- floatingTextPlural: 'Categories selected',
6516
- searchPlaceholder: 'Search Category',
7242
+ panelTitle: 'Select Policy Category',
7243
+ floatingTextSingular: 'Policy Category Selected',
7244
+ floatingTextPlural: 'Policy Categories Selected',
7245
+ searchPlaceholder: 'Search Policy Category',
6517
7246
  searchEnabled: true,
6518
7247
  selectAllEnabled: true,
6519
7248
  workflow: 'policy',
@@ -6584,7 +7313,7 @@ class WorkflowPolicyComponent {
6584
7313
  'linkProgram',
6585
7314
  'isAssessment',
6586
7315
  'owners',
6587
- 'policyAccess'
7316
+ 'policyAccess',
6588
7317
  ];
6589
7318
  this.riskClassification = [
6590
7319
  { name: 'LOW', value: 1, class: 'low' },
@@ -6680,7 +7409,8 @@ class WorkflowPolicyComponent {
6680
7409
  }
6681
7410
  ngOnInit() {
6682
7411
  var _a, _b;
6683
- this.groupEnabled = ((_a = this.feature) === null || _a === void 0 ? void 0 : _a.isFeatureEnabled('ff_policy_groups')) || true;
7412
+ this.groupEnabled =
7413
+ ((_a = this.feature) === null || _a === void 0 ? void 0 : _a.isFeatureEnabled('ff_policy_groups')) || true;
6684
7414
  this.getRCList();
6685
7415
  this.getUsersList();
6686
7416
  this.getCategoriesList();
@@ -6692,7 +7422,9 @@ class WorkflowPolicyComponent {
6692
7422
  if (!res.enable_riskclass) {
6693
7423
  this.showRiskClassification = false;
6694
7424
  }
6695
- this.organization_id = res._id;
7425
+ if (res._id) {
7426
+ this.organization_id = res._id;
7427
+ }
6696
7428
  });
6697
7429
  this.member_obj_id = this.authService.getUserDetails()._id;
6698
7430
  this.userInfo = this.authService.getUserDetails().user;
@@ -7209,7 +7941,8 @@ class WorkflowPolicyComponent {
7209
7941
  break;
7210
7942
  case 'policyAccess':
7211
7943
  let accessIds, accessGroupIds;
7212
- this.policyForm.availableOnPortal = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.futureUsersWillSelect;
7944
+ this.policyForm.availableOnPortal =
7945
+ selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.futureUsersWillSelect;
7213
7946
  if (this.groupEnabled) {
7214
7947
  accessIds = this.returnIds(selectedItems.users, 'member_id');
7215
7948
  accessGroupIds = this.returnIds(selectedItems.groups, 'group_id');
@@ -7752,8 +8485,12 @@ class WorkflowPolicyComponent {
7752
8485
  ? policy === null || policy === void 0 ? void 0 : policy.businessCycle
7753
8486
  : undefined,
7754
8487
  policy_access_type: (_k = policy.policy_access_type) !== null && _k !== void 0 ? _k : 0,
7755
- policy_access_owners: policy.availableOnPortal ? [] : (policyAccessUsersIds !== null && policyAccessUsersIds !== void 0 ? policyAccessUsersIds : []),
7756
- policy_access_groups: policy.availableOnPortal ? [] : (policyAccessGroupsIds !== null && policyAccessGroupsIds !== void 0 ? policyAccessGroupsIds : []),
8488
+ policy_access_owners: policy.availableOnPortal
8489
+ ? []
8490
+ : policyAccessUsersIds !== null && policyAccessUsersIds !== void 0 ? policyAccessUsersIds : [],
8491
+ policy_access_groups: policy.availableOnPortal
8492
+ ? []
8493
+ : policyAccessGroupsIds !== null && policyAccessGroupsIds !== void 0 ? policyAccessGroupsIds : [],
7757
8494
  };
7758
8495
  if (this.mode == 'CREATE') {
7759
8496
  this.policyService.submitPolicy(payload).subscribe((res) => {
@@ -8176,7 +8913,10 @@ class WorkflowPolicyComponent {
8176
8913
  this.policyForm.policy_access_type = event;
8177
8914
  if (event == 0) {
8178
8915
  // this.policyForm.policy_access_owners = this.usersAccessList;
8179
- this.saveSelectedList('policyAccess', { users: this.usersAccessList, groups: [] });
8916
+ this.saveSelectedList('policyAccess', {
8917
+ users: this.usersAccessList,
8918
+ groups: [],
8919
+ });
8180
8920
  }
8181
8921
  }
8182
8922
  getUsersAccessListByCategory(categoryDetails) {
@@ -8186,7 +8926,9 @@ class WorkflowPolicyComponent {
8186
8926
  uniqueUsers = uniqBy((_a = categoryDetails === null || categoryDetails === void 0 ? void 0 : categoryDetails.all_managers) === null || _a === void 0 ? void 0 : _a.concat(categoryDetails === null || categoryDetails === void 0 ? void 0 : categoryDetails.all_approvers, categoryDetails === null || categoryDetails === void 0 ? void 0 : categoryDetails.all_authors), 'member_id');
8187
8927
  this.usersAccessList = uniqueUsers;
8188
8928
  this.usersAccessListIds = this.returnIds(this.usersAccessList, 'member_id');
8189
- uniqueGroupsId = [...new Set((_b = categoryDetails === null || categoryDetails === void 0 ? void 0 : categoryDetails.author_usergroup_ids) === null || _b === void 0 ? void 0 : _b.concat(categoryDetails === null || categoryDetails === void 0 ? void 0 : categoryDetails.owner_usergroup_ids))];
8929
+ uniqueGroupsId = [
8930
+ ...new Set((_b = categoryDetails === null || categoryDetails === void 0 ? void 0 : categoryDetails.author_usergroup_ids) === null || _b === void 0 ? void 0 : _b.concat(categoryDetails === null || categoryDetails === void 0 ? void 0 : categoryDetails.owner_usergroup_ids)),
8931
+ ];
8190
8932
  this.groupsAccessList = this.setList(this.overseerGroupsList, uniqueGroupsId, '_id');
8191
8933
  this.groupsAccessListIds = this.returnIds(this.groupsAccessList, 'group_id');
8192
8934
  }
@@ -8210,7 +8952,7 @@ class WorkflowPolicyComponent {
8210
8952
  WorkflowPolicyComponent.decorators = [
8211
8953
  { type: Component, args: [{
8212
8954
  selector: 'app-workflow-policy',
8213
- template: "<!-- <p>workflow-policy works!</p> -->\r\n\r\n<ng-container *ngIf=\"!showCreateDocuments\">\r\n <div class=\"workflow-policy\">\r\n <!-- Policy Name -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.disabled]=\"activeSelector && activeSelector !== 'name'\"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm?.policyName\">\r\n <img\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/what.svg\"\r\n alt=\"name\"\r\n *ngIf=\"!policyForm?.policyName || activeSelector === 'name'\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.policyName && activeSelector !== 'name'\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">\r\n Policy Name <span class=\"required\">*</span>\r\n </label>\r\n <input\r\n type=\"text\"\r\n (keydown)=\"activeSelector = 'name'\"\r\n (focusin)=\"activateSelector('name', true)\"\r\n *ngIf=\"policyForm.policyName == '' || activeSelector === 'name'\"\r\n (focusout)=\"activateSelector('name', false)\"\r\n [ngModel]=\"policyForm.policyName\"\r\n (ngModelChange)=\"policyForm.policyName = changeName($event)\"\r\n placeholder=\"Name this policy\"\r\n />\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"policyForm.policyName.length && activeSelector !== 'name'\"\r\n >\r\n <div class=\"chip-container\">\r\n <span class=\"value\">{{ policyForm.policyName }}</span>\r\n </div>\r\n <button\r\n class=\"edit\"\r\n (click)=\"activateSelector('name', true)\"\r\n type=\"button\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n\r\n <p\r\n *ngIf=\"submitted && !policyForm.policyName.trim()\"\r\n [appScrollInView]=\"true\"\r\n class=\"error-message\"\r\n >\r\n Please enter a name for this policy.\r\n </p>\r\n <marx-editor\r\n [(ngModel)]=\"policyForm.policyNotes\"\r\n [editorConfig]=\"description\"\r\n ></marx-editor>\r\n <!-- <app-cs-switch\r\n [(ngValue)]=\"policyForm.availableOnPortal\"\r\n (ngValueChange)=\"availabilityOnPortal($event)\"\r\n >\r\n Do you want this policy to be available on the portal?\r\n <i\r\n class=\"icons\"\r\n [appTooltip]=\"\r\n 'The policies that you intend to make accessible to the entire organization can be added to the policy portal. It is like a shared catalog of all active & updated policies that any logged in user can read/download for reference.'\r\n \"\r\n placement=\"bottom-right\"\r\n type=\"white\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n >&#xe932;</i\r\n >\r\n </app-cs-switch>\r\n <app-cs-switch\r\n *ngIf=\"policyForm.availableOnPortal\"\r\n [(ngValue)]=\"policyForm.acceptSuggestions\"\r\n >\r\n Accept suggestions\r\n <i\r\n class=\"icons\"\r\n [appTooltip]=\"\r\n 'If enabled, users can provide improvement suggestions to the policies that are listed on the Policy Portal.'\r\n \"\r\n placement=\"bottom-right\"\r\n type=\"white\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n >&#xe932;</i\r\n ></app-cs-switch> -->\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Policy Category -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'category'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'category' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.selectedCategories?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedCategories?.length == 0 ||\r\n activeSelector === 'category'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/category.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.selectedCategories?.length > 0 &&\r\n activeSelector !== 'category'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\"\r\n >Policy Category <span class=\"required\">*</span>\r\n </label>\r\n <div\r\n class=\"select\"\r\n *ngIf=\"policyForm?.selectedCategories?.length == 0\"\r\n >\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('category', true)\"\r\n placeholder=\"Select a category for this policy.\"\r\n readonly\r\n />\r\n </div>\r\n\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"policyForm?.selectedCategories?.length > 0\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <ng-container\r\n *ngFor=\"\r\n let category of policyForm?.selectedCategories?.slice(0, 1)\r\n \"\r\n >\r\n <i\r\n (click)=\"remove('category', category)\"\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"category.item_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ category.item_name }}</span\r\n >\r\n </ng-container>\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n *ngIf=\"policyForm?.selectedCategories?.length > 1\"\r\n type=\"button\"\r\n appPopover\r\n (click)=\"category.popover()\"\r\n placement=\"right\"\r\n >\r\n +{{ policyForm?.selectedCategories?.slice(1).length }}\r\n </button>\r\n </div>\r\n\r\n <!-- <div class=\"chip-container\" [class.more-one]=\"policyForm?.selectedCategories?.length>1\"\r\n [class.plus]=\"policyForm?.selectedCategories?.length>2\">\r\n <span class=\"chip\" *ngFor=\"let category of policyForm?.selectedCategories?.slice(0,2)\"><i\r\n class=\"icons\" (click)=\"remove('category',category)\">&#xe90d;</i>\r\n {{category.item_name}}</span>\r\n <button class=\"count\" *ngIf=\"policyForm?.selectedCategories?.length > 2\" type=\"button\"\r\n appPopover (click)=\"category.popover()\" placement=\"right\">+\r\n {{policyForm?.selectedCategories?.slice(2).length}}</button>\r\n </div> -->\r\n <button\r\n *ngIf=\"activeSelector !== 'category'\"\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('category', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n <app-popover #category [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let category of policyForm?.selectedCategories | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('category', category)\"\r\n >&#xe90d;</i\r\n >\r\n {{ category.item_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <p\r\n *ngIf=\"submitted && policyForm?.selectedCategories?.length == 0\"\r\n [appScrollInView]=\"true\"\r\n class=\"error-message\"\r\n >\r\n Please select the category for this policy.\r\n </p>\r\n </div>\r\n\r\n <div class=\"vx-form-group\" *ngIf=\"policyForm?.customTags?.length > 0\">\r\n <ng-container *ngFor=\"let tag of policyForm?.customTags\">\r\n <label class=\"vx-control-panel vx-mt-2\">{{ tag.tagname }}</label>\r\n <input\r\n type=\"text\"\r\n [(ngModel)]=\"tag.value\"\r\n placeholder=\"{{ tag.tagname }}\"\r\n />\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Effective Date -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.disabled]=\"activeSelector && activeSelector !== 'name'\"\r\n >\r\n <div class=\"left\" [class.checked]=\"false\">\r\n <img\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/when.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"false\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Effective Date</label>\r\n <div class=\"date-time-picker\">\r\n <div class=\"picker-group\">\r\n <input\r\n type=\"text\"\r\n readonly\r\n placeholder=\"Select the effective date of the policy.\"\r\n [value]=\"policyForm.policyDueDate | date : 'dd MMM yyyy'\"\r\n (click)=\"openDatePicker()\"\r\n />\r\n <i class=\"icons\">&#xe92d;</i>\r\n <dp-date-picker\r\n #datePicker\r\n (onSelect)=\"datePickerOverlay = false; closeDatePicker($event)\"\r\n [config]=\"dateConfig\"\r\n [(ngModel)]=\"policyForm.policyDueDate\"\r\n >\r\n </dp-date-picker>\r\n <div\r\n class=\"vx-overlay\"\r\n (click)=\"closeDatePicker($event)\"\r\n *ngIf=\"datePickerOverlay\"\r\n ></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Policy Owner -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'owners'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'owners' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm.policy_owners?.length\">\r\n <img\r\n *ngIf=\"!policyForm.policy_owners?.length\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/im-creating.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm.policy_owners?.length\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between\">\r\n <label class=\"vx-control-panel\">POLICY OWNER(S)</label>\r\n </div>\r\n <div\r\n *ngIf=\"!policyForm.policy_owners?.length\"\r\n (click)=\"activateSelector('owners', true)\"\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"!policyForm?.selectedCategories?.length\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select owners for this policy.\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"policyForm.policy_owners?.length\"\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i\r\n (click)=\"remove('owners', policyForm?.policy_owners[0], 0)\"\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.policy_owners[0]?.member_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.policy_owners[0]?.member_name }}</span\r\n >\r\n\r\n <button\r\n *ngIf=\"policyForm?.policy_owners?.length > 1\"\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"policyUserPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n + {{ policyForm?.policy_owners.length - 1 }}\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"false\"\r\n class=\"vx-fs-12 vx-paragraph-txt vx-ml-1 vx-mr-1\"\r\n >\r\n &\r\n </div>\r\n <div\r\n *ngIf=\"false\"\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"'Samantha Jones'\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >Samantha Jones</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"policyGroupPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +4\r\n </button>\r\n </div>\r\n <app-popover #policyUserPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let owner of policyForm?.policy_owners | slice : 1;\r\n let i = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"owner?.member_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i\r\n (click)=\"remove('owners', owner, i + 1)\"\r\n class=\"icons\"\r\n >&#xe90d;</i\r\n >\r\n {{ owner?.member_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #policyGroupPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let data of [1, 1, 1, 1, 1, 1, 1]\">\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"'Harshvardhan Kariwala'\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i class=\"icons\">&#xe90d;</i>\r\n Harshvardhan Kariwala\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n <button\r\n (click)=\"activateSelector('owners', true)\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n <p\r\n *ngIf=\"submitted && !policyForm?.policy_owners?.length\"\r\n [appScrollInView]=\"true\"\r\n class=\"error-message\"\r\n >\r\n Select owners for this policy.\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Review -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"\r\n activeSelector === 'reviewer' || activeSelector === 'reviewerFrequency'\r\n \"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewer' &&\r\n activeSelector !== 'reviewerFrequency' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm?.addReviewers\">\r\n <img\r\n *ngIf=\"!policyForm?.addReviewers\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/reviewer.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.addReviewers\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">REVIEW</label>\r\n <div\r\n class=\"reviewSelection vx-p-3 vx-pb-0\"\r\n [class.disabled]=\"\r\n activeSelector && sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"vx-fs-13 vx-paragraph-txt vx-mb-1\">\r\n Does this policy need to be reviewed?\r\n </div>\r\n <app-cs-radio\r\n name=\"review-type\"\r\n [checked]=\"policyForm?.addReviewers\"\r\n (checkedEvent)=\"typeSelected(true)\"\r\n ><div class=\"vx-fs-11 vx-fw-500 vx-paragraph-txt vx-mr-3\">\r\n YES\r\n </div></app-cs-radio\r\n >\r\n <app-cs-radio\r\n name=\"review-type\"\r\n [checked]=\"!policyForm?.addReviewers\"\r\n (checkedEvent)=\"typeSelected(false)\"\r\n ><div class=\"vx-fs-11 vx-fw-500 vx-paragraph-txt vx-mr-3\">\r\n NO\r\n </div></app-cs-radio\r\n >\r\n </div>\r\n\r\n <ng-container *ngIf=\"policyForm?.addReviewers\">\r\n <label class=\"vx-control-panel vx-mt-2\">REVIEWER</label>\r\n <div\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n *ngIf=\"policyForm?.selectedReviewers?.length == 0\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n [class.active]=\"activeSelector === 'reviewer'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewer' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n (click)=\"activateSelector('reviewer', true)\"\r\n >\r\n <div\r\n class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\"\r\n >\r\n Select the person responsible for reviewing this policy\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n *ngIf=\"policyForm?.selectedReviewers?.length > 0\"\r\n [class.active]=\"activeSelector === 'reviewer'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewer' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngFor=\"let reviewer of policyForm?.selectedReviewers\"\r\n >\r\n <i\r\n (click)=\"remove('reviewer', reviewer)\"\r\n class=\"icons cross vx-fs-12 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"'Samantha Jones'\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n {{ reviewer?.member_name }}</span\r\n >\r\n </div>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n *ngIf=\"activeSelector !== 'reviewer'\"\r\n (click)=\"activateSelector('reviewer', true)\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n <label class=\"vx-control-panel vx-mt-3\">REVIEW FREQUENCY</label>\r\n <div\r\n *ngIf=\"policyForm?.review_frequency_details == ''\"\r\n class=\"selectButton vx-pl-3 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n [class.active]=\"activeSelector === 'reviewerFrequency'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewerFrequency' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n >\r\n <div\r\n class=\"selectButtonPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\"\r\n >\r\n When does this policy needs to be reviewed?\r\n </div>\r\n <div\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n class=\"vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase\"\r\n >\r\n SET A FREQUENCY\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"policyForm?.review_frequency_details != ''\"\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewerFrequency' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n [class.active]=\"activeSelector === 'reviewerFrequency'\"\r\n >\r\n <div\r\n class=\"selectBoxText vx-fs-13 vx-paragraph-txt\"\r\n [appTooltip]=\"reviewerFrequencyPlaceholder\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n {{ reviewerFrequencyPlaceholder }}\r\n </div>\r\n <button\r\n *ngIf=\"activeSelector !== 'reviewerFrequency'\"\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n policyForm?.selectedReviewers?.length > 0 &&\r\n !policyForm?.review_frequency_details\r\n \"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n Select the review schedule for this policy.\r\n </p>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- New Approval Workflow -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'approvers'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'approvers' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.selectedApprovers?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedApprovers?.length == 0 ||\r\n activeSelector === 'approvers'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/approval.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.selectedApprovers?.length > 0 &&\r\n activeSelector !== 'approvers'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\" [class.disabled]=\"policyApprovalFlag !== 0\">\r\n <div class=\"vx-form-group\">\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between\">\r\n <label class=\"vx-control-panel\"\r\n >APPROVAL <span class=\"required\">*</span></label\r\n >\r\n <button\r\n (click)=\"\r\n createApprovalWorkflow(); activateSelector('approvers', true)\r\n \"\r\n [class.disabled]=\"!policyForm?.selectedCategories?.length\"\r\n class=\"createNewBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0\"\r\n >\r\n CREATE A NEW APPROVAL WORKFLOW\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n selectedWorkflow?.length === 0 ||\r\n !selectedWorkflow[0]?.workflow_name\r\n \"\r\n (click)=\"\r\n clickApprovalWorkflow(true); activateSelector('approvers', true)\r\n \"\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"!policyForm?.selectedCategories?.length\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select the approval workflow for this policy\r\n </div>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n selectedWorkflow?.length > 0 && selectedWorkflow[0]?.workflow_name\r\n \"\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-mb-2\"\r\n >\r\n <div\r\n class=\"vx-d-flex vx-align-center vx-justify-between vx-mt-2 vx-mb-2\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i\r\n (click)=\"removeWorkflow()\"\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"selectedWorkflow[0]?.workflow_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ selectedWorkflow[0]?.workflow_name }}</span\r\n >\r\n </div>\r\n <button\r\n (click)=\"editWorkflow(selectedWorkflow[0])\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"selectedWorkflow?.length > 0\">\r\n <div\r\n *ngFor=\"\r\n let approval of selectedWorkflow[0]?.approval_workflow;\r\n let approvalIndex = index\r\n \"\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between vx-mb-2\"\r\n >\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <div class=\"level-left vx-d-flex vx-align-center\">\r\n <div class=\"vx-d-block\">\r\n <div\r\n class=\"level-name vx-fs-9 vx-fw-500 vx-paragraph-txt vx-tt-uppercase vx-lh-3\"\r\n [appTooltip]=\"\r\n approval?.alias_name\r\n ? approval?.alias_name\r\n : approval?.level1\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n {{\r\n approval?.alias_name\r\n ? approval?.alias_name\r\n : approval?.level1\r\n }}\r\n </div>\r\n <div\r\n class=\"vx-fs-9 vx-fw-500 vx-label-txt vx-tt-uppercase vx-lh-3\"\r\n >\r\n {{\r\n approval?.type === \"ROUNDROBIN\"\r\n ? \"ROUND-ROBIN\"\r\n : approval?.type === \"ANYONE\"\r\n ? \"ANY ONE\"\r\n : approval?.type\r\n }}\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2 vx-ml-2\"\r\n >\r\n <!-- <i class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n > -->\r\n <div\r\n *ngIf=\"\r\n approval?.type?.toLowerCase() === 'sequential' &&\r\n approval?.approvers?.length < 2\r\n \"\r\n class=\"workflowLavel vx-fs-11 vx-fw-500 vx-pl-1 vx-pr-1 vx-lh-4 vx-mr-1 vx-text-center\"\r\n >\r\n {{ 1 == approval?.approvers?.length ? \"Final\" : 1 }}\r\n </div>\r\n <div\r\n *ngIf=\"\r\n approval?.approvers?.length > 1 &&\r\n approval?.type?.toLowerCase() === 'sequential'\r\n \"\r\n class=\"workflowLavel vx-fs-11 vx-fw-500 vx-pl-1 vx-pr-1 vx-lh-4 vx-mr-1 vx-text-center\"\r\n >\r\n 1\r\n </div>\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"approval?.approvers[0]?.member_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ approval?.approvers[0]?.member_name }}</span\r\n >\r\n <button\r\n *ngIf=\"approval?.approvers?.length > 1\"\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"workflowPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +{{ approval?.approvers?.length - 1 }}\r\n </button>\r\n </div>\r\n <app-popover #workflowPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let approver of approval?.approvers | slice : 1;\r\n let approvalIndex = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"approver?.member_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <!-- <i class=\"icons\">&#xe90d;</i> -->\r\n <span\r\n *ngIf=\"\r\n approval?.type?.toLowerCase() === 'sequential'\r\n \"\r\n class=\"workflowLavel vx-fs-11 vx-fw-500 vx-pl-1 vx-pr-1 vx-lh-4 vx-mr-1 vx-text-center\"\r\n >{{\r\n approvalIndex + 1 ===\r\n approval?.approvers?.length - 1\r\n ? \"Final\"\r\n : approvalIndex + 2\r\n }}</span\r\n >\r\n {{ approver?.member_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n\r\n <!-- <div class=\"vx-d-flex vx-align-center\">\r\n <button (click)=\"editLevelClicked(approval,approvalIndex)\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n <button (click)=\"deleteLevel(approvalIndex)\"\r\n class=\"deleteBtn vx-fs-11 vx-fw-600 vx-tt-uppercase vx-p-0 vx-m-0 vx-ml-4 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe9ae;</i> DELETE\r\n </button>\r\n </div> -->\r\n </div>\r\n </ng-container>\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n !policyForm?.selectedApprovers[0]?.approval_workflow?.length &&\r\n !policyApprovalFlag &&\r\n !policyForm?.selectedApprovers[0]?.approvers?.length\r\n \"\r\n [appScrollInView]=\"true\"\r\n class=\"error-message\"\r\n >\r\n Select or create an approval workflow for this policy.\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Policy Access -->\r\n <div\r\n *ngIf=\"true\"\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'policyAccess'\"\r\n [class.disabled]=\"activeSelector &&\r\n activeSelector !== 'policyAccess' &&\r\n sideSelectorElements.includes(activeSelector)\"\r\n >\r\n <div class=\"left\" [class.checked]=\"true\">\r\n <img\r\n *ngIf=\"!policyForm?.policy_access_owners?.length && !policyForm?.policy_access_groups?.length && !policyForm?.availableOnPortal\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/lock-scope.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.policy_access_owners?.length || policyForm?.policy_access_groups?.length || policyForm?.availableOnPortal\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between\">\r\n <label class=\"vx-control-panel\">POLICY PORTAL ACCESS</label>\r\n </div>\r\n <div *ngIf=\"!policyForm?.policy_access_owners?.length && !policyForm?.policy_access_groups?.length && !policyForm?.availableOnPortal\"\r\n (click)=\"activateSelector('policyAccess', true)\"\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"!policyForm?.selectedCategories?.length\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Who should be able to view this policy?\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!policyForm?.availableOnPortal\">\r\n <div class=\"selectBoxSuccess vx-pl-2 vx-pr-3\" *ngIf=\"policyForm?.policy_access_owners?.length || policyForm?.policy_access_groups?.length\">\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between vx-mt-2 vx-mb-2\">\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <div *ngIf=\"policyForm?.policy_access_owners?.length\"\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\" *ngIf=\"policyForm?.policy_access_type === 1\"\r\n (click)=\"\r\n remove(\r\n 'policyAccess',\r\n policyForm?.policy_access_owners[0]\r\n )\r\n \"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.policy_access_owners[0]?.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{policyForm?.policy_access_owners[0]?.employee_name}}</span\r\n >\r\n <button \r\n *ngIf=\"policyForm?.policy_access_owners?.length > 1\"\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"policyAccessPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +{{ policyForm?.policy_access_owners.length - 1 }}\r\n </button>\r\n </div>\r\n\r\n <div\r\n class=\"vx-fs-12 vx-paragraph-txt vx-ml-2 vx-mr-2\"\r\n *ngIf=\"\r\n policyForm?.policy_access_owners.length > 0 &&\r\n policyForm?.policy_access_groups.length > 0\r\n \"\r\n >\r\n &\r\n </div>\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"policyForm?.policy_access_groups.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\" *ngIf=\"policyForm?.policy_access_type === 1\" \r\n (click)=\"\r\n remove(\r\n 'accessGroup',\r\n policyForm?.policy_access_groups[0]\r\n )\r\n \"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"\r\n policyForm?.policy_access_groups[0]?.group_name\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.policy_access_groups[0]?.group_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"accessGroup.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.policy_access_groups.length > 1\"\r\n >\r\n +{{ policyForm?.policy_access_groups.length - 1 }}\r\n </button>\r\n </div>\r\n\r\n <app-popover #policyAccessPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"\r\n let user of policyForm?.policy_access_owners | slice : 1;\r\n let j = index\r\n \">\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"user?.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i class=\"icons\" *ngIf=\"policyForm?.policy_access_type === 1\" (click)=\"\r\n remove(\r\n 'policyAccess',\r\n user\r\n )\r\n \">&#xe90d;</i>\r\n {{user?.employee_name}}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #accessGroup [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let data of policyForm?.policy_access_groups | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" *ngIf=\"policyForm?.policy_access_type === 1\" (click)=\"remove('accessGroup', data)\"\r\n >&#xe90d;</i\r\n >\r\n {{ data?.group_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n\r\n <button (click)=\"activateSelector('policyAccess', true)\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n\r\n <!-- <div class=\"vx-mt-4 vx-mb-2\">\r\n <app-cs-radio\r\n [name]=\"'policyFormAccessType'\" [checked]=\"policyForm?.policy_access_type === 0\" (checkedEvent)=\"setAccessField(0)\"\r\n ><div class=\"vx-fs-12 vx-paragraph-txt\">\r\n Everyone who has access to this Policy Category\r\n </div></app-cs-radio\r\n >\r\n <app-cs-radio\r\n [name]=\"'policyFormAccessType'\" [checked]=\"policyForm?.policy_access_type === 1\" (checkedEvent)=\"setAccessField(1)\"\r\n class=\"vx-mt-1\"\r\n ><div class=\"vx-fs-12 vx-paragraph-txt\">\r\n Select users/groups\r\n </div></app-cs-radio\r\n >\r\n </div> -->\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\" *ngIf=\"policyForm?.availableOnPortal\">\r\n <span class=\"vx-fs-13 vx-paragraph-txt\">Visible to All Current & Future Users</span>\r\n\r\n <button (click)=\"activateSelector('policyAccess', true)\" class=\"edit vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"><i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT</button>\r\n </div>\r\n\r\n <div class=\"vx-mt-2\">\r\n <app-cs-switch\r\n *ngIf=\"policyForm.availableOnPortal\"\r\n [(ngValue)]=\"policyForm.acceptSuggestions\"\r\n >ACCEPT SUGGESTIONS\r\n <i\r\n class=\"icons vx-fs-12 vx-txt-blue vx-ml-1 vx-mr-2\"\r\n [appTooltip]=\"'If enabled, users can provide improvement suggestions to the policies that are listed on the Policy Portal.'\"\r\n placement=\"bottom-right\"\r\n delay=\"0\"\r\n type=\"white\"\r\n [tooltipMandatory]=\"true\"\r\n >&#xe91f;</i\r\n ></app-cs-switch\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Attestations -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"false\"\r\n [class.disabled]=\"false\"\r\n *ngIf=\"false\"\r\n >\r\n <div class=\"left\" [class.checked]=\"false\">\r\n <img\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/attestations.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"false\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between\">\r\n <label class=\"vx-control-panel\">ATTESTATIONS</label>\r\n </div>\r\n <div\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"false\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select the persons required to attest to this Policy\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"'Samantha Jones'\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >Samantha Jones</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"policyAttestationPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +4\r\n </button>\r\n </div>\r\n <app-popover #policyAttestationPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let data of [1, 1, 1, 1, 1, 1, 1]\">\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"'Harshvardhan Kariwala'\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i class=\"icons\">&#xe90d;</i>\r\n Harshvardhan Kariwala\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n\r\n <div class=\"vx-mt-2\">\r\n <app-cs-switch\r\n >REQUIRES E-SIGNATURE FOR ATTESTATION\r\n <i\r\n class=\"icons vx-fs-12 vx-txt-blue vx-ml-1 vx-mr-2\"\r\n [appTooltip]=\"\r\n 'Requires e-signature for attestation info text here...'\r\n \"\r\n placement=\"bottom-right\"\r\n delay=\"0\"\r\n type=\"white\"\r\n [tooltipMandatory]=\"true\"\r\n >&#xe91f;</i\r\n ></app-cs-switch\r\n >\r\n </div>\r\n\r\n <label class=\"vx-control-panel vx-mt-2\">WHEN?</label>\r\n <div\r\n class=\"selectButton vx-pl-3 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div\r\n class=\"selectButtonPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\"\r\n >\r\n What is the attestation schedule for this<br />policy?\r\n </div>\r\n <div class=\"vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase\">\r\n SET A FREQUENCY\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div class=\"selectBoxText vx-fs-13 vx-paragraph-txt\">\r\n Every Wednesday by 11:59 pm\r\n </div>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n\r\n <label class=\"vx-control-panel vx-mt-2\"\r\n >ASSESSMENT OF UNDERSTANDING</label\r\n >\r\n <div\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"false\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Set up a questionnaire to confirm the reader\u2019s<br />understanding\r\n of the policy.\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-3 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <span class=\"chipName vx-fs-11 vx-label-txt\">5 Questions</span>\r\n </div>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Approval Workflow -->\r\n <div\r\n class=\"form-group-row\"\r\n *ngIf=\"false\"\r\n [class.active]=\"activeSelector === 'approvers'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'approvers' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.selectedApprovers?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedApprovers?.length == 0 ||\r\n activeSelector === 'approvers'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/approval.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.selectedApprovers?.length > 0 &&\r\n activeSelector !== 'approvers'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div\r\n class=\"vx-form-group approval-workflow\"\r\n [class.disabled]=\"policyApprovalFlag !== 0\"\r\n >\r\n <label class=\"vx-control-panel\">\r\n Approval workflow <span class=\"required\">*</span>\r\n <button\r\n (click)=\"\r\n activateSelector('approvers', true);\r\n addMoreLevels = true;\r\n workflowType = 'SEQUENTIAL'\r\n \"\r\n class=\"button\"\r\n >\r\n Create a new Approval Workflow\r\n </button>\r\n </label>\r\n <div\r\n class=\"select\"\r\n [class.disabled]=\"approverWorkFlowList?.length == 0\"\r\n *ngIf=\"\r\n policyForm?.selectedApprovers[0]?.approvers?.length == 0 ||\r\n policyForm?.selectedApprovers.length == 0\r\n \"\r\n >\r\n <cs-select\r\n [ngModel]=\"selectedApprovalWorkflow\"\r\n (ngModelChange)=\"selectedWorkflowChange($event)\"\r\n [placeholder]=\"'Select approval workflow for this policy'\"\r\n name=\"selectedApprovalWorkflow\"\r\n [setMaxWidth]=\"true\"\r\n >\r\n <cs-option\r\n *ngFor=\"let data of approverWorkFlowList\"\r\n [value]=\"data\"\r\n >\r\n {{ data.workflow_name }}\r\n </cs-option>\r\n <cs-option\r\n [value]=\"-1\"\r\n (click)=\"\r\n activateSelector('approvers', true);\r\n addMoreLevels = true;\r\n workflowType = 'SEQUENTIAL'\r\n \"\r\n >Create a new approval workflow</cs-option\r\n >\r\n </cs-select>\r\n </div>\r\n <ng-container\r\n *ngIf=\"policyForm?.selectedApprovers[0]?.approvers?.length > 0\"\r\n >\r\n <div\r\n class=\"selected\"\r\n *ngFor=\"let level of policyForm?.selectedApprovers; let i = index\"\r\n >\r\n <div class=\"workflow-label\">\r\n <p class=\"title\">Level {{ i + 1 }}</p>\r\n <p class=\"description\">{{ level.name }}</p>\r\n </div>\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <div class=\"chip-container\">\r\n <span\r\n class=\"chip\"\r\n *ngFor=\"\r\n let approver of level.approvers.slice(0, 1);\r\n let j = index\r\n \"\r\n ><i class=\"icons\" (click)=\"remove('approvers', approver, i)\"\r\n >&#xe90d;</i\r\n >\r\n <span class=\"step\" *ngIf=\"level.name == 'SEQUENTIAL'\">{{\r\n j + 1\r\n }}</span\r\n >{{ approver.member_name }}</span\r\n >\r\n\r\n <button\r\n class=\"count\"\r\n *ngIf=\"level.approvers?.length > 1\"\r\n type=\"button\"\r\n appPopover\r\n (click)=\"labelName.popover()\"\r\n placement=\"right\"\r\n >\r\n +\r\n\r\n {{ level.approvers.slice(1).length }}\r\n </button>\r\n <app-popover #labelName [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let approver of level.approvers | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i\r\n class=\"icons\"\r\n (click)=\"remove('approvers', approver, i)\"\r\n >&#xe90d;</i\r\n >\r\n <span\r\n class=\"step\"\r\n *ngIf=\"level.name == 'SEQUENTIAL'\"\r\n >\r\n {{\r\n j == level.approvers.slice(1).length - 1\r\n ? \"Final\"\r\n : j + 2\r\n }}\r\n </span>\r\n {{ approver.member_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"\r\n activateSelector('approvers', true, level.name);\r\n approversListIndex = i\r\n \"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i>Edit\r\n </button>\r\n <button\r\n class=\"close-btn\"\r\n (click)=\"remove('workflowLevel', level, i)\"\r\n >\r\n <i class=\"icons\">&#xe90d;</i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n !policyForm?.selectedApprovers?.length &&\r\n !policyApprovalFlag\r\n \"\r\n [appScrollInView]=\"true\"\r\n class=\"error-message\"\r\n >\r\n Select or create an approval workflow for this policy.\r\n </p>\r\n\r\n <label\r\n class=\"vx-control-panel\"\r\n *ngIf=\"policyForm.selectedApprovers[0]?.approvers?.length > 0\"\r\n ><button\r\n class=\"button\"\r\n (click)=\"\r\n activateSelector('approvers', true);\r\n addMoreLevels = true;\r\n workflowType = 'SEQUENTIAL'\r\n \"\r\n >\r\n + Add More Levels\r\n </button></label\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Who / now Attestation -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'assignees'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'assignees' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.selectedAssignees?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedAssignees?.length == 0 ||\r\n activeSelector === 'assignees'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/who.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.selectedAssignees?.length > 0 &&\r\n activeSelector !== 'assignees'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Attestation</label>\r\n <div\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center vx-mb-2\"\r\n *ngIf=\"\r\n (policyForm?.selectedAssignees?.length == 0 && !groupEnabled) ||\r\n (policyForm?.selectedAssignees?.length == 0 &&\r\n groupEnabled &&\r\n policyForm?.selectedGroupAssignee.length == 0)\r\n \"\r\n (click)=\"activateSelector('assignees', true)\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select the persons responsible for attesting this policy.\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between vx-mb-2\"\r\n *ngIf=\"\r\n policyForm?.selectedAssignees?.length > 0 ||\r\n policyForm?.selectedGroupAssignee?.length > 0\r\n \"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"!groupEnabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"\r\n let assignee of policyForm?.selectedAssignees?.slice(0, 1)\r\n \"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('assignees', assignee)\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"assignee.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ assignee.employee_name }}</span\r\n >\r\n </ng-container>\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"assigneePopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.selectedAssignees?.length > 1\"\r\n >\r\n +{{ policyForm?.selectedAssignees?.slice(1).length }}\r\n </button>\r\n </div>\r\n <ng-container *ngIf=\"groupEnabled\">\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"groupEnabled && policyForm?.selectedAssignees.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"\r\n remove('assignees', policyForm?.selectedAssignees[0])\r\n \"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.selectedAssignees[0]?.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.selectedAssignees[0]?.employee_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"UserPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.selectedAssignees.length > 1\"\r\n >\r\n +{{ policyForm?.selectedAssignees.length - 1 }}\r\n </button>\r\n </div>\r\n <div\r\n class=\"vx-fs-12 vx-paragraph-txt vx-ml-2 vx-mr-2\"\r\n *ngIf=\"\r\n policyForm?.selectedAssignees.length > 0 &&\r\n policyForm?.selectedGroupAssignee.length > 0\r\n \"\r\n >\r\n &\r\n </div>\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"policyForm?.selectedGroupAssignee.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"\r\n remove(\r\n 'groupAssignees',\r\n policyForm?.selectedGroupAssignee[0]\r\n )\r\n \"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"\r\n policyForm?.selectedGroupAssignee[0]?.group_name\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.selectedGroupAssignee[0]?.group_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"group.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.selectedGroupAssignee.length > 1\"\r\n >\r\n +{{ policyForm?.selectedGroupAssignee.length - 1 }}\r\n </button>\r\n </div>\r\n </ng-container>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n (click)=\"activateSelector('assignees', true)\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n ((policyForm?.selectedAssignees?.length == 0 &&\r\n policyForm?.frequency_details &&\r\n !groupEnabled) ||\r\n (policyForm?.selectedAssignees?.length == 0 &&\r\n policyForm.selectedGroupAssignee.length == 0 &&\r\n policyForm?.frequency_details &&\r\n groupEnabled))\r\n \"\r\n id=\"whovalidatemsg\"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n Select the persons required to attest to this Policy.\r\n </p>\r\n <app-cs-switch\r\n [(ngValue)]=\"policyForm.requiresSignatureForAttestation\"\r\n [class.disabled]=\"policyForm?.selectedAssignees?.length == 0\"\r\n class=\"who-toggle\"\r\n >THIS POLICY REQUIRES E-SIGNATURE FOR ATTESTATION\r\n <i\r\n class=\"icons\"\r\n [appTooltip]=\"\r\n 'If selected, the readers will be required to attest this policy using their electronic signature.'\r\n \"\r\n placement=\"bottom-right\"\r\n type=\"white\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n >&#xe91f;</i\r\n ></app-cs-switch\r\n >\r\n <app-popover #assigneePopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let assignee of policyForm?.selectedAssignees | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('assignees', assignee)\"\r\n >&#xe90d;</i\r\n >\r\n {{ assignee.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #UserPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let assignee of policyForm?.selectedAssignees | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('assignees', assignee)\"\r\n >&#xe90d;</i\r\n >\r\n {{ assignee.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #group [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let data of policyForm?.selectedGroupAssignee | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('groupAssignees', data)\"\r\n >&#xe90d;</i\r\n >\r\n {{ data.group_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n\r\n <!-- overseer -->\r\n <app-popover #overseerPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let overseer of policyForm?.CCEmail | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('ccEmail', overseer)\"\r\n >&#xe90d;</i\r\n >\r\n {{ overseer?.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #overseerGroup [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let data of policyForm?.CCGroupEmail | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('ccGroupEmail', data)\"\r\n >&#xe90d;</i\r\n >\r\n {{ data?.group_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <!-- overseer end -->\r\n\r\n <!-- overseer fail start -->\r\n <app-popover #overseerFailPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let overseer of policyForm?.CCFailEmail | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('ccFail', overseer)\"\r\n >&#xe90d;</i\r\n >\r\n {{ overseer?.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #overseerFailGroup [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let data of policyForm?.CCFailEmailGroup | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i\r\n class=\"icons\"\r\n (click)=\"remove('ccGroupFailEmail', data)\"\r\n >&#xe90d;</i\r\n >\r\n {{ data?.group_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <!-- overseer fail end -->\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- When -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'frequency'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'frequency' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n *ngIf=\"false\"\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.frequency_details\"\r\n >\r\n <img\r\n *ngIf=\"\r\n !policyForm?.frequency_details || activeSelector === 'frequency'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/when.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.frequency_details && activeSelector !== 'frequency'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">When?</label>\r\n\r\n <div\r\n *ngIf=\"policyForm?.frequency_details == ''\"\r\n class=\"select button-sec\"\r\n >\r\n <div\r\n class=\"custom-input frequency-custom-input\"\r\n (click)=\"activateSelector('frequency', true)\"\r\n >\r\n {{ frequencyPlaceholder }}\r\n </div>\r\n\r\n <button (click)=\"activateSelector('frequency', true)\" type=\"button\">\r\n Set A frequency\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"policyForm?.frequency_details != ''\"\r\n class=\"selected button-sec\"\r\n >\r\n <span class=\"chip\">{{ frequencyPlaceholder }}</span>\r\n <button\r\n *ngIf=\"activeSelector !== 'frequency'\"\r\n type=\"button\"\r\n class=\"edit\"\r\n (click)=\"activateSelector('frequency', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i>Edit\r\n </button>\r\n </div>\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n ((policyForm?.selectedAssignees?.length > 0 &&\r\n !policyForm?.frequency_details &&\r\n !groupEnabled) ||\r\n ((policyForm?.selectedAssignees?.length > 0 ||\r\n policyForm?.selectedGroupAssignee?.length > 0) &&\r\n !policyForm?.frequency_details &&\r\n groupEnabled))\r\n \"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n Select an attestation schedule for this policy.\r\n </p>\r\n\r\n <!-- <label class=\"vx-control-panel\">Effective Date</label>\r\n <div class=\"date-time-picker\">\r\n <div class=\"picker-group\">\r\n <input type=\"text\" readonly placeholder=\"Select the date from which this policy goes into effect.\"\r\n [value]=\"policyForm.policyDueDate | date: 'dd MMM yyyy'\" (click)=\"openDatePicker();\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <dp-date-picker #datePicker (onSelect)=\"datePickerOverlay = false;closeDatePicker($event)\"\r\n [config]=\"dateConfig\" [(ngModel)]=\"policyForm.policyDueDate\">\r\n </dp-date-picker>\r\n <div class=\"vx-overlay\" (click)=\"closeDatePicker($event)\" *ngIf=\"datePickerOverlay\"></div>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Checkpoints / Assessment of Understanding -->\r\n <div\r\n class=\"form-group-row\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n *ngIf=\"true\"\r\n [class.active]=\"activeSelector === 'checkpoints'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'checkpoints' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n *ngIf=\"false\"\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.checkpointDetails?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.checkpointDetails?.length == 0 ||\r\n activeSelector === 'checkpoints'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/checkpoints.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.checkpointDetails?.length > 0 &&\r\n activeSelector !== 'checkpoints'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">\r\n Assessment of Understanding\r\n <!-- <button *ngIf=\"policyForm?.checkpointDetails?.length===0\" class=\"button\" (click)=\"activateSelector('checkpoints',true)\">+ Add Checkpoints</button> -->\r\n </label>\r\n <div\r\n class=\"select\"\r\n *ngIf=\"policyForm?.checkpointDetails?.length === 0\"\r\n (click)=\"activateSelector('checkpoints', true)\"\r\n >\r\n <!-- <input type=\"text\" placeholder=\"Set up a questionnaire to confirm the reader\u2019s understanding of the policy.\" readonly> -->\r\n <div class=\"custom-input\">\r\n Set up a questionnaire to confirm the reader\u2019s<br />understanding\r\n of the policy.\r\n </div>\r\n </div>\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"policyForm?.checkpointDetails?.length > 0\"\r\n >\r\n <!-- <div class=\"chip-container\">\r\n <span class=\"chip\">{{policyForm?.checkpointDetails?.length + (policyForm?.checkpointDetails?.length > 1 ?' Checkpoints':' Checkpoint')}}</span>\r\n\r\n <span class=\"checkpoint-point-text first\">TOTAL POINTS: <span class=\"no\">{{policyForm?.totalQuestion}}</span><br><em>Each question carries 1 point</em></span>\r\n\r\n <span class=\"checkpoint-point-text\">POINTS REQUIRED TO ATTEST : <span class=\"no\">{{policyForm?.passingMarks}}</span></span>\r\n\r\n </div> -->\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <span class=\"chipName vx-fs-11 vx-label-txt\">{{\r\n policyForm?.checkpointDetails?.length +\r\n (policyForm?.checkpointDetails?.length > 1\r\n ? \" Questions\"\r\n : \" Question\")\r\n }}</span>\r\n </div>\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('checkpoints', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n <!-- <app-popover #checkpointPopOver [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let checkpoint of policyForm?.checkpointDetails | slice: 1; let j = index\">\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('checkpoints',checkpoint,j+1)\">&#xe90d;</i>\r\n {{ checkpoint?.question }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover> -->\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Risk Classification -->\r\n <div\r\n class=\"form-group-row\"\r\n *ngIf=\"showRiskClassification && false\"\r\n [class.disabled]=\"activeSelector && activeSelector !== 'name'\"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm.riskRating\">\r\n <img\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/risks.svg\"\r\n alt=\"im\"\r\n *ngIf=\"!policyForm?.riskRating\"\r\n />\r\n\r\n <svg\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n *ngIf=\"policyForm?.riskRating\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Risk Classification</label>\r\n <div class=\"classification\">\r\n <label\r\n class=\"low\"\r\n *ngFor=\"let class of riskClassification\"\r\n [ngClass]=\"[class.class]\"\r\n >\r\n <input\r\n type=\"radio\"\r\n name=\"classification\"\r\n [value]=\"class.value\"\r\n [checked]=\"policyForm?.riskRating === class.value\"\r\n [(ngModel)]=\"policyForm.riskRating\"\r\n />\r\n <span>{{ class.name }}</span>\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Responsibility Center -->\r\n <div\r\n class=\"form-group-row\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n *ngIf=\"policyForm.addResponsibilityCenters\"\r\n [class.active]=\"activeSelector === 'rc'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'rc' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm?.selectedRCs?.length > 0\">\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedRCs?.length == 0 || activeSelector === 'rc'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/responsibility-center.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.selectedRCs?.length > 0 && activeSelector !== 'rc'\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Responsibility Center</label>\r\n <div class=\"select\" *ngIf=\"policyForm?.selectedRCs?.length == 0\">\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('rc', true)\"\r\n placeholder=\"Select Responsibility Center(s) that this policy relates to.\"\r\n readonly\r\n />\r\n </div>\r\n\r\n <div class=\"selected\" *ngIf=\"policyForm?.selectedRCs?.length > 0\">\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <ng-container\r\n *ngFor=\"let rc of policyForm?.selectedRCs?.slice(0, 1)\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('rc', rc)\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"rc.item_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ rc.item_name }}</span\r\n >\r\n </ng-container>\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"rcPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.selectedRCs?.length > 1\"\r\n >\r\n +{{ policyForm?.selectedRCs?.slice(1).length }}\r\n </button>\r\n </div>\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('rc', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n <app-popover #rcPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let rc of policyForm?.selectedRCs | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('rc', rc)\">&#xe90d;</i>\r\n {{ rc.item_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Version -->\r\n <div\r\n *ngIf=\"policyForm.addVersion\"\r\n class=\"form-group-row\"\r\n [class.disabled]=\"\r\n activeSelector && sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm.policy_version\">\r\n <img\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/associated-risks.svg\"\r\n alt=\"name\"\r\n *ngIf=\"!policyForm.policy_version\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm.policy_version\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">VERSION</label>\r\n <input\r\n [(ngModel)]=\"policyForm.policy_version\"\r\n (change)=\"onVersion($event)\"\r\n type=\"text\"\r\n placeholder=\"Specify the policy version.\"\r\n />\r\n <p\r\n *ngIf=\"!isVersionValid\"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n {{ versionErrorMessage }}\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Reviewer -->\r\n <div\r\n class=\"form-group-row\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n *ngIf=\"policyForm.addReviewers && false\"\r\n [class.active]=\"activeSelector === 'reviewer'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewer' &&\r\n activeSelector !== 'reviewerFrequency' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.selectedReviewers?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedReviewers?.length == 0 ||\r\n activeSelector === 'reviewer'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/reviewer.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.selectedReviewers?.length > 0 &&\r\n activeSelector !== 'reviewer'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Reviewer </label>\r\n <div\r\n class=\"select\"\r\n *ngIf=\"policyForm?.selectedReviewers?.length == 0\"\r\n >\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('reviewer', true)\"\r\n placeholder=\"Select the person responsible for reviewing this policy\"\r\n readonly\r\n />\r\n </div>\r\n\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"policyForm?.selectedReviewers?.length > 0\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <ng-container\r\n *ngFor=\"let reviewer of policyForm?.selectedReviewers\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('reviewer', reviewer)\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"reviewer.member_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ reviewer.member_name }}</span\r\n >\r\n </ng-container>\r\n </div>\r\n\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('reviewer', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n policyForm?.selectedReviewers?.length == 0 &&\r\n policyForm?.review_frequency_details\r\n \"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n Select a reviewer for this policy.\r\n </p>\r\n\r\n <label class=\"vx-control-panel\">When? </label>\r\n\r\n <div\r\n *ngIf=\"policyForm?.review_frequency_details == ''\"\r\n class=\"select button-sec\"\r\n >\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n [placeholder]=\"reviewerFrequencyPlaceholder\"\r\n readonly\r\n />\r\n <button\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n type=\"button\"\r\n >\r\n Set A frequency\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"policyForm?.review_frequency_details != ''\"\r\n class=\"selected button-sec\"\r\n >\r\n <span class=\"chip\">{{ reviewerFrequencyPlaceholder }}</span>\r\n <button\r\n *ngIf=\"activeSelector !== 'reviewerFrequency'\"\r\n type=\"button\"\r\n class=\"edit\"\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i>Edit\r\n </button>\r\n </div>\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n policyForm?.selectedReviewers?.length > 0 &&\r\n !policyForm?.review_frequency_details\r\n \"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n Select the review schedule for this policy.\r\n </p>\r\n\r\n <app-format-and-evidence\r\n (updateFiles)=\"saveSelectedList('reviewer_attachments', $event)\"\r\n #formatEvidence\r\n [mode]=\"'policyReviewer'\"\r\n [organization_id]=\"organization_id\"\r\n [formatEvidanceData]=\"policyForm?.documentsAndLinks\"\r\n >\r\n </app-format-and-evidence>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Overseer -->\r\n <div\r\n class=\"form-group-row\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n *ngIf=\"policyForm.addOverseers\"\r\n [class.active]=\"\r\n activeSelector === 'ccEmail' || activeSelector === 'ccFail'\r\n \"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'ccEmail' &&\r\n activeSelector !== 'ccFail' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"\r\n policyForm?.CCEmail?.length > 0 || policyForm?.CCFailEmail?.length > 0\r\n \"\r\n >\r\n <img\r\n *ngIf=\"\r\n (policyForm?.CCFailEmail?.length == 0 &&\r\n policyForm?.CCEmail?.length == 0) ||\r\n activeSelector === 'ccEmail' ||\r\n activeSelector === 'ccFail'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/oversight.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n (policyForm?.CCFailEmail?.length > 0 ||\r\n policyForm?.CCEmail?.length > 0) &&\r\n activeSelector !== 'ccEmail' &&\r\n activeSelector !== 'ccFail'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Overseer </label>\r\n <div\r\n class=\"select\"\r\n *ngIf=\"\r\n policyForm?.CCEmail?.length == 0 &&\r\n policyForm?.CCGroupEmail.length == 0\r\n \"\r\n >\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('ccEmail', true)\"\r\n placeholder=\"Who should have oversight of this policy?\"\r\n readonly\r\n />\r\n </div>\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"\r\n policyForm?.CCEmail?.length > 0 ||\r\n policyForm?.CCGroupEmail.length > 0\r\n \"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"!groupEnabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"let ccEmail of policyForm?.CCEmail?.slice(0, 1)\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('ccEmail', ccEmail)\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"ccEmail.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ ccEmail.employee_name }}</span\r\n >\r\n </ng-container>\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"ccEmailPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCEmail?.length > 1\"\r\n >\r\n +{{ policyForm?.CCEmail?.slice(1).length }}\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"groupEnabled\" class=\"chip-container\">\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"groupEnabled && policyForm?.CCEmail?.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('ccEmail', policyForm?.CCEmail[0])\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.CCEmail[0].employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.CCEmail[0].employee_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"overseerPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCEmail?.length > 1\"\r\n >\r\n +{{ policyForm?.CCEmail?.length - 1 }}\r\n </button>\r\n </div>\r\n\r\n <div\r\n class=\"vx-fs-12 vx-paragraph-txt vx-ml-2 vx-mr-2\"\r\n *ngIf=\"\r\n policyForm?.CCEmail.length > 0 &&\r\n policyForm?.CCGroupEmail?.length > 0\r\n \"\r\n >\r\n &\r\n </div>\r\n\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"policyForm?.CCGroupEmail.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('ccGroupEmail', policyForm?.CCGroupEmail[0])\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.CCGroupEmail[0]?.group_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.CCGroupEmail[0]?.group_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"overseerGroup.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCGroupEmail?.length > 1\"\r\n >\r\n +{{ policyForm?.CCGroupEmail?.length - 1 }}\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('ccEmail', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n\r\n <div\r\n class=\"select\"\r\n *ngIf=\"\r\n policyForm?.CCFailEmail?.length == 0 &&\r\n policyForm?.CCFailEmailGroup?.length == 0\r\n \"\r\n >\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('ccFail', true)\"\r\n placeholder=\"Who should be notified if the policy is not attested on time?\"\r\n readonly\r\n />\r\n </div>\r\n\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"\r\n policyForm?.CCFailEmail?.length > 0 ||\r\n policyForm?.CCFailEmailGroup?.length > 0\r\n \"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"!groupEnabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"let ccFail of policyForm?.CCFailEmail?.slice(0, 1)\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('ccFail', ccFail)\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"ccFail.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ ccFail.employee_name }}</span\r\n >\r\n </ng-container>\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"ccFailPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCFailEmail?.length > 1\"\r\n >\r\n +{{ policyForm?.CCFailEmail?.slice(1).length }}\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"groupEnabled\" class=\"chip-container\">\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"groupEnabled && policyForm?.CCFailEmail.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('ccFail', policyForm?.CCFailEmail[0])\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.CCFailEmail[0]?.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.CCFailEmail[0]?.employee_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"overseerFailPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCFailEmail?.length > 1\"\r\n >\r\n +{{ policyForm?.CCFailEmail?.length - 1 }}\r\n </button>\r\n </div>\r\n\r\n <div\r\n class=\"vx-fs-12 vx-paragraph-txt vx-ml-2 vx-mr-2\"\r\n *ngIf=\"\r\n policyForm?.CCFailEmail?.length > 0 &&\r\n policyForm?.CCFailEmailGroup?.length > 0\r\n \"\r\n >\r\n &\r\n </div>\r\n\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"policyForm?.CCFailEmailGroup?.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"\r\n remove('ccGroupFailEmail', policyForm?.CCFailEmailGroup[0])\r\n \"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.CCFailEmailGroup[0]?.group_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.CCFailEmailGroup[0]?.group_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"overseerFailGroup.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCFailEmailGroup?.length > 1\"\r\n >\r\n +{{ policyForm?.CCFailEmailGroup?.length - 1 }}\r\n </button>\r\n </div>\r\n </div>\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('ccFail', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n <app-popover #ccEmailPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let ccEmail of policyForm?.CCEmail | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('ccEmail', ccEmail)\"\r\n >&#xe90d;</i\r\n >\r\n {{ ccEmail.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #ccFailPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let ccFail of policyForm?.CCFailEmail | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('ccFail', ccFail)\"\r\n >&#xe90d;</i\r\n >\r\n {{ ccFail.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Related Documents -->\r\n <div\r\n class=\"form-group-row\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n *ngIf=\"policyForm.addAssociatedDocuments\"\r\n [class.disabled]=\"activeSelector && activeSelector !== 'name'\"\r\n >\r\n <div class=\"left\">\r\n <img\r\n *ngIf=\"policyForm.associatedDocuments.formatFiles?.length == 0\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/format-evidence.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm.associatedDocuments.formatFiles?.length > 0\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">RELATED DOCUMENTS</label>\r\n <app-format-and-evidence\r\n (updateFiles)=\"saveSelectedList('associatedDocuments', $event)\"\r\n [mode]=\"'policy'\"\r\n [organization_id]=\"organization_id\"\r\n [formatEvidanceData]=\"policyForm?.associatedDocuments\"\r\n ></app-format-and-evidence>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Link Programs & Responsibilities -->\r\n <div\r\n *ngIf=\"policyForm?.addLinkProgram\"\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'linkProgram'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'linkProgram' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"\r\n policyForm?.programSelectedValues?.program?.category_id\r\n \"\r\n >\r\n <img\r\n *ngIf=\"!policyForm?.programSelectedValues?.program?.category_id\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/link-items.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.programSelectedValues?.program?.category_id\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\"\r\n >LINK PROGRAMS & RESPONSIBILITIES</label\r\n >\r\n <div\r\n *ngIf=\"!policyForm?.programSelectedValues?.program?.category_id\"\r\n (click)=\"activateSelector('linkProgram', true)\"\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"false\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select Programs & responsibilities that are<br />associated with\r\n this policy.\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n *ngIf=\"policyForm?.programSelectedValues?.program?.category_id\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i\r\n (click)=\"\r\n remove('linkProgram', policyForm?.programSelectedValues)\r\n \"\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.programSelectedValues?.program?.name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.programSelectedValues?.program?.name }}</span\r\n >\r\n <!-- <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"programResponsibilityPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +4\r\n </button> -->\r\n </div>\r\n <app-popover\r\n #programResponsibilityPopover\r\n [dontCloseonClick]=\"true\"\r\n >\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let data of [1, 1, 1, 1, 1, 1, 1]\">\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"\r\n 'Reporting information security weaknesses'\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i class=\"icons\">&#xe90d;</i>\r\n Reporting information security weaknesses\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n (click)=\"activateSelector('linkProgram', true)\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Link Assessment -->\r\n <div\r\n *ngIf=\"policyForm.addLinkAssessment\"\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'isAssessment'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'isAssessment' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm?.assessment?.length\">\r\n <img\r\n *ngIf=\"!policyForm?.assessment?.length\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/assessments.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.assessment?.length\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">LINK ASSESSMENTS</label>\r\n <div\r\n *ngIf=\"policyForm?.assessment?.length === 0\"\r\n (click)=\"activateSelector('isAssessment', true)\"\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"false\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select assessments that are associated with this<br />policy.\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"policyForm?.assessment?.length > 0\"\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"\r\n policyForm.assessment[0]?.assessmentDetails?.assessment_name\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{\r\n policyForm.assessment[0]?.assessmentDetails?.assessment_name\r\n }}</span\r\n >\r\n </div>\r\n <app-popover\r\n #programResponsibilityPopover\r\n [dontCloseonClick]=\"true\"\r\n >\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"let assessment of policyForm.assessment | slice : 1\"\r\n >\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"\r\n assessment?.assessmentDetails?.assessment_name\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i class=\"icons\">&#xe90d;</i>\r\n {{ assessment?.assessmentDetails?.assessment_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <button\r\n (click)=\"activateSelector('isAssessment', true)\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <app-checkbox-list\r\n [config]=\"categoryConfig\"\r\n [twoColumn]=\"false\"\r\n [itemsList]=\"categoryList\"\r\n [selectedItems]=\"policyForm.selectedCategories\"\r\n [identifierKey]=\"'_id'\"\r\n [displayKey]=\"'item_name'\"\r\n [tooltipKey]=\"'item_name'\"\r\n *ngIf=\"activeSelector === 'category'\"\r\n (saveList)=\"saveSelectedList('category', $event)\"\r\n (closeList)=\"disableSelector()\"\r\n >\r\n </app-checkbox-list>\r\n <!-- <app-checkbox-list [config]=\"approvalWorkflowConfig\" [twoColumn]=\"true\"\r\n [itemsList]=\"\"\r\n [selectedItems]=\"policyForm.issueCCUsers\" [identifierKey]=\"'employee_email'\" [displayKey]=\"'employee_name'\" [tooltipKey]=\"'employee_email'\"\r\n *ngIf=\"activeSelector==='ISSUE_CC'\" (saveList)=\"selectorAction($event,'ISSUE_CC')\"\r\n (closeList)=\"fieldDeselector('ISSUE_CC')\">\r\n</app-checkbox-list> -->\r\n\r\n <app-responsibility-centers-list\r\n *ngIf=\"activeSelector === 'rc'\"\r\n [responsibilityCentersList]=\"rcList\"\r\n [selectedResponsibilityCenters]=\"policyForm.selectedRCs\"\r\n [rcIdKey]=\"'item_id'\"\r\n (saveSelectedList)=\"saveSelectedList('rc', $event)\"\r\n (closeRcList)=\"disableSelector()\"\r\n >\r\n </app-responsibility-centers-list>\r\n\r\n <app-users-radio-list\r\n *ngIf=\"activeSelector === 'reviewer'\"\r\n [itemEmailKey]=\"'member_email'\"\r\n [usersList]=\"allReviewers\"\r\n [headerText]=\"'Select a Reviewer'\"\r\n [selectedUsers]=\"policyForm.selectedReviewers\"\r\n [userIdKey]=\"'member_id'\"\r\n [itemNameKey]=\"'member_name'\"\r\n (saveSelectedList)=\"saveSelectedList('reviewer', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n >\r\n </app-users-radio-list>\r\n\r\n <app-owner-list\r\n *ngIf=\"activeSelector === 'ccEmail' && !groupEnabled\"\r\n [usersList]=\"overseersList\"\r\n [singularText]=\"'User selected'\"\r\n [pluralText]=\"'Users selected'\"\r\n [selectedUsers]=\"policyForm.CCEmail\"\r\n [userIdKey]=\"'employee_id'\"\r\n [itemNameKey]=\"'employee_name'\"\r\n (saveSelectedList)=\"saveSelectedList('ccEmail', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n >\r\n </app-owner-list>\r\n\r\n <user-group-list\r\n *ngIf=\"activeSelector === 'ccEmail' && groupEnabled\"\r\n [groupEnabled]=\"true\"\r\n [userlist]=\"overseersList\"\r\n [groupList]=\"overseerGroupsList\"\r\n [selectedUsers]=\"policyForm.CCEmail\"\r\n [selectedGroups]=\"policyForm.CCGroupEmail\"\r\n (save)=\"saveSelectedList('ccEmail', $event)\"\r\n (cancel)=\"disableSelector()\"\r\n [featureflag]=\"groupEnabled\"\r\n >\r\n </user-group-list>\r\n\r\n <app-owner-list\r\n *ngIf=\"activeSelector === 'ccFail' && !groupEnabled\"\r\n [usersList]=\"overseersList\"\r\n [singularText]=\"'User selected'\"\r\n [pluralText]=\"'Users selected'\"\r\n [selectedUsers]=\"policyForm.CCFailEmail\"\r\n [userIdKey]=\"'employee_id'\"\r\n [itemNameKey]=\"'employee_name'\"\r\n (saveSelectedList)=\"saveSelectedList('ccFail', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n >\r\n </app-owner-list>\r\n\r\n <user-group-list\r\n *ngIf=\"activeSelector === 'ccFail' && groupEnabled\"\r\n [groupEnabled]=\"true\"\r\n [userlist]=\"overseersList\"\r\n [groupList]=\"overseerGroupsList\"\r\n [selectedUsers]=\"policyForm.CCFailEmail\"\r\n [selectedGroups]=\"policyForm.CCFailEmailGroup\"\r\n (save)=\"saveSelectedList('ccFail', $event)\"\r\n (cancel)=\"disableSelector()\"\r\n [featureflag]=\"groupEnabled\"\r\n >\r\n </user-group-list>\r\n\r\n <app-group-users-list\r\n *ngIf=\"activeSelector === 'assignees' && !groupEnabled\"\r\n [usersList]=\"assigneesList\"\r\n [groupsList]=\"groupsList\"\r\n [selectedUsers]=\"policyForm.selectedAssignees\"\r\n [userIdKey]=\"'my_member_id'\"\r\n (saveSelectedList)=\"saveSelectedList('assignees', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n >\r\n </app-group-users-list>\r\n\r\n <user-group-list\r\n *ngIf=\"activeSelector === 'assignees' && groupEnabled\"\r\n [groupEnabled]=\"true\"\r\n [userlist]=\"ownerlist\"\r\n [groupList]=\"groupsList\"\r\n (save)=\"saveSelectedList('assignees', $event)\"\r\n (cancel)=\"disableSelector()\"\r\n [selectedGroups]=\"policyForm.selectedGroupAssignee\"\r\n [selectedUsers]=\"policyForm.selectedAssignees\"\r\n [featureflag]=\"groupEnabled\"\r\n >\r\n </user-group-list>\r\n\r\n <app-owner-list\r\n *ngIf=\"activeSelector === 'approvers' && false\"\r\n [listHeading]=\"'Select Approvers'\"\r\n [singularText]=\"'User selected'\"\r\n [pluralText]=\"'Users selected'\"\r\n [usersList]=\"allApprovers\"\r\n [showWorkflow]=\"true\"\r\n [selectedUsers]=\"\r\n addMoreLevels\r\n ? []\r\n : policyForm.selectedApprovers[approversListIndex].approvers\r\n \"\r\n [userIdKey]=\"'member_id'\"\r\n [itemEmailKey]=\"'member_email'\"\r\n [itemNameKey]=\"'member_name'\"\r\n (saveSelectedList)=\"saveSelectedList('approvers', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n [mode]=\"mode\"\r\n [reviewerWorkflowType]=\"workflowType\"\r\n (reviewerWorkflowTypeChange)=\"reviewerTypeChange($event)\"\r\n [workflowList]=\"workflowList\"\r\n [workflowText]=\"'Approval Workflow'\"\r\n >\r\n </app-owner-list>\r\n\r\n <app-frequency-container\r\n *ngIf=\"activeSelector === 'frequency'\"\r\n [mode]=\"'policy'\"\r\n [frequencyDetails]=\"frequencyDetails\"\r\n (selectedFrequency)=\"frequencyData($event)\"\r\n [feature]=\"feature\"\r\n [pageType]=\"'policy'\"\r\n (closeFrequency)=\"disableSelector()\"\r\n ></app-frequency-container>\r\n\r\n <app-frequency-container\r\n *ngIf=\"activeSelector === 'reviewerFrequency'\"\r\n [mode]=\"'reviewerFrequency'\"\r\n [frequencyDetails]=\"reviewerFrequencyDetails\"\r\n (selectedFrequency)=\"reviewerFrequencyData($event)\"\r\n [feature]=\"feature\"\r\n [pageType]=\"'policy'\"\r\n (closeFrequency)=\"disableSelector()\"\r\n ></app-frequency-container>\r\n\r\n <vc-link-program\r\n *ngIf=\"activeSelector === 'linkProgram'\"\r\n (close)=\"disableSelector()\"\r\n [policy]=\"policyForm\"\r\n [selectedProgram]=\"policyForm?.programSelectedValues\"\r\n [mode]=\"mode\"\r\n [selectedLinkProgram]=\"selectedLinkProgram\"\r\n (changeTab)=\"changeTab('linkedPrograms')\"\r\n (updatedProgramDetails)=\"updatedProgramDetails($event)\"\r\n >\r\n </vc-link-program>\r\n\r\n <app-checkpoints-policy-container\r\n (closeCheckPoint)=\"disableSelector()\"\r\n [checkpointData]=\"policyForm?.checkpointDetails\"\r\n [requiredPoint]=\"policyForm?.passingMarks\"\r\n *ngIf=\"activeSelector === 'checkpoints'\"\r\n (saveCheckPoint)=\"saveSelectedList('checkpoints', $event)\"\r\n ></app-checkpoints-policy-container>\r\n <app-loader-inline *ngIf=\"loader\"></app-loader-inline>\r\n\r\n <app-approval-workflow\r\n *ngIf=\"enableApprovalWorkflow\"\r\n [selectedCategory]=\"policyForm?.selectedCategories\"\r\n [approverWorkFlowList]=\"approverWorkFlowList\"\r\n [allApprovers]=\"allApprovers\"\r\n (listCancelClicked)=\"listCancelClicked($event)\"\r\n (selectedWorkflowNext)=\"selectedApprovalWorkflow($event)\"\r\n (saveApprovalWorkflow)=\"approvalWorkflowAPICall($event)\"\r\n [editApprovalWorkflow]=\"editApprovalWorkflow\"\r\n [createApprovalClick]=\"createApprovalClick\"\r\n (closeCreateClicked)=\"closeClickedCreateForm()\"\r\n [editWorkflowLevel]=\"editWorkflowLevel\"\r\n ></app-approval-workflow>\r\n <!-- <app-select-approvers></app-select-approvers> -->\r\n\r\n <app-policy-access *ngIf=\"activeSelector === 'policyAccess'\"\r\n [policyAccessType]=\"policyForm?.policy_access_type\"\r\n (close)=\"disableSelector()\"\r\n [orgUsersList]=\"usersList\"\r\n [usersAccessList]=\"usersAccessList\"\r\n [groupList]=\"overseerGroupsList\"\r\n [groupsAccessList]=\"groupsAccessList\"\r\n [selectedUsers]=\"policyForm?.policy_access_owners\"\r\n [selectedGroups]=\"policyForm?.policy_access_groups\"\r\n [disabledIds]=\"usersAccessListIds\"\r\n [disabledGroupIds]=\"groupsAccessListIds\"\r\n [futureUsersWillSelect]=\"policyForm?.availableOnPortal\"\r\n (saveCheckPoint)=\"saveSelectedList('policyAccess', $event)\"\r\n (setPolicyAccessType)=\"policyForm.policy_access_type = $event\"\r\n >\r\n\r\n </app-policy-access>\r\n</ng-container>\r\n<ng-container *ngIf=\"showCreateDocuments\">\r\n <!-- <app-create-documents *ngIf=\"showCreateDocuments\"\r\n [organization_id]=\"organization_id\"\r\n [member_obj_id]=\"member_obj_id\"\r\n [userInfo]=\"userInfo\"\r\n [policyId]=\"policyId\"\r\n [policyName]=\"policyForm.policyName\"\r\n (disconnectRefresh)=\"disconnectRefresh.emit(false)\"\r\n (editPolicy)=\"editPolicyFromDocuments()\"\r\n ></app-create-documents> -->\r\n <lib-document-section\r\n *ngIf=\"showCreateDocuments\"\r\n [organization_id]=\"organization_id\"\r\n [member_obj_id]=\"member_obj_id\"\r\n [userInfo]=\"userInfo\"\r\n [policyId]=\"policyId\"\r\n [policyName]=\"policyForm.policyName\"\r\n (disconnectRefresh)=\"disconnectRefresh.emit(false)\"\r\n (editPolicy)=\"editPolicyFromDocuments()\"\r\n ></lib-document-section>\r\n</ng-container>\r\n\r\n<app-assessment-list\r\n *ngIf=\"activeSelector === 'isAssessment'\"\r\n [program_ids]=\"''\"\r\n [isEdit]=\"policyForm?.assessment?.length\"\r\n (cancelAssessment)=\"saveSelectedList('isAssessment', false)\"\r\n [selectedAssessment]=\"policyForm?.assessment[0]\"\r\n (onAssessmentSelect)=\"\r\n onAssessmentSelect($event); saveSelectedList('isAssessment', false)\r\n \"\r\n></app-assessment-list>\r\n\r\n<app-owner-list\r\n *ngIf=\"activeSelector === 'approvers' && false\"\r\n [listHeading]=\"'Select Approvers'\"\r\n [singularText]=\"'User selected'\"\r\n [pluralText]=\"'Users selected'\"\r\n [usersList]=\"allApprovers\"\r\n [showWorkflow]=\"true\"\r\n [selectedUsers]=\"\r\n addMoreLevels\r\n ? []\r\n : policyForm.selectedApprovers[approversListIndex].approvers\r\n \"\r\n [userIdKey]=\"'member_id'\"\r\n [itemEmailKey]=\"'member_email'\"\r\n [itemNameKey]=\"'member_name'\"\r\n (saveSelectedList)=\"saveSelectedList('approvers', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n [mode]=\"mode\"\r\n [reviewerWorkflowType]=\"workflowType\"\r\n (reviewerWorkflowTypeChange)=\"reviewerTypeChange($event)\"\r\n [workflowList]=\"workflowList\"\r\n [workflowText]=\"'Approval Workflow'\"\r\n>\r\n</app-owner-list>\r\n\r\n<app-owner-list\r\n *ngIf=\"activeSelector === 'owners'\"\r\n [listHeading]=\"'Select Owner(s)'\"\r\n [singularText]=\"'User selected'\"\r\n [pluralText]=\"'Users selected'\"\r\n [usersList]=\"allApprovers\"\r\n [showWorkflow]=\"false\"\r\n [userIdKey]=\"'member_id'\"\r\n [itemEmailKey]=\"'member_email'\"\r\n [itemNameKey]=\"'member_name'\"\r\n (saveSelectedList)=\"saveSelectedList('owners', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n [mode]=\"mode\"\r\n [selectedUsers]=\"policyForm?.policy_owners ?? []\"\r\n>\r\n</app-owner-list>\r\n",
8955
+ template: "<!-- <p>workflow-policy works!</p> -->\r\n\r\n<ng-container *ngIf=\"!showCreateDocuments\">\r\n <div class=\"workflow-policy\">\r\n <!-- Policy Name -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.disabled]=\"activeSelector && activeSelector !== 'name'\"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm?.policyName\">\r\n <img\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/what.svg\"\r\n alt=\"name\"\r\n *ngIf=\"!policyForm?.policyName || activeSelector === 'name'\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.policyName && activeSelector !== 'name'\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">\r\n Policy Name <span class=\"required\">*</span>\r\n </label>\r\n <input\r\n type=\"text\"\r\n (keydown)=\"activeSelector = 'name'\"\r\n (focusin)=\"activateSelector('name', true)\"\r\n *ngIf=\"policyForm.policyName == '' || activeSelector === 'name'\"\r\n (focusout)=\"activateSelector('name', false)\"\r\n [ngModel]=\"policyForm.policyName\"\r\n (ngModelChange)=\"policyForm.policyName = changeName($event)\"\r\n placeholder=\"Name this policy\"\r\n />\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"policyForm.policyName.length && activeSelector !== 'name'\"\r\n >\r\n <div class=\"chip-container\">\r\n <span class=\"value\">{{ policyForm.policyName }}</span>\r\n </div>\r\n <button\r\n class=\"edit\"\r\n (click)=\"activateSelector('name', true)\"\r\n type=\"button\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n\r\n <p\r\n *ngIf=\"submitted && !policyForm.policyName.trim()\"\r\n [appScrollInView]=\"true\"\r\n class=\"error-message\"\r\n >\r\n Please enter a name for this policy.\r\n </p>\r\n <marx-editor\r\n [(ngModel)]=\"policyForm.policyNotes\"\r\n [editorConfig]=\"description\"\r\n ></marx-editor>\r\n <!-- <app-cs-switch\r\n [(ngValue)]=\"policyForm.availableOnPortal\"\r\n (ngValueChange)=\"availabilityOnPortal($event)\"\r\n >\r\n Do you want this policy to be available on the portal?\r\n <i\r\n class=\"icons\"\r\n [appTooltip]=\"\r\n 'The policies that you intend to make accessible to the entire organization can be added to the policy portal. It is like a shared catalog of all active & updated policies that any logged in user can read/download for reference.'\r\n \"\r\n placement=\"bottom-right\"\r\n type=\"white\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n >&#xe932;</i\r\n >\r\n </app-cs-switch>\r\n <app-cs-switch\r\n *ngIf=\"policyForm.availableOnPortal\"\r\n [(ngValue)]=\"policyForm.acceptSuggestions\"\r\n >\r\n Accept suggestions\r\n <i\r\n class=\"icons\"\r\n [appTooltip]=\"\r\n 'If enabled, users can provide improvement suggestions to the policies that are listed on the Policy Portal.'\r\n \"\r\n placement=\"bottom-right\"\r\n type=\"white\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n >&#xe932;</i\r\n ></app-cs-switch> -->\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Policy Category -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'category'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'category' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.selectedCategories?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedCategories?.length == 0 ||\r\n activeSelector === 'category'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/category.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.selectedCategories?.length > 0 &&\r\n activeSelector !== 'category'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\"\r\n >Policy Category <span class=\"required\">*</span>\r\n </label>\r\n <div\r\n class=\"select\"\r\n *ngIf=\"policyForm?.selectedCategories?.length == 0\"\r\n >\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('category', true)\"\r\n placeholder=\"Select a category for this policy.\"\r\n readonly\r\n />\r\n </div>\r\n\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"policyForm?.selectedCategories?.length > 0\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <ng-container\r\n *ngFor=\"\r\n let category of policyForm?.selectedCategories?.slice(0, 1)\r\n \"\r\n >\r\n <i\r\n (click)=\"remove('category', category)\"\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"category.item_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ category.item_name }}</span\r\n >\r\n </ng-container>\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n *ngIf=\"policyForm?.selectedCategories?.length > 1\"\r\n type=\"button\"\r\n appPopover\r\n (click)=\"category.popover()\"\r\n placement=\"right\"\r\n >\r\n +{{ policyForm?.selectedCategories?.slice(1).length }}\r\n </button>\r\n </div>\r\n\r\n <!-- <div class=\"chip-container\" [class.more-one]=\"policyForm?.selectedCategories?.length>1\"\r\n [class.plus]=\"policyForm?.selectedCategories?.length>2\">\r\n <span class=\"chip\" *ngFor=\"let category of policyForm?.selectedCategories?.slice(0,2)\"><i\r\n class=\"icons\" (click)=\"remove('category',category)\">&#xe90d;</i>\r\n {{category.item_name}}</span>\r\n <button class=\"count\" *ngIf=\"policyForm?.selectedCategories?.length > 2\" type=\"button\"\r\n appPopover (click)=\"category.popover()\" placement=\"right\">+\r\n {{policyForm?.selectedCategories?.slice(2).length}}</button>\r\n </div> -->\r\n <button\r\n *ngIf=\"activeSelector !== 'category'\"\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('category', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n <app-popover #category [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let category of policyForm?.selectedCategories | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('category', category)\"\r\n >&#xe90d;</i\r\n >\r\n {{ category.item_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <p\r\n *ngIf=\"submitted && policyForm?.selectedCategories?.length == 0\"\r\n [appScrollInView]=\"true\"\r\n class=\"error-message\"\r\n >\r\n Please select the category for this policy.\r\n </p>\r\n </div>\r\n\r\n <div class=\"vx-form-group\" *ngIf=\"policyForm?.customTags?.length > 0\">\r\n <ng-container *ngFor=\"let tag of policyForm?.customTags\">\r\n <label class=\"vx-control-panel vx-mt-2\">{{ tag.tagname }}</label>\r\n <input\r\n type=\"text\"\r\n [(ngModel)]=\"tag.value\"\r\n placeholder=\"{{ tag.tagname }}\"\r\n />\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Effective Date -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.disabled]=\"activeSelector && activeSelector !== 'name'\"\r\n >\r\n <div class=\"left\" [class.checked]=\"false\">\r\n <img\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/when.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"false\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Effective Date</label>\r\n <div class=\"date-time-picker\">\r\n <div class=\"picker-group\">\r\n <input\r\n type=\"text\"\r\n readonly\r\n placeholder=\"Select the effective date of the policy.\"\r\n [value]=\"policyForm.policyDueDate | date : 'dd MMM yyyy'\"\r\n (click)=\"openDatePicker()\"\r\n />\r\n <i class=\"icons\">&#xe92d;</i>\r\n <dp-date-picker\r\n #datePicker\r\n (onSelect)=\"datePickerOverlay = false; closeDatePicker($event)\"\r\n [config]=\"dateConfig\"\r\n [(ngModel)]=\"policyForm.policyDueDate\"\r\n >\r\n </dp-date-picker>\r\n <div\r\n class=\"vx-overlay\"\r\n (click)=\"closeDatePicker($event)\"\r\n *ngIf=\"datePickerOverlay\"\r\n ></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Policy Owner -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'owners'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'owners' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm.policy_owners?.length\">\r\n <img\r\n *ngIf=\"!policyForm.policy_owners?.length\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/im-creating.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm.policy_owners?.length\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between\">\r\n <label class=\"vx-control-panel\">POLICY OWNER(S)</label>\r\n </div>\r\n <div\r\n *ngIf=\"!policyForm.policy_owners?.length\"\r\n (click)=\"activateSelector('owners', true)\"\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"!policyForm?.selectedCategories?.length\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select owners for this policy.\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"policyForm.policy_owners?.length\"\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i\r\n (click)=\"remove('owners', policyForm?.policy_owners[0], 0)\"\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.policy_owners[0]?.member_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.policy_owners[0]?.member_name }}</span\r\n >\r\n\r\n <button\r\n *ngIf=\"policyForm?.policy_owners?.length > 1\"\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"policyUserPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n + {{ policyForm?.policy_owners.length - 1 }}\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"false\"\r\n class=\"vx-fs-12 vx-paragraph-txt vx-ml-1 vx-mr-1\"\r\n >\r\n &\r\n </div>\r\n <div\r\n *ngIf=\"false\"\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"'Samantha Jones'\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >Samantha Jones</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"policyGroupPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +4\r\n </button>\r\n </div>\r\n <app-popover #policyUserPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let owner of policyForm?.policy_owners | slice : 1;\r\n let i = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"owner?.member_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i\r\n (click)=\"remove('owners', owner, i + 1)\"\r\n class=\"icons\"\r\n >&#xe90d;</i\r\n >\r\n {{ owner?.member_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #policyGroupPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let data of [1, 1, 1, 1, 1, 1, 1]\">\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"'Harshvardhan Kariwala'\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i class=\"icons\">&#xe90d;</i>\r\n Harshvardhan Kariwala\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n <button\r\n (click)=\"activateSelector('owners', true)\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n <p\r\n *ngIf=\"submitted && !policyForm?.policy_owners?.length\"\r\n [appScrollInView]=\"true\"\r\n class=\"error-message\"\r\n >\r\n Select owners for this policy.\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Review -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"\r\n activeSelector === 'reviewer' || activeSelector === 'reviewerFrequency'\r\n \"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewer' &&\r\n activeSelector !== 'reviewerFrequency' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm?.addReviewers\">\r\n <img\r\n *ngIf=\"!policyForm?.addReviewers\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/reviewer.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.addReviewers\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">REVIEW</label>\r\n <div\r\n class=\"reviewSelection vx-p-3 vx-pb-0\"\r\n [class.disabled]=\"\r\n activeSelector && sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"vx-fs-13 vx-paragraph-txt vx-mb-1\">\r\n Does this policy need to be reviewed?\r\n </div>\r\n <app-cs-radio\r\n name=\"review-type\"\r\n [checked]=\"policyForm?.addReviewers\"\r\n (checkedEvent)=\"typeSelected(true)\"\r\n ><div class=\"vx-fs-11 vx-fw-500 vx-paragraph-txt vx-mr-3\">\r\n YES\r\n </div></app-cs-radio\r\n >\r\n <app-cs-radio\r\n name=\"review-type\"\r\n [checked]=\"!policyForm?.addReviewers\"\r\n (checkedEvent)=\"typeSelected(false)\"\r\n ><div class=\"vx-fs-11 vx-fw-500 vx-paragraph-txt vx-mr-3\">\r\n NO\r\n </div></app-cs-radio\r\n >\r\n </div>\r\n\r\n <ng-container *ngIf=\"policyForm?.addReviewers\">\r\n <label class=\"vx-control-panel vx-mt-2\">REVIEWER</label>\r\n <div\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n *ngIf=\"policyForm?.selectedReviewers?.length == 0\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n [class.active]=\"activeSelector === 'reviewer'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewer' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n (click)=\"activateSelector('reviewer', true)\"\r\n >\r\n <div\r\n class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\"\r\n >\r\n Select the person responsible for reviewing this policy\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n *ngIf=\"policyForm?.selectedReviewers?.length > 0\"\r\n [class.active]=\"activeSelector === 'reviewer'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewer' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngFor=\"let reviewer of policyForm?.selectedReviewers\"\r\n >\r\n <i\r\n (click)=\"remove('reviewer', reviewer)\"\r\n class=\"icons cross vx-fs-12 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"'Samantha Jones'\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n {{ reviewer?.member_name }}</span\r\n >\r\n </div>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n *ngIf=\"activeSelector !== 'reviewer'\"\r\n (click)=\"activateSelector('reviewer', true)\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n <label class=\"vx-control-panel vx-mt-3\">REVIEW FREQUENCY</label>\r\n <div\r\n *ngIf=\"policyForm?.review_frequency_details == ''\"\r\n class=\"selectButton vx-pl-3 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n [class.active]=\"activeSelector === 'reviewerFrequency'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewerFrequency' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n >\r\n <div\r\n class=\"selectButtonPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\"\r\n >\r\n When does this policy needs to be reviewed?\r\n </div>\r\n <div\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n class=\"vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase\"\r\n >\r\n SET A FREQUENCY\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"policyForm?.review_frequency_details != ''\"\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewerFrequency' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n [class.active]=\"activeSelector === 'reviewerFrequency'\"\r\n >\r\n <div\r\n class=\"selectBoxText vx-fs-13 vx-paragraph-txt\"\r\n [appTooltip]=\"reviewerFrequencyPlaceholder\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n {{ reviewerFrequencyPlaceholder }}\r\n </div>\r\n <button\r\n *ngIf=\"activeSelector !== 'reviewerFrequency'\"\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n policyForm?.selectedReviewers?.length > 0 &&\r\n !policyForm?.review_frequency_details\r\n \"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n Select the review schedule for this policy.\r\n </p>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- New Approval Workflow -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'approvers'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'approvers' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.selectedApprovers?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedApprovers?.length == 0 ||\r\n activeSelector === 'approvers'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/approval.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.selectedApprovers?.length > 0 &&\r\n activeSelector !== 'approvers'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\" [class.disabled]=\"policyApprovalFlag !== 0\">\r\n <div class=\"vx-form-group\">\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between\">\r\n <label class=\"vx-control-panel\"\r\n >APPROVAL <span class=\"required\">*</span></label\r\n >\r\n <button\r\n (click)=\"\r\n createApprovalWorkflow(); activateSelector('approvers', true)\r\n \"\r\n [class.disabled]=\"!policyForm?.selectedCategories?.length\"\r\n class=\"createNewBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0\"\r\n >\r\n CREATE A NEW APPROVAL WORKFLOW\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n selectedWorkflow?.length === 0 ||\r\n !selectedWorkflow[0]?.workflow_name\r\n \"\r\n (click)=\"\r\n clickApprovalWorkflow(true); activateSelector('approvers', true)\r\n \"\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"!policyForm?.selectedCategories?.length\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select the approval workflow for this policy\r\n </div>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n selectedWorkflow?.length > 0 && selectedWorkflow[0]?.workflow_name\r\n \"\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-mb-2\"\r\n >\r\n <div\r\n class=\"vx-d-flex vx-align-center vx-justify-between vx-mt-2 vx-mb-2\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i\r\n (click)=\"removeWorkflow()\"\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"selectedWorkflow[0]?.workflow_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ selectedWorkflow[0]?.workflow_name }}</span\r\n >\r\n </div>\r\n <button\r\n (click)=\"editWorkflow(selectedWorkflow[0])\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"selectedWorkflow?.length > 0\">\r\n <div\r\n *ngFor=\"\r\n let approval of selectedWorkflow[0]?.approval_workflow;\r\n let approvalIndex = index\r\n \"\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between vx-mb-2\"\r\n >\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <div class=\"level-left vx-d-flex vx-align-center\">\r\n <div class=\"vx-d-block\">\r\n <div\r\n class=\"level-name vx-fs-9 vx-fw-500 vx-paragraph-txt vx-tt-uppercase vx-lh-3\"\r\n [appTooltip]=\"\r\n approval?.alias_name\r\n ? approval?.alias_name\r\n : approval?.level1\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n {{\r\n approval?.alias_name\r\n ? approval?.alias_name\r\n : approval?.level1\r\n }}\r\n </div>\r\n <div\r\n class=\"vx-fs-9 vx-fw-500 vx-label-txt vx-tt-uppercase vx-lh-3\"\r\n >\r\n {{\r\n approval?.type === \"ROUNDROBIN\"\r\n ? \"ROUND-ROBIN\"\r\n : approval?.type === \"ANYONE\"\r\n ? \"ANY ONE\"\r\n : approval?.type\r\n }}\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2 vx-ml-2\"\r\n >\r\n <!-- <i class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n > -->\r\n <div\r\n *ngIf=\"\r\n approval?.type?.toLowerCase() === 'sequential' &&\r\n approval?.approvers?.length < 2\r\n \"\r\n class=\"workflowLavel vx-fs-11 vx-fw-500 vx-pl-1 vx-pr-1 vx-lh-4 vx-mr-1 vx-text-center\"\r\n >\r\n {{ 1 == approval?.approvers?.length ? \"Final\" : 1 }}\r\n </div>\r\n <div\r\n *ngIf=\"\r\n approval?.approvers?.length > 1 &&\r\n approval?.type?.toLowerCase() === 'sequential'\r\n \"\r\n class=\"workflowLavel vx-fs-11 vx-fw-500 vx-pl-1 vx-pr-1 vx-lh-4 vx-mr-1 vx-text-center\"\r\n >\r\n 1\r\n </div>\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"approval?.approvers[0]?.member_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ approval?.approvers[0]?.member_name }}</span\r\n >\r\n <button\r\n *ngIf=\"approval?.approvers?.length > 1\"\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"workflowPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +{{ approval?.approvers?.length - 1 }}\r\n </button>\r\n </div>\r\n <app-popover #workflowPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let approver of approval?.approvers | slice : 1;\r\n let approvalIndex = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"approver?.member_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <!-- <i class=\"icons\">&#xe90d;</i> -->\r\n <span\r\n *ngIf=\"\r\n approval?.type?.toLowerCase() === 'sequential'\r\n \"\r\n class=\"workflowLavel vx-fs-11 vx-fw-500 vx-pl-1 vx-pr-1 vx-lh-4 vx-mr-1 vx-text-center\"\r\n >{{\r\n approvalIndex + 1 ===\r\n approval?.approvers?.length - 1\r\n ? \"Final\"\r\n : approvalIndex + 2\r\n }}</span\r\n >\r\n {{ approver?.member_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n\r\n <!-- <div class=\"vx-d-flex vx-align-center\">\r\n <button (click)=\"editLevelClicked(approval,approvalIndex)\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n <button (click)=\"deleteLevel(approvalIndex)\"\r\n class=\"deleteBtn vx-fs-11 vx-fw-600 vx-tt-uppercase vx-p-0 vx-m-0 vx-ml-4 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe9ae;</i> DELETE\r\n </button>\r\n </div> -->\r\n </div>\r\n </ng-container>\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n !policyForm?.selectedApprovers[0]?.approval_workflow?.length &&\r\n !policyApprovalFlag &&\r\n !policyForm?.selectedApprovers[0]?.approvers?.length\r\n \"\r\n [appScrollInView]=\"true\"\r\n class=\"error-message\"\r\n >\r\n Select or create an approval workflow for this policy.\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Policy Access -->\r\n <div\r\n *ngIf=\"true\"\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'policyAccess'\"\r\n [class.disabled]=\"activeSelector &&\r\n activeSelector !== 'policyAccess' &&\r\n sideSelectorElements.includes(activeSelector)\"\r\n >\r\n <div class=\"left\" [class.checked]=\"true\">\r\n <img\r\n *ngIf=\"!policyForm?.policy_access_owners?.length && !policyForm?.policy_access_groups?.length && !policyForm?.availableOnPortal\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/lock-scope.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.policy_access_owners?.length || policyForm?.policy_access_groups?.length || policyForm?.availableOnPortal\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between\">\r\n <label class=\"vx-control-panel\">POLICY PORTAL ACCESS</label>\r\n </div>\r\n <div *ngIf=\"!policyForm?.policy_access_owners?.length && !policyForm?.policy_access_groups?.length && !policyForm?.availableOnPortal\"\r\n (click)=\"activateSelector('policyAccess', true)\"\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"!policyForm?.selectedCategories?.length\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Who should be able to view this policy?\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!policyForm?.availableOnPortal\">\r\n <div class=\"selectBoxSuccess vx-pl-2 vx-pr-3\" *ngIf=\"policyForm?.policy_access_owners?.length || policyForm?.policy_access_groups?.length\">\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between vx-mt-2 vx-mb-2\">\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <div *ngIf=\"policyForm?.policy_access_owners?.length\"\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\" *ngIf=\"policyForm?.policy_access_type === 1\"\r\n (click)=\"\r\n remove(\r\n 'policyAccess',\r\n policyForm?.policy_access_owners[0]\r\n )\r\n \"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.policy_access_owners[0]?.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{policyForm?.policy_access_owners[0]?.employee_name}}</span\r\n >\r\n <button \r\n *ngIf=\"policyForm?.policy_access_owners?.length > 1\"\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"policyAccessPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +{{ policyForm?.policy_access_owners.length - 1 }}\r\n </button>\r\n </div>\r\n\r\n <div\r\n class=\"vx-fs-12 vx-paragraph-txt vx-ml-2 vx-mr-2\"\r\n *ngIf=\"\r\n policyForm?.policy_access_owners.length > 0 &&\r\n policyForm?.policy_access_groups.length > 0\r\n \"\r\n >\r\n &\r\n </div>\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"policyForm?.policy_access_groups.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\" *ngIf=\"policyForm?.policy_access_type === 1\" \r\n (click)=\"\r\n remove(\r\n 'accessGroup',\r\n policyForm?.policy_access_groups[0]\r\n )\r\n \"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"\r\n policyForm?.policy_access_groups[0]?.group_name\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.policy_access_groups[0]?.group_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"accessGroup.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.policy_access_groups.length > 1\"\r\n >\r\n +{{ policyForm?.policy_access_groups.length - 1 }}\r\n </button>\r\n </div>\r\n\r\n <app-popover #policyAccessPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"\r\n let user of policyForm?.policy_access_owners | slice : 1;\r\n let j = index\r\n \">\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"user?.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i class=\"icons\" *ngIf=\"policyForm?.policy_access_type === 1\" (click)=\"\r\n remove(\r\n 'policyAccess',\r\n user\r\n )\r\n \">&#xe90d;</i>\r\n {{user?.employee_name}}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #accessGroup [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let data of policyForm?.policy_access_groups | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" *ngIf=\"policyForm?.policy_access_type === 1\" (click)=\"remove('accessGroup', data)\"\r\n >&#xe90d;</i\r\n >\r\n {{ data?.group_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n\r\n <button (click)=\"activateSelector('policyAccess', true)\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n\r\n <!-- <div class=\"vx-mt-4 vx-mb-2\">\r\n <app-cs-radio\r\n [name]=\"'policyFormAccessType'\" [checked]=\"policyForm?.policy_access_type === 0\" (checkedEvent)=\"setAccessField(0)\"\r\n ><div class=\"vx-fs-12 vx-paragraph-txt\">\r\n Everyone who has access to this Policy Category\r\n </div></app-cs-radio\r\n >\r\n <app-cs-radio\r\n [name]=\"'policyFormAccessType'\" [checked]=\"policyForm?.policy_access_type === 1\" (checkedEvent)=\"setAccessField(1)\"\r\n class=\"vx-mt-1\"\r\n ><div class=\"vx-fs-12 vx-paragraph-txt\">\r\n Select users/groups\r\n </div></app-cs-radio\r\n >\r\n </div> -->\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\" *ngIf=\"policyForm?.availableOnPortal\">\r\n <span class=\"vx-fs-13 vx-paragraph-txt\">Visible to All Current & Future Users</span>\r\n\r\n <button (click)=\"activateSelector('policyAccess', true)\" class=\"edit vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"><i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT</button>\r\n </div>\r\n\r\n <div class=\"vx-mt-2\">\r\n <app-cs-switch\r\n *ngIf=\"policyForm.availableOnPortal\"\r\n [(ngValue)]=\"policyForm.acceptSuggestions\"\r\n >ACCEPT SUGGESTIONS\r\n <i\r\n class=\"icons vx-fs-12 vx-txt-blue vx-ml-1 vx-mr-2\"\r\n [appTooltip]=\"'If enabled, users can provide improvement suggestions to the policies that are listed on the Policy Portal.'\"\r\n placement=\"bottom-right\"\r\n delay=\"0\"\r\n type=\"white\"\r\n [tooltipMandatory]=\"true\"\r\n >&#xe91f;</i\r\n ></app-cs-switch\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Attestations -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"false\"\r\n [class.disabled]=\"false\"\r\n *ngIf=\"false\"\r\n >\r\n <div class=\"left\" [class.checked]=\"false\">\r\n <img\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/attestations.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"false\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between\">\r\n <label class=\"vx-control-panel\">ATTESTATIONS</label>\r\n </div>\r\n <div\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"false\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select the persons required to attest to this Policy\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"'Samantha Jones'\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >Samantha Jones</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"policyAttestationPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +4\r\n </button>\r\n </div>\r\n <app-popover #policyAttestationPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let data of [1, 1, 1, 1, 1, 1, 1]\">\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"'Harshvardhan Kariwala'\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i class=\"icons\">&#xe90d;</i>\r\n Harshvardhan Kariwala\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n\r\n <div class=\"vx-mt-2\">\r\n <app-cs-switch\r\n >REQUIRES E-SIGNATURE FOR ATTESTATION\r\n <i\r\n class=\"icons vx-fs-12 vx-txt-blue vx-ml-1 vx-mr-2\"\r\n [appTooltip]=\"\r\n 'Requires e-signature for attestation info text here...'\r\n \"\r\n placement=\"bottom-right\"\r\n delay=\"0\"\r\n type=\"white\"\r\n [tooltipMandatory]=\"true\"\r\n >&#xe91f;</i\r\n ></app-cs-switch\r\n >\r\n </div>\r\n\r\n <label class=\"vx-control-panel vx-mt-2\">WHEN?</label>\r\n <div\r\n class=\"selectButton vx-pl-3 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div\r\n class=\"selectButtonPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\"\r\n >\r\n What is the attestation schedule for this<br />policy?\r\n </div>\r\n <div class=\"vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase\">\r\n SET A FREQUENCY\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div class=\"selectBoxText vx-fs-13 vx-paragraph-txt\">\r\n Every Wednesday by 11:59 pm\r\n </div>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n\r\n <label class=\"vx-control-panel vx-mt-2\"\r\n >ASSESSMENT OF UNDERSTANDING</label\r\n >\r\n <div\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"false\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Set up a questionnaire to confirm the reader\u2019s<br />understanding\r\n of the policy.\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-3 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <span class=\"chipName vx-fs-11 vx-label-txt\">5 Questions</span>\r\n </div>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Approval Workflow -->\r\n <div\r\n class=\"form-group-row\"\r\n *ngIf=\"false\"\r\n [class.active]=\"activeSelector === 'approvers'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'approvers' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.selectedApprovers?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedApprovers?.length == 0 ||\r\n activeSelector === 'approvers'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/approval.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.selectedApprovers?.length > 0 &&\r\n activeSelector !== 'approvers'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div\r\n class=\"vx-form-group approval-workflow\"\r\n [class.disabled]=\"policyApprovalFlag !== 0\"\r\n >\r\n <label class=\"vx-control-panel\">\r\n Approval workflow <span class=\"required\">*</span>\r\n <button\r\n (click)=\"\r\n activateSelector('approvers', true);\r\n addMoreLevels = true;\r\n workflowType = 'SEQUENTIAL'\r\n \"\r\n class=\"button\"\r\n >\r\n Create a new Approval Workflow\r\n </button>\r\n </label>\r\n <div\r\n class=\"select\"\r\n [class.disabled]=\"approverWorkFlowList?.length == 0\"\r\n *ngIf=\"\r\n policyForm?.selectedApprovers[0]?.approvers?.length == 0 ||\r\n policyForm?.selectedApprovers.length == 0\r\n \"\r\n >\r\n <cs-select\r\n [ngModel]=\"selectedApprovalWorkflow\"\r\n (ngModelChange)=\"selectedWorkflowChange($event)\"\r\n [placeholder]=\"'Select approval workflow for this policy'\"\r\n name=\"selectedApprovalWorkflow\"\r\n [setMaxWidth]=\"true\"\r\n >\r\n <cs-option\r\n *ngFor=\"let data of approverWorkFlowList\"\r\n [value]=\"data\"\r\n >\r\n {{ data.workflow_name }}\r\n </cs-option>\r\n <cs-option\r\n [value]=\"-1\"\r\n (click)=\"\r\n activateSelector('approvers', true);\r\n addMoreLevels = true;\r\n workflowType = 'SEQUENTIAL'\r\n \"\r\n >Create a new approval workflow</cs-option\r\n >\r\n </cs-select>\r\n </div>\r\n <ng-container\r\n *ngIf=\"policyForm?.selectedApprovers[0]?.approvers?.length > 0\"\r\n >\r\n <div\r\n class=\"selected\"\r\n *ngFor=\"let level of policyForm?.selectedApprovers; let i = index\"\r\n >\r\n <div class=\"workflow-label\">\r\n <p class=\"title\">Level {{ i + 1 }}</p>\r\n <p class=\"description\">{{ level.name }}</p>\r\n </div>\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <div class=\"chip-container\">\r\n <span\r\n class=\"chip\"\r\n *ngFor=\"\r\n let approver of level.approvers.slice(0, 1);\r\n let j = index\r\n \"\r\n ><i class=\"icons\" (click)=\"remove('approvers', approver, i)\"\r\n >&#xe90d;</i\r\n >\r\n <span class=\"step\" *ngIf=\"level.name == 'SEQUENTIAL'\">{{\r\n j + 1\r\n }}</span\r\n >{{ approver.member_name }}</span\r\n >\r\n\r\n <button\r\n class=\"count\"\r\n *ngIf=\"level.approvers?.length > 1\"\r\n type=\"button\"\r\n appPopover\r\n (click)=\"labelName.popover()\"\r\n placement=\"right\"\r\n >\r\n +\r\n\r\n {{ level.approvers.slice(1).length }}\r\n </button>\r\n <app-popover #labelName [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let approver of level.approvers | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i\r\n class=\"icons\"\r\n (click)=\"remove('approvers', approver, i)\"\r\n >&#xe90d;</i\r\n >\r\n <span\r\n class=\"step\"\r\n *ngIf=\"level.name == 'SEQUENTIAL'\"\r\n >\r\n {{\r\n j == level.approvers.slice(1).length - 1\r\n ? \"Final\"\r\n : j + 2\r\n }}\r\n </span>\r\n {{ approver.member_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"\r\n activateSelector('approvers', true, level.name);\r\n approversListIndex = i\r\n \"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i>Edit\r\n </button>\r\n <button\r\n class=\"close-btn\"\r\n (click)=\"remove('workflowLevel', level, i)\"\r\n >\r\n <i class=\"icons\">&#xe90d;</i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n !policyForm?.selectedApprovers?.length &&\r\n !policyApprovalFlag\r\n \"\r\n [appScrollInView]=\"true\"\r\n class=\"error-message\"\r\n >\r\n Select or create an approval workflow for this policy.\r\n </p>\r\n\r\n <label\r\n class=\"vx-control-panel\"\r\n *ngIf=\"policyForm.selectedApprovers[0]?.approvers?.length > 0\"\r\n ><button\r\n class=\"button\"\r\n (click)=\"\r\n activateSelector('approvers', true);\r\n addMoreLevels = true;\r\n workflowType = 'SEQUENTIAL'\r\n \"\r\n >\r\n + Add More Levels\r\n </button></label\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Who / now Attestation -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'assignees'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'assignees' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.selectedAssignees?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedAssignees?.length == 0 ||\r\n activeSelector === 'assignees'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/who.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.selectedAssignees?.length > 0 &&\r\n activeSelector !== 'assignees'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Attestation</label>\r\n <div\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center vx-mb-2\"\r\n *ngIf=\"\r\n (policyForm?.selectedAssignees?.length == 0 && !groupEnabled) ||\r\n (policyForm?.selectedAssignees?.length == 0 &&\r\n groupEnabled &&\r\n policyForm?.selectedGroupAssignee.length == 0)\r\n \"\r\n (click)=\"activateSelector('assignees', true)\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select the persons responsible for attesting this policy.\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between vx-mb-2\"\r\n *ngIf=\"\r\n policyForm?.selectedAssignees?.length > 0 ||\r\n policyForm?.selectedGroupAssignee?.length > 0\r\n \"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"!groupEnabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"\r\n let assignee of policyForm?.selectedAssignees?.slice(0, 1)\r\n \"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('assignees', assignee)\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"assignee.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ assignee.employee_name }}</span\r\n >\r\n </ng-container>\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"assigneePopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.selectedAssignees?.length > 1\"\r\n >\r\n +{{ policyForm?.selectedAssignees?.slice(1).length }}\r\n </button>\r\n </div>\r\n <ng-container *ngIf=\"groupEnabled\">\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"groupEnabled && policyForm?.selectedAssignees.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"\r\n remove('assignees', policyForm?.selectedAssignees[0])\r\n \"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.selectedAssignees[0]?.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.selectedAssignees[0]?.employee_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"UserPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.selectedAssignees.length > 1\"\r\n >\r\n +{{ policyForm?.selectedAssignees.length - 1 }}\r\n </button>\r\n </div>\r\n <div\r\n class=\"vx-fs-12 vx-paragraph-txt vx-ml-2 vx-mr-2\"\r\n *ngIf=\"\r\n policyForm?.selectedAssignees.length > 0 &&\r\n policyForm?.selectedGroupAssignee.length > 0\r\n \"\r\n >\r\n &\r\n </div>\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"policyForm?.selectedGroupAssignee.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"\r\n remove(\r\n 'groupAssignees',\r\n policyForm?.selectedGroupAssignee[0]\r\n )\r\n \"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"\r\n policyForm?.selectedGroupAssignee[0]?.group_name\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.selectedGroupAssignee[0]?.group_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"group.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.selectedGroupAssignee.length > 1\"\r\n >\r\n +{{ policyForm?.selectedGroupAssignee.length - 1 }}\r\n </button>\r\n </div>\r\n </ng-container>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n (click)=\"activateSelector('assignees', true)\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n ((policyForm?.selectedAssignees?.length == 0 &&\r\n policyForm?.frequency_details &&\r\n !groupEnabled) ||\r\n (policyForm?.selectedAssignees?.length == 0 &&\r\n policyForm.selectedGroupAssignee.length == 0 &&\r\n policyForm?.frequency_details &&\r\n groupEnabled))\r\n \"\r\n id=\"whovalidatemsg\"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n Select the persons required to attest to this Policy.\r\n </p>\r\n <app-cs-switch\r\n [(ngValue)]=\"policyForm.requiresSignatureForAttestation\"\r\n [class.disabled]=\"policyForm?.selectedAssignees?.length == 0\"\r\n class=\"who-toggle\"\r\n >THIS POLICY REQUIRES E-SIGNATURE FOR ATTESTATION\r\n <i\r\n class=\"icons\"\r\n [appTooltip]=\"\r\n 'If selected, the readers will be required to attest this policy using their electronic signature.'\r\n \"\r\n placement=\"bottom-right\"\r\n type=\"white\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n >&#xe91f;</i\r\n ></app-cs-switch\r\n >\r\n <app-popover #assigneePopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let assignee of policyForm?.selectedAssignees | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('assignees', assignee)\"\r\n >&#xe90d;</i\r\n >\r\n {{ assignee.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #UserPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let assignee of policyForm?.selectedAssignees | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('assignees', assignee)\"\r\n >&#xe90d;</i\r\n >\r\n {{ assignee.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #group [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let data of policyForm?.selectedGroupAssignee | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('groupAssignees', data)\"\r\n >&#xe90d;</i\r\n >\r\n {{ data.group_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n\r\n <!-- overseer -->\r\n <app-popover #overseerPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let overseer of policyForm?.CCEmail | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('ccEmail', overseer)\"\r\n >&#xe90d;</i\r\n >\r\n {{ overseer?.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #overseerGroup [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let data of policyForm?.CCGroupEmail | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('ccGroupEmail', data)\"\r\n >&#xe90d;</i\r\n >\r\n {{ data?.group_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <!-- overseer end -->\r\n\r\n <!-- overseer fail start -->\r\n <app-popover #overseerFailPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let overseer of policyForm?.CCFailEmail | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('ccFail', overseer)\"\r\n >&#xe90d;</i\r\n >\r\n {{ overseer?.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #overseerFailGroup [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let data of policyForm?.CCFailEmailGroup | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i\r\n class=\"icons\"\r\n (click)=\"remove('ccGroupFailEmail', data)\"\r\n >&#xe90d;</i\r\n >\r\n {{ data?.group_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <!-- overseer fail end -->\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- When -->\r\n <div\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'frequency'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'frequency' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n *ngIf=\"false\"\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.frequency_details\"\r\n >\r\n <img\r\n *ngIf=\"\r\n !policyForm?.frequency_details || activeSelector === 'frequency'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/when.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.frequency_details && activeSelector !== 'frequency'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">When?</label>\r\n\r\n <div\r\n *ngIf=\"policyForm?.frequency_details == ''\"\r\n class=\"select button-sec\"\r\n >\r\n <div\r\n class=\"custom-input frequency-custom-input\"\r\n (click)=\"activateSelector('frequency', true)\"\r\n >\r\n {{ frequencyPlaceholder }}\r\n </div>\r\n\r\n <button (click)=\"activateSelector('frequency', true)\" type=\"button\">\r\n Set A frequency\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"policyForm?.frequency_details != ''\"\r\n class=\"selected button-sec\"\r\n >\r\n <span class=\"chip\">{{ frequencyPlaceholder }}</span>\r\n <button\r\n *ngIf=\"activeSelector !== 'frequency'\"\r\n type=\"button\"\r\n class=\"edit\"\r\n (click)=\"activateSelector('frequency', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i>Edit\r\n </button>\r\n </div>\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n ((policyForm?.selectedAssignees?.length > 0 &&\r\n !policyForm?.frequency_details &&\r\n !groupEnabled) ||\r\n ((policyForm?.selectedAssignees?.length > 0 ||\r\n policyForm?.selectedGroupAssignee?.length > 0) &&\r\n !policyForm?.frequency_details &&\r\n groupEnabled))\r\n \"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n Select an attestation schedule for this policy.\r\n </p>\r\n\r\n <!-- <label class=\"vx-control-panel\">Effective Date</label>\r\n <div class=\"date-time-picker\">\r\n <div class=\"picker-group\">\r\n <input type=\"text\" readonly placeholder=\"Select the date from which this policy goes into effect.\"\r\n [value]=\"policyForm.policyDueDate | date: 'dd MMM yyyy'\" (click)=\"openDatePicker();\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <dp-date-picker #datePicker (onSelect)=\"datePickerOverlay = false;closeDatePicker($event)\"\r\n [config]=\"dateConfig\" [(ngModel)]=\"policyForm.policyDueDate\">\r\n </dp-date-picker>\r\n <div class=\"vx-overlay\" (click)=\"closeDatePicker($event)\" *ngIf=\"datePickerOverlay\"></div>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Checkpoints / Assessment of Understanding -->\r\n <div\r\n class=\"form-group-row\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n *ngIf=\"true\"\r\n [class.active]=\"activeSelector === 'checkpoints'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'checkpoints' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n *ngIf=\"false\"\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.checkpointDetails?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.checkpointDetails?.length == 0 ||\r\n activeSelector === 'checkpoints'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/checkpoints.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.checkpointDetails?.length > 0 &&\r\n activeSelector !== 'checkpoints'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">\r\n Assessment of Understanding\r\n <!-- <button *ngIf=\"policyForm?.checkpointDetails?.length===0\" class=\"button\" (click)=\"activateSelector('checkpoints',true)\">+ Add Checkpoints</button> -->\r\n </label>\r\n <div\r\n class=\"select\"\r\n *ngIf=\"policyForm?.checkpointDetails?.length === 0\"\r\n (click)=\"activateSelector('checkpoints', true)\"\r\n >\r\n <!-- <input type=\"text\" placeholder=\"Set up a questionnaire to confirm the reader\u2019s understanding of the policy.\" readonly> -->\r\n <div class=\"custom-input\">\r\n Set up a questionnaire to confirm the reader\u2019s<br />understanding\r\n of the policy.\r\n </div>\r\n </div>\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"policyForm?.checkpointDetails?.length > 0\"\r\n >\r\n <!-- <div class=\"chip-container\">\r\n <span class=\"chip\">{{policyForm?.checkpointDetails?.length + (policyForm?.checkpointDetails?.length > 1 ?' Checkpoints':' Checkpoint')}}</span>\r\n\r\n <span class=\"checkpoint-point-text first\">TOTAL POINTS: <span class=\"no\">{{policyForm?.totalQuestion}}</span><br><em>Each question carries 1 point</em></span>\r\n\r\n <span class=\"checkpoint-point-text\">POINTS REQUIRED TO ATTEST : <span class=\"no\">{{policyForm?.passingMarks}}</span></span>\r\n\r\n </div> -->\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <span class=\"chipName vx-fs-11 vx-label-txt\">{{\r\n policyForm?.checkpointDetails?.length +\r\n (policyForm?.checkpointDetails?.length > 1\r\n ? \" Questions\"\r\n : \" Question\")\r\n }}</span>\r\n </div>\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('checkpoints', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n <!-- <app-popover #checkpointPopOver [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let checkpoint of policyForm?.checkpointDetails | slice: 1; let j = index\">\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('checkpoints',checkpoint,j+1)\">&#xe90d;</i>\r\n {{ checkpoint?.question }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover> -->\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Risk Classification -->\r\n <div\r\n class=\"form-group-row\"\r\n *ngIf=\"showRiskClassification && false\"\r\n [class.disabled]=\"activeSelector && activeSelector !== 'name'\"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm.riskRating\">\r\n <img\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/risks.svg\"\r\n alt=\"im\"\r\n *ngIf=\"!policyForm?.riskRating\"\r\n />\r\n\r\n <svg\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n *ngIf=\"policyForm?.riskRating\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Risk Classification</label>\r\n <div class=\"classification\">\r\n <label\r\n class=\"low\"\r\n *ngFor=\"let class of riskClassification\"\r\n [ngClass]=\"[class.class]\"\r\n >\r\n <input\r\n type=\"radio\"\r\n name=\"classification\"\r\n [value]=\"class.value\"\r\n [checked]=\"policyForm?.riskRating === class.value\"\r\n [(ngModel)]=\"policyForm.riskRating\"\r\n />\r\n <span>{{ class.name }}</span>\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Responsibility Center -->\r\n <div\r\n class=\"form-group-row\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n *ngIf=\"policyForm.addResponsibilityCenters\"\r\n [class.active]=\"activeSelector === 'rc'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'rc' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm?.selectedRCs?.length > 0\">\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedRCs?.length == 0 || activeSelector === 'rc'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/responsibility-center.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.selectedRCs?.length > 0 && activeSelector !== 'rc'\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Responsibility Center</label>\r\n <div class=\"select\" *ngIf=\"policyForm?.selectedRCs?.length == 0\">\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('rc', true)\"\r\n placeholder=\"Select Responsibility Center(s) that this policy relates to.\"\r\n readonly\r\n />\r\n </div>\r\n\r\n <div class=\"selected\" *ngIf=\"policyForm?.selectedRCs?.length > 0\">\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <ng-container\r\n *ngFor=\"let rc of policyForm?.selectedRCs?.slice(0, 1)\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('rc', rc)\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"rc.item_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ rc.item_name }}</span\r\n >\r\n </ng-container>\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"rcPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.selectedRCs?.length > 1\"\r\n >\r\n +{{ policyForm?.selectedRCs?.slice(1).length }}\r\n </button>\r\n </div>\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('rc', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n <app-popover #rcPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let rc of policyForm?.selectedRCs | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('rc', rc)\">&#xe90d;</i>\r\n {{ rc.item_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Version -->\r\n <div\r\n *ngIf=\"policyForm.addVersion\"\r\n class=\"form-group-row\"\r\n [class.disabled]=\"\r\n activeSelector && sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm.policy_version\">\r\n <img\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/associated-risks.svg\"\r\n alt=\"name\"\r\n *ngIf=\"!policyForm.policy_version\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm.policy_version\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">VERSION</label>\r\n <input\r\n [(ngModel)]=\"policyForm.policy_version\"\r\n (change)=\"onVersion($event)\"\r\n type=\"text\"\r\n placeholder=\"Specify the policy version.\"\r\n />\r\n <p\r\n *ngIf=\"!isVersionValid\"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n {{ versionErrorMessage }}\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Reviewer -->\r\n <div\r\n class=\"form-group-row\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n *ngIf=\"policyForm.addReviewers && false\"\r\n [class.active]=\"activeSelector === 'reviewer'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'reviewer' &&\r\n activeSelector !== 'reviewerFrequency' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"policyForm?.selectedReviewers?.length > 0\"\r\n >\r\n <img\r\n *ngIf=\"\r\n policyForm?.selectedReviewers?.length == 0 ||\r\n activeSelector === 'reviewer'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/reviewer.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n policyForm?.selectedReviewers?.length > 0 &&\r\n activeSelector !== 'reviewer'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Reviewer </label>\r\n <div\r\n class=\"select\"\r\n *ngIf=\"policyForm?.selectedReviewers?.length == 0\"\r\n >\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('reviewer', true)\"\r\n placeholder=\"Select the person responsible for reviewing this policy\"\r\n readonly\r\n />\r\n </div>\r\n\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"policyForm?.selectedReviewers?.length > 0\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <ng-container\r\n *ngFor=\"let reviewer of policyForm?.selectedReviewers\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('reviewer', reviewer)\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"reviewer.member_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ reviewer.member_name }}</span\r\n >\r\n </ng-container>\r\n </div>\r\n\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('reviewer', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n policyForm?.selectedReviewers?.length == 0 &&\r\n policyForm?.review_frequency_details\r\n \"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n Select a reviewer for this policy.\r\n </p>\r\n\r\n <label class=\"vx-control-panel\">When? </label>\r\n\r\n <div\r\n *ngIf=\"policyForm?.review_frequency_details == ''\"\r\n class=\"select button-sec\"\r\n >\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n [placeholder]=\"reviewerFrequencyPlaceholder\"\r\n readonly\r\n />\r\n <button\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n type=\"button\"\r\n >\r\n Set A frequency\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"policyForm?.review_frequency_details != ''\"\r\n class=\"selected button-sec\"\r\n >\r\n <span class=\"chip\">{{ reviewerFrequencyPlaceholder }}</span>\r\n <button\r\n *ngIf=\"activeSelector !== 'reviewerFrequency'\"\r\n type=\"button\"\r\n class=\"edit\"\r\n (click)=\"activateSelector('reviewerFrequency', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i>Edit\r\n </button>\r\n </div>\r\n <p\r\n *ngIf=\"\r\n submitted &&\r\n policyForm?.selectedReviewers?.length > 0 &&\r\n !policyForm?.review_frequency_details\r\n \"\r\n class=\"error-message\"\r\n [appScrollInView]=\"true\"\r\n >\r\n Select the review schedule for this policy.\r\n </p>\r\n\r\n <app-format-and-evidence\r\n (updateFiles)=\"saveSelectedList('reviewer_attachments', $event)\"\r\n #formatEvidence\r\n [mode]=\"'policyReviewer'\"\r\n [organization_id]=\"organization_id\"\r\n [formatEvidanceData]=\"policyForm?.documentsAndLinks\"\r\n >\r\n </app-format-and-evidence>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Overseer -->\r\n <div\r\n class=\"form-group-row\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n *ngIf=\"policyForm.addOverseers\"\r\n [class.active]=\"\r\n activeSelector === 'ccEmail' || activeSelector === 'ccFail'\r\n \"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'ccEmail' &&\r\n activeSelector !== 'ccFail' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"\r\n policyForm?.CCEmail?.length > 0 || policyForm?.CCFailEmail?.length > 0\r\n \"\r\n >\r\n <img\r\n *ngIf=\"\r\n (policyForm?.CCFailEmail?.length == 0 &&\r\n policyForm?.CCEmail?.length == 0) ||\r\n activeSelector === 'ccEmail' ||\r\n activeSelector === 'ccFail'\r\n \"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/oversight.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"\r\n (policyForm?.CCFailEmail?.length > 0 ||\r\n policyForm?.CCEmail?.length > 0) &&\r\n activeSelector !== 'ccEmail' &&\r\n activeSelector !== 'ccFail'\r\n \"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">Overseer </label>\r\n <div\r\n class=\"select\"\r\n *ngIf=\"\r\n policyForm?.CCEmail?.length == 0 &&\r\n policyForm?.CCGroupEmail.length == 0\r\n \"\r\n >\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('ccEmail', true)\"\r\n placeholder=\"Who should have oversight of this policy?\"\r\n readonly\r\n />\r\n </div>\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"\r\n policyForm?.CCEmail?.length > 0 ||\r\n policyForm?.CCGroupEmail.length > 0\r\n \"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"!groupEnabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"let ccEmail of policyForm?.CCEmail?.slice(0, 1)\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('ccEmail', ccEmail)\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"ccEmail.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ ccEmail.employee_name }}</span\r\n >\r\n </ng-container>\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"ccEmailPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCEmail?.length > 1\"\r\n >\r\n +{{ policyForm?.CCEmail?.slice(1).length }}\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"groupEnabled\" class=\"chip-container\">\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"groupEnabled && policyForm?.CCEmail?.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('ccEmail', policyForm?.CCEmail[0])\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.CCEmail[0].employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.CCEmail[0].employee_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"overseerPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCEmail?.length > 1\"\r\n >\r\n +{{ policyForm?.CCEmail?.length - 1 }}\r\n </button>\r\n </div>\r\n\r\n <div\r\n class=\"vx-fs-12 vx-paragraph-txt vx-ml-2 vx-mr-2\"\r\n *ngIf=\"\r\n policyForm?.CCEmail.length > 0 &&\r\n policyForm?.CCGroupEmail?.length > 0\r\n \"\r\n >\r\n &\r\n </div>\r\n\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"policyForm?.CCGroupEmail.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('ccGroupEmail', policyForm?.CCGroupEmail[0])\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.CCGroupEmail[0]?.group_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.CCGroupEmail[0]?.group_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"overseerGroup.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCGroupEmail?.length > 1\"\r\n >\r\n +{{ policyForm?.CCGroupEmail?.length - 1 }}\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('ccEmail', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n\r\n <div\r\n class=\"select\"\r\n *ngIf=\"\r\n policyForm?.CCFailEmail?.length == 0 &&\r\n policyForm?.CCFailEmailGroup?.length == 0\r\n \"\r\n >\r\n <input\r\n type=\"text\"\r\n (click)=\"activateSelector('ccFail', true)\"\r\n placeholder=\"Who should be notified if the policy is not attested on time?\"\r\n readonly\r\n />\r\n </div>\r\n\r\n <div\r\n class=\"selected\"\r\n *ngIf=\"\r\n policyForm?.CCFailEmail?.length > 0 ||\r\n policyForm?.CCFailEmailGroup?.length > 0\r\n \"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"!groupEnabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"let ccFail of policyForm?.CCFailEmail?.slice(0, 1)\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('ccFail', ccFail)\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"ccFail.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ ccFail.employee_name }}</span\r\n >\r\n </ng-container>\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"ccFailPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCFailEmail?.length > 1\"\r\n >\r\n +{{ policyForm?.CCFailEmail?.slice(1).length }}\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"groupEnabled\" class=\"chip-container\">\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"groupEnabled && policyForm?.CCFailEmail.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"remove('ccFail', policyForm?.CCFailEmail[0])\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.CCFailEmail[0]?.employee_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.CCFailEmail[0]?.employee_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4 greenBg\"\r\n appPopover\r\n (click)=\"overseerFailPopover.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCFailEmail?.length > 1\"\r\n >\r\n +{{ policyForm?.CCFailEmail?.length - 1 }}\r\n </button>\r\n </div>\r\n\r\n <div\r\n class=\"vx-fs-12 vx-paragraph-txt vx-ml-2 vx-mr-2\"\r\n *ngIf=\"\r\n policyForm?.CCFailEmail?.length > 0 &&\r\n policyForm?.CCFailEmailGroup?.length > 0\r\n \"\r\n >\r\n &\r\n </div>\r\n\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n *ngIf=\"policyForm?.CCFailEmailGroup?.length > 0\"\r\n >\r\n <i\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n (click)=\"\r\n remove('ccGroupFailEmail', policyForm?.CCFailEmailGroup[0])\r\n \"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.CCFailEmailGroup[0]?.group_name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.CCFailEmailGroup[0]?.group_name }}</span\r\n >\r\n <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"overseerFailGroup.popover()\"\r\n placement=\"right\"\r\n *ngIf=\"policyForm?.CCFailEmailGroup?.length > 1\"\r\n >\r\n +{{ policyForm?.CCFailEmailGroup?.length - 1 }}\r\n </button>\r\n </div>\r\n </div>\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"activateSelector('ccFail', true)\"\r\n >\r\n <i class=\"icons\">&#xe9ba;</i> Edit\r\n </button>\r\n </div>\r\n <app-popover #ccEmailPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let ccEmail of policyForm?.CCEmail | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('ccEmail', ccEmail)\"\r\n >&#xe90d;</i\r\n >\r\n {{ ccEmail.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <app-popover #ccFailPopover [dontCloseonClick]=\"true\">\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"\r\n let ccFail of policyForm?.CCFailEmail | slice : 1;\r\n let j = index\r\n \"\r\n >\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"remove('ccFail', ccFail)\"\r\n >&#xe90d;</i\r\n >\r\n {{ ccFail.employee_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Related Documents -->\r\n <div\r\n class=\"form-group-row\"\r\n [appScrollInView]=\"scrollToBottom\"\r\n *ngIf=\"policyForm.addAssociatedDocuments\"\r\n [class.disabled]=\"activeSelector && activeSelector !== 'name'\"\r\n >\r\n <div class=\"left\">\r\n <img\r\n *ngIf=\"policyForm.associatedDocuments.formatFiles?.length == 0\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/format-evidence.svg\"\r\n alt=\"im\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm.associatedDocuments.formatFiles?.length > 0\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">RELATED DOCUMENTS</label>\r\n <app-format-and-evidence\r\n (updateFiles)=\"saveSelectedList('associatedDocuments', $event)\"\r\n [mode]=\"'policy'\"\r\n [organization_id]=\"organization_id\"\r\n [formatEvidanceData]=\"policyForm?.associatedDocuments\"\r\n ></app-format-and-evidence>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Link Programs & Responsibilities -->\r\n <div\r\n *ngIf=\"policyForm?.addLinkProgram\"\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'linkProgram'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'linkProgram' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div\r\n class=\"left\"\r\n [class.checked]=\"\r\n policyForm?.programSelectedValues?.program?.category_id\r\n \"\r\n >\r\n <img\r\n *ngIf=\"!policyForm?.programSelectedValues?.program?.category_id\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/link-items.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.programSelectedValues?.program?.category_id\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\"\r\n >LINK PROGRAMS & RESPONSIBILITIES</label\r\n >\r\n <div\r\n *ngIf=\"!policyForm?.programSelectedValues?.program?.category_id\"\r\n (click)=\"activateSelector('linkProgram', true)\"\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"false\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select Programs & responsibilities that are<br />associated with\r\n this policy.\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n *ngIf=\"policyForm?.programSelectedValues?.program?.category_id\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i\r\n (click)=\"\r\n remove('linkProgram', policyForm?.programSelectedValues)\r\n \"\r\n class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"policyForm?.programSelectedValues?.program?.name\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ policyForm?.programSelectedValues?.program?.name }}</span\r\n >\r\n <!-- <button\r\n class=\"countBtn vx-fs-9 vx-fw-500 vx-txt-white vx-d-flex vx-align-center vx-justify-center vx-lh-4\"\r\n appPopover\r\n (click)=\"programResponsibilityPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +4\r\n </button> -->\r\n </div>\r\n <app-popover\r\n #programResponsibilityPopover\r\n [dontCloseonClick]=\"true\"\r\n >\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let data of [1, 1, 1, 1, 1, 1, 1]\">\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"\r\n 'Reporting information security weaknesses'\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i class=\"icons\">&#xe90d;</i>\r\n Reporting information security weaknesses\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <button\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n (click)=\"activateSelector('linkProgram', true)\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Link Assessment -->\r\n <div\r\n *ngIf=\"policyForm.addLinkAssessment\"\r\n class=\"form-group-row\"\r\n [class.active]=\"activeSelector === 'isAssessment'\"\r\n [class.disabled]=\"\r\n activeSelector &&\r\n activeSelector !== 'isAssessment' &&\r\n sideSelectorElements.includes(activeSelector)\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"policyForm?.assessment?.length\">\r\n <img\r\n *ngIf=\"!policyForm?.assessment?.length\"\r\n src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/assessments.svg\"\r\n alt=\"\"\r\n />\r\n\r\n <svg\r\n *ngIf=\"policyForm?.assessment?.length\"\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\">\r\n <label class=\"vx-control-panel\">LINK ASSESSMENTS</label>\r\n <div\r\n *ngIf=\"policyForm?.assessment?.length === 0\"\r\n (click)=\"activateSelector('isAssessment', true)\"\r\n class=\"selectBoxEnable vx-pl-3 vx-pr-3 vx-d-flex vx-align-center\"\r\n [class.disabled]=\"false\"\r\n >\r\n <div class=\"selectBoxPlacehoder vx-fs-13 vx-paragraph-txt vx-lh-4\">\r\n Select assessments that are associated with this<br />policy.\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"policyForm?.assessment?.length > 0\"\r\n class=\"selectBoxSuccess vx-pl-2 vx-pr-3 vx-d-flex vx-align-center vx-justify-between\"\r\n >\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2\"\r\n >\r\n <i class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n >&#xe9ae;</i\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt\"\r\n [appTooltip]=\"\r\n policyForm.assessment[0]?.assessmentDetails?.assessment_name\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{\r\n policyForm.assessment[0]?.assessmentDetails?.assessment_name\r\n }}</span\r\n >\r\n </div>\r\n <app-popover\r\n #programResponsibilityPopover\r\n [dontCloseonClick]=\"true\"\r\n >\r\n <div class=\"wf-action-list\">\r\n <ul class=\"action-item\">\r\n <li\r\n *ngFor=\"let assessment of policyForm.assessment | slice : 1\"\r\n >\r\n <div class=\"avatar-card\">\r\n <span\r\n class=\"value\"\r\n [appTooltip]=\"\r\n assessment?.assessmentDetails?.assessment_name\r\n \"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >\r\n <i class=\"icons\">&#xe90d;</i>\r\n {{ assessment?.assessmentDetails?.assessment_name }}\r\n </span>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <button\r\n (click)=\"activateSelector('isAssessment', true)\"\r\n class=\"editBtn vx-fs-11 vx-fw-600 vx-txt-blue vx-tt-uppercase vx-p-0 vx-m-0 vx-d-flex vx-align-center\"\r\n >\r\n <i class=\"icons vx-mr-1\">&#xe90c;</i> EDIT\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <app-checkbox-list\r\n [config]=\"categoryConfig\"\r\n [twoColumn]=\"false\"\r\n [itemsList]=\"categoryList\"\r\n [selectedItems]=\"policyForm.selectedCategories\"\r\n [identifierKey]=\"'_id'\"\r\n [displayKey]=\"'item_name'\"\r\n [tooltipKey]=\"'item_name'\"\r\n *ngIf=\"activeSelector === 'category'\"\r\n (saveList)=\"saveSelectedList('category', $event)\"\r\n (closeList)=\"disableSelector()\"\r\n >\r\n </app-checkbox-list>\r\n <!-- <app-checkbox-list [config]=\"approvalWorkflowConfig\" [twoColumn]=\"true\"\r\n [itemsList]=\"\"\r\n [selectedItems]=\"policyForm.issueCCUsers\" [identifierKey]=\"'employee_email'\" [displayKey]=\"'employee_name'\" [tooltipKey]=\"'employee_email'\"\r\n *ngIf=\"activeSelector==='ISSUE_CC'\" (saveList)=\"selectorAction($event,'ISSUE_CC')\"\r\n (closeList)=\"fieldDeselector('ISSUE_CC')\">\r\n</app-checkbox-list> -->\r\n\r\n <app-responsibility-centers-list\r\n *ngIf=\"activeSelector === 'rc'\"\r\n [responsibilityCentersList]=\"rcList\"\r\n [selectedResponsibilityCenters]=\"policyForm.selectedRCs\"\r\n [rcIdKey]=\"'item_id'\"\r\n (saveSelectedList)=\"saveSelectedList('rc', $event)\"\r\n (closeRcList)=\"disableSelector()\"\r\n >\r\n </app-responsibility-centers-list>\r\n\r\n <app-users-radio-list\r\n *ngIf=\"activeSelector === 'reviewer'\"\r\n [itemEmailKey]=\"'member_email'\"\r\n [usersList]=\"allReviewers\"\r\n [headerText]=\"'Select a Reviewer'\"\r\n [selectedUsers]=\"policyForm.selectedReviewers\"\r\n [userIdKey]=\"'member_id'\"\r\n [itemNameKey]=\"'member_name'\"\r\n (saveSelectedList)=\"saveSelectedList('reviewer', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n >\r\n </app-users-radio-list>\r\n\r\n <app-owner-list\r\n *ngIf=\"activeSelector === 'ccEmail' && !groupEnabled\"\r\n [usersList]=\"overseersList\"\r\n [singularText]=\"'User selected'\"\r\n [pluralText]=\"'Users selected'\"\r\n [selectedUsers]=\"policyForm.CCEmail\"\r\n [userIdKey]=\"'employee_id'\"\r\n [itemNameKey]=\"'employee_name'\"\r\n (saveSelectedList)=\"saveSelectedList('ccEmail', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n >\r\n </app-owner-list>\r\n\r\n <user-group-list\r\n *ngIf=\"activeSelector === 'ccEmail' && groupEnabled\"\r\n [groupEnabled]=\"true\"\r\n [userlist]=\"overseersList\"\r\n [groupList]=\"overseerGroupsList\"\r\n [selectedUsers]=\"policyForm.CCEmail\"\r\n [selectedGroups]=\"policyForm.CCGroupEmail\"\r\n (save)=\"saveSelectedList('ccEmail', $event)\"\r\n (cancel)=\"disableSelector()\"\r\n [featureflag]=\"groupEnabled\"\r\n >\r\n </user-group-list>\r\n\r\n <app-owner-list\r\n *ngIf=\"activeSelector === 'ccFail' && !groupEnabled\"\r\n [usersList]=\"overseersList\"\r\n [singularText]=\"'User selected'\"\r\n [pluralText]=\"'Users selected'\"\r\n [selectedUsers]=\"policyForm.CCFailEmail\"\r\n [userIdKey]=\"'employee_id'\"\r\n [itemNameKey]=\"'employee_name'\"\r\n (saveSelectedList)=\"saveSelectedList('ccFail', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n >\r\n </app-owner-list>\r\n\r\n <user-group-list\r\n *ngIf=\"activeSelector === 'ccFail' && groupEnabled\"\r\n [groupEnabled]=\"true\"\r\n [userlist]=\"overseersList\"\r\n [groupList]=\"overseerGroupsList\"\r\n [selectedUsers]=\"policyForm.CCFailEmail\"\r\n [selectedGroups]=\"policyForm.CCFailEmailGroup\"\r\n (save)=\"saveSelectedList('ccFail', $event)\"\r\n (cancel)=\"disableSelector()\"\r\n [featureflag]=\"groupEnabled\"\r\n >\r\n </user-group-list>\r\n\r\n <app-group-users-list\r\n *ngIf=\"activeSelector === 'assignees' && !groupEnabled\"\r\n [usersList]=\"assigneesList\"\r\n [groupsList]=\"groupsList\"\r\n [selectedUsers]=\"policyForm.selectedAssignees\"\r\n [userIdKey]=\"'my_member_id'\"\r\n (saveSelectedList)=\"saveSelectedList('assignees', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n >\r\n </app-group-users-list>\r\n\r\n <user-group-list\r\n *ngIf=\"activeSelector === 'assignees' && groupEnabled\"\r\n [groupEnabled]=\"true\"\r\n [userlist]=\"ownerlist\"\r\n [groupList]=\"groupsList\"\r\n (save)=\"saveSelectedList('assignees', $event)\"\r\n (cancel)=\"disableSelector()\"\r\n [selectedGroups]=\"policyForm.selectedGroupAssignee\"\r\n [selectedUsers]=\"policyForm.selectedAssignees\"\r\n [featureflag]=\"groupEnabled\"\r\n >\r\n </user-group-list>\r\n\r\n <app-owner-list\r\n *ngIf=\"activeSelector === 'approvers' && false\"\r\n [listHeading]=\"'Select Approvers'\"\r\n [singularText]=\"'User selected'\"\r\n [pluralText]=\"'Users selected'\"\r\n [usersList]=\"allApprovers\"\r\n [showWorkflow]=\"true\"\r\n [selectedUsers]=\"\r\n addMoreLevels\r\n ? []\r\n : policyForm.selectedApprovers[approversListIndex].approvers\r\n \"\r\n [userIdKey]=\"'member_id'\"\r\n [itemEmailKey]=\"'member_email'\"\r\n [itemNameKey]=\"'member_name'\"\r\n (saveSelectedList)=\"saveSelectedList('approvers', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n [mode]=\"mode\"\r\n [reviewerWorkflowType]=\"workflowType\"\r\n (reviewerWorkflowTypeChange)=\"reviewerTypeChange($event)\"\r\n [workflowList]=\"workflowList\"\r\n [workflowText]=\"'Approval Workflow'\"\r\n >\r\n </app-owner-list>\r\n\r\n <app-frequency-container\r\n *ngIf=\"activeSelector === 'frequency'\"\r\n [mode]=\"'policy'\"\r\n [frequencyDetails]=\"frequencyDetails\"\r\n (selectedFrequency)=\"frequencyData($event)\"\r\n [feature]=\"feature\"\r\n [pageType]=\"'policy'\"\r\n (closeFrequency)=\"disableSelector()\"\r\n ></app-frequency-container>\r\n\r\n <app-frequency-container\r\n *ngIf=\"activeSelector === 'reviewerFrequency'\"\r\n [mode]=\"'reviewerFrequency'\"\r\n [frequencyDetails]=\"reviewerFrequencyDetails\"\r\n (selectedFrequency)=\"reviewerFrequencyData($event)\"\r\n [feature]=\"feature\"\r\n [pageType]=\"'policy'\"\r\n (closeFrequency)=\"disableSelector()\"\r\n ></app-frequency-container>\r\n\r\n <vc-link-program\r\n *ngIf=\"activeSelector === 'linkProgram'\"\r\n (close)=\"disableSelector()\"\r\n [policy]=\"policyForm\"\r\n [selectedProgram]=\"policyForm?.programSelectedValues\"\r\n [mode]=\"mode\"\r\n [selectedLinkProgram]=\"selectedLinkProgram\"\r\n (changeTab)=\"changeTab('linkedPrograms')\"\r\n (updatedProgramDetails)=\"updatedProgramDetails($event)\"\r\n >\r\n </vc-link-program>\r\n\r\n <app-checkpoints-policy-container\r\n (closeCheckPoint)=\"disableSelector()\"\r\n [checkpointData]=\"policyForm?.checkpointDetails\"\r\n [requiredPoint]=\"policyForm?.passingMarks\"\r\n *ngIf=\"activeSelector === 'checkpoints'\"\r\n (saveCheckPoint)=\"saveSelectedList('checkpoints', $event)\"\r\n ></app-checkpoints-policy-container>\r\n <app-loader-inline *ngIf=\"loader\"></app-loader-inline>\r\n\r\n <app-approval-workflow\r\n *ngIf=\"enableApprovalWorkflow\"\r\n [selectedCategory]=\"policyForm?.selectedCategories\"\r\n [approverWorkFlowList]=\"approverWorkFlowList\"\r\n [allApprovers]=\"allApprovers\"\r\n (listCancelClicked)=\"listCancelClicked($event)\"\r\n (selectedWorkflowNext)=\"selectedApprovalWorkflow($event)\"\r\n (saveApprovalWorkflow)=\"approvalWorkflowAPICall($event)\"\r\n [editApprovalWorkflow]=\"editApprovalWorkflow\"\r\n [createApprovalClick]=\"createApprovalClick\"\r\n (closeCreateClicked)=\"closeClickedCreateForm()\"\r\n [editWorkflowLevel]=\"editWorkflowLevel\"\r\n ></app-approval-workflow>\r\n <!-- <app-select-approvers></app-select-approvers> -->\r\n\r\n <app-policy-access *ngIf=\"activeSelector === 'policyAccess'\"\r\n [policyAccessType]=\"policyForm?.policy_access_type\"\r\n (close)=\"disableSelector()\"\r\n [orgUsersList]=\"usersList\"\r\n [usersAccessList]=\"usersAccessList\"\r\n [groupList]=\"overseerGroupsList\"\r\n [groupsAccessList]=\"groupsAccessList\"\r\n [selectedUsers]=\"policyForm?.policy_access_owners\"\r\n [selectedGroups]=\"policyForm?.policy_access_groups\"\r\n [disabledIds]=\"usersAccessListIds\"\r\n [disabledGroupIds]=\"groupsAccessListIds\"\r\n [futureUsersWillSelect]=\"policyForm?.availableOnPortal\"\r\n (saveCheckPoint)=\"saveSelectedList('policyAccess', $event)\"\r\n (setPolicyAccessType)=\"policyForm.policy_access_type = $event\"\r\n >\r\n\r\n </app-policy-access>\r\n</ng-container>\r\n<ng-container *ngIf=\"showCreateDocuments\">\r\n <!-- <app-create-documents *ngIf=\"showCreateDocuments\"\r\n [organization_id]=\"organization_id\"\r\n [member_obj_id]=\"member_obj_id\"\r\n [userInfo]=\"userInfo\"\r\n [policyId]=\"policyId\"\r\n [policyName]=\"policyForm.policyName\"\r\n (disconnectRefresh)=\"disconnectRefresh.emit(false)\"\r\n (editPolicy)=\"editPolicyFromDocuments()\"\r\n ></app-create-documents> -->\r\n <lib-document-section\r\n *ngIf=\"showCreateDocuments\"\r\n [organization_id]=\"organization_id\"\r\n [member_obj_id]=\"member_obj_id\"\r\n [userInfo]=\"userInfo\"\r\n [policyId]=\"policyId\"\r\n [policyName]=\"policyForm.policyName\"\r\n (disconnectRefresh)=\"disconnectRefresh.emit(false)\"\r\n (editPolicy)=\"editPolicyFromDocuments()\"\r\n ></lib-document-section>\r\n</ng-container>\r\n\r\n<app-assessment-list\r\n *ngIf=\"activeSelector === 'isAssessment'\"\r\n [program_ids]=\"''\"\r\n [isEdit]=\"policyForm?.assessment?.length\"\r\n (cancelAssessment)=\"saveSelectedList('isAssessment', false)\"\r\n [selectedAssessment]=\"policyForm?.assessment[0]\"\r\n [mode]=\"'policy'\"\r\n (onAssessmentSelect)=\"\r\n onAssessmentSelect($event); saveSelectedList('isAssessment', false)\r\n \"\r\n></app-assessment-list>\r\n\r\n<app-owner-list\r\n *ngIf=\"activeSelector === 'approvers' && false\"\r\n [listHeading]=\"'Select Approvers'\"\r\n [singularText]=\"'User selected'\"\r\n [pluralText]=\"'Users selected'\"\r\n [usersList]=\"allApprovers\"\r\n [showWorkflow]=\"true\"\r\n [selectedUsers]=\"\r\n addMoreLevels\r\n ? []\r\n : policyForm.selectedApprovers[approversListIndex].approvers\r\n \"\r\n [userIdKey]=\"'member_id'\"\r\n [itemEmailKey]=\"'member_email'\"\r\n [itemNameKey]=\"'member_name'\"\r\n (saveSelectedList)=\"saveSelectedList('approvers', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n [mode]=\"mode\"\r\n [reviewerWorkflowType]=\"workflowType\"\r\n (reviewerWorkflowTypeChange)=\"reviewerTypeChange($event)\"\r\n [workflowList]=\"workflowList\"\r\n [workflowText]=\"'Approval Workflow'\"\r\n>\r\n</app-owner-list>\r\n\r\n<app-owner-list\r\n *ngIf=\"activeSelector === 'owners'\"\r\n [listHeading]=\"'Select Owner(s)'\"\r\n [singularText]=\"'User selected'\"\r\n [pluralText]=\"'Users selected'\"\r\n [usersList]=\"allApprovers\"\r\n [showWorkflow]=\"false\"\r\n [userIdKey]=\"'member_id'\"\r\n [itemEmailKey]=\"'member_email'\"\r\n [itemNameKey]=\"'member_name'\"\r\n (saveSelectedList)=\"saveSelectedList('owners', $event)\"\r\n (closeUsersList)=\"disableSelector()\"\r\n [mode]=\"mode\"\r\n [selectedUsers]=\"policyForm?.policy_owners ?? []\"\r\n>\r\n</app-owner-list>\r\n",
8214
8956
  styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";::ng-deep .workflow-policy{position:relative}::ng-deep .workflow-policy app-cs-switch{display:block}::ng-deep .workflow-policy app-cs-switch label.cs-switch span.value{color:#747576!important;font-size:11px!important;font-weight:500!important;justify-content:flex-end!important;line-height:16px;width:100%!important}::ng-deep .workflow-policy app-cs-switch label.cs-switch span.value i{display:inline-flex;font-size:12px;cursor:pointer;color:#1e5dd3;align-items:center;line-height:16px;margin:0 8px 0 4px}::ng-deep .workflow-policy .form-group-row .right .approval-workflow .selected{height:56px;padding:4px 12px 8px;display:block}::ng-deep .workflow-policy .form-group-row .right .approval-workflow .selected .workflow-label{min-width:auto;padding:0;text-align:left;margin:0 0 4px;border-right:none;width:100%;display:flex;align-items:center}::ng-deep .workflow-policy .form-group-row .right .approval-workflow .selected .workflow-label p.description{font-size:10px;margin-left:6px}::ng-deep .workflow-policy .form-group-row .right .approval-workflow cs-select .selection-wrap .input-group:before{display:none!important}::ng-deep .workflow-policy app-frequency-container app-frequency-weekly .frequency-weekly app-frequency-lifecycle .frequency-lifecycle-responsibility-inner-item{height:unset!important}.disabled{opacity:.5;pointer-events:none}\n", "@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}button{font-family:\"Poppins\",sans-serif}::ng-deep input.textField{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;font-size:13px;color:#747576;padding:8px 12px;position:relative;height:2.5rem;width:100%;transition:all .2s ease-in-out}::ng-deep input.textField::placeholder{font-size:13px;color:#747576}::ng-deep input.textField:hover,::ng-deep input.textField:focus{outline:none;border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectBoxEnable{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;cursor:pointer;height:2.5rem;position:relative;transition:all .2s ease-in-out}::ng-deep .selectBoxEnable:after{border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px;border-color:#747576;content:\"\";display:inline-block;right:12px;position:absolute;top:calc(50% - 4px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .selectBoxEnable:hover,::ng-deep .selectBoxEnable:focus{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectBoxEnable.disabled{background:#f1f1f1;pointer-events:none;opacity:1}::ng-deep .selectBoxSuccess{background:#f8f8f8;border-radius:.25rem;border:1px solid #f1f1f1;min-height:2.5rem;position:relative}::ng-deep .selectBoxSuccess .selectBoxText{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:22rem}::ng-deep .selectBoxSuccess button{background:transparent;border-radius:0;border:none}::ng-deep .selectBoxSuccess button.deleteBtn{color:#d93b41}::ng-deep .selectBoxSuccess .level-left{border-right:1px solid #f1f1f1;height:2.375rem;width:5rem}::ng-deep .selectBoxSuccess .level-left .level-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:4.5rem}::ng-deep .chipContainer{background:#fff;border-radius:.125rem;box-shadow:0 0 2px #1e5dd340;height:1.5rem}::ng-deep .chipContainer .cross{cursor:pointer;min-width:16px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:2px;margin-left:-4px}::ng-deep .chipContainer .cross:hover{background:#f1f1f1}::ng-deep .chipContainer .chipName{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:6rem}::ng-deep .chipContainer button.countBtn{background:#1e5dd3;border-radius:1.25rem;border:none;min-width:1.5rem;height:1rem;margin:0 0 0 .5rem;padding:0 .25rem}::ng-deep .chipContainer button.countBtn.greenBg{background:#34aa44}::ng-deep .workflowLavel{background:#f1f1f1;border-radius:.125rem;color:#042e7d;min-width:1rem;height:1rem}::ng-deep .reviewSelection{border-radius:.25rem;border:1px solid #dbdbdb;transition:all .2s ease-in-out}::ng-deep .reviewSelection:hover{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectButton{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;cursor:pointer;height:2.5rem;position:relative;transition:all .2s ease-in-out}::ng-deep .selectButton:hover,::ng-deep .selectButton:focus{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep button.createNewBtn{background:transparent;border-radius:0;border:none}::ng-deep .vx-form-group{display:block;position:relative;margin-bottom:20px}::ng-deep .vx-form-group:after{content:\"\";display:block;clear:both}::ng-deep .vx-form-group .select{position:relative}::ng-deep .vx-form-group .select:after{border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px;border-color:#707070;content:\"\";display:inline-block;right:12px;position:absolute;top:calc(50% - 4px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .vx-form-group .select input{cursor:pointer;padding-right:30px!important}::ng-deep .vx-form-group .select .custom-input{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;outline:none;padding:3px 12px;line-height:16px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;cursor:pointer}::ng-deep .vx-form-group .select .custom-input:empty:not(:focus):before{content:attr(aria-placeholder);line-height:16px;font-size:13px;width:94%;display:block;pointer-events:none;opacity:.8}::ng-deep .vx-form-group .select .custom-input:hover{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .vx-form-group .select .custom-input.frequency-custom-input{padding-right:108px;display:flex;align-items:center}::ng-deep .vx-form-group .select+app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .select+app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:5px;text-transform:uppercase}::ng-deep .vx-form-group .select+app-cs-radio{margin-top:8px!important}::ng-deep .vx-form-group .select~app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group .select.button-sec:after{display:none}::ng-deep .vx-form-group .select.button-sec button{background:transparent;border:none;display:inline-flex;float:right;color:#1e5dd3;text-transform:uppercase;font-weight:600;cursor:pointer;font-size:11px;position:absolute;top:12px;right:8px;padding:0;margin:0}::ng-deep .vx-form-group .select+.vx-control-panel{margin-top:8px}::ng-deep .vx-form-group .select+.selected{margin-top:8px}::ng-deep .vx-form-group .select.select{margin-top:8px}::ng-deep .vx-form-group .upload-format{border:1px solid #dbdbdb;border-radius:4px;padding:8px 12px;display:block}::ng-deep .vx-form-group .upload-format span.text{line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;display:block;margin-bottom:6px}::ng-deep .vx-form-group .upload-format .radio-group{display:flex}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio{display:inline-block}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;margin-left:8px}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio+app-cs-radio{margin-left:12px}::ng-deep .vx-form-group .upload-format~.upload-format{margin-top:4px}::ng-deep .vx-form-group .form-tab{display:flex;justify-content:flex-start}::ng-deep .vx-form-group .form-tab button{background:transparent;color:#161b2f;font-size:11px;line-height:16px;text-transform:uppercase;cursor:pointer;padding:8px 8px 8px 0;border:none;outline:none;font-weight:500}::ng-deep .vx-form-group .form-tab button:disabled{opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .form-tab button+button{padding:8px}::ng-deep .vx-form-group .form-tab button.active{color:#1e5dd3}::ng-deep .vx-form-group .tab-group{border:1px solid #dbdbdb;border-radius:4px;padding:0;display:block;position:relative;transition:all .2s ease-in-out}::ng-deep .vx-form-group .tab-group:hover{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group .tab-group .upload-file{padding:16px 62px 16px 24px;display:flex;align-items:center;justify-content:space-between}::ng-deep .vx-form-group .tab-group .upload-file .image{width:80px}::ng-deep .vx-form-group .tab-group .upload-file .browse span{display:inline-block;font-size:12px;color:#747576;line-height:16px;padding:0 4px}::ng-deep .vx-form-group .tab-group .upload-file .browse .label{font-size:11px;color:#1e5dd3;line-height:16px;font-weight:600;text-transform:uppercase;margin:0;padding:0}::ng-deep .vx-form-group .tab-group .upload-file .browse .label input{opacity:0;position:absolute;top:0;margin:0;padding:0;right:0;bottom:0;left:0;cursor:pointer;width:100%}::ng-deep .vx-form-group .tab-group.active{border-color:#1e5dd3}::ng-deep .vx-form-group .tab-group.uploaded{margin-top:4px}::ng-deep .vx-form-group .tab-group.uploaded .upload-file{padding:8px 0!important;text-align:center}::ng-deep .vx-form-group .tab-group.uploaded .upload-file .image{display:none}::ng-deep .vx-form-group .tab-group.uploaded .upload-file .browse{width:100%;text-align:center}::ng-deep .vx-form-group .tab-group+label.vx-form-group{margin-top:8px;margin-bottom:4px}::ng-deep .vx-form-group .file-list{background:#fbfbfb;border:1px solid #f1f1f1;border-radius:4px;padding:12px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;position:relative}::ng-deep .vx-form-group .file-list span.file-name{color:#747576;line-height:16px;font-size:11px;font-weight:400;cursor:pointer;max-width:calc(100% - 20px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .vx-form-group .file-list .button-group{display:flex}::ng-deep .vx-form-group .file-list button{font-size:12px;color:#eb2424;cursor:pointer;display:flex;padding:0;border:none;outline:none;background:transparent}::ng-deep .vx-form-group .file-list button.edit{color:#1e5dd3}::ng-deep .vx-form-group .file-list button+button{margin-left:16px}::ng-deep .vx-form-group .file-list+.file-list{margin-top:4px}::ng-deep .vx-form-group .file-list .file-container{display:flex;justify-content:space-between;width:100%}::ng-deep .vx-form-group .file-list.policy{background:#ffffff}::ng-deep .vx-form-group .file-list cs-select{position:relative;margin-top:8px;width:100%}::ng-deep .vx-form-group .file-list cs-select .selection-wrap .input-group input.value{height:32px!important;font-size:13px!important}::ng-deep .vx-form-group .file-list cs-select .selection-wrap .input-group i{right:12px!important;top:12px!important}::ng-deep .vx-form-group .file-list app-line-loader{display:block;position:absolute;left:10px;right:10px;bottom:0}::ng-deep .vx-form-group label.vx-control-panel{color:#161b2f;font-size:11px;font-weight:500;line-height:16px;margin-bottom:8px;display:block;text-transform:uppercase;text-align:left}::ng-deep .vx-form-group label.vx-control-panel.custom-tag{font-size:10px}::ng-deep .vx-form-group label.vx-control-panel.vx-mt-8{margin-top:8px}::ng-deep .vx-form-group label.vx-control-panel span.required{color:#eb2424;font-size:14px;font-weight:500;position:relative;top:-2px}::ng-deep .vx-form-group label.vx-control-panel .button{background:transparent;border:none;display:inline-flex;float:right;color:#1e5dd3;text-transform:uppercase;font-weight:600;cursor:pointer;font-size:11px;padding:0;margin:0}::ng-deep .vx-form-group label.vx-control-panel app-cs-switch{float:right;display:block}::ng-deep .vx-form-group label.vx-control-panel i{margin-left:8px;font-size:12px;color:#1e5dd3;cursor:pointer;position:relative;top:1px}::ng-deep .vx-form-group label.vx-control-panel i.depreciation-icon{color:#e4b700;font-size:16px;position:relative;top:3px}::ng-deep .vx-form-group label.vx-control-panel .checkpoint-version{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:10px;font-weight:600;line-height:14px;margin-left:4px;padding:0 2px}::ng-deep .vx-form-group input[type=text],::ng-deep .vx-form-group .input{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;outline:none;padding:8px 12px;line-height:20px;font-size:13px;color:#747576;transition:all .2s ease-in-out;width:100%;font-weight:400}::ng-deep .vx-form-group input[type=text]::placeholder,::ng-deep .vx-form-group .input::placeholder{color:#747576;font-weight:400}::ng-deep .vx-form-group input[type=text]:focus,::ng-deep .vx-form-group .input:focus,::ng-deep .vx-form-group input[type=text]:hover,::ng-deep .vx-form-group .input:hover{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group input[type=text].error,::ng-deep .vx-form-group .input.error{border-color:#eb2424;color:#eb2424;margin-bottom:4px}::ng-deep .vx-form-group input[type=text].error:focus,::ng-deep .vx-form-group .input.error:focus{box-shadow:0 0 5px #d31e1e45}::ng-deep .vx-form-group input[type=text]:disabled,::ng-deep .vx-form-group .input:disabled{background:#f1f1f1;cursor:not-allowed;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group input[type=text]:disabled:hover,::ng-deep .vx-form-group .input:disabled:hover{border-color:#dbdbdb;box-shadow:none}::ng-deep .vx-form-group input[type=text] span.text,::ng-deep .vx-form-group .input span.text{font-size:13px;color:#747576;font-weight:400;display:block;width:100%}::ng-deep .vx-form-group input[type=text] .input-group,::ng-deep .vx-form-group .input .input-group{display:flex;align-items:center}::ng-deep .vx-form-group input[type=text] .input-group.counter,::ng-deep .vx-form-group .input .input-group.counter{min-width:96px;width:96px}::ng-deep .vx-form-group input[type=text] .input-group.counter button,::ng-deep .vx-form-group .input .input-group.counter button{height:24px;width:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#747576;font-size:8px;cursor:pointer;outline:none}::ng-deep .vx-form-group input[type=text] .input-group.counter input,::ng-deep .vx-form-group .input .input-group.counter input{-webkit-appearance:textfield;-moz-appearance:textfield;height:24px;width:calc(100% - 48px);border:1px solid #f1f1f1;outline:none;padding:0 6px;text-align:center}::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-outer-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}::ng-deep .vx-form-group input[type=text]+.file-list,::ng-deep .vx-form-group .input+.file-list{margin-top:8px}::ng-deep .vx-form-group input[type=text]::placeholder,::ng-deep .vx-form-group .input::placeholder{font-size:13px}::ng-deep .vx-form-group input[type=text]:-ms-input-placeholder,::ng-deep .vx-form-group .input:-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group input[type=text]::-ms-input-placeholder,::ng-deep .vx-form-group .input::-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group .classification{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;padding:8px 12px;display:flex;justify-content:space-between}::ng-deep .vx-form-group .classification label{margin:0 4px 0 0;width:100%;position:relative;z-index:1}::ng-deep .vx-form-group .classification label span{display:block;width:100%;height:24px;border:1px solid #f1f1f1;border-radius:2px;line-height:24px;font-size:10px;text-align:center;color:#747576;font-weight:500;position:relative;text-transform:uppercase}::ng-deep .vx-form-group .classification label span:before{height:2px;content:\"\";top:0;right:0;left:0;border-radius:2px;position:absolute;transition:all .2s ease-in-out}::ng-deep .vx-form-group .classification label input{opacity:0;position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:0;width:100%;height:100%;cursor:pointer;z-index:1}::ng-deep .vx-form-group .classification label input:checked+span{color:#fff}::ng-deep .vx-form-group .classification label input:checked+span:before{bottom:0;height:100%;z-index:-1}::ng-deep .vx-form-group .classification label.low span:before{background:#34aa44}::ng-deep .vx-form-group .classification label.low-med span:before{background:#f2bf19}::ng-deep .vx-form-group .classification label.med-high span:before{background:#f29619}::ng-deep .vx-form-group .classification label.high span:before{background:#eb2424}::ng-deep .vx-form-group .classification label:last-of-type{margin-right:0}::ng-deep .vx-form-group .input{display:flex;align-items:center}::ng-deep .vx-form-group .selected{height:40px;border-radius:4px;border:1px solid #f1f1f1;background:#fbfbfb;outline:none;padding:8px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;display:flex;align-items:center;position:relative;justify-content:space-between}::ng-deep .vx-form-group .selected.first-field{z-index:2}::ng-deep .vx-form-group .selected .chip-container{display:flex;width:calc(100% - 60px);align-items:center}::ng-deep .vx-form-group .selected .chip-container.checkpoints{width:calc(100% - 120px)}::ng-deep .vx-form-group .selected .chip-container span.chip{background:#ffffff;border-radius:2px;box-shadow:0 0 3px #1e5dd31a;height:24px;padding:0 8px;color:#1e5dd3;font-size:12px;display:block;width:auto;max-width:100%;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:24px}::ng-deep .vx-form-group .selected .chip-container span.chip.disabled{background:#f1f1f1;box-shadow:none;color:#747576;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .selected .chip-container span.chip i{font-weight:400;margin-right:8px;cursor:pointer;font-size:10px;position:relative;top:1px}::ng-deep .vx-form-group .selected .chip-container span.chip span.step{background:#1e5dd3;border-radius:2px;color:#fff;font-size:9px;line-height:14px;padding:0 4px;font-weight:400;text-align:center;min-width:auto;margin-right:4px}::ng-deep .vx-form-group .selected .chip-container span.chip+span.chip{margin-left:4px}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question{display:flex;align-items:center;justify-content:space-between;width:100%}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question span.value{color:#1e5dd3;font-size:12px;font-weight:400;line-height:24px;padding:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:calc(100% - 80px)}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question span.label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px;margin-left:8px}::ng-deep .vx-form-group .selected .chip-container span.value{color:#747576;font-size:13px;line-height:20px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 52px);padding:0 4px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text{color:#747576;font-size:10px;font-weight:500;padding:0 8px;width:122px;line-height:14px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text.first{position:relative;min-width:162px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text.first:before{background:#f1f1f1;content:\"\";position:absolute;top:0;right:0;height:calc(100% + 12px);width:1px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text .no{color:#1e5dd3}::ng-deep .vx-form-group .selected .chip-container.plus span.chip{max-width:calc(50% - 35px)}::ng-deep .vx-form-group .selected .chip-container.more-one span.chip{max-width:50%}::ng-deep .vx-form-group .selected .chip-container .chip-inner{background:#fff;border-radius:2px;box-shadow:0 2px 4px #1e5dd31a;line-height:24px;padding:0 4px 0 8px;display:flex;align-items:center}::ng-deep .vx-form-group .selected .chip-container .chip-inner .chip{background:transparent;border-radius:0;box-shadow:none;height:auto;line-height:unset;padding:0;color:#747576;max-width:100px}::ng-deep .vx-form-group .selected .chip-container .chip-inner button.count{border-radius:20px;height:16px;padding:0 6px;border:none;font-size:9px;line-height:16px;margin-left:4px;min-width:20px}::ng-deep .vx-form-group .selected .chip-container .chip-inner button.count.user{background:#34aa44}::ng-deep .vx-form-group .selected .chip-container .chip-inner i.cross{cursor:pointer;position:relative;top:1px;font-size:8px}::ng-deep .vx-form-group .selected button.count{background:#1e5dd3;border-radius:2px;height:24px;padding:0 8px;border:1px solid #1e5dd3;cursor:pointer;outline:none;color:#fff;font:13px;font-weight:500;line-height:20px;white-space:nowrap;margin-left:8px}::ng-deep .vx-form-group .selected button.edit{border:none;border-radius:0;background:transparent;outline:none;cursor:pointer;display:block;font-size:11px;font-weight:600;color:#1e5dd3;text-transform:uppercase;white-space:nowrap;margin-left:8px}::ng-deep .vx-form-group .selected button.edit i{font-weight:400;font-size:8px;margin-right:4px}::ng-deep .vx-form-group .selected button.close-btn{background:transparent;border:none;padding:0;margin-left:8px;font-size:10px;color:#c7381b;display:flex;align-items:center}::ng-deep .vx-form-group .selected .workflow-label{min-width:92px;padding:4px;text-align:center;margin-left:-8px;margin-right:8px;border-right:1px solid #f1f1f1}::ng-deep .vx-form-group .selected .workflow-label p{margin:0;display:block;text-transform:uppercase}::ng-deep .vx-form-group .selected .workflow-label p.title{font-size:9px;line-height:12px;color:#161b2f;font-weight:500}::ng-deep .vx-form-group .selected .workflow-label p.description{font-size:11px;line-height:16px;color:#161b2f;font-weight:600}::ng-deep .vx-form-group .selected .workflow-label+.chip-container{width:calc(100% - 148px)}::ng-deep .vx-form-group .selected+.selected{margin-top:8px}::ng-deep .vx-form-group .selected+app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .selected+app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:5px;text-transform:uppercase}::ng-deep .vx-form-group .selected+app-cs-switch.who-toggle label.cs-switch span.value{color:#747576}::ng-deep .vx-form-group .selected+app-cs-radio{margin-top:8px!important}::ng-deep .vx-form-group .selected~app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group .selected.readOnly{pointer-events:none}::ng-deep .vx-form-group .selected span.chip{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .vx-form-group .select-list{position:absolute;background:#ffffff;box-shadow:0 0 5px #1e5dd345;top:100%;right:0;left:0;z-index:2}::ng-deep .vx-form-group .select-list .vx-radio-group label.vx-radio-item{width:100%;padding:12px 16px}::ng-deep .vx-form-group .select-list .vx-radio-group label.vx-radio-item:hover{background:#f8f8f8}::ng-deep .vx-form-group marx-editor{margin-top:8px;display:block}::ng-deep .vx-form-group marx-editor .editor-container{border-radius:4px;border:1px solid #dbdbdb}::ng-deep .vx-form-group marx-editor .editor-container .editable-block{min-height:60px;padding:11px 15px;max-height:100px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%}::ng-deep .vx-form-group marx-editor .editor-container .editable-block ul{padding:0 0 0 10px;margin-top:0}::ng-deep .vx-form-group marx-editor .editor-container .editable-block ul li{list-style:disc}::ng-deep .vx-form-group marx-editor .editor-container .editable-block ol{padding:0 0 0 10px;margin-top:0}::ng-deep .vx-form-group marx-editor .editor-container .editable-block ol li{list-style:decimal}::ng-deep .vx-form-group marx-editor .editor-container .editor-tools{z-index:1;border-top:1px solid #dbdbdb;transition:none;border-radius:0 0 3px 3px;position:static}::ng-deep .vx-form-group marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep .vx-form-group marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep .vx-form-group marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep .vx-form-group marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep .vx-form-group marx-editor .editor-container:focus-within{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group marx-editor .editor-container:focus-within .editor-tools{border-color:#1e5dd3!important}::ng-deep .vx-form-group marx-editor .editor-container:hover{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group marx-editor .editor-container:hover .editor-tools{border-color:#1e5dd3!important}::ng-deep .vx-form-group marx-editor+app-cs-switch{margin-top:8px}::ng-deep .vx-form-group app-cs-switch label.cs-switch span.value{font-size:11px;color:#747576;text-transform:uppercase}::ng-deep .vx-form-group app-cs-switch+app-cs-switch{margin-top:8px}::ng-deep .vx-form-group .date-time-picker{display:flex;justify-content:space-between;height:40px;border-radius:4px;border:1px solid #dbdbdb;padding:11px 0;background:#ffffff}::ng-deep .vx-form-group .date-time-picker:focus-within{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .vx-form-group .date-time-picker .picker-group{width:50%;position:relative;display:flex;align-items:center}::ng-deep .vx-form-group .date-time-picker .picker-group:first-of-type{border-right:1px solid #dbdbdb}::ng-deep .vx-form-group .date-time-picker .picker-group:only-of-type{border:none;width:100%}::ng-deep .vx-form-group .date-time-picker .picker-group input{height:38px;background:transparent;line-height:38px;font-size:13px;color:#747576;transition:all .2s ease-in-out;width:100%;font-weight:400;border:none;padding:0 12px 0 34px;outline:none}::ng-deep .vx-form-group .date-time-picker .picker-group input:focus,::ng-deep .vx-form-group .date-time-picker .picker-group input:hover{box-shadow:none;border:none}::ng-deep .vx-form-group .date-time-picker .picker-group input::placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group input:-ms-input-placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group input::-ms-input-placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group i{display:flex;justify-content:center;align-items:center;height:16px;width:12px;position:absolute;left:12px;top:0;color:#747576;font-size:12px;pointer-events:none}::ng-deep .vx-form-group app-cs-radio.main-filed{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;color:#707070}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group app-cs-radio.disabled{pointer-events:none;opacity:.5;filter:grayscale(1);background:#f1f1f1}::ng-deep .vx-form-group .switch-row{display:flex}::ng-deep .vx-form-group .switch-row app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .switch-row app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:0;text-transform:uppercase;color:#747576!important}::ng-deep .vx-form-group .switch-row app-cs-switch label.cs-switch span.value i{display:inline-flex;font-size:11px;cursor:pointer;color:#1e5dd3;align-items:center;line-height:16px;margin:0 4px}::ng-deep .vx-form-group .switch-row app-cs-switch+app-cs-switch{margin-left:8px}::ng-deep .vx-form-group .switch-row.align-right{justify-content:flex-end}::ng-deep .vx-form-group .switch-row.align-right label.cs-switch span.value{margin-right:8px}::ng-deep .vx-form-group .risk-type-field{background:#f8f8f8;border:1px solid #dbdbdb;border-radius:4px;height:40px;display:flex;align-items:center;padding:4px;position:relative;z-index:1}::ng-deep .vx-form-group .risk-type-field .type-item{width:50%;position:relative}::ng-deep .vx-form-group .risk-type-field .type-item button{background:transparent;border:none;border-radius:0;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase;width:100%;height:32px;padding:0 12px;text-align:left}::ng-deep .vx-form-group .risk-type-field .type-item button.disabled{background:transparent!important;color:#dbdbdb!important;filter:unset!important;opacity:unset!important;pointer-events:none;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .risk-type-field .type-item .info{color:#1e5dd3;font-size:12px;position:absolute;top:10px;right:12px;cursor:pointer}::ng-deep .vx-form-group .risk-type-field .type-item.active button{color:#1e5dd3!important}::ng-deep .vx-form-group .risk-type-field .type-item:nth-child(2).active~.background-glider{transform:translate(100%)}::ng-deep .vx-form-group .risk-type-field .background-glider{background:#fff;border-radius:4px;box-shadow:0 1px 3px #161b2f26;position:absolute;display:flex;width:208px;height:32px;z-index:-1;transition:.25s ease-out}.left{width:36px;height:36px;margin-top:26px;margin-left:-58px;margin-right:20px;display:flex;justify-content:center;align-items:center;position:relative;z-index:10;border-radius:50%}.left.deadline-completed{margin-top:18px}.left.checked{background:transparent}.left img{width:36px}.left .checkIcon{width:32px;height:32px;background:#ffffff;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 #34aa44;animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;margin-top:0}.left .checkIcon__circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#34aa44;fill:none;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}.left .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards}.right{width:100%}.right span.indicator{position:absolute;top:36px;left:-16px;font-size:12px;color:#f0b819;cursor:pointer}.form-group-row{display:flex;position:relative;transition:all .2s ease-in-out}.form-group-row.disabled{-webkit-user-select:none;user-select:none;pointer-events:none;filter:grayscale(1);z-index:2}.form-group-row.disabled .left{position:relative}.form-group-row.disabled .left:before{content:\"\";position:absolute;top:2px;right:0;bottom:0;left:2px;background:#ffffff;opacity:.7;border-radius:50%;width:32px;height:32px}.form-group-row.disabled .right{opacity:.3}.form-group-row.active{pointer-events:none;filter:grayscale(0);z-index:2;opacity:1}.form-group-row.active .right .vx-form-group input,.form-group-row.active .right .vx-form-group .custom-input{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}.form-group-row.active .right .vx-form-group .selectBoxEnable{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}.form-group-row.active .right .vx-form-group .selectBoxEnable.disabled{border-color:#dbdbdb;box-shadow:none}::ng-deep .radio-group-selector app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .radio-group-selector app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .radio-group-selector app-cs-radio label.radio-item .radio,::ng-deep .radio-group-selector app-cs-radio label.radio-item .radiomark{position:absolute!important;top:9px;left:12px}::ng-deep .radio-group-selector app-cs-radio label.radio-item .value{font-size:11px!important;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0!important;max-width:100%!important;font-weight:500!important;color:#707070!important}::ng-deep .radio-group-selector app-cs-radio label.radio-item .value i{font-size:12px;color:#1e5dd3}::ng-deep .radio-group-selector app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}@keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}::ng-deep .wf-action-list{width:220px}::ng-deep .wf-action-list ul{padding:0;margin:0;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;background:#ffffff;box-shadow:0 3px 6px #1c5bd140;border-radius:4px;max-height:220px;overflow:auto}::ng-deep .wf-action-list ul.action-item{display:block}::ng-deep .wf-action-list ul.action-item li{list-style:none;border:none;border-bottom:1px solid #f1f1f1;display:block;width:100%;padding:0;background:transparent;border-radius:0;margin:0;height:auto;justify-content:flex-start;box-shadow:none}::ng-deep .wf-action-list ul.action-item li button{color:#6e717e;text-align:left;text-decoration:none;cursor:pointer;background:transparent;font-size:12px;text-transform:capitalize;display:flex;width:100%;padding:7.5px 11px;border:none}::ng-deep .wf-action-list ul.action-item li button i{font-size:16px;margin-right:10px;color:#1e5dd3}::ng-deep .wf-action-list ul.action-item li button:hover{background:#f3f3f3}::ng-deep .wf-action-list ul.action-item li .avatar-card{display:flex;align-items:center;width:100%;padding:7.5px}::ng-deep .wf-action-list ul.action-item li .avatar-card.within-con{display:block}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar{height:24px;width:24px!important;overflow:hidden;background:#1e5dd3;color:#fff;font-size:10px;display:inline-flex;margin-right:5px;border-radius:50%;align-items:center;justify-content:center;text-transform:uppercase}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar img{width:100%}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar+span.value{width:calc(100% - 29px)}::ng-deep .wf-action-list ul.action-item li .avatar-card span.value{width:100%;color:#6e717e;text-decoration:none;background:transparent;font-size:12px;text-transform:capitalize;display:block;font-weight:400;text-align-last:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:20px}::ng-deep .wf-action-list ul.action-item li .avatar-card span.value i{font-size:8px;color:#747576;cursor:pointer;margin-right:5px}::ng-deep .wf-action-list ul.action-item li .avatar-card.no-image{display:block}::ng-deep .wf-action-list ul.action-item li .avatar-card.no-image span.value{width:100%;display:block}::ng-deep .wf-action-list ul.action-item li .chip-item{color:#1e5dd3;padding:10px;display:flex;align-items:center}::ng-deep .wf-action-list ul.action-item li .chip-item i{color:#747576;margin-right:7px;font-size:10px;cursor:pointer;display:inline-flex}::ng-deep .wf-action-list ul.action-item li .chip-item span{display:block;width:auto;max-width:calc(100% - 17px);font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .wf-action-list ul.action-item li .chip-item span.chip-block{display:block;width:100%}::ng-deep .wf-action-list ul.action-item li .chip-item span.id{font-size:9px}::ng-deep .wf-action-list ul.action-item li .within{display:flex;align-items:center;justify-content:flex-start}::ng-deep .wf-action-list ul.action-item li .within .block{background:#f1f1f1;border-radius:2px;padding:0 2px;line-height:14px;font-size:9px;font-weight:500;color:#042e7d;margin-right:6px;display:block;text-transform:uppercase}::ng-deep .wf-action-list ul.action-item li .within .data{width:100%;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#747576;font-size:11px;font-weight:400;line-height:17px}::ng-deep .wf-action-list ul.action-item li:first-child{animation:action-list-open .25s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(2){animation:action-list-open .35s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(3){animation:action-list-open .45s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(4){animation:action-list-open .55s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(5){animation:action-list-open .65s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(6){animation:action-list-open .75s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(7){animation:action-list-open .85s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(8){animation:action-list-open .95s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(9){animation:action-list-open 1.05s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(10){animation:action-list-open 1.15s cubic-bezier(.25,.46,.45,.94) both}@keyframes action-list-open{0%{transform:translateY(50px)}to{transform:translateY(0)}}@keyframes scale-up-center{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}p.error-message{font-size:11px;font-weight:400;color:#eb2424;line-height:16px;margin-top:8px;margin-bottom:0}.edit-loader{position:absolute;top:-3px;left:-3px;width:46px;height:46px;transform:rotate(180deg)}.circular-loader{animation:rotate 2s linear infinite;height:100%;transform-origin:center center;width:100%;position:absolute;top:0;left:0;margin:auto}.loader-path{stroke-dasharray:150,200;stroke-dashoffset:-10;animation:dash 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35}to{stroke-dasharray:89,200;stroke-dashoffset:-124}}::ng-deep .dropdown{position:fixed;background:#ffffff;box-shadow:0 3px 6px #00000029;padding:24px 0;z-index:9;max-height:calc(100vh - 200px);overflow:auto}::ng-deep .dropdown ul.dropdown-list{padding:0 20px;margin:0;display:block}::ng-deep .dropdown ul.dropdown-list li{list-style:none}::ng-deep .dropdown ul.dropdown-list li app-cs-radio{display:flex}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item span.radio{position:absolute;top:12px;left:12px}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item span.value{padding:11px 12px 11px 32px;width:100%;border:1px solid #bcbcbc;border-radius:4px;margin-left:0;max-width:100%}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item svg{position:absolute;top:12px;left:12px}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item input[type=radio]:checked~span.value{background:#e8feeb;border-color:#34aa44}::ng-deep .dropdown ul.dropdown-list li+li{margin-top:8px}app-smiley-dialog{position:relative;z-index:10}app-smiley-dialog-inline{position:absolute;top:-3px;right:0;bottom:0;z-index:999;width:520px;height:calc(100vh + 3px)}::ng-deep .vx-overlay{position:fixed;z-index:3;top:0;right:0;bottom:0;left:0}dp-date-picker{width:100%;position:fixed!important;z-index:14;top:-40px;left:0}dp-date-picker input{width:100%;border:none;opacity:0;pointer-events:none}dp-date-picker input:focus{outline:none}dp-date-picker .dp-popup{width:412px;box-shadow:0 0 20px #161b2f26;background-color:#fff;border-radius:4px;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both}dp-date-picker .dp-popup dp-day-calendar,dp-date-picker .dp-popup dp-month-calendar{width:100%;pointer-events:auto}dp-date-picker .dp-popup dp-day-calendar button,dp-date-picker .dp-popup dp-month-calendar button{background:transparent;border:none;outline:none}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right{width:40px;height:40px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:14px}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{display:none}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:before,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:before{content:\"\";height:10px;width:10px;border-radius:50%;background:#000000;display:inline-flex}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week{display:flex;justify-content:space-around}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week .dp-calendar-weekday{width:52px;border-left:none;border-bottom-color:#fff;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button{width:40px;height:40px;border-radius:50%;display:inline-flex;justify-content:center;align-items:center}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-selected{background:#1e5dd3}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-current-day{border:1px solid rgba(0,0,0,.38);color:#1e5dd3;background-color:#fff}dp-date-picker .dp-popup dp-day-calendar .dp-day-calendar-container,dp-date-picker .dp-popup dp-month-calendar .dp-day-calendar-container{padding:20px;border-radius:2px}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container{display:flex;margin:0 0 20px;border:none}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container .dp-nav-header button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container .dp-nav-header button{color:#000;font-size:17px;font-weight:500;margin:0 0 0 12px;padding:0}dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container{width:80px;display:flex}dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button{margin:0!important}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-wrapper,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-wrapper{border:none}dp-date-picker .dp-open+div{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;display:flex;justify-content:center;align-items:center;z-index:99;pointer-events:none;background:rgba(0,0,0,.3)}@keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}::ng-deep span.file{display:block;width:20px;min-width:20px;border-radius:0 0 2px 2px;border:1px solid transparent;border-color:#747576;position:relative;margin-right:5px;border-top:none;margin-top:5px;background:#ffffff}::ng-deep span.file.table{margin-right:8px;width:18px;min-width:18px}::ng-deep span.file.table i{font-size:8px}::ng-deep span.file.table .format{height:8px;font-size:7px;line-height:8px;font-weight:400}::ng-deep span.file:before{position:absolute;border-radius:0;top:-4px;right:-1px;content:\"\";height:4px;width:4px;display:block;background:linear-gradient(45deg,#747576 0%,#747576 1%,#747576 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file:after{height:4px;left:-1px;right:3px;border-top:1px solid;border-right:none;border-left:1px solid;content:\"\";top:-4px;position:absolute;border-radius:2px 0 0;background:#ffffff}::ng-deep span.file .format{height:10px;font-size:6px;text-transform:uppercase;background:transparent;font-weight:600;text-align:center;display:block;line-height:10px}::ng-deep span.file i{font-size:10px;height:10px;display:flex;align-items:center;justify-content:center;color:#dbdbdb}::ng-deep span.file.docx{width:22px!important}::ng-deep span.file.pdf,::ng-deep span.file.template{border-color:#f31c39}::ng-deep span.file.pdf:before,::ng-deep span.file.template:before{background:linear-gradient(45deg,#f31c39 0%,#f31c39 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#f31c39\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.pdf:after,::ng-deep span.file.template:after{border-color:#f31c39}::ng-deep span.file.pdf .format,::ng-deep span.file.template .format{color:#f31c39}::ng-deep span.file.xlsx,::ng-deep span.file.xls,::ng-deep span.file.css,::ng-deep span.file.scss,::ng-deep span.file.less{border-color:#34aa44}::ng-deep span.file.xlsx:before,::ng-deep span.file.xls:before,::ng-deep span.file.css:before,::ng-deep span.file.scss:before,::ng-deep span.file.less:before{background:linear-gradient(45deg,#34aa44 0%,#34aa44 1%,#34aa44 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.xlsx:after,::ng-deep span.file.xls:after,::ng-deep span.file.css:after,::ng-deep span.file.scss:after,::ng-deep span.file.less:after{border-color:#34aa44;color:#34aa44}::ng-deep span.file.xlsx .format,::ng-deep span.file.xls .format,::ng-deep span.file.css .format,::ng-deep span.file.scss .format,::ng-deep span.file.less .format{color:#34aa44}::ng-deep span.file.doc,::ng-deep span.file.docx,::ng-deep span.file.psd{border-color:#1e5dd3}::ng-deep span.file.doc:before,::ng-deep span.file.docx:before,::ng-deep span.file.psd:before{background:linear-gradient(45deg,#1e5dd3 0%,#1e5dd3 1%,#1e5dd3 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.doc:after,::ng-deep span.file.docx:after,::ng-deep span.file.psd:after{border-color:#1e5dd3}::ng-deep span.file.doc .format,::ng-deep span.file.docx .format,::ng-deep span.file.psd .format{color:#1e5dd3}::ng-deep span.file.ppt,::ng-deep span.file.ai,::ng-deep span.file.html,::ng-deep span.file.jpg,::ng-deep span.file.jpeg,::ng-deep span.file.png{border-color:#f6882f}::ng-deep span.file.ppt:before,::ng-deep span.file.ai:before,::ng-deep span.file.html:before,::ng-deep span.file.jpg:before,::ng-deep span.file.jpeg:before,::ng-deep span.file.png:before{background:linear-gradient(45deg,#f6882f 0%,#f6882f 1%,#f6882f 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.ppt:after,::ng-deep span.file.ai:after,::ng-deep span.file.html:after,::ng-deep span.file.jpg:after,::ng-deep span.file.jpeg:after,::ng-deep span.file.png:after{border-color:#f6882f}::ng-deep span.file.ppt .format,::ng-deep span.file.ai .format,::ng-deep span.file.html .format,::ng-deep span.file.jpg .format,::ng-deep span.file.jpeg .format,::ng-deep span.file.png .format{color:#f6882f}::ng-deep span.file.php{border-color:#7aa6f7}::ng-deep span.file.php:before{background:linear-gradient(45deg,#7aa6f7 0%,#7aa6f7 1%,#7aa6f7 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.php:after{border-color:#7aa6f7}::ng-deep span.file.php .format{color:#7aa6f7}::ng-deep ngx-material-timepicker-container .timepicker-backdrop-overlay{background-color:#0000000d!important;z-index:9999999999!important}::ng-deep ngx-material-timepicker-container .timepicker-overlay{z-index:9999999999!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker{width:232px!important;border-radius:2px!important;box-shadow:0 4px 30px #161b2f26!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header{background-color:#fff!important;padding:0!important;border-radius:2px 2px 0 0}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container{display:block!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time{color:#000!important;width:150px!important;margin:0 auto;line-height:60px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control{font-size:40px;background-color:transparent!important;color:#000!important;font-weight:600;text-align:right;caret-color:transparent;outline:none;font-family:\"Poppins\";line-height:56px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control:focus,::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control:hover{background-color:transparent!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control:last-of-type .timepicker-dial__control{text-align:left}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time span{padding:0 8px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period{display:flex!important;width:182px;margin:0 auto!important;background:#f1f1f1;padding:4px 10px;border-radius:20px;position:relative}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period:before{background:#f1f1f1;content:\"\";position:absolute;top:15px;left:-25px;width:calc(100% + 50px);height:2px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period{flex-direction:unset!important;position:relative;z-index:1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period:after{content:\"\";position:absolute;right:-12px;top:0;border-left:solid 14px #f1f1f1;border-bottom:solid 12px transparent;border-top:solid 12px transparent;z-index:-1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period:before{content:\"\";position:absolute;left:-18px;top:0;border-right:solid 14px #f1f1f1;border-bottom:solid 12px transparent;border-top:solid 12px transparent;z-index:-1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button{font-size:11px;background-color:transparent;padding:0;border-radius:20px;color:#747576;font-weight:600;font-family:\"Poppins\";width:84px;height:24px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button.timepicker-dial__item_active{background:#fff!important;color:#1e5dd3!important;box-shadow:0 1px 2px #dbdbdb}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button+button{margin-left:0!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face{width:200px!important;height:200px!important;padding:10px!important;background:transparent!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer{height:calc(224px / 2 - 20px)!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer span{color:#000}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer span.active{color:#fff}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__clock-hand{height:80px!important;top:calc(50% - 80px)!important;background-color:#1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number>span.active{background-color:#1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__clock-hand_minute:before{border:4px solid #1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions{display:flex!important;padding:10px 0 0!important;background:#fff!important;justify-content:space-around!important;border-radius:0 0 2px 2px!important;overflow:hidden}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div:first-child ngx-material-timepicker-button button.timepicker-button{background:#f8f8f8;color:#1e5dd3}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div ngx-material-timepicker-button button.timepicker-button{line-height:28px!important;width:100%;background:#1e5dd3;color:#fff;border-radius:0!important;height:32px!important;width:116px!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div ngx-material-timepicker-button button.timepicker-button span{font-weight:500!important;font-size:11px;font-family:\"Poppins\"}::ng-deep marx-editor{display:block}::ng-deep marx-editor .editor-container{border-radius:4px;border:1px solid #dbdbdb;transition:all .2s ease-in-out}::ng-deep marx-editor .editor-container:hover,::ng-deep marx-editor .editor-container:focus-within{border:1px solid #1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep marx-editor .editor-container mention-list ul li a{font-size:16px!important}::ng-deep marx-editor .editor-container .editable-block{background:#fff;min-height:60px;padding:8px 12px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%}::ng-deep marx-editor .editor-container .editable-block:before{color:#747576!important}::ng-deep marx-editor .editor-container .editor-tools{border-top:1px solid #dbdbdb;border-radius:0 0 3px 3px}::ng-deep marx-editor .editor-container .editor-tools:hover{border-color:#1e5dd3}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep marx-modal .popup-modal-background{background-color:#161b2fcc!important}::ng-deep .within-box{background:#f1f1f1;border-radius:.125rem;color:#042e7d}::ng-deep .within-value{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;word-break:break-word}\n"]
8215
8957
  },] }
8216
8958
  ];
@@ -9738,7 +10480,7 @@ class ResponsibilityCentersListComponent {
9738
10480
  ResponsibilityCentersListComponent.decorators = [
9739
10481
  { type: Component, args: [{
9740
10482
  selector: 'app-responsibility-centers-list',
9741
- template: "<div class=\"add-risk-rc\" [class.animate]=\"animation\">\r\n <div class=\"add-risk-rc-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\r\n <h3 class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select Responsibility Center(s)</h3>\r\n </div>\r\n <div class=\"add-risk-rc-body\">\r\n <div class=\"search-block\">\r\n <i class=\"icons\">&#xe90b;</i>\r\n <input type=\"text\" [(ngModel)]=\"search\" placeholder=\"Search Responsibility Center\" />\r\n </div>\r\n <!-- <app-workflow-pagination></app-workflow-pagination> -->\r\n <ng-container *ngIf=\"(responsibilityCentersList | filter:search) as searchList\">\r\n <div class=\"body-top\" *ngIf=\"!radioSelection && (searchList?.length > 0 && search?.trim()?.length === 0)\">\r\n <app-cs-checkbox [ngValue]=\"checkSelectAll()\" (ngValueChange)=\"selectAll($event)\"><strong>{{checkSelectAll() ? 'Deselect All' : 'Select All'}}</strong>\r\n </app-cs-checkbox>\r\n </div>\r\n\r\n <ul class=\"add-risk-rc-list\" *ngIf=\"searchList?.length > 0\">\r\n <ng-container *ngIf=\"!radioSelection\">\r\n <li *ngFor=\"let rc of searchList\" #ulElement>\r\n <app-cs-checkbox [ngValue]=\"selectedIds.includes(rc.item_id)\" (ngValueChange)=\"selectRc(rc.item_id,$event)\">\r\n <ul class=\"add-risk-rc-name\" #listBlock>\r\n <!-- [style.max-width.px]=\"blockWidth / rc.rc_name\" -->\r\n <li\r\n *ngFor=\"let entity of rc.rc_name; let j = index\"\r\n [appTooltip]=\"entity\"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\">\r\n <i class=\"icons\" *ngIf=\"j !== 0\">&#xe910;</i>{{ entity }}\r\n </li>\r\n </ul>\r\n </app-cs-checkbox>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"radioSelection\">\r\n <li *ngFor=\"let rc of searchList\" #ulElement>\r\n <app-cs-radio (checkedEvent)=\"selectRc(rc.item_id,$event)\"\r\n [checked]=\"selectedIds.includes(rc.item_id)\">\r\n <ul class=\"add-risk-rc-name\">\r\n <li\r\n *ngFor=\"let entity of rc.rc_name; let j = index\"\r\n [appTooltip]=\"entity\"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\">\r\n <i class=\"icons\" *ngIf=\"j !== 0\">&#xe910;</i>{{ entity }}\r\n </li>\r\n </ul>\r\n </app-cs-radio>\r\n </li>\r\n </ng-container>\r\n\r\n </ul>\r\n <app-no-data *ngIf=\"searchList?.length === 0\" [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\" [noDataText]=\"'No data to display'\"></app-no-data>\r\n </ng-container>\r\n\r\n <app-floating-bar\r\n [selectedData]=\"selectedResponsibilityCenters\"\r\n [displayElementKey]=\"'item_name'\"\r\n [singularText]=\"singularText\"\r\n [pluralText]=\"pluralText\"\r\n (closeEvent)=\"save(selectedIds)\"\r\n (deleteEvent)=\"deleteEvent($event)\" (closeList)=\"close()\"\r\n [isDisabled]=\"selectedResponsibilityCenters?.length === 0 || responsibilityCentersList?.length === 0\"></app-floating-bar>\r\n </div>\r\n</div>\r\n\r\n<!-- <button (click)=\"save(selectedIds)\">Next</button> -->\r\n",
10483
+ template: "<div class=\"add-risk-rc\" [class.animate]=\"animation\">\r\n <div class=\"add-risk-rc-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\r\n <div class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select Responsibility Center(s)</div>\r\n </div>\r\n <div class=\"add-risk-rc-body\">\r\n <div class=\"search-block\">\r\n <i class=\"icons\">&#xe90b;</i>\r\n <input type=\"text\" [(ngModel)]=\"search\" placeholder=\"Search Responsibility Center\" />\r\n </div>\r\n <!-- <app-workflow-pagination></app-workflow-pagination> -->\r\n <ng-container *ngIf=\"(responsibilityCentersList | filter:search) as searchList\">\r\n <div class=\"body-top\" *ngIf=\"!radioSelection && (searchList?.length > 0 && search?.trim()?.length === 0)\">\r\n <app-cs-checkbox [ngValue]=\"checkSelectAll()\" (ngValueChange)=\"selectAll($event)\"><strong>{{checkSelectAll() ? 'Deselect All' : 'Select All'}}</strong>\r\n </app-cs-checkbox>\r\n </div>\r\n\r\n <ul class=\"add-risk-rc-list\" *ngIf=\"searchList?.length > 0\">\r\n <ng-container *ngIf=\"!radioSelection\">\r\n <li *ngFor=\"let rc of searchList\" #ulElement>\r\n <app-cs-checkbox [ngValue]=\"selectedIds.includes(rc.item_id)\" (ngValueChange)=\"selectRc(rc.item_id,$event)\">\r\n <ul class=\"add-risk-rc-name\" #listBlock>\r\n <!-- [style.max-width.px]=\"blockWidth / rc.rc_name\" -->\r\n <li\r\n *ngFor=\"let entity of rc.rc_name; let j = index\"\r\n [appTooltip]=\"entity\"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\">\r\n <i class=\"icons\" *ngIf=\"j !== 0\">&#xe910;</i>{{ entity }}\r\n </li>\r\n </ul>\r\n </app-cs-checkbox>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"radioSelection\">\r\n <li *ngFor=\"let rc of searchList\" #ulElement>\r\n <app-cs-radio (checkedEvent)=\"selectRc(rc.item_id,$event)\"\r\n [checked]=\"selectedIds.includes(rc.item_id)\">\r\n <ul class=\"add-risk-rc-name\">\r\n <li\r\n *ngFor=\"let entity of rc.rc_name; let j = index\"\r\n [appTooltip]=\"entity\"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\">\r\n <i class=\"icons\" *ngIf=\"j !== 0\">&#xe910;</i>{{ entity }}\r\n </li>\r\n </ul>\r\n </app-cs-radio>\r\n </li>\r\n </ng-container>\r\n\r\n </ul>\r\n <app-no-data *ngIf=\"searchList?.length === 0\" [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\" [noDataText]=\"'No data to display'\"></app-no-data>\r\n </ng-container>\r\n\r\n <app-floating-bar\r\n [selectedData]=\"selectedResponsibilityCenters\"\r\n [displayElementKey]=\"'item_name'\"\r\n [singularText]=\"singularText\"\r\n [pluralText]=\"pluralText\"\r\n (closeEvent)=\"save(selectedIds)\"\r\n (deleteEvent)=\"deleteEvent($event)\" (closeList)=\"close()\"\r\n [isDisabled]=\"selectedResponsibilityCenters?.length === 0 || responsibilityCentersList?.length === 0\"></app-floating-bar>\r\n </div>\r\n</div>\r\n\r\n<!-- <button (click)=\"save(selectedIds)\">Next</button> -->\r\n",
9742
10484
  styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::-webkit-scrollbar-track{background-color:#fff;position:absolute}::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .add-risk-rc{position:fixed;top:0;right:500px;bottom:0;left:0}::ng-deep .add-risk-rc:before{background:#1E5DD3;content:\"\";position:absolute;top:0;left:0;right:0;width:100%;height:3px}::ng-deep .add-risk-rc-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .add-risk-rc-body{background:#fff;height:calc(100vh - 2.75rem);padding:2rem}::ng-deep .add-risk-rc-body .search-block{position:relative}::ng-deep .add-risk-rc-body .search-block input{height:2.75rem;line-height:1.5rem;padding:.5rem 1rem .5rem 2.5rem;outline:none;border:1px solid #7475763f;border-radius:.25rem;width:100%;font-size:14px;color:#747576}::ng-deep .add-risk-rc-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .add-risk-rc-body .search-block i{position:absolute;left:1rem;font-size:12px;font-weight:400;top:1rem;pointer-events:none;color:#f1f1f1}::ng-deep .add-risk-rc-body .body-top{display:flex;justify-content:space-between;padding:.5rem 0 0}::ng-deep .add-risk-rc-body .body-top app-cs-checkbox{display:flex}::ng-deep .add-risk-rc-body .body-top app-cs-checkbox label span.value strong{color:#161b2f;font-size:12px;font-weight:600;white-space:nowrap}::ng-deep .add-risk-rc-body ul{padding:0;margin:0}::ng-deep .add-risk-rc-body ul.add-risk-rc-list{display:block;align-items:flex-start;flex-wrap:wrap;height:calc(100vh - 16rem);overflow:auto;margin:1rem 0}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li{width:100%;padding:0 0 1rem;list-style:none}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio{display:flex}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox label,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio label{width:100%}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox label span.value,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio label span.value{width:auto;justify-content:flex-start;line-height:18px!important}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox ul.add-risk-rc-name,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio ul.add-risk-rc-name{display:flex;justify-content:flex-start;width:auto;max-width:100%}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox ul.add-risk-rc-name li,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio ul.add-risk-rc-name li{list-style:none;color:#747576;font-size:12px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:auto;padding:0 .5rem 0 0;max-width:100%}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox ul.add-risk-rc-name li i,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio ul.add-risk-rc-name li i{font-size:8px;padding-right:8px}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox ul.add-risk-rc-name li:first-child,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio ul.add-risk-rc-name li:first-child{color:#1e5dd3;max-width:100%}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox ul.add-risk-rc-name li:last-of-type,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio ul.add-risk-rc-name li:last-of-type{color:#34aa44}::ng-deep .add-risk-rc-body app-no-data .no-data-wrapper{height:calc(100vh - 92px)}::ng-deep .add-risk-rc.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}::ng-deep .add-risk-rc .message-footer{background:#1e5dd3;border-radius:5px;margin:0 0 0 30px;width:calc(100% - 60px);position:relative;bottom:0}::ng-deep .add-risk-rc .message-footer .message{padding:15px;display:flex;align-items:flex-start}::ng-deep .add-risk-rc .message-footer .message i{width:auto;font-size:16px;color:#fff}::ng-deep .add-risk-rc .message-footer .message span{color:#fff;font-size:12px;line-height:18px;padding-left:9px;font-weight:300}::ng-deep .add-risk-rc .message-footer .footer{border-top:1px solid #1483ef;display:flex;justify-content:space-between;align-items:center;padding:10px 15px}::ng-deep .add-risk-rc .message-footer .footer span{color:#fff;font-size:14px}::ng-deep .add-risk-rc .message-footer .footer .button-wrapper{display:flex}::ng-deep .add-risk-rc .message-footer .footer .button-wrapper button{width:60px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:11px;font-weight:500;border:1px solid #fff;text-transform:uppercase;border-radius:2px;outline:none;padding:0;margin:0}::ng-deep .add-risk-rc .message-footer .footer .button-wrapper button.outline{background:#1e5dd3;color:#fff}::ng-deep .add-risk-rc .message-footer .footer .button-wrapper button.fill{background:#fff;color:#1e5dd3}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n"]
9743
10485
  },] }
9744
10486
  ];
@@ -14009,7 +14751,7 @@ class FrequencyDueDateComponent {
14009
14751
  FrequencyDueDateComponent.decorators = [
14010
14752
  { type: Component, args: [{
14011
14753
  selector: 'app-frequency-due-date',
14012
- template: "<div\r\n *ngIf=\"['responsibility', 'policy', 'reviewerFrequency'].includes(mode)\"\r\n class=\"frequency-bottom\"\r\n>\r\n <div *ngIf=\"completedRequired\" class=\"frequency-bottom-item vx-mt-5\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">\r\n {{ dueDateText.windowOpen }}\r\n </div>\r\n <div\r\n class=\"frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block\"\r\n >\r\n The {{ pageType }} can be {{ dueDateText?.keys }} on the due date and\r\n <input\r\n class=\"countNum\"\r\n [id]=\"'complete-' + id\"\r\n type=\"number\"\r\n [(ngModel)]=\"completedValue\"\r\n (change)=\"onValueChange($event, 'completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n {{ completedValue < 2 ? \"day\" : \"days\" }}\r\n <span class=\"vx-fw-500\">before</span> the due date. Where this occurs,\r\n this will show as the {{ mode !== \"reviewerFrequency\" ? type : \"\" }} being\r\n <span class=\"completed-text vx-fw-500\"\r\n >{{ dueDateText?.keys }} on time</span\r\n >.\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"notCompletedRequired\" class=\"frequency-bottom-item vx-mt-5\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">\r\n {{ dueDateText.extension }}\r\n </div>\r\n <div\r\n class=\"frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block\"\r\n >\r\n The {{ pageType }} can be {{ dueDateText?.keys }}\r\n <input\r\n class=\"countNum\"\r\n type=\"number\"\r\n [id]=\"'not-completed-' + id\"\r\n [(ngModel)]=\"notCompletedValue\"\r\n (change)=\"onValueChange($event, 'not completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n {{ notCompletedValue < 2 ? \"day\" : \"days\" }}\r\n <span class=\"vx-fw-500\">after</span> the due date. Where this occurs, this\r\n will show as the {{ mode !== \"reviewerFrequency\" ? type : \"\" }} being\r\n <span class=\"delay-text vx-fw-500\"\r\n >{{ dueDateText?.keys }} with delay</span\r\n >.\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"notCompletedRequired\" class=\"frequency-bottom-item vx-mt-5\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">\r\n {{ dueDateText.windowCloses }}\r\n </div>\r\n <div\r\n class=\"frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block\"\r\n >\r\n The {{ pageType }} cannot be {{ dueDateText?.keys }}\r\n <span class=\"vx-fw-500 vx-label-txt\">{{ notCompletedValue }}</span>\r\n {{ notCompletedValue < 2 ? \"day\" : \"days\" }}\r\n <span class=\"vx-fw-500\">after</span> the due date. Where this occurs, this\r\n will show as the {{ type }} being\r\n <span class=\"notcompleted-text vx-fw-500\"\r\n >not\r\n {{\r\n dueDateText?.keys === \"reviewed\" ? \"completed\" : dueDateText?.keys\r\n }}</span\r\n >.\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"isDeactivated && mode === 'responsibility'\"\r\n class=\"frequency-bottom-item vx-mt-5\"\r\n >\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">\r\n AUTOMATIC DEACTIVATE:\r\n </div>\r\n <div\r\n class=\"frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block\"\r\n >\r\n This {{ type }} will be automatically deactivated, if it is not\r\n {{ dueDateText?.keys }}\r\n for\r\n <input\r\n class=\"countNum\"\r\n type=\"number\"\r\n [id]=\"'deactivate' + id\"\r\n [(ngModel)]=\"deactivateValue\"\r\n (change)=\"onValueChange($event, 'deactivated')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n consecutive due dates.\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<!-- For Policy -->\r\n<div class=\"frequency-due-date\" *ngIf=\"mode == 'policy' && false\">\r\n <div *ngIf=\"completedRequired\" class=\"frequency-due-date-row\">\r\n <p>The policy can be <i class=\"completed\">attested</i></p>\r\n <input\r\n [id]=\"'complete-' + id\"\r\n type=\"number\"\r\n [(ngModel)]=\"completedValue\"\r\n (change)=\"onValueChange($event, 'completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n <p>{{ completedValue < 2 ? \"day\" : \"days\" }} before the due date.</p>\r\n </div>\r\n <div *ngIf=\"notCompletedRequired\" class=\"frequency-due-date-row\">\r\n <p>The policy attestation will <i>fail</i></p>\r\n <input\r\n type=\"number\"\r\n [id]=\"'not-completed-' + id\"\r\n [(ngModel)]=\"notCompletedValue\"\r\n (change)=\"onValueChange($event, 'not completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n <p>\r\n {{ notCompletedValue < 2 ? \"day\" : \"days\" }} after the due date if it is\r\n not completed.\r\n </p>\r\n </div>\r\n</div>\r\n<div class=\"frequency-due-date\" *ngIf=\"mode == 'reviewerFrequency' && false\">\r\n <div *ngIf=\"completedRequired\" class=\"frequency-due-date-row\">\r\n <p>The policy can be <i class=\"completed\">reviewed</i></p>\r\n <input\r\n [id]=\"'complete-' + id\"\r\n type=\"number\"\r\n [(ngModel)]=\"completedValue\"\r\n (change)=\"onValueChange($event, 'completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n <p>{{ completedValue < 2 ? \"day\" : \"days\" }} before the review date.</p>\r\n </div>\r\n <div *ngIf=\"notCompletedRequired\" class=\"frequency-due-date-row\">\r\n <p>The policy review will <i>fail</i></p>\r\n <input\r\n type=\"number\"\r\n [id]=\"'not-completed-' + id\"\r\n [(ngModel)]=\"notCompletedValue\"\r\n (change)=\"onValueChange($event, 'not completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n <p>\r\n {{ notCompletedValue < 2 ? \"day\" : \"days\" }} after the review date if it\r\n is not completed.\r\n </p>\r\n </div>\r\n</div>\r\n",
14754
+ template: "<div\r\n *ngIf=\"['responsibility', 'policy', 'reviewerFrequency'].includes(mode)\"\r\n class=\"frequency-bottom\"\r\n>\r\n <div *ngIf=\"completedRequired\" class=\"frequency-bottom-item vx-mt-5\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">\r\n {{ dueDateText.windowOpen }}\r\n </div>\r\n <div\r\n class=\"frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block\"\r\n >\r\n The {{ pageType }} can be {{ dueDateText?.keys }} on the due date and\r\n <input\r\n class=\"countNum\"\r\n [id]=\"'complete-' + id\"\r\n type=\"number\"\r\n [(ngModel)]=\"completedValue\"\r\n (change)=\"onValueChange($event, 'completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n {{ completedValue < 2 ? \"day\" : \"days\" }}\r\n <span class=\"vx-fw-500\">before</span> the due date. Where this occurs,\r\n this will show as the {{ mode === \"reviewerFrequency\" ? \"policy\" : type }} being\r\n <span class=\"completed-text vx-fw-500\"\r\n >{{ dueDateText?.keys }} on time</span\r\n >.\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"notCompletedRequired\" class=\"frequency-bottom-item vx-mt-5\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">\r\n {{ dueDateText.extension }}\r\n </div>\r\n <div\r\n class=\"frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block\"\r\n >\r\n The {{ pageType }} can be {{ dueDateText?.keys }}\r\n <input\r\n class=\"countNum\"\r\n type=\"number\"\r\n [id]=\"'not-completed-' + id\"\r\n [(ngModel)]=\"notCompletedValue\"\r\n (change)=\"onValueChange($event, 'not completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n {{ notCompletedValue < 2 ? \"day\" : \"days\" }}\r\n <span class=\"vx-fw-500\">after</span> the due date. Where this occurs, this\r\n will show as the {{ mode === \"reviewerFrequency\" ? \"policy\" : type }} being\r\n <span class=\"delay-text vx-fw-500\"\r\n >{{ dueDateText?.keys }} with delay</span\r\n >.\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"notCompletedRequired\" class=\"frequency-bottom-item vx-mt-5\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">\r\n {{ dueDateText.windowCloses }}\r\n </div>\r\n <div\r\n class=\"frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block\"\r\n >\r\n The {{ pageType }} cannot be {{ dueDateText?.keys }}\r\n <span class=\"vx-fw-500 vx-label-txt\">{{ notCompletedValue }}</span>\r\n {{ notCompletedValue < 2 ? \"day\" : \"days\" }}\r\n <span class=\"vx-fw-500\">after</span> the due date. Where this occurs, this\r\n will show as the {{ type }} being\r\n <span class=\"notcompleted-text vx-fw-500\"\r\n >not\r\n {{\r\n dueDateText?.keys === \"reviewed\" ? \"completed\" : dueDateText?.keys\r\n }}</span\r\n >.\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"isDeactivated && mode === 'responsibility'\"\r\n class=\"frequency-bottom-item vx-mt-5\"\r\n >\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">\r\n AUTOMATIC DEACTIVATE:\r\n </div>\r\n <div\r\n class=\"frequency-bottom-item-box vx-fs-13 vx-paragraph-txt vx-p-3 vx-pt-4 vx-pb-4 vx-d-block\"\r\n >\r\n This {{ type }} will be automatically deactivated, if it is not\r\n {{ dueDateText?.keys }}\r\n for\r\n <input\r\n class=\"countNum\"\r\n type=\"number\"\r\n [id]=\"'deactivate' + id\"\r\n [(ngModel)]=\"deactivateValue\"\r\n (change)=\"onValueChange($event, 'deactivated')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n consecutive due dates.\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<!-- For Policy -->\r\n<div class=\"frequency-due-date\" *ngIf=\"mode == 'policy' && false\">\r\n <div *ngIf=\"completedRequired\" class=\"frequency-due-date-row\">\r\n <p>The policy can be <i class=\"completed\">attested</i></p>\r\n <input\r\n [id]=\"'complete-' + id\"\r\n type=\"number\"\r\n [(ngModel)]=\"completedValue\"\r\n (change)=\"onValueChange($event, 'completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n <p>{{ completedValue < 2 ? \"day\" : \"days\" }} before the due date.</p>\r\n </div>\r\n <div *ngIf=\"notCompletedRequired\" class=\"frequency-due-date-row\">\r\n <p>The policy attestation will <i>fail</i></p>\r\n <input\r\n type=\"number\"\r\n [id]=\"'not-completed-' + id\"\r\n [(ngModel)]=\"notCompletedValue\"\r\n (change)=\"onValueChange($event, 'not completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n <p>\r\n {{ notCompletedValue < 2 ? \"day\" : \"days\" }} after the due date if it is\r\n not completed.\r\n </p>\r\n </div>\r\n</div>\r\n<div class=\"frequency-due-date\" *ngIf=\"mode == 'reviewerFrequency' && false\">\r\n <div *ngIf=\"completedRequired\" class=\"frequency-due-date-row\">\r\n <p>The policy can be <i class=\"completed\">reviewed</i></p>\r\n <input\r\n [id]=\"'complete-' + id\"\r\n type=\"number\"\r\n [(ngModel)]=\"completedValue\"\r\n (change)=\"onValueChange($event, 'completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n <p>{{ completedValue < 2 ? \"day\" : \"days\" }} before the review date.</p>\r\n </div>\r\n <div *ngIf=\"notCompletedRequired\" class=\"frequency-due-date-row\">\r\n <p>The policy review will <i>fail</i></p>\r\n <input\r\n type=\"number\"\r\n [id]=\"'not-completed-' + id\"\r\n [(ngModel)]=\"notCompletedValue\"\r\n (change)=\"onValueChange($event, 'not completed')\"\r\n onkeydown=\"return event.keyCode !== 190\"\r\n min=\"0\"\r\n oninput=\"this.value = Math.abs(this.value)\"\r\n />\r\n <p>\r\n {{ notCompletedValue < 2 ? \"day\" : \"days\" }} after the review date if it\r\n is not completed.\r\n </p>\r\n </div>\r\n</div>\r\n",
14013
14755
  styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/header/header.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/button/button.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/popover/popover.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";::ng-deep .frequency-bottom-item-box{border-radius:.25rem;border:1px solid #f1f1f1}::ng-deep .frequency-bottom-item-box input.countNum{-moz-appearance:textfield;border:none;border-bottom:1px solid #DBDBDB;color:#161b2f;display:inline-block;font-size:13px;text-align:center;width:2.75rem;padding:.125rem;margin:0 .5rem;outline:none}::ng-deep .frequency-bottom-item-box input.countNum::-webkit-inner-spin-button,::ng-deep .frequency-bottom-item-box input.countNum::-webkit-outer-spin-button{-webkit-appearance:none}::ng-deep .frequency-bottom-item-box .completed-text{color:#34aa44}::ng-deep .frequency-bottom-item-box .delay-text{color:#f0b819}::ng-deep .frequency-bottom-item-box .notcompleted-text{color:#d93b41}.frequency-due-date{display:block}.frequency-due-date-row{display:flex;border-top:1px solid #f1f1f1;padding:12px 20px;align-items:center}.frequency-due-date p{font-size:13px;color:#747576;width:auto;margin:0;font-weight:400;line-height:20px}.frequency-due-date p i{color:#d93b41;font-style:italic;font-weight:500;padding:0 4px}.frequency-due-date p i.completed{color:#1e5dd3}.frequency-due-date p strong{font-weight:600;font-style:italic}.frequency-due-date input{-moz-appearance:textfield;font-size:14px;color:#161b2f;border:0;border-bottom:2px solid #dcdcdc;display:inline-block;width:36px;text-align:center;padding:4px;margin:0 8px;outline:none}.frequency-due-date input::-webkit-outer-spin-button,.frequency-due-date input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}\n"]
14014
14756
  },] }
14015
14757
  ];
@@ -20373,6 +21115,7 @@ class AssessmentListComponent {
20373
21115
  this.animation = false;
20374
21116
  this.subList = false;
20375
21117
  this.isEdit = false;
21118
+ this.mode = '';
20376
21119
  this.openedCategory = [];
20377
21120
  this.assessmentPayload = {
20378
21121
  search_title: "",
@@ -20532,7 +21275,7 @@ class AssessmentListComponent {
20532
21275
  AssessmentListComponent.decorators = [
20533
21276
  { type: Component, args: [{
20534
21277
  selector: 'app-assessment-list',
20535
- template: "\r\n<app-preview *ngIf=\"isPreview\" [questionData]=\"previewQuestionData\" (previewBack)=\"previewBack()\"></app-preview>\r\n<div class=\"assessment-list\" [class.animate]=\"animation\">\r\n <div class=\"assessment-list-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\r\n <div class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select an Assessment</div>\r\n </div>\r\n <div class=\"assessment-list-body\">\r\n <div class=\"search-block\">\r\n <i class=\"icons\">&#xe90b;</i>\r\n <input type=\"text\" [(ngModel)]=\"searchAssessments\" (change)=\"onAssessmentSearch($event.target.value)\" placeholder=\"Search Assessment Category\" />\r\n </div>\r\n <app-workflow-pagination \r\n [pageCount]=\"assessmentCategory?.totalPage\" \r\n [total]=\"assessmentCategory?.totalRecords\" \r\n [start]=\"assessmentCategory?.start_value\" \r\n [end]=\"assessmentCategory?.end_value\" \r\n [activeAlphabet]=\"''\" \r\n (selectedAlphabet)=\"onAlphabetSelected($event)\" \r\n (selectedPage)=\"onPageSelection($event)\"\r\n ></app-workflow-pagination>\r\n <div *ngIf=\"assessmentCategory.data.length === 0 && !isLoader && searchAssessments\" class=\"assessment-list-part vx-mb-4\">\r\n <app-no-data [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\" [noDataText]=\"'No Assessments Found.'\"></app-no-data>\r\n </div>\r\n <div *ngIf=\"assessmentCategory.data.length || isLoader\" class=\"assessment-list-part vx-mb-4\">\r\n <div *ngIf=\"isEdit && selectedAssessment?.assessmentDetails?.assessment_name\" class=\"assessment-list-selected\">\r\n <div class=\"assessment-list-heading\">Assessment already selected for this responsibility</div>\r\n <div class=\"assessment-list-item\">\r\n <div class=\"table-row\">\r\n <div class=\"table-column serial disabled\">\r\n <app-cs-radio [disabled]=\"true\" class=\"disabled\" [checked]=\"true\" [readonly]=\"true\"></app-cs-radio>\r\n </div>\r\n <div class=\"table-column sub-name\">\r\n <div class=\"name-inner\">\r\n <div class=\"value\" [appTooltip]=\"selectedAssessment?.assessmentDetails?.assessment_name\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{selectedAssessment?.assessmentDetails?.assessment_name}}</div>\r\n <div class=\"within-part\">\r\n <span class=\"within-box\">Within</span>\r\n <span class=\"value\" [appTooltip]=\"selectedAssessment?.category_details?.category_name + (selectedAssessment?.category_details?.parent_tree ? ' > ' + selectedAssessment?.category_details?.parent_tree : '')\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{selectedAssessment?.category_details?.category_name + (selectedAssessment?.category_details?.parent_tree ? ' > ' + selectedAssessment?.category_details?.parent_tree : '')}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"table-column question\">\r\n <div class=\"buttons\">\r\n <button class=\"action-btn\" (click)=\"preview(selectedAssessment?.assessmentDetails)\"><i class=\"icons\">&#xeae5;</i> Preview</button>\r\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe90c;</i> Edit</button> -->\r\n </div>\r\n <div class=\"label\">{{selectedAssessment?.assessmentDetails?.questions}} {{selectedAssessment?.assessmentDetails?.questions > 1 ? 'Questions': 'Question'}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"assessment-list-heading\">Select an Assessment for this responsibility</div>\r\n\r\n <!--\r\n Assessment category list \r\n active class is used for highlighting opened element\r\n -->\r\n <ng-container *ngIf=\"!isLoader\">\r\n <div *ngFor=\"let data of assessmentCategory.data; let i = index;\" class=\"assessment-list-item\" [class.active]=\"openedCategory.includes(i) || data.id === selectedAssessment?.category_id\">\r\n <div class=\"table-row main-list\" (click)=\"showSubList(i, data?.id)\" [class.disabled]=\"data?.assessmentcount < 1\">\r\n <div class=\"table-column serial\">\r\n <div [id]=\"'sr-no' + i\" class=\"sr-no\" [appTooltip]=\"i + 1\" placement=\"bottom\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"true\">{{dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)}}</div>\r\n </div>\r\n <div class=\"table-column name\">\r\n <div class=\"name-inner\">\r\n <div class=\"value\" [appTooltip]=\"data.category_name\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{data?.category_name}}</div>\r\n <div class=\"within-part\" *ngIf=\"data?.parent_tree\">\r\n <span class=\"within-box\">Within</span>\r\n <span class=\"value\" [appTooltip]=\"data.parent_tree\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{data?.parent_tree}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"table-column action\">\r\n <button [id]=\"'arrow' + i\" class=\"arrow\" [class.disabled] = \"data?.assessmentcount < 1\" [disabled]=\"data?.assessmentcount < 1\">\r\n <i *ngIf=\"!openedCategory.includes(i)\" class=\"icons\">&#xe970;</i>\r\n <i *ngIf=\"openedCategory.includes(i)\" class=\"icons\">&#xe9e8;</i>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <!-- Assessment list start from here -->\r\n <div *ngIf=\"openedCategory.includes(i)\" class=\"sub-list\">\r\n <ng-container *ngIf=\"data.assessmentData?.length > 0\">\r\n <div class=\"table-row\" *ngFor=\"let assessment of data.assessmentData; let j = index\" [class.active]=\"assessment.id === selectedAssessment?.assessment_id && data.id === selectedAssessment?.category_id\">\r\n <div class=\"table-column serial\">\r\n <div [id]=\"'sub-sr-no'+ i+j\" class=\"sr-no\" appTooltip=\"{{dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)}}.{{j + 1}}\" placement=\"bottom\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"true\">\r\n {{dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)}}.{{j + 1}}\r\n <app-cs-radio name=\"assessment\" [value]=\"assessment.id\" [checked]=\"assessment?.id === selectedAssessment?.assessment_id && data?.id === selectedAssessment?.category_id\"\r\n (checkedEvent)=\"setAssessment(data, assessment)\"></app-cs-radio>\r\n </div>\r\n </div>\r\n <div class=\"table-column sub-name\">\r\n <div class=\"value\" [appTooltip]=\"'Mission and message, communications to external audiences'\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{assessment?.assessment_name}}</div>\r\n </div>\r\n <div class=\"table-column question\">\r\n <div class=\"buttons\">\r\n <button class=\"action-btn\" (click)=\"preview(assessment)\"><i class=\"icons\">&#xeae5;</i> Preview</button>\r\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe9ba;</i> Edit</button> -->\r\n </div>\r\n <div class=\"label\">{{assessment?.questions}} {{assessment?.questions > 1 ? 'Questions' : 'Question'}}</div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- Loader loading isLoader -->\r\n <app-assessment-list-sub-loader *ngIf=\"!data.assessmentData?.length\"></app-assessment-list-sub-loader>\r\n <!-- <app-line-loader *ngIf=\"!data.assessmentData?.length\" [loaderHeight]=\"'5'\"></app-line-loader> -->\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- Loader loading isLoader -->\r\n <app-assessment-list-loader *ngIf=\"isLoader\"></app-assessment-list-loader>\r\n </div>\r\n <!-- No data image -->\r\n <app-no-data *ngIf=\"!assessmentCategory.data.length && !isLoader && !searchAssessments\" [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\" [noDataText]=\"'No Data to Display'\"></app-no-data>\r\n \r\n <app-floating-bar \r\n [selectedData]=\"[]\" \r\n (closeEvent)=\"save()\"\r\n (closeList)=\"close()\" \r\n [isDisabled]=\"!selectedAssessment?.assessment_id && !isDeleted\"\r\n [selectedData]=\"selectedAssessment?.assessment_id ? [selectedAssessment?.assessmentDetails]:[]\"\r\n [displayElementKey]=\"'assessment_name'\" \r\n [pluralText]=\"'Risk Categories selected'\" (closeEvent)=\"save()\" (deleteEvent)=\"deleteEvent($event)\"\r\n >\r\n </app-floating-bar>\r\n </div>\r\n</div>\r\n",
21278
+ template: "\r\n<app-preview *ngIf=\"isPreview\" [questionData]=\"previewQuestionData\" (previewBack)=\"previewBack()\"></app-preview>\r\n<div class=\"assessment-list\" [class.animate]=\"animation\">\r\n <div class=\"assessment-list-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\r\n <div class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select an Assessment</div>\r\n </div>\r\n <div class=\"assessment-list-body\">\r\n <div class=\"search-block\">\r\n <i class=\"icons\">&#xe90b;</i>\r\n <input type=\"text\" [(ngModel)]=\"searchAssessments\" (change)=\"onAssessmentSearch($event.target.value)\" placeholder=\"Search Assessment Category\" />\r\n </div>\r\n <app-workflow-pagination \r\n [pageCount]=\"assessmentCategory?.totalPage\" \r\n [total]=\"assessmentCategory?.totalRecords\" \r\n [start]=\"assessmentCategory?.start_value\" \r\n [end]=\"assessmentCategory?.end_value\" \r\n [activeAlphabet]=\"''\" \r\n (selectedAlphabet)=\"onAlphabetSelected($event)\" \r\n (selectedPage)=\"onPageSelection($event)\"\r\n ></app-workflow-pagination>\r\n <div *ngIf=\"assessmentCategory.data.length === 0 && !isLoader && searchAssessments\" class=\"assessment-list-part vx-mb-4\">\r\n <app-no-data [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\" [noDataText]=\"'No Assessments Found.'\"></app-no-data>\r\n </div>\r\n <div *ngIf=\"assessmentCategory.data.length || isLoader\" class=\"assessment-list-part vx-mb-4\">\r\n <div *ngIf=\"isEdit && selectedAssessment?.assessmentDetails?.assessment_name\" class=\"assessment-list-selected\">\r\n <div class=\"assessment-list-heading\">{{ mode === 'policy' ? 'Assessment already selected' :'Assessment already selected for this responsibility'}}</div>\r\n <div class=\"assessment-list-item\">\r\n <div class=\"table-row\">\r\n <div class=\"table-column serial disabled\">\r\n <app-cs-radio [disabled]=\"true\" class=\"disabled\" [checked]=\"true\" [readonly]=\"true\"></app-cs-radio>\r\n </div>\r\n <div class=\"table-column sub-name\">\r\n <div class=\"name-inner\">\r\n <div class=\"value\" [appTooltip]=\"selectedAssessment?.assessmentDetails?.assessment_name\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{selectedAssessment?.assessmentDetails?.assessment_name}}</div>\r\n <div class=\"within-part\">\r\n <span class=\"within-box\">Within</span>\r\n <span class=\"value\" [appTooltip]=\"selectedAssessment?.category_details?.category_name + (selectedAssessment?.category_details?.parent_tree ? ' > ' + selectedAssessment?.category_details?.parent_tree : '')\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{selectedAssessment?.category_details?.category_name + (selectedAssessment?.category_details?.parent_tree ? ' > ' + selectedAssessment?.category_details?.parent_tree : '')}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"table-column question\">\r\n <div class=\"buttons\">\r\n <button class=\"action-btn\" (click)=\"preview(selectedAssessment?.assessmentDetails)\"><i class=\"icons\">&#xeae5;</i> Preview</button>\r\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe90c;</i> Edit</button> -->\r\n </div>\r\n <div class=\"label\">{{selectedAssessment?.assessmentDetails?.questions}} {{selectedAssessment?.assessmentDetails?.questions > 1 ? 'Questions': 'Question'}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"assessment-list-heading\">{{ mode === 'policy' ? 'Select an Assessment' : 'Select an Assessment for this responsibility'}}</div>\r\n\r\n <!--\r\n Assessment category list \r\n active class is used for highlighting opened element\r\n -->\r\n <ng-container *ngIf=\"!isLoader\">\r\n <div *ngFor=\"let data of assessmentCategory.data; let i = index;\" class=\"assessment-list-item\" [class.active]=\"openedCategory.includes(i) || data.id === selectedAssessment?.category_id\">\r\n <div class=\"table-row main-list\" (click)=\"showSubList(i, data?.id)\" [class.disabled]=\"data?.assessmentcount < 1\">\r\n <div class=\"table-column serial\">\r\n <div [id]=\"'sr-no' + i\" class=\"sr-no\" [appTooltip]=\"i + 1\" placement=\"bottom\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"true\">{{dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)}}</div>\r\n </div>\r\n <div class=\"table-column name\">\r\n <div class=\"name-inner\">\r\n <div class=\"value\" [appTooltip]=\"data.category_name\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{data?.category_name}}</div>\r\n <div class=\"within-part\" *ngIf=\"data?.parent_tree\">\r\n <span class=\"within-box\">Within</span>\r\n <span class=\"value\" [appTooltip]=\"data.parent_tree\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{data?.parent_tree}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"table-column action\">\r\n <button [id]=\"'arrow' + i\" class=\"arrow\" [class.disabled] = \"data?.assessmentcount < 1\" [disabled]=\"data?.assessmentcount < 1\">\r\n <i *ngIf=\"!openedCategory.includes(i)\" class=\"icons\">&#xe970;</i>\r\n <i *ngIf=\"openedCategory.includes(i)\" class=\"icons\">&#xe9e8;</i>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <!-- Assessment list start from here -->\r\n <div *ngIf=\"openedCategory.includes(i)\" class=\"sub-list\">\r\n <ng-container *ngIf=\"data.assessmentData?.length > 0\">\r\n <div class=\"table-row\" *ngFor=\"let assessment of data.assessmentData; let j = index\" [class.active]=\"assessment.id === selectedAssessment?.assessment_id && data.id === selectedAssessment?.category_id\">\r\n <div class=\"table-column serial\">\r\n <div [id]=\"'sub-sr-no'+ i+j\" class=\"sr-no\" appTooltip=\"{{dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)}}.{{j + 1}}\" placement=\"bottom\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"true\">\r\n {{dataPerPage * (assessmentPayload.page_no - 1) + (i + 1)}}.{{j + 1}}\r\n <app-cs-radio name=\"assessment\" [value]=\"assessment.id\" [checked]=\"assessment?.id === selectedAssessment?.assessment_id && data?.id === selectedAssessment?.category_id\"\r\n (checkedEvent)=\"setAssessment(data, assessment)\"></app-cs-radio>\r\n </div>\r\n </div>\r\n <div class=\"table-column sub-name\">\r\n <div class=\"value\" [appTooltip]=\"'Mission and message, communications to external audiences'\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{assessment?.assessment_name}}</div>\r\n </div>\r\n <div class=\"table-column question\">\r\n <div class=\"buttons\">\r\n <button class=\"action-btn\" (click)=\"preview(assessment)\"><i class=\"icons\">&#xeae5;</i> Preview</button>\r\n <!-- <button class=\"action-btn\"><i class=\"icons\">&#xe9ba;</i> Edit</button> -->\r\n </div>\r\n <div class=\"label\">{{assessment?.questions}} {{assessment?.questions > 1 ? 'Questions' : 'Question'}}</div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- Loader loading isLoader -->\r\n <app-assessment-list-sub-loader *ngIf=\"!data.assessmentData?.length\"></app-assessment-list-sub-loader>\r\n <!-- <app-line-loader *ngIf=\"!data.assessmentData?.length\" [loaderHeight]=\"'5'\"></app-line-loader> -->\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- Loader loading isLoader -->\r\n <app-assessment-list-loader *ngIf=\"isLoader\"></app-assessment-list-loader>\r\n </div>\r\n <!-- No data image -->\r\n <app-no-data *ngIf=\"!assessmentCategory.data.length && !isLoader && !searchAssessments\" [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\" [noDataText]=\"'No Data to Display'\"></app-no-data>\r\n \r\n <app-floating-bar \r\n [selectedData]=\"[]\" \r\n (closeEvent)=\"save()\"\r\n (closeList)=\"close()\" \r\n [isDisabled]=\"!selectedAssessment?.assessment_id && !isDeleted\"\r\n [selectedData]=\"selectedAssessment?.assessment_id ? [selectedAssessment?.assessmentDetails]:[]\"\r\n [displayElementKey]=\"'assessment_name'\" \r\n [pluralText]=\"'Risk Categories selected'\" (closeEvent)=\"save()\" (deleteEvent)=\"deleteEvent($event)\"\r\n >\r\n </app-floating-bar>\r\n </div>\r\n</div>\r\n",
20536
21279
  styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::ng-deep .assessment-list{position:fixed;top:0;right:500px;bottom:0;left:0}::ng-deep .assessment-list:before{background:#1E5DD3;content:\"\";position:absolute;top:0;left:0;right:0;width:100%;height:3px}::ng-deep .assessment-list.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}::ng-deep .assessment-list-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .assessment-list-body{background:#fff;height:calc(100vh - 2.75rem);padding:2rem}::ng-deep .assessment-list-body .search-block{position:relative}::ng-deep .assessment-list-body .search-block input{height:2.75rem;line-height:1.5rem;padding:.5rem 1rem .5rem 2.5rem;outline:none;border:1px solid #7475763f;border-radius:.25rem;width:100%;font-size:14px;color:#747576}::ng-deep .assessment-list-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .assessment-list-body .search-block i{position:absolute;left:1rem;top:1rem;pointer-events:none;color:#f1f1f1;font-size:12px}::ng-deep .assessment-list-body app-workflow-pagination .pagination-sec{padding-bottom:0!important}::ng-deep .assessment-list-body .assessment-list-part{height:calc(100vh - 242px);overflow:auto;padding:8px 12px 0 0;width:calc(100% + 12px)}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar-track{background-color:#fff;position:absolute}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::ng-deep .assessment-list-body .assessment-list-part::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-selected{margin-bottom:8px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-heading{color:#161b2f;font-size:12px;font-weight:600;margin-bottom:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item{border:1px solid #f1f1f1;border-radius:2px;margin-bottom:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .main-list{cursor:pointer}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item.active{border-color:#1e5dd3;box-shadow:0 3px 6px #4681ef26}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row{display:flex;align-items:center;justify-content:space-between}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row.disabled{pointer-events:none}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column{color:#747576;height:48px;position:relative;width:100%;display:flex;align-items:center;padding:0 4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial{width:32px;max-width:32px;justify-content:center}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no{width:16px;background:#f8f8f8;writing-mode:vertical-lr;color:#747576;font-size:10px;font-weight:500;display:flex;height:100%;align-items:center;justify-content:center;position:relative;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no app-cs-radio{position:absolute;top:8px;left:0;opacity:0;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.serial .sr-no app-cs-radio .radio-item{position:absolute;left:8px;top:0}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name{width:calc(100% - 64px);min-width:calc(100% - 64px)}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name .name-inner{width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.name .name-inner .value{color:#161b2f;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-right:20px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action{width:32px;max-width:32px;justify-content:center}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action button.arrow{background:transparent;border:none;border-radius:0;color:#747576;font-size:12px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;height:100%;width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.action button.disabled{opacity:.5!important;pointer-events:none}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name{width:calc(100% - 232px);min-width:calc(100% - 232px)}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name .name-inner{width:100%}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.sub-name .value{color:#747576;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-right:20px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question{width:200px;max-width:200px;justify-content:flex-end}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px;margin-left:8px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons{display:flex;opacity:0;overflow:hidden;transition:all .2s ease-in-out}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn{background:#fff;border:1px solid #f1f1f1;border-radius:2px;color:#1e5dd3;font-size:11px;font-weight:500;line-height:22px;text-transform:uppercase;padding:0 8px;display:flex;align-items:center;margin:0}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn i{margin-right:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row .table-column.question .buttons button.action-btn+button{margin-left:4px}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .table-row:hover .table-column.question .buttons{opacity:1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row{border-top:1px solid #f1f1f1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row:hover .table-column.serial .sr-no,::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row.active .table-column.serial .sr-no{color:#f8f8f8}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row:hover .table-column.serial .sr-no app-cs-radio,::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row.active .table-column.serial .sr-no app-cs-radio{opacity:1}::ng-deep .assessment-list-body .assessment-list-part .assessment-list-item .sub-list .table-row .table-column{height:32px}::ng-deep .assessment-list-body ul{padding:0;margin:0}::ng-deep .assessment-list-body ul.assessment{max-height:calc(100vh - 240px);overflow:auto;padding:16px 12px 0 0;width:calc(100% + 12px)}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar-track{background-color:#fff;position:absolute}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::ng-deep .assessment-list-body ul.assessment::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .assessment-list-body ul.assessment li{padding:0 0 12px;list-style:none;display:flex;align-items:center;justify-content:space-between}::ng-deep .assessment-list-body ul.assessment li app-cs-radio{width:calc(100% - 260px)}::ng-deep .assessment-list-body ul.assessment li app-cs-radio .radio-item .value .name{font-size:12px;color:#161b2f;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .assessment-list-body ul.assessment li .right{display:flex;align-items:center}::ng-deep .assessment-list-body ul.assessment li .right .label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px}::ng-deep .assessment-list-body ul.assessment li .right .buttons{display:flex;width:0;overflow:hidden;transition:all .2s ease-in-out}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn{background:#fff;border:1px solid #f1f1f1;border-radius:2px;color:#1e5dd3;font-size:11px;font-weight:500;line-height:24px;text-transform:uppercase;padding:0 8px;margin-left:12px;display:flex;align-items:center}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn i{margin-right:4px}::ng-deep .assessment-list-body ul.assessment li .right .buttons button.action-btn+button{margin-left:4px}::ng-deep .assessment-list-body ul.assessment li:hover .right .buttons{width:156px}.within-part{display:flex;align-items:center;padding-right:12px}.within-part .value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:12px;color:#747576}.within-box{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding:0 4px;margin-right:8px;line-height:12px}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n"]
20537
21280
  },] }
20538
21281
  ];
@@ -20543,6 +21286,7 @@ AssessmentListComponent.ctorParameters = () => [
20543
21286
  ];
20544
21287
  AssessmentListComponent.propDecorators = {
20545
21288
  isEdit: [{ type: Input }],
21289
+ mode: [{ type: Input }],
20546
21290
  selectedAssessment: [{ type: Input }],
20547
21291
  selectedAssessmentData: [{ type: Input }],
20548
21292
  program_ids: [{ type: Input }],
@@ -29749,6 +30493,12 @@ class UserGroupListComponent {
29749
30493
  }
29750
30494
  setAllUsersSelected(event) {
29751
30495
  this.futureUsersWillSelect = event;
30496
+ if (event) {
30497
+ this.selectedUsers = [];
30498
+ this.selectedGroups = [];
30499
+ this.selectedUserIds = [];
30500
+ this.selectedGroupIds = [];
30501
+ }
29752
30502
  }
29753
30503
  }
29754
30504
  UserGroupListComponent.decorators = [