vcomply-workflow-engine 3.0.4 → 3.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/vcomply-workflow-engine.umd.js +146 -387
- package/bundles/vcomply-workflow-engine.umd.js.map +1 -1
- package/esm2015/lib/sharedComponents/policy-access/policy-access.component.js +43 -355
- package/esm2015/lib/sharedComponents/policy-access/policy-access.component.ngfactory.js +33 -12
- package/esm2015/lib/sharedComponents/policy-access/policy-access.component.ngsummary.json +1 -1
- package/esm2015/lib/workflow-engine.module.ngfactory.js +1 -1
- package/esm2015/lib/workflow-interfaces/create-policy-form.js +1 -1
- package/esm2015/lib/workflow-policy/workflow-policy.component.js +103 -33
- package/esm2015/lib/workflow-policy/workflow-policy.component.ngfactory.js +423 -384
- package/esm2015/lib/workflow-policy/workflow-policy.component.ngsummary.json +1 -1
- package/esm2015/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.js +3 -2
- package/esm2015/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.ngfactory.js +1 -1
- package/esm2015/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.ngsummary.json +1 -1
- package/fesm2015/vcomply-workflow-engine.js +146 -387
- package/fesm2015/vcomply-workflow-engine.js.map +1 -1
- package/lib/sharedComponents/policy-access/policy-access.component.d.ts +16 -3
- package/lib/workflow-interfaces/create-policy-form.d.ts +3 -0
- package/lib/workflow-policy/workflow-policy.component.d.ts +6 -0
- package/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.d.ts +1 -1
- package/package.json +1 -1
- package/vcomply-workflow-engine.metadata.json +1 -1
|
@@ -6975,6 +6975,9 @@
|
|
|
6975
6975
|
this.submitted = false;
|
|
6976
6976
|
this.ccEmailObjIds = [];
|
|
6977
6977
|
this.ccFailGroupObjIds = [];
|
|
6978
|
+
this.usersAccessList = [];
|
|
6979
|
+
this.usersAccessListIds = [];
|
|
6980
|
+
this.groupsAccessList = [];
|
|
6978
6981
|
this.loader = false;
|
|
6979
6982
|
this.categoriesListLoaded = false;
|
|
6980
6983
|
this.groupsListLoaded = false;
|
|
@@ -7053,6 +7056,7 @@
|
|
|
7053
7056
|
'linkProgram',
|
|
7054
7057
|
'isAssessment',
|
|
7055
7058
|
'owners',
|
|
7059
|
+
'policyAccess'
|
|
7056
7060
|
];
|
|
7057
7061
|
this.riskClassification = [
|
|
7058
7062
|
{ name: 'LOW', value: 1, class: 'low' },
|
|
@@ -7067,6 +7071,7 @@
|
|
|
7067
7071
|
this.memberId = 0;
|
|
7068
7072
|
this.policyApprovalFlag = 0;
|
|
7069
7073
|
this.baseURL = '';
|
|
7074
|
+
this.groupEnabled = true;
|
|
7070
7075
|
this.overseerGroupsList = [];
|
|
7071
7076
|
this.enableApprovalWorkflow = false;
|
|
7072
7077
|
this.isVersionValid = true;
|
|
@@ -7136,6 +7141,9 @@
|
|
|
7136
7141
|
policy_group_owners: [],
|
|
7137
7142
|
businessCycle: {},
|
|
7138
7143
|
policy_id: 0,
|
|
7144
|
+
policy_access_type: 0,
|
|
7145
|
+
policy_access_owners: [],
|
|
7146
|
+
policy_access_groups: [],
|
|
7139
7147
|
};
|
|
7140
7148
|
this.baseURL = platformLocation.location.origin;
|
|
7141
7149
|
if (this.baseURL == 'http://localhost:4200') {
|
|
@@ -7145,7 +7153,7 @@
|
|
|
7145
7153
|
WorkflowPolicyComponent.prototype.ngOnInit = function () {
|
|
7146
7154
|
var _this = this;
|
|
7147
7155
|
var _a, _b;
|
|
7148
|
-
this.groupEnabled = (_a = this.feature) === null || _a === void 0 ? void 0 : _a.isFeatureEnabled('ff_policy_groups');
|
|
7156
|
+
this.groupEnabled = ((_a = this.feature) === null || _a === void 0 ? void 0 : _a.isFeatureEnabled('ff_policy_groups')) || true;
|
|
7149
7157
|
this.getRCList();
|
|
7150
7158
|
this.getUsersList();
|
|
7151
7159
|
this.getCategoriesList();
|
|
@@ -7214,6 +7222,7 @@
|
|
|
7214
7222
|
_this.usersList = res;
|
|
7215
7223
|
}
|
|
7216
7224
|
_this.usersListLoaded = true;
|
|
7225
|
+
console.log("===========================>", _this.usersList, res);
|
|
7217
7226
|
}, function (err) {
|
|
7218
7227
|
console.error(err);
|
|
7219
7228
|
_this.usersListLoaded = true;
|
|
@@ -7370,7 +7379,7 @@
|
|
|
7370
7379
|
this.allApprovers = [];
|
|
7371
7380
|
this.allReviewers = [];
|
|
7372
7381
|
this.policyService.getReviewers(categoryIds).subscribe(function (res) {
|
|
7373
|
-
var _a, _b, _c, _e, _f, _g;
|
|
7382
|
+
var _a, _b, _c, _e, _f, _g, _h, _j;
|
|
7374
7383
|
if ((res === null || res === void 0 ? void 0 : res.length) >= 0) {
|
|
7375
7384
|
res.forEach(function (element) {
|
|
7376
7385
|
var _a;
|
|
@@ -7381,39 +7390,44 @@
|
|
|
7381
7390
|
if (policy === null || policy === void 0 ? void 0 : policy.policy_owners.length) {
|
|
7382
7391
|
_this.policyForm.policy_owners = _this.setList(_this.allApprovers, (_a = policy === null || policy === void 0 ? void 0 : policy.policy_owners) !== null && _a !== void 0 ? _a : [], 'member_id');
|
|
7383
7392
|
}
|
|
7393
|
+
_this.getUsersAccessListByCategory(element);
|
|
7384
7394
|
});
|
|
7385
7395
|
}
|
|
7386
7396
|
if (approverIds === null || approverIds === void 0 ? void 0 : approverIds.approvers) {
|
|
7387
7397
|
var obj = approverIds === null || approverIds === void 0 ? void 0 : approverIds.approvers;
|
|
7388
7398
|
var approverLevels = [];
|
|
7389
|
-
for (var item in obj) {
|
|
7390
|
-
|
|
7391
|
-
|
|
7392
|
-
|
|
7393
|
-
|
|
7394
|
-
|
|
7395
|
-
|
|
7396
|
-
|
|
7397
|
-
|
|
7398
|
-
|
|
7399
|
-
|
|
7400
|
-
|
|
7401
|
-
|
|
7402
|
-
|
|
7399
|
+
// for (var item in obj) {
|
|
7400
|
+
// const ids = obj[item]?.approvers?.map(
|
|
7401
|
+
// (approver: any) => approver.member_id
|
|
7402
|
+
// );
|
|
7403
|
+
// let data = {
|
|
7404
|
+
// name: obj[item]?.type,
|
|
7405
|
+
// approvers: this.setList(this.allApprovers, ids, 'member_id'),
|
|
7406
|
+
// };
|
|
7407
|
+
// if (data.name == 'ROUNDROBIN') {
|
|
7408
|
+
// data.name = 'ROUND-ROBIN';
|
|
7409
|
+
// } else if (data.name == 'ANYONE') {
|
|
7410
|
+
// data.name = 'ANY ONE';
|
|
7411
|
+
// }
|
|
7412
|
+
// approverLevels.push(data);
|
|
7413
|
+
// }
|
|
7403
7414
|
if (approverIds === null || approverIds === void 0 ? void 0 : approverIds.approvers) {
|
|
7404
7415
|
var obj_1 = approverIds === null || approverIds === void 0 ? void 0 : approverIds.approvers;
|
|
7405
7416
|
var approverLevels_1 = [];
|
|
7406
7417
|
for (var item in obj_1) {
|
|
7407
|
-
var ids = (
|
|
7418
|
+
var ids = (_b = (_a = obj_1[item]) === null || _a === void 0 ? void 0 : _a.approvers) === null || _b === void 0 ? void 0 : _b.map(function (approver) { return approver.member_id; });
|
|
7408
7419
|
var data = {
|
|
7409
|
-
name: (
|
|
7410
|
-
approvers:
|
|
7420
|
+
type: (_e = (_c = obj_1[item]) === null || _c === void 0 ? void 0 : _c.name) !== null && _e !== void 0 ? _e : (_f = obj_1[item]) === null || _f === void 0 ? void 0 : _f.type,
|
|
7421
|
+
approvers: (_g = obj_1[item]) === null || _g === void 0 ? void 0 : _g.approvers,
|
|
7422
|
+
approval_done: false,
|
|
7423
|
+
level1: (_h = obj_1[item]) === null || _h === void 0 ? void 0 : _h.level1,
|
|
7424
|
+
alias_name: (_j = obj_1[item]) === null || _j === void 0 ? void 0 : _j.alias_name,
|
|
7411
7425
|
};
|
|
7412
|
-
if (data.
|
|
7413
|
-
data.
|
|
7426
|
+
if (data.type == 'ROUNDROBIN') {
|
|
7427
|
+
data.type = 'ROUND-ROBIN';
|
|
7414
7428
|
}
|
|
7415
|
-
else if (data.
|
|
7416
|
-
data.
|
|
7429
|
+
else if (data.type == 'ANYONE') {
|
|
7430
|
+
data.type = 'ANY ONE';
|
|
7417
7431
|
}
|
|
7418
7432
|
approverLevels_1.push(data);
|
|
7419
7433
|
}
|
|
@@ -7662,6 +7676,20 @@
|
|
|
7662
7676
|
break;
|
|
7663
7677
|
case 'owners':
|
|
7664
7678
|
this.policyForm.policy_owners = this.setList(this.allApprovers, selectedItems, 'member_id');
|
|
7679
|
+
break;
|
|
7680
|
+
case 'policyAccess':
|
|
7681
|
+
var accessIds = void 0, accessGroupIds = void 0;
|
|
7682
|
+
if (this.groupEnabled) {
|
|
7683
|
+
accessIds = this.returnIds(selectedItems.users, 'member_id');
|
|
7684
|
+
accessGroupIds = this.returnIds(selectedItems.groups, 'group_id');
|
|
7685
|
+
this.policyForm.policy_access_groups = this.setList(this.overseerGroupsList, accessGroupIds, 'group_id');
|
|
7686
|
+
}
|
|
7687
|
+
else {
|
|
7688
|
+
accessIds = selectedItems;
|
|
7689
|
+
}
|
|
7690
|
+
this.policyForm.policy_access_owners = this.setList(this.assigneesList, accessIds, 'my_member_id');
|
|
7691
|
+
this.refreshAllLists();
|
|
7692
|
+
break;
|
|
7665
7693
|
}
|
|
7666
7694
|
this.disableSelector();
|
|
7667
7695
|
};
|
|
@@ -7678,7 +7706,7 @@
|
|
|
7678
7706
|
*/
|
|
7679
7707
|
WorkflowPolicyComponent.prototype.remove = function (type, event, removeIndex) {
|
|
7680
7708
|
var _this = this;
|
|
7681
|
-
var _a, _b, _c, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
|
7709
|
+
var _a, _b, _c, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z;
|
|
7682
7710
|
switch (type) {
|
|
7683
7711
|
case 'rc':
|
|
7684
7712
|
var rcIndex = this.policyForm.selectedRCs.findIndex(function (rc) { return rc.rc_id == event.rc_id; });
|
|
@@ -7771,6 +7799,15 @@
|
|
|
7771
7799
|
case 'owners':
|
|
7772
7800
|
(_s = this.policyForm) === null || _s === void 0 ? void 0 : _s.policy_owners.splice(removeIndex, 1);
|
|
7773
7801
|
break;
|
|
7802
|
+
case 'policyAccess':
|
|
7803
|
+
var userAccessIndex = (_t = this.policyForm) === null || _t === void 0 ? void 0 : _t.policy_access_owners.findIndex(function (owner) { return (owner === null || owner === void 0 ? void 0 : owner.employee_id) == (event === null || event === void 0 ? void 0 : event.employee_id); });
|
|
7804
|
+
(_v = (_u = this.policyForm) === null || _u === void 0 ? void 0 : _u.policy_access_owners) === null || _v === void 0 ? void 0 : _v.splice(userAccessIndex, 1);
|
|
7805
|
+
this.refreshAllLists();
|
|
7806
|
+
break;
|
|
7807
|
+
case 'accessGroup':
|
|
7808
|
+
var groupAccessIndex = (_x = (_w = this.policyForm) === null || _w === void 0 ? void 0 : _w.policy_access_groups) === null || _x === void 0 ? void 0 : _x.findIndex(function (group) { return (group === null || group === void 0 ? void 0 : group.group_id) == (event === null || event === void 0 ? void 0 : event.group_id); });
|
|
7809
|
+
(_z = (_y = this.policyForm) === null || _y === void 0 ? void 0 : _y.policy_access_groups) === null || _z === void 0 ? void 0 : _z.splice(groupAccessIndex, 1);
|
|
7810
|
+
break;
|
|
7774
7811
|
}
|
|
7775
7812
|
};
|
|
7776
7813
|
/**
|
|
@@ -8045,7 +8082,7 @@
|
|
|
8045
8082
|
*/
|
|
8046
8083
|
WorkflowPolicyComponent.prototype.submitPolicy = function () {
|
|
8047
8084
|
var _this = this;
|
|
8048
|
-
var _a, _b, _c, _e, _f, _g;
|
|
8085
|
+
var _a, _b, _c, _e, _f, _g, _h, _j, _k;
|
|
8049
8086
|
this.submitted = false;
|
|
8050
8087
|
var valid = this.validatePolicy();
|
|
8051
8088
|
if (!valid || !this.isVersionValid) {
|
|
@@ -8087,6 +8124,8 @@
|
|
|
8087
8124
|
return ele;
|
|
8088
8125
|
});
|
|
8089
8126
|
var reviewerID = this.returnIds(policy.selectedReviewers, 'member_id');
|
|
8127
|
+
var policyAccessUsersIds = (_a = this.returnIds(policy.policy_access_owners, 'member_id')) !== null && _a !== void 0 ? _a : [];
|
|
8128
|
+
var policyAccessGroupsIds = (_b = this.returnIds(policy.policy_access_groups, '_id')) !== null && _b !== void 0 ? _b : [];
|
|
8090
8129
|
var payload = {
|
|
8091
8130
|
policy_name: policy.policyName,
|
|
8092
8131
|
notes: policy.policyNotes,
|
|
@@ -8095,7 +8134,7 @@
|
|
|
8095
8134
|
category_id_arr: this.returnIds(policy.selectedCategories, 'item_id'),
|
|
8096
8135
|
approvers: approversData,
|
|
8097
8136
|
group_employeeIds: this.returnIds(policy.selectedAssignees, 'employee_id').toString(),
|
|
8098
|
-
usergroup_ids: (
|
|
8137
|
+
usergroup_ids: (_c = this.returnIds(policy.selectedGroupAssignee, '_id')) !== null && _c !== void 0 ? _c : [],
|
|
8099
8138
|
Is_approval: 0,
|
|
8100
8139
|
associated_documents: policy.addAssociatedDocuments
|
|
8101
8140
|
? attestationFiles
|
|
@@ -8142,7 +8181,7 @@
|
|
|
8142
8181
|
review_remind_days_before_due_date: policy.addReviewers && policy.review_frequency_details
|
|
8143
8182
|
? policy.review_remind_days_before_due_date
|
|
8144
8183
|
: 0,
|
|
8145
|
-
entities: ((
|
|
8184
|
+
entities: ((_e = this.policyForm) === null || _e === void 0 ? void 0 : _e.addResponsibilityCenters)
|
|
8146
8185
|
? this.returnIds(policy.selectedRCs, 'item_id').toString()
|
|
8147
8186
|
: '',
|
|
8148
8187
|
risk_class: policy.riskRating.toString(),
|
|
@@ -8152,14 +8191,14 @@
|
|
|
8152
8191
|
CCEmail: policy.addOverseers
|
|
8153
8192
|
? this.returnIds(policy.CCEmail, 'employee_email').toString()
|
|
8154
8193
|
: '',
|
|
8155
|
-
checkpointDetails: (
|
|
8194
|
+
checkpointDetails: (_f = policy.checkpointDetails) !== null && _f !== void 0 ? _f : [],
|
|
8156
8195
|
totalQuestion: policy.totalQuestion ? policy.totalQuestion : 0,
|
|
8157
8196
|
passingMarks: policy.passingMarks ? policy.passingMarks : 0,
|
|
8158
8197
|
policyApprovalFlag: 0,
|
|
8159
8198
|
is_signature_required: policy.requiresSignatureForAttestation ? 1 : 0,
|
|
8160
8199
|
cc_usergroup_ids: this.ccEmailObjIds,
|
|
8161
8200
|
cc_fail_usergroup_ids: this.ccFailGroupObjIds,
|
|
8162
|
-
reviewer_start_date: (
|
|
8201
|
+
reviewer_start_date: (_g = policy.reviewer_start_date) !== null && _g !== void 0 ? _g : '',
|
|
8163
8202
|
assignee_start_date: policy.assignee_start_date,
|
|
8164
8203
|
policy_version: policy.addVersion ? policy.policy_version : '',
|
|
8165
8204
|
assessment: policy.addLinkAssessment
|
|
@@ -8171,8 +8210,8 @@
|
|
|
8171
8210
|
})
|
|
8172
8211
|
: [],
|
|
8173
8212
|
policy_owners: this.policyForm.policy_owners.map(function (ele) { return ele.member_id; }),
|
|
8174
|
-
approval_workflow_id: ((
|
|
8175
|
-
? [(
|
|
8213
|
+
approval_workflow_id: ((_h = policy === null || policy === void 0 ? void 0 : policy.selectedApprovers[0]) === null || _h === void 0 ? void 0 : _h._id)
|
|
8214
|
+
? [(_j = policy === null || policy === void 0 ? void 0 : policy.selectedApprovers[0]) === null || _j === void 0 ? void 0 : _j._id]
|
|
8176
8215
|
: [],
|
|
8177
8216
|
linkProgram: Object.keys(policy === null || policy === void 0 ? void 0 : policy.linkProgram).length
|
|
8178
8217
|
? policy === null || policy === void 0 ? void 0 : policy.linkProgram
|
|
@@ -8183,6 +8222,9 @@
|
|
|
8183
8222
|
business_cycle: Object.keys(policy === null || policy === void 0 ? void 0 : policy.linkProgram).length
|
|
8184
8223
|
? policy === null || policy === void 0 ? void 0 : policy.businessCycle
|
|
8185
8224
|
: undefined,
|
|
8225
|
+
policy_access_type: (_k = policy.policy_access_type) !== null && _k !== void 0 ? _k : 0,
|
|
8226
|
+
policy_access_owners: policyAccessUsersIds !== null && policyAccessUsersIds !== void 0 ? policyAccessUsersIds : [],
|
|
8227
|
+
policy_access_groups: policyAccessGroupsIds !== null && policyAccessGroupsIds !== void 0 ? policyAccessGroupsIds : [],
|
|
8186
8228
|
};
|
|
8187
8229
|
if (this.mode == 'CREATE') {
|
|
8188
8230
|
this.policyService.submitPolicy(payload).subscribe(function (res) {
|
|
@@ -8347,6 +8389,7 @@
|
|
|
8347
8389
|
_this.populatePolicyForm(data, categoryIds);
|
|
8348
8390
|
_this.frequencyDataPopulation(data);
|
|
8349
8391
|
_this.reviewerFrequencyDataPopulation(data);
|
|
8392
|
+
_this.populatePolicyAccessDetails(data);
|
|
8350
8393
|
}, function (error) {
|
|
8351
8394
|
console.error(error);
|
|
8352
8395
|
});
|
|
@@ -8603,12 +8646,39 @@
|
|
|
8603
8646
|
};
|
|
8604
8647
|
this.activateSelector('approvers', true);
|
|
8605
8648
|
};
|
|
8649
|
+
WorkflowPolicyComponent.prototype.setAccessField = function (event) {
|
|
8650
|
+
this.policyForm.policy_access_type = event;
|
|
8651
|
+
if (event == 0) {
|
|
8652
|
+
// this.policyForm.policy_access_owners = this.usersAccessList;
|
|
8653
|
+
this.saveSelectedList('policyAccess', { users: this.usersAccessList, groups: [] });
|
|
8654
|
+
}
|
|
8655
|
+
};
|
|
8656
|
+
WorkflowPolicyComponent.prototype.getUsersAccessListByCategory = function (categoryDetails) {
|
|
8657
|
+
var _a, _b;
|
|
8658
|
+
var uniqueUsers = [];
|
|
8659
|
+
var uniqueGroupsId = [];
|
|
8660
|
+
uniqueUsers = lodash.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');
|
|
8661
|
+
this.usersAccessList = uniqueUsers;
|
|
8662
|
+
this.usersAccessListIds = this.returnIds(this.usersAccessList, 'member_id');
|
|
8663
|
+
uniqueGroupsId = __spreadArray([], __read(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))));
|
|
8664
|
+
this.groupsAccessList = this.setList(this.overseerGroupsList, uniqueGroupsId, '_id');
|
|
8665
|
+
};
|
|
8666
|
+
WorkflowPolicyComponent.prototype.populatePolicyAccessDetails = function (policyDetails) {
|
|
8667
|
+
var _a, _b;
|
|
8668
|
+
this.policyForm.policy_access_type = policyDetails === null || policyDetails === void 0 ? void 0 : policyDetails.policy_access_type;
|
|
8669
|
+
if ((_a = policyDetails === null || policyDetails === void 0 ? void 0 : policyDetails.policy_access_owners) === null || _a === void 0 ? void 0 : _a.length) {
|
|
8670
|
+
this.policyForm.policy_access_owners = this.setList(this.usersList, policyDetails === null || policyDetails === void 0 ? void 0 : policyDetails.policy_access_owners, 'member_id');
|
|
8671
|
+
}
|
|
8672
|
+
if ((_b = policyDetails === null || policyDetails === void 0 ? void 0 : policyDetails.policy_access_groups) === null || _b === void 0 ? void 0 : _b.length) {
|
|
8673
|
+
this.policyForm.policy_access_groups = this.setList(this.overseerGroupsList, policyDetails === null || policyDetails === void 0 ? void 0 : policyDetails.policy_access_groups, '_id');
|
|
8674
|
+
}
|
|
8675
|
+
};
|
|
8606
8676
|
return WorkflowPolicyComponent;
|
|
8607
8677
|
}());
|
|
8608
8678
|
WorkflowPolicyComponent.decorators = [
|
|
8609
8679
|
{ type: i0.Component, args: [{
|
|
8610
8680
|
selector: 'app-workflow-policy',
|
|
8611
|
-
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\"></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 ></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 ></i\r\n ></app-cs-switch\r\n >\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 ></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)\"></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\"></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 ></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\"></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 ></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 ></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 ></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\"></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\"></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 ></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\"></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\"></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 ></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\"></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 ></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\"></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\"></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\"></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 \"\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=\"false\"\r\n class=\"form-group-row\"\r\n [class.active]=\"false\"\r\n [class.disabled]=\"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/lock-scope.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\">POLICY ACCESS</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 Who should be able to view this policy?\r\n </div>\r\n </div>\r\n\r\n <div class=\"selectBoxSuccess vx-pl-2 vx-pr-3\">\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 class=\"icons cross vx-fs-10 vx-paragraph-txt vx-mr-1\"\r\n ></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)=\"policyAccessPopover.popover()\"\r\n placement=\"right\"\r\n >\r\n +4\r\n </button>\r\n </div>\r\n <app-popover #policyAccessPopover [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\"></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\"></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 ><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 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\r\n <div class=\"vx-mt-2\">\r\n <app-cs-switch\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]=\"'Accept suggestions info text here...'\"\r\n placement=\"bottom-right\"\r\n delay=\"0\"\r\n type=\"white\"\r\n [tooltipMandatory]=\"true\"\r\n ></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 ></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\"></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\"></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 ></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\"></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\"></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 ></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 ></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\"></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\"></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 ></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 ></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 ></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\"></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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\"></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\"></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\"></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)\"></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 ></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\"></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)\"></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 ></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\"></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\"></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 ></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 ></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 ></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\"></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 ></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 ></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 ></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\"></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 ></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 ></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 ></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\"></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\"></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 ></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\"></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\"></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></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",
|
|
8681
|
+
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\"></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 ></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 ></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 ></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)\"></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\"></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 ></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\"></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 ></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 ></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 ></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\"></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\"></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 ></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\"></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\"></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 ></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\"></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 ></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\"></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\"></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\"></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 \"\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\"\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\"\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 ACCESS</label>\r\n </div>\r\n <div *ngIf=\"!policyForm?.policy_access_owners?.length && !policyForm?.policy_access_groups?.length\"\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 <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 ></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 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\"\r\n (click)=\"\r\n remove(\r\n 'accessGroup',\r\n policyForm?.policy_access_groups[0]\r\n )\r\n \"\r\n ></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 \"></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\" (click)=\"remove('accessGroup', data)\"\r\n ></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\"></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\r\n <div class=\"vx-mt-2\">\r\n <app-cs-switch\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 ></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 ></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\"></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\"></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 ></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\"></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\"></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 ></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 ></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\"></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\"></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 ></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 ></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 ></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\"></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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\"></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\"></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\"></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)\"></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 ></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\"></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)\"></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 ></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\"></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\"></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 ></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 ></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 ></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\"></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 ></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 ></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 ></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\"></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 ></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 ></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 ></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\"></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\"></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 ></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\"></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\"></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 (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",
|
|
8612
8682
|
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"]
|
|
8613
8683
|
},] }
|
|
8614
8684
|
];
|
|
@@ -30794,11 +30864,11 @@
|
|
|
30794
30864
|
this.fetchUserData = new i0.EventEmitter();
|
|
30795
30865
|
this.disabledIds = [];
|
|
30796
30866
|
this.nonRemovableUserIds = [];
|
|
30867
|
+
this.allUserSelectedDisabled = false;
|
|
30797
30868
|
this.selectedUsers = [];
|
|
30798
30869
|
this.selectedUserIds = [];
|
|
30799
30870
|
this.allUsersIds = [];
|
|
30800
30871
|
this.allUserSelected = false;
|
|
30801
|
-
this.allUserSelectedDisabled = false;
|
|
30802
30872
|
this.nonRemovableGroupIds = [];
|
|
30803
30873
|
this.selectedGroups = [];
|
|
30804
30874
|
this.selectedGroupIds = [];
|
|
@@ -31169,6 +31239,7 @@
|
|
|
31169
31239
|
fetchUserData: [{ type: i0.Output }],
|
|
31170
31240
|
disabledIds: [{ type: i0.Input }],
|
|
31171
31241
|
nonRemovableUserIds: [{ type: i0.Input }],
|
|
31242
|
+
allUserSelectedDisabled: [{ type: i0.Input }],
|
|
31172
31243
|
nonRemovableGroupIds: [{ type: i0.Input }],
|
|
31173
31244
|
loading: [{ type: i0.Input }],
|
|
31174
31245
|
setUserList: [{ type: i0.Input, args: ['userlist',] }],
|
|
@@ -36092,370 +36163,58 @@
|
|
|
36092
36163
|
|
|
36093
36164
|
var PolicyAccessComponent = /** @class */ (function () {
|
|
36094
36165
|
function PolicyAccessComponent() {
|
|
36095
|
-
this.
|
|
36096
|
-
|
|
36097
|
-
|
|
36098
|
-
|
|
36099
|
-
|
|
36100
|
-
|
|
36101
|
-
|
|
36102
|
-
|
|
36103
|
-
|
|
36104
|
-
|
|
36105
|
-
|
|
36106
|
-
"employee_short_name": "PM",
|
|
36107
|
-
"group_id": "",
|
|
36108
|
-
"member_id": 3812,
|
|
36109
|
-
"mobileNo": "+91 8653523033",
|
|
36110
|
-
"modified_by": 15,
|
|
36111
|
-
"my_member_id": 3812,
|
|
36112
|
-
"node_count": 0,
|
|
36113
|
-
"organisation_id": 1,
|
|
36114
|
-
"user_id": 2390,
|
|
36115
|
-
"user_name": "Pravin Kumar Mishra",
|
|
36116
|
-
"member_name": "Pravin Kumar Mishra",
|
|
36117
|
-
"_id": "5e481b2761ca5e0f0b619aa5"
|
|
36118
|
-
},
|
|
36119
|
-
{
|
|
36120
|
-
"active_flag": 1,
|
|
36121
|
-
"compliance_score": 0,
|
|
36122
|
-
"created_by": 15,
|
|
36123
|
-
"doc_utc": 1582275054,
|
|
36124
|
-
"dom_utc": 1667458149,
|
|
36125
|
-
"employee_email": "sibajee@excellencetech.com",
|
|
36126
|
-
"employee_id": 39981,
|
|
36127
|
-
"employee_name": "Sibajee Biswal",
|
|
36128
|
-
"employee_pic": "1582775854007_download.png",
|
|
36129
|
-
"employee_short_name": "SB",
|
|
36130
|
-
"group_id": "",
|
|
36131
|
-
"member_id": 1180,
|
|
36132
|
-
"mobileNo": "+91 9051210160",
|
|
36133
|
-
"modified_by": 15,
|
|
36134
|
-
"my_member_id": 1180,
|
|
36135
|
-
"node_count": 0,
|
|
36136
|
-
"organisation_id": 1,
|
|
36137
|
-
"user_id": 39981,
|
|
36138
|
-
"user_name": "Sibajee Biswal",
|
|
36139
|
-
"member_name": "Sibajee Biswal",
|
|
36140
|
-
"_id": "5e4f99ee61ca5e14e2370ae3"
|
|
36141
|
-
},
|
|
36142
|
-
{
|
|
36143
|
-
"active_flag": 1,
|
|
36144
|
-
"compliance_score": 0,
|
|
36145
|
-
"created_by": 15,
|
|
36146
|
-
"doc_utc": 1582275054,
|
|
36147
|
-
"dom_utc": 1670562995,
|
|
36148
|
-
"employee_email": "qa3@v-comply.com",
|
|
36149
|
-
"employee_id": 40002,
|
|
36150
|
-
"employee_name": "Satyendar Yadav",
|
|
36151
|
-
"employee_pic": "1670322521041_logo.png",
|
|
36152
|
-
"employee_short_name": "SY",
|
|
36153
|
-
"group_id": "",
|
|
36154
|
-
"member_id": 6789,
|
|
36155
|
-
"mobileNo": "+86 null",
|
|
36156
|
-
"modified_by": 6789,
|
|
36157
|
-
"my_member_id": 6789,
|
|
36158
|
-
"node_count": 0,
|
|
36159
|
-
"organisation_id": 1,
|
|
36160
|
-
"user_id": 40002,
|
|
36161
|
-
"user_name": "Satyendar Yadav",
|
|
36162
|
-
"member_name": "Satyendar Yadav",
|
|
36163
|
-
"_id": "5e4f99ee61ca5e14e2370af8"
|
|
36164
|
-
},
|
|
36165
|
-
{
|
|
36166
|
-
"active_flag": 1,
|
|
36167
|
-
"compliance_score": 0,
|
|
36168
|
-
"created_by": 15,
|
|
36169
|
-
"doc_utc": 1584418839,
|
|
36170
|
-
"dom_utc": 1584418839,
|
|
36171
|
-
"employee_email": "zoya@v-comply.com",
|
|
36172
|
-
"employee_id": 75220,
|
|
36173
|
-
"employee_name": "Zoya Khan",
|
|
36174
|
-
"employee_pic": "",
|
|
36175
|
-
"employee_short_name": "ZK",
|
|
36176
|
-
"group_id": "1258,1312",
|
|
36177
|
-
"member_id": 5468,
|
|
36178
|
-
"mobileNo": "[object Object] ",
|
|
36179
|
-
"modified_by": 15,
|
|
36180
|
-
"my_member_id": 5468,
|
|
36181
|
-
"node_count": 0,
|
|
36182
|
-
"organisation_id": 1,
|
|
36183
|
-
"user_id": 75220,
|
|
36184
|
-
"user_name": "Zoya Khan",
|
|
36185
|
-
"member_name": "Zoya Khan",
|
|
36186
|
-
"_id": "5e70501789d8260007fbfeb3"
|
|
36187
|
-
},
|
|
36188
|
-
{
|
|
36189
|
-
"active_flag": 1,
|
|
36190
|
-
"compliance_score": 0,
|
|
36191
|
-
"created_by": 5378,
|
|
36192
|
-
"doc_utc": 1584598952,
|
|
36193
|
-
"dom_utc": 1667304989,
|
|
36194
|
-
"employee_email": "dev3@v-comply.com",
|
|
36195
|
-
"employee_id": 75424,
|
|
36196
|
-
"employee_name": "Md. Abu Raihan",
|
|
36197
|
-
"employee_pic": "1598864617506_image.png",
|
|
36198
|
-
"employee_short_name": "MR",
|
|
36199
|
-
"group_id": "",
|
|
36200
|
-
"member_id": 5884,
|
|
36201
|
-
"mobileNo": "+91 918765654",
|
|
36202
|
-
"modified_by": 15,
|
|
36203
|
-
"my_member_id": 5884,
|
|
36204
|
-
"node_count": 0,
|
|
36205
|
-
"organisation_id": 1,
|
|
36206
|
-
"user_id": 75424,
|
|
36207
|
-
"user_name": "Md. Abu Raihan",
|
|
36208
|
-
"member_name": "Md. Abu Raihan",
|
|
36209
|
-
"_id": "5e730fa80dd9d20008d03856"
|
|
36210
|
-
},
|
|
36211
|
-
{
|
|
36212
|
-
"active_flag": 1,
|
|
36213
|
-
"compliance_score": 0,
|
|
36214
|
-
"created_by": 15,
|
|
36215
|
-
"doc_utc": 1585585464,
|
|
36216
|
-
"dom_utc": 1654494880,
|
|
36217
|
-
"employee_email": "raihanabu03z@gmail.com",
|
|
36218
|
-
"employee_id": 76547,
|
|
36219
|
-
"employee_name": "Abu Test Account 2",
|
|
36220
|
-
"employee_pic": "",
|
|
36221
|
-
"employee_short_name": "A2",
|
|
36222
|
-
"group_id": "",
|
|
36223
|
-
"member_id": 9967,
|
|
36224
|
-
"mobileNo": "+44 1234567890",
|
|
36225
|
-
"modified_by": 15,
|
|
36226
|
-
"my_member_id": 9967,
|
|
36227
|
-
"node_count": 0,
|
|
36228
|
-
"organisation_id": 1,
|
|
36229
|
-
"user_id": 76547,
|
|
36230
|
-
"user_name": "Abu Test Account 2",
|
|
36231
|
-
"member_name": "Abu Test Account 2",
|
|
36232
|
-
"_id": "5e821d38f8bc600007df1ca6"
|
|
36233
|
-
},
|
|
36234
|
-
{
|
|
36235
|
-
"active_flag": 1,
|
|
36236
|
-
"compliance_score": 0,
|
|
36237
|
-
"created_by": 9,
|
|
36238
|
-
"doc_utc": 1586019526,
|
|
36239
|
-
"dom_utc": 1666885587,
|
|
36240
|
-
"employee_email": "test@gmail.com",
|
|
36241
|
-
"employee_id": 79188,
|
|
36242
|
-
"employee_name": "Test",
|
|
36243
|
-
"employee_pic": "",
|
|
36244
|
-
"employee_short_name": "TE",
|
|
36245
|
-
"group_id": "",
|
|
36246
|
-
"member_id": 10003,
|
|
36247
|
-
"mobileNo": "+91 null",
|
|
36248
|
-
"modified_by": 15,
|
|
36249
|
-
"my_member_id": 10003,
|
|
36250
|
-
"node_count": 0,
|
|
36251
|
-
"organisation_id": 1,
|
|
36252
|
-
"user_id": 79188,
|
|
36253
|
-
"user_name": "Test",
|
|
36254
|
-
"member_name": "Test",
|
|
36255
|
-
"_id": "5e88bcc6b457780008cecb4d"
|
|
36256
|
-
},
|
|
36257
|
-
];
|
|
36258
|
-
this.groupReviewerList = [
|
|
36259
|
-
{
|
|
36260
|
-
"old_group_id": 0,
|
|
36261
|
-
"member_ids": [
|
|
36262
|
-
17235
|
|
36263
|
-
],
|
|
36264
|
-
"removed_member_ids": [],
|
|
36265
|
-
"group_type": "vcomply",
|
|
36266
|
-
"state": 1,
|
|
36267
|
-
"_id": "641808a4775585000859f072",
|
|
36268
|
-
"group_name": "test",
|
|
36269
|
-
"group_description": "",
|
|
36270
|
-
"roles": [],
|
|
36271
|
-
"associatedUsers": [
|
|
36272
|
-
{
|
|
36273
|
-
"_id": "641808a4775585000859f073",
|
|
36274
|
-
"userId": {
|
|
36275
|
-
"profile_pic": "",
|
|
36276
|
-
"license_type": "power users",
|
|
36277
|
-
"_id": "615aff53b6c29d415c990f9d",
|
|
36278
|
-
"member_name": "Raja",
|
|
36279
|
-
"member_email": "ddr@rdsfdd.com",
|
|
36280
|
-
"member_id": 17235
|
|
36281
|
-
}
|
|
36282
|
-
}
|
|
36283
|
-
],
|
|
36284
|
-
"organisation_id": 1,
|
|
36285
|
-
"created_by": {
|
|
36286
|
-
"profile_pic": "1671533780051_1671445156080_flavor_prod.png",
|
|
36287
|
-
"_id": "5e4850db61ca5e14e142ea08",
|
|
36288
|
-
"member_id": 15,
|
|
36289
|
-
"member_email": "anmol@excellencetech.com",
|
|
36290
|
-
"member_name": "Anmol Kumar"
|
|
36291
|
-
},
|
|
36292
|
-
"modified_by": {
|
|
36293
|
-
"profile_pic": "1671533780051_1671445156080_flavor_prod.png",
|
|
36294
|
-
"_id": "5e4850db61ca5e14e142ea08",
|
|
36295
|
-
"member_id": 15,
|
|
36296
|
-
"member_email": "anmol@excellencetech.com",
|
|
36297
|
-
"member_name": "Anmol Kumar"
|
|
36298
|
-
},
|
|
36299
|
-
"created_at": 1679296676,
|
|
36300
|
-
"updated_at": 1679296676,
|
|
36301
|
-
"member_count": 1,
|
|
36302
|
-
"group_id": 994,
|
|
36303
|
-
"__v": 0
|
|
36304
|
-
},
|
|
36305
|
-
{
|
|
36306
|
-
"old_group_id": 0,
|
|
36307
|
-
"member_ids": [
|
|
36308
|
-
15
|
|
36309
|
-
],
|
|
36310
|
-
"removed_member_ids": [],
|
|
36311
|
-
"group_type": "vcomply",
|
|
36312
|
-
"state": 1,
|
|
36313
|
-
"_id": "63e738f8ad9d0d000827e15d",
|
|
36314
|
-
"group_name": "Test Group 169",
|
|
36315
|
-
"group_description": "",
|
|
36316
|
-
"roles": [],
|
|
36317
|
-
"associatedUsers": [
|
|
36318
|
-
{
|
|
36319
|
-
"_id": "63e738f8ad9d0d000827e15e",
|
|
36320
|
-
"userId": {
|
|
36321
|
-
"profile_pic": "1671533780051_1671445156080_flavor_prod.png",
|
|
36322
|
-
"license_type": "power users",
|
|
36323
|
-
"_id": "5e4850db61ca5e14e142ea08",
|
|
36324
|
-
"member_id": 15,
|
|
36325
|
-
"member_email": "anmol@excellencetech.com",
|
|
36326
|
-
"member_name": "Anmol Kumar"
|
|
36327
|
-
}
|
|
36328
|
-
}
|
|
36329
|
-
],
|
|
36330
|
-
"organisation_id": 1,
|
|
36331
|
-
"created_by": {
|
|
36332
|
-
"profile_pic": "1671533780051_1671445156080_flavor_prod.png",
|
|
36333
|
-
"_id": "5e4850db61ca5e14e142ea08",
|
|
36334
|
-
"member_id": 15,
|
|
36335
|
-
"member_email": "anmol@excellencetech.com",
|
|
36336
|
-
"member_name": "Anmol Kumar"
|
|
36337
|
-
},
|
|
36338
|
-
"modified_by": {
|
|
36339
|
-
"profile_pic": "1671533780051_1671445156080_flavor_prod.png",
|
|
36340
|
-
"_id": "5e4850db61ca5e14e142ea08",
|
|
36341
|
-
"member_id": 15,
|
|
36342
|
-
"member_email": "anmol@excellencetech.com",
|
|
36343
|
-
"member_name": "Anmol Kumar"
|
|
36344
|
-
},
|
|
36345
|
-
"created_at": 1676097784,
|
|
36346
|
-
"updated_at": 1676097784,
|
|
36347
|
-
"member_count": 1,
|
|
36348
|
-
"group_id": 971,
|
|
36349
|
-
"__v": 0
|
|
36350
|
-
},
|
|
36351
|
-
{
|
|
36352
|
-
"old_group_id": 0,
|
|
36353
|
-
"member_ids": [
|
|
36354
|
-
2,
|
|
36355
|
-
1180,
|
|
36356
|
-
5884,
|
|
36357
|
-
6789,
|
|
36358
|
-
1289
|
|
36359
|
-
],
|
|
36360
|
-
"removed_member_ids": [],
|
|
36361
|
-
"group_type": "vcomply",
|
|
36362
|
-
"state": 1,
|
|
36363
|
-
"_id": "63e62270604f89000886e36c",
|
|
36364
|
-
"group_name": "check after CRON",
|
|
36365
|
-
"group_description": "",
|
|
36366
|
-
"roles": [],
|
|
36367
|
-
"associatedUsers": [
|
|
36368
|
-
{
|
|
36369
|
-
"_id": "63e62270604f89000886e36d",
|
|
36370
|
-
"userId": {
|
|
36371
|
-
"profile_pic": "",
|
|
36372
|
-
"license_type": "power users",
|
|
36373
|
-
"_id": "5e4850da61ca5e14e142ea04",
|
|
36374
|
-
"member_id": 2,
|
|
36375
|
-
"member_name": "Harshvardhan Kariwala",
|
|
36376
|
-
"member_email": "anmol1@excellencetech.com"
|
|
36377
|
-
}
|
|
36378
|
-
},
|
|
36379
|
-
{
|
|
36380
|
-
"_id": "63e62270604f89000886e36e",
|
|
36381
|
-
"userId": {
|
|
36382
|
-
"profile_pic": "1582775854007_download.png",
|
|
36383
|
-
"license_type": "power users",
|
|
36384
|
-
"_id": "5e48511561ca5e6a2e513f1f",
|
|
36385
|
-
"member_id": 1180,
|
|
36386
|
-
"member_name": "Sibajee Biswal",
|
|
36387
|
-
"member_email": "sibajee@excellencetech.com"
|
|
36388
|
-
}
|
|
36389
|
-
},
|
|
36390
|
-
{
|
|
36391
|
-
"_id": "63e62270604f89000886e36f",
|
|
36392
|
-
"userId": {
|
|
36393
|
-
"profile_pic": "1598864617506_image.png",
|
|
36394
|
-
"license_type": "power users",
|
|
36395
|
-
"_id": "5e4851ea61ca5e14e142eaa7",
|
|
36396
|
-
"member_name": "Md. Abu Raihan",
|
|
36397
|
-
"member_email": "dev3@v-comply.com",
|
|
36398
|
-
"member_id": 5884
|
|
36399
|
-
}
|
|
36400
|
-
},
|
|
36401
|
-
{
|
|
36402
|
-
"_id": "63e62270604f89000886e370",
|
|
36403
|
-
"userId": {
|
|
36404
|
-
"profile_pic": "1670322521041_logo.png",
|
|
36405
|
-
"license_type": "power users",
|
|
36406
|
-
"_id": "5e48524d61ca5e14ee0c8daf",
|
|
36407
|
-
"member_name": "Satyendar Yadav",
|
|
36408
|
-
"member_email": "qa3@v-comply.com",
|
|
36409
|
-
"member_id": 6789
|
|
36410
|
-
}
|
|
36411
|
-
},
|
|
36412
|
-
{
|
|
36413
|
-
"_id": "63e62270604f89000886e371",
|
|
36414
|
-
"userId": {
|
|
36415
|
-
"profile_pic": "1589283371004_assetize_it_architecture (1).png",
|
|
36416
|
-
"license_type": "power users",
|
|
36417
|
-
"_id": "5e48511a61ca5e14ee0c8d1b",
|
|
36418
|
-
"member_id": 1289,
|
|
36419
|
-
"member_name": "Irshad@vcomply",
|
|
36420
|
-
"member_email": "irshad@v-comply.com"
|
|
36421
|
-
}
|
|
36422
|
-
}
|
|
36423
|
-
],
|
|
36424
|
-
"organisation_id": 1,
|
|
36425
|
-
"created_by": {
|
|
36426
|
-
"profile_pic": "1671533780051_1671445156080_flavor_prod.png",
|
|
36427
|
-
"_id": "5e4850db61ca5e14e142ea08",
|
|
36428
|
-
"member_id": 15,
|
|
36429
|
-
"member_email": "anmol@excellencetech.com",
|
|
36430
|
-
"member_name": "Anmol Kumar"
|
|
36431
|
-
},
|
|
36432
|
-
"modified_by": {
|
|
36433
|
-
"profile_pic": "1671533780051_1671445156080_flavor_prod.png",
|
|
36434
|
-
"_id": "5e4850db61ca5e14e142ea08",
|
|
36435
|
-
"member_id": 15,
|
|
36436
|
-
"member_email": "anmol@excellencetech.com",
|
|
36437
|
-
"member_name": "Anmol Kumar"
|
|
36438
|
-
},
|
|
36439
|
-
"created_at": 1676026480,
|
|
36440
|
-
"updated_at": 1676026480,
|
|
36441
|
-
"member_count": 5,
|
|
36442
|
-
"group_id": 968,
|
|
36443
|
-
"__v": 0
|
|
36444
|
-
},
|
|
36445
|
-
];
|
|
36166
|
+
this.policyAccessType = 0;
|
|
36167
|
+
this.orgUsersList = [];
|
|
36168
|
+
this.groupList = [];
|
|
36169
|
+
this.selectedUsers = [];
|
|
36170
|
+
this.selectedGroups = [];
|
|
36171
|
+
this.disabledIds = [];
|
|
36172
|
+
this.usersAccessList = [];
|
|
36173
|
+
this.groupsAccessList = [];
|
|
36174
|
+
this.close = new i0.EventEmitter();
|
|
36175
|
+
this.saveCheckPoint = new i0.EventEmitter();
|
|
36176
|
+
this.setPolicyAccessType = new i0.EventEmitter();
|
|
36446
36177
|
}
|
|
36447
36178
|
PolicyAccessComponent.prototype.ngOnInit = function () {
|
|
36448
36179
|
};
|
|
36180
|
+
PolicyAccessComponent.prototype.setAccessField = function (event) {
|
|
36181
|
+
this.policyAccessType = event;
|
|
36182
|
+
this.selectedGroups = [];
|
|
36183
|
+
if (event === 1) {
|
|
36184
|
+
this.selectedUsers = [];
|
|
36185
|
+
}
|
|
36186
|
+
};
|
|
36187
|
+
PolicyAccessComponent.prototype.disableSelector = function () {
|
|
36188
|
+
this.close.emit();
|
|
36189
|
+
};
|
|
36190
|
+
PolicyAccessComponent.prototype.saveSelectedUsers = function (event) {
|
|
36191
|
+
this.saveCheckPoint.emit(event);
|
|
36192
|
+
this.setPolicyAccessType.emit(this.policyAccessType);
|
|
36193
|
+
};
|
|
36449
36194
|
return PolicyAccessComponent;
|
|
36450
36195
|
}());
|
|
36451
36196
|
PolicyAccessComponent.decorators = [
|
|
36452
36197
|
{ type: i0.Component, args: [{
|
|
36453
36198
|
selector: 'app-policy-access',
|
|
36454
|
-
template: "<div class=\"policy-access-dialog\">\r\n <div class=\"policy-access-dialog-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\">Specify Policy Access Type</div>\r\n </div>\r\n <div class=\"policy-access-dialog-body\">\r\n <div class=\"policy-access-dialog-body-inner\">\r\n <!-- Step 1 -->\r\n <div class=\"approvers-form-group vx-mb-2\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">STEP 1: ACCESS TYPE <span class=\"vx-fs-14 vx-txt-red\">*</span></div>\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between\">\r\n <app-cs-radio>\r\n <div class=\"approval-type vx-d-flex vx-align-center vx-justify-between vx-p-2 vx-pl-3 vx-pr-3\">\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/anyone.svg\" />\r\n <div class=\"vx-fs-11 vx-fw-500 vx-paragraph-txt vx-tt-uppercase\">EVERYONE WHO HAS ACCESS TO THIS POLICY CATEGORY</div>\r\n <i class=\"icons vx-fs-12 vx-txt-blue vx-ml-2\" [appTooltip]=\"'question mark text tooltip here...'\" placement=\"bottom\" delay=\"0\" type=\"white\" [tooltipMandatory]=\"true\"></i>\r\n </div>\r\n <div class=\"vx-d-block\">\r\n <span class=\"circle-selection\"></span>\r\n <i class=\"icons ckeck-selection vx-fs-16\"></i>\r\n </div>\r\n </div>\r\n </app-cs-radio>\r\n <app-cs-radio>\r\n <div class=\"approval-type vx-d-flex vx-align-center vx-justify-between vx-p-2 vx-pl-3 vx-pr-3\">\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/round-robin.svg\" />\r\n <div class=\"vx-fs-11 vx-fw-500 vx-paragraph-txt vx-tt-uppercase\">SELECT USERS & GROUPS</div>\r\n <i class=\"icons vx-fs-12 vx-txt-blue vx-ml-2\" [appTooltip]=\"'question mark text tooltip here...'\" placement=\"bottom\" delay=\"0\" type=\"white\" [tooltipMandatory]=\"true\"></i>\r\n </div>\r\n <div class=\"vx-d-block\">\r\n <span class=\"circle-selection\"></span>\r\n <i class=\"icons ckeck-selection vx-fs-16\"></i>\r\n </div>\r\n </div>\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n\r\n <!-- Step 2 -->\r\n <div class=\"approvers-form-group vx-mb-2\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">STEP 2: SELECT USER(S) <span class=\"vx-fs-14 vx-txt-red\">*</span></div>\r\n <div class=\"approvers-user-group\">\r\n <user-group-list [userlist]=\"
|
|
36455
|
-
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 .policy-access-dialog{position:fixed;top:0;right:500px;bottom:0;left:0}::ng-deep .policy-access-dialog:before{background:#1E5DD3;content:\"\";position:absolute;top:0;left:0;right:0;width:100%;height:3px}::ng-deep .policy-access-dialog-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .policy-access-dialog-body{background:#fff;height:calc(100vh - 2.75rem);padding:2rem}::ng-deep .policy-access-dialog-body-inner{height:calc(100vh - 6.75rem)}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio{width:calc(50% - .25rem)}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item{width:100%}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .radio,::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .radiomark{display:none!important}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .value{margin-left:0!important;max-width:100%!important;width:100%}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .value .approval-type{border-radius:.25rem;border:1px solid #dbdbdb;width:100%}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .value .approval-type img{height:2rem;margin-right:.75rem}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .value .approval-type .circle-selection{border-radius:50%;border:1px solid #dbdbdb;display:block;width:1rem;min-width:1rem;height:1rem}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .value .approval-type .ckeck-selection{color:#34aa44;display:none}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item input[type=radio]:checked~.value .approval-type{background:#EEFCF0;border:1px solid #34AA44}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item input[type=radio]:checked~.value .approval-type .circle-selection{display:none}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item input[type=radio]:checked~.value .approval-type .ckeck-selection{display:block}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list{position:static!important}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list:before{display:none!important}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-head{display:none!important}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-body{border-radius:.25rem;border:1px solid #dbdbdb;
|
|
36199
|
+
template: "<div class=\"policy-access-dialog\">\r\n <div class=\"policy-access-dialog-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\">Specify Policy Access Type</div>\r\n </div>\r\n <div class=\"policy-access-dialog-body\">\r\n <div class=\"policy-access-dialog-body-inner\">\r\n <!-- Step 1 -->\r\n <div class=\"approvers-form-group vx-mb-2\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">STEP 1: ACCESS TYPE <span class=\"vx-fs-14 vx-txt-red\">*</span></div>\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between\">\r\n <app-cs-radio \r\n [name]=\"'policyAccessType'\" [checked]=\"policyAccessType === 0\" (checkedEvent)=\"setAccessField(0)\">\r\n <div class=\"approval-type vx-d-flex vx-align-center vx-justify-between vx-p-2 vx-pl-3 vx-pr-3\">\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/anyone.svg\" />\r\n <div class=\"vx-fs-11 vx-fw-500 vx-paragraph-txt vx-tt-uppercase\">EVERYONE WHO HAS ACCESS TO THIS POLICY CATEGORY</div>\r\n <i class=\"icons vx-fs-12 vx-txt-blue vx-ml-2\" [appTooltip]=\"'question mark text tooltip here...'\" placement=\"bottom\" delay=\"0\" type=\"white\" [tooltipMandatory]=\"true\"></i>\r\n </div>\r\n <div class=\"vx-d-block\">\r\n <span class=\"circle-selection\"></span>\r\n <i class=\"icons ckeck-selection vx-fs-16\"></i>\r\n </div>\r\n </div>\r\n </app-cs-radio>\r\n <app-cs-radio\r\n [name]=\"'policyAccessType'\" [checked]=\"policyAccessType === 1\" (checkedEvent)=\"setAccessField(1)\">\r\n <div class=\"approval-type vx-d-flex vx-align-center vx-justify-between vx-p-2 vx-pl-3 vx-pr-3\">\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/round-robin.svg\" />\r\n <div class=\"vx-fs-11 vx-fw-500 vx-paragraph-txt vx-tt-uppercase\">SELECT USERS & GROUPS</div>\r\n <i class=\"icons vx-fs-12 vx-txt-blue vx-ml-2\" [appTooltip]=\"'question mark text tooltip here...'\" placement=\"bottom\" delay=\"0\" type=\"white\" [tooltipMandatory]=\"true\"></i>\r\n </div>\r\n <div class=\"vx-d-block\">\r\n <span class=\"circle-selection\"></span>\r\n <i class=\"icons ckeck-selection vx-fs-16\"></i>\r\n </div>\r\n </div>\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n\r\n <!-- Step 2 -->\r\n <div class=\"approvers-form-group vx-mb-2\">\r\n <div class=\"vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">STEP 2: SELECT USER(S) <span class=\"vx-fs-14 vx-txt-red\">*</span></div>\r\n <div class=\"approvers-user-group\">\r\n <user-group-list \r\n *ngIf=\"policyAccessType === 0\"\r\n [userlist]=\"usersAccessList\" \r\n [groupEnabled]=\"true\" \r\n [groupList]=\"groupsAccessList\"\r\n [selectedUsers]=\"usersAccessList\"\r\n [selectedGroups]=\"selectedGroups\"\r\n [disabledIds]=\"disabledIds\"\r\n [nonRemovableUserIds]=\"disabledIds\"\r\n [allUserSelectedDisabled]=\"true\"\r\n (cancel)=\"disableSelector()\"\r\n (save)=\"saveSelectedUsers($event)\"\r\n ></user-group-list>\r\n\r\n <user-group-list \r\n *ngIf=\"policyAccessType === 1\"\r\n [userlist]=\"orgUsersList\" \r\n [groupEnabled]=\"true\" \r\n [groupList]=\"groupList\"\r\n [selectedUsers]=\"selectedUsers\"\r\n [selectedGroups]=\"selectedGroups\"\r\n (cancel)=\"disableSelector()\"\r\n (save)=\"saveSelectedUsers($event)\"\r\n ></user-group-list>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n\r\n<!-- [selectedUsers]=\"policyForm.CCFailEmail\"\r\n[selectedGroups]=\"policyForm.CCFailEmailGroup\"\r\n(save)=\"saveSelectedList('ccFail', $event)\" -->",
|
|
36200
|
+
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 .policy-access-dialog{position:fixed;top:0;right:500px;bottom:0;left:0}::ng-deep .policy-access-dialog:before{background:#1E5DD3;content:\"\";position:absolute;top:0;left:0;right:0;width:100%;height:3px}::ng-deep .policy-access-dialog-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .policy-access-dialog-body{background:#fff;height:calc(100vh - 2.75rem);padding:2rem;overflow:hidden}::ng-deep .policy-access-dialog-body-inner{height:calc(100vh - 6.75rem)}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio{width:calc(50% - .25rem)}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item{width:100%}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .radio,::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .radiomark{display:none!important}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .value{margin-left:0!important;max-width:100%!important;width:100%}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .value .approval-type{border-radius:.25rem;border:1px solid #dbdbdb;width:100%}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .value .approval-type img{height:2rem;margin-right:.75rem}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .value .approval-type .circle-selection{border-radius:50%;border:1px solid #dbdbdb;display:block;width:1rem;min-width:1rem;height:1rem}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item .value .approval-type .ckeck-selection{color:#34aa44;display:none}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item input[type=radio]:checked~.value .approval-type{background:#EEFCF0;border:1px solid #34AA44}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item input[type=radio]:checked~.value .approval-type .circle-selection{display:none}::ng-deep .policy-access-dialog-body-inner .approvers-form-group app-cs-radio .radio-item input[type=radio]:checked~.value .approval-type .ckeck-selection{display:block}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list{position:static!important}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list:before{display:none!important}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-head{display:none!important}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-body{padding:0!important;height:auto!important;margin-bottom:1rem}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-body-inner{border-radius:.25rem;border:1px solid #dbdbdb;margin-bottom:1rem}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-body .user-group-list-tab{border-bottom:1px solid #dbdbdb;padding:.75rem .75rem 0}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-body .search-block{padding:0 .75rem}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-body .search-block i{left:1.75rem}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-body .user-group-list-mid{padding:0 .75rem;width:100%;height:calc(100vh - 24.4rem)}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-mid{height:calc(100vh - 25.95rem)}::ng-deep .policy-access-dialog-body-inner .approvers-form-group .approvers-user-group user-group-list .user-group-list .user-group-list-footer vui-floating-bar .reviewer-floating-bar{padding:0!important}\n"]
|
|
36456
36201
|
},] }
|
|
36457
36202
|
];
|
|
36458
|
-
PolicyAccessComponent.ctorParameters = function () { return []; };
|
|
36203
|
+
PolicyAccessComponent.ctorParameters = function () { return []; };
|
|
36204
|
+
PolicyAccessComponent.propDecorators = {
|
|
36205
|
+
policyAccessType: [{ type: i0.Input }],
|
|
36206
|
+
SelectedCategory: [{ type: i0.Input }],
|
|
36207
|
+
orgUsersList: [{ type: i0.Input }],
|
|
36208
|
+
groupList: [{ type: i0.Input }],
|
|
36209
|
+
selectedUsers: [{ type: i0.Input }],
|
|
36210
|
+
selectedGroups: [{ type: i0.Input }],
|
|
36211
|
+
disabledIds: [{ type: i0.Input }],
|
|
36212
|
+
usersAccessList: [{ type: i0.Input }],
|
|
36213
|
+
groupsAccessList: [{ type: i0.Input }],
|
|
36214
|
+
close: [{ type: i0.Output }],
|
|
36215
|
+
saveCheckPoint: [{ type: i0.Output }],
|
|
36216
|
+
setPolicyAccessType: [{ type: i0.Output }]
|
|
36217
|
+
};
|
|
36459
36218
|
|
|
36460
36219
|
var ApprovalWorkflowListComponent = /** @class */ (function () {
|
|
36461
36220
|
function ApprovalWorkflowListComponent() {
|