vcomply-workflow-engine 0.0.1 → 0.0.2
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 +804 -165
- package/bundles/vcomply-workflow-engine.umd.js.map +1 -1
- package/esm2015/lib/interfaces/issue-data.js +2 -0
- package/esm2015/lib/interfaces/issue-data.ngsummary.json +1 -0
- package/esm2015/lib/log-an-issue/log-an-issue.component.js +396 -52
- package/esm2015/lib/log-an-issue/log-an-issue.component.ngfactory.js +228 -175
- package/esm2015/lib/log-an-issue/log-an-issue.component.ngsummary.json +1 -1
- package/esm2015/lib/more-option/more-option.component.js +20 -20
- package/esm2015/lib/pipes/search.pipe.js +53 -10
- package/esm2015/lib/sharedComponents/checkbox-list/checkbox-list.component.js +2 -2
- package/esm2015/lib/sharedComponents/checkbox-list/checkbox-list.component.ngfactory.js +3 -3
- package/esm2015/lib/sharedComponents/list-loader/list-loader.component.js +15 -0
- package/esm2015/lib/sharedComponents/list-loader/list-loader.component.ngfactory.js +19 -0
- package/esm2015/lib/sharedComponents/list-loader/list-loader.component.ngsummary.json +1 -0
- package/esm2015/lib/sharedComponents/pipes/array-filter.pipe.js +14 -0
- package/esm2015/lib/sharedComponents/pipes/array-filter.pipe.ngsummary.json +1 -0
- package/esm2015/lib/sharedComponents/radio-list/radio-list.component.js +7 -4
- package/esm2015/lib/sharedComponents/radio-list/radio-list.component.ngfactory.js +4 -4
- package/esm2015/lib/sharedComponents/radio-list/radio-list.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/responsibility-risk-selector/responsibility-risk-selector.component.js +70 -0
- package/esm2015/lib/sharedComponents/responsibility-risk-selector/responsibility-risk-selector.component.ngfactory.js +51 -0
- package/esm2015/lib/sharedComponents/responsibility-risk-selector/responsibility-risk-selector.component.ngsummary.json +1 -0
- package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.js +15 -7
- package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.ngfactory.js +42 -35
- package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.ngsummary.json +1 -1
- package/esm2015/lib/workflow-engine.module.js +8 -1
- package/esm2015/lib/workflow-engine.module.ngfactory.js +1 -1
- package/esm2015/lib/workflow-services/log-issue.service.js +100 -10
- package/esm2015/lib/workflow-services/log-issue.service.ngsummary.json +1 -1
- package/esm2015/vcomply-workflow-engine.js +45 -42
- package/esm2015/vcomply-workflow-engine.ngsummary.json +1 -1
- package/fesm2015/vcomply-workflow-engine.js +686 -100
- package/fesm2015/vcomply-workflow-engine.js.map +1 -1
- package/lib/interfaces/issue-data.d.ts +21 -0
- package/lib/log-an-issue/log-an-issue.component.d.ts +67 -13
- package/lib/pipes/search.pipe.d.ts +1 -1
- package/lib/sharedComponents/list-loader/list-loader.component.d.ts +5 -0
- package/lib/sharedComponents/list-loader/list-loader.component.ngfactory.d.ts +1 -0
- package/lib/sharedComponents/pipes/array-filter.pipe.d.ts +4 -0
- package/lib/sharedComponents/radio-list/radio-list.component.d.ts +3 -2
- package/lib/sharedComponents/responsibility-risk-selector/responsibility-risk-selector.component.d.ts +23 -0
- package/lib/sharedComponents/responsibility-risk-selector/responsibility-risk-selector.component.ngfactory.d.ts +1 -0
- package/lib/workflow-engine-container/workflow-engine-container.component.d.ts +11 -3
- package/lib/workflow-services/log-issue.service.d.ts +6 -1
- package/package.json +1 -1
- package/vcomply-workflow-engine.d.ts +44 -41
- package/vcomply-workflow-engine.metadata.json +1 -1
|
@@ -4,7 +4,7 @@ import * as i1 from '@angular/common/http';
|
|
|
4
4
|
import { HttpHeaders, HttpClient, HttpClientModule } from '@angular/common/http';
|
|
5
5
|
import { Subject } from 'rxjs';
|
|
6
6
|
import { cloneDeep, uniqBy } from 'lodash';
|
|
7
|
-
import { retry } from 'rxjs/operators';
|
|
7
|
+
import { retry, map } from 'rxjs/operators';
|
|
8
8
|
import { JwtHelperService } from '@auth0/angular-jwt';
|
|
9
9
|
import * as moment from 'moment';
|
|
10
10
|
import { PlatformLocation, CommonModule } from '@angular/common';
|
|
@@ -86,9 +86,15 @@ class WorkflowEngineContainerComponent {
|
|
|
86
86
|
this.allowedWorkflows = [];
|
|
87
87
|
this.frameworkDetails = []; // only for compliance part for framework
|
|
88
88
|
this.selectedRC = '';
|
|
89
|
-
this.
|
|
90
|
-
|
|
91
|
-
|
|
89
|
+
this.reponsibilityData = {
|
|
90
|
+
responsibilityId: null,
|
|
91
|
+
responsibilityName: '',
|
|
92
|
+
rcId: null
|
|
93
|
+
};
|
|
94
|
+
this.issueData = {
|
|
95
|
+
auditPlanId: null,
|
|
96
|
+
auditPlanName: '',
|
|
97
|
+
rcId: null
|
|
92
98
|
};
|
|
93
99
|
this.entrustButtonName = 'Entrust';
|
|
94
100
|
this.convertFileData = {};
|
|
@@ -336,7 +342,7 @@ class WorkflowEngineContainerComponent {
|
|
|
336
342
|
WorkflowEngineContainerComponent.decorators = [
|
|
337
343
|
{ type: Component, args: [{
|
|
338
344
|
selector: 'app-workflow-engine-container',
|
|
339
|
-
template: "<app-snack-bar></app-snack-bar>\r\n<div class=\"workflow-engine-overlay\"></div>\r\n<div class=\"workflow-engine\" [class.animate]=\"animation\" [class.bg]=\"(!isWorkflowSelectorEnabled || riskBulkUpload?.showCategoryList) && (!policy?.showCreateDocuments)\">\r\n <button (click)=\"closeWorkflowEngine()\" class=\"close\" [appTooltip]=\"'[Esc] to close'\" placement=\"left\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible || !isWorkflowSelectorEnabled\"\r\n [class.smiley-opened]=\"riskComponent?.showSmiley || logIssueComponent?.showSmiley || compliance?.showSmiley || (policy?.showCreateDocuments)\r\n || responsibilityBulkUpload?.showSmiley || responsibilityBulkUpload?.showExcel || riskBulkUpload?.showSmiley || riskBulkUpload?.showExcel\">\r\n <i class=\"icons\"></i>\r\n </button>\r\n <div class=\"workflow-engine-container\" [ngSwitch]=\"currentWorkflow?.code\">\r\n <div *ngIf=\"!(uiKitService.isSmileyOn)\" class=\"workflow-engine-more\" [hidden]=\"showMoreOption === false || policy?.showCreateDocuments\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\" [class.read-only]=\"uiKitService?.isLoader\">\r\n <app-more-option #moreOption [currentWorkflow]=\"currentWorkflow.code\" [openedFrom]=\"openedFrom\"\r\n (selectedOption)=\"addMoreInfo($event)\">\r\n </app-more-option>\r\n </div>\r\n <div style=\"background-color:white\" class=\"workflow-engine-form\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\"\r\n [class.no-shadow]=\"currentWorkflow?.code == 'AMR'|| currentWorkflow?.code == 'CMR' || uiKitService.isSmileyOn || policy?.showCreateDocuments\">\r\n <div class=\"container\" (scroll)=\"scrollForm()\">\r\n <div *ngIf=\"!(uiKitService.isSmileyOn || policy?.showCreateDocuments)\" class=\"form-group-row\" #dropdownRow\r\n [class.disabled]=\"mode === 'EDIT' || !isWorkflowSelectorEnabled || disableWorkflowChange\">\r\n <div class=\"left\" [class.checked]=\"currentWorkflow\">\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\r\n </svg>\r\n </div>\r\n <div class=\"right \">\r\n <div class=\"vx-form-group\" #dropdown>\r\n <label class=\"vx-control-panel\">Select a Workflow <span class=\"required\">*</span></label>\r\n <div class=\"select\" *ngIf=\"!currentWorkflow\" (click)=\"editWorkflow()\">\r\n <input type=\"text\" placeholder=\"Select a Workflow\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"currentWorkflow\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\">{{currentWorkflow?.workflowName}}</span>\r\n </div>\r\n <button class=\"edit\" type=\"button\" (click)=\"editWorkflow()\" *ngIf=\"!workflowList\"><i\r\n class=\"icons\"></i> Edit</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <app-create-documents></app-create-documents> -->\r\n <!-- <app-bulk-view></app-bulk-view> -->\r\n <!-- <app-bulk-responsibility-view></app-bulk-responsibility-view> -->\r\n <app-workflow-compliance (disconnectRefresh)=\"isHostRefreshActive = $event\" [isEntrust]=\"entrustButtonName.toLowerCase() == 'entrust' \" [responsibilityId]=\"id\" [mode]=\"mode\" [frameworkDetails]=\"frameworkDetails\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\" *ngSwitchCase=\"'CAR'\" #responsibility\r\n (pickerChanged)=\"decideViewMoreOption($event)\" (populateOption)=\"populateMoreOption($event)\"\r\n (hideElementsFromMoreOptions)=\"hideElementsFromMoreOptions($event)\" [selectedRC]=\"selectedRC\"\r\n [openedFrom]=\"openedFrom\" (resetForm)=\"onResetForm()\"></app-workflow-compliance>\r\n <app-workflow-risk (disconnectRefresh)=\"isHostRefreshActive = $event\" *ngSwitchCase=\"'AAR'\" #risk (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\" (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\" (refreshForm)=\"onResetForm()\" [mode]=\"mode\" [riskId]=\"id\"></app-workflow-risk>\r\n <app-workflow-policy (disconnectRefresh)=\"isHostRefreshActive = $event\" *ngSwitchCase=\"'CAP'\" #policy\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\" (shiftToEditMode)=\"shiftToEditMode()\"\r\n [policyId]=\"id\" [mode]=\"mode\" [convertFileData]=\"convertFileData\" [selectedCategory]=\"selectedCategory\"\r\n (populateOption)=\"populateMoreOption($event)\"(pickerChanged)=\"decideViewMoreOption($event)\"></app-workflow-policy>\r\n <app-workflow-survey-form *ngSwitchCase=\"'CAS'\" #surveyForm></app-workflow-survey-form>\r\n <app-add-multiple-risk (disconnectRefresh)=\"isHostRefreshActive = $event\" *ngSwitchCase=\"'AMR'\" #multipleRisk\r\n (pickerChanged)=\"decideViewMoreOption($event)\" (closeWorkflow)=\"closeWorkflowEngine($event)\"></app-add-multiple-risk>\r\n <app-add-multiple-responsibility (disconnectRefresh)=\"isHostRefreshActive = $event\" (closeWorkflow)=\"closeWorkflowEngine($event)\" *ngSwitchCase=\"'CMR'\" #multipleResponsibility>\r\n </app-add-multiple-responsibility>\r\n <app-log-an-issue *ngSwitchCase=\"'LAI'\" [
|
|
345
|
+
template: "<app-snack-bar></app-snack-bar>\r\n<div class=\"workflow-engine-overlay\"></div>\r\n<div class=\"workflow-engine\" [class.animate]=\"animation\" [class.bg]=\"(!isWorkflowSelectorEnabled || riskBulkUpload?.showCategoryList) && (!policy?.showCreateDocuments)\">\r\n <button (click)=\"closeWorkflowEngine()\" class=\"close\" [appTooltip]=\"'[Esc] to close'\" placement=\"left\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible || !isWorkflowSelectorEnabled\"\r\n [class.smiley-opened]=\"riskComponent?.showSmiley || logIssueComponent?.showSmiley || compliance?.showSmiley || (policy?.showCreateDocuments)\r\n || responsibilityBulkUpload?.showSmiley || responsibilityBulkUpload?.showExcel || riskBulkUpload?.showSmiley || riskBulkUpload?.showExcel\">\r\n <i class=\"icons\"></i>\r\n </button>\r\n <div class=\"workflow-engine-container\" [ngSwitch]=\"currentWorkflow?.code\">\r\n <div *ngIf=\"!(uiKitService.isSmileyOn)\" class=\"workflow-engine-more\" [hidden]=\"showMoreOption === false || policy?.showCreateDocuments\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\" [class.read-only]=\"uiKitService?.isLoader\">\r\n <app-more-option #moreOption [currentWorkflow]=\"currentWorkflow.code\" [openedFrom]=\"openedFrom\"\r\n (selectedOption)=\"addMoreInfo($event)\">\r\n </app-more-option>\r\n </div>\r\n <div style=\"background-color:white\" class=\"workflow-engine-form\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\"\r\n [class.no-shadow]=\"currentWorkflow?.code == 'AMR'|| currentWorkflow?.code == 'CMR' || uiKitService.isSmileyOn || policy?.showCreateDocuments\">\r\n <div class=\"container\" (scroll)=\"scrollForm()\">\r\n <ng-container *ngIf=\"!['VIEW_AUDIT_EXECUTION_SUMMARY','EXECUTE_AUDIT_PLAN'].includes(openedFrom)\">\r\n <div *ngIf=\"!(uiKitService.isSmileyOn || policy?.showCreateDocuments)\" class=\"form-group-row\" #dropdownRow\r\n [class.disabled]=\"mode === 'EDIT' || !isWorkflowSelectorEnabled || disableWorkflowChange\">\r\n <div class=\"left\" [class.checked]=\"currentWorkflow\">\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\r\n </svg>\r\n </div>\r\n <div class=\"right \">\r\n <div class=\"vx-form-group\" #dropdown>\r\n <label class=\"vx-control-panel\">Select a Workflow <span class=\"required\">*</span></label>\r\n <div class=\"select\" *ngIf=\"!currentWorkflow\" (click)=\"editWorkflow()\">\r\n <input type=\"text\" placeholder=\"Select a Workflow\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"currentWorkflow\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\">{{currentWorkflow?.workflowName}}</span>\r\n </div>\r\n <button class=\"edit\" type=\"button\" (click)=\"editWorkflow()\" *ngIf=\"!workflowList\"><i\r\n class=\"icons\"></i> Edit</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- <app-create-documents></app-create-documents> -->\r\n <!-- <app-bulk-view></app-bulk-view> -->\r\n <!-- <app-bulk-responsibility-view></app-bulk-responsibility-view> -->\r\n <app-workflow-compliance (disconnectRefresh)=\"isHostRefreshActive = $event\" [isEntrust]=\"entrustButtonName.toLowerCase() == 'entrust' \" [responsibilityId]=\"id\" [mode]=\"mode\" [frameworkDetails]=\"frameworkDetails\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\" *ngSwitchCase=\"'CAR'\" #responsibility\r\n (pickerChanged)=\"decideViewMoreOption($event)\" (populateOption)=\"populateMoreOption($event)\"\r\n (hideElementsFromMoreOptions)=\"hideElementsFromMoreOptions($event)\" [selectedRC]=\"selectedRC\"\r\n [openedFrom]=\"openedFrom\" (resetForm)=\"onResetForm()\"></app-workflow-compliance>\r\n <app-workflow-risk (disconnectRefresh)=\"isHostRefreshActive = $event\" *ngSwitchCase=\"'AAR'\" #risk (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\" (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\" (refreshForm)=\"onResetForm()\" [mode]=\"mode\" [riskId]=\"id\"></app-workflow-risk>\r\n <app-workflow-policy (disconnectRefresh)=\"isHostRefreshActive = $event\" *ngSwitchCase=\"'CAP'\" #policy\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\" (shiftToEditMode)=\"shiftToEditMode()\"\r\n [policyId]=\"id\" [mode]=\"mode\" [convertFileData]=\"convertFileData\" [selectedCategory]=\"selectedCategory\"\r\n (populateOption)=\"populateMoreOption($event)\"(pickerChanged)=\"decideViewMoreOption($event)\"></app-workflow-policy>\r\n <app-workflow-survey-form *ngSwitchCase=\"'CAS'\" #surveyForm></app-workflow-survey-form>\r\n <app-add-multiple-risk (disconnectRefresh)=\"isHostRefreshActive = $event\" *ngSwitchCase=\"'AMR'\" #multipleRisk\r\n (pickerChanged)=\"decideViewMoreOption($event)\" (closeWorkflow)=\"closeWorkflowEngine($event)\"></app-add-multiple-risk>\r\n <app-add-multiple-responsibility (disconnectRefresh)=\"isHostRefreshActive = $event\" (closeWorkflow)=\"closeWorkflowEngine($event)\" *ngSwitchCase=\"'CMR'\" #multipleResponsibility>\r\n </app-add-multiple-responsibility>\r\n <app-log-an-issue [issueDetails]=\"issueData\" *ngSwitchCase=\"'LAI'\" [reponsibilityData]=\"reponsibilityData\" [openedFrom]=\"openedFrom\" [issueId]=\"id\"\r\n #logAnIssue (disconnectRefresh)=\"isHostRefreshActive = $event\" (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\" (populateOption)=\"populateMoreOption($event)\" [(mode)]=\"mode\">\r\n </app-log-an-issue>\r\n </div>\r\n <button class=\"submit\" [class.disabled]=\"!isWorkflowSelectorEnabled\" *ngSwitchCase=\"'AAR'\"\r\n (click)=\"submit()\">{{mode==='EDIT' ? 'Update' : 'Add'}}</button>\r\n <button class=\"submit\" [class.disabled]=\"!isWorkflowSelectorEnabled || !riskBulkUpload?.category?.selectedCategory\"\r\n (click)=\"bulkUploadBrowse('AMR')\"\r\n *ngSwitchCase=\"'AMR'\">Browse</button>\r\n <button class=\"submit\" [class.disabled]=\"!isWorkflowSelectorEnabled\" (click)=\"bulkUploadBrowse('CMR')\"\r\n *ngSwitchCase=\"'CMR'\">Browse</button>\r\n <button class=\"submit\" [class.disabled]=\"!isWorkflowSelectorEnabled\" (click)=\"submit()\"\r\n *ngSwitchCase=\"'CAR'\">{{entrustButtonName !== '' ? entrustButtonName : 'Entrust'}}</button>\r\n <button class=\"submit\" [class.disabled]=\"!isWorkflowSelectorEnabled\" (click)=\"submit()\"\r\n *ngSwitchCase=\"'CAP'\">{{(convertFileData.fileName)?'NEXT':((mode=='EDIT')? 'Update':'Continue to draft')}}</button>\r\n <button class=\"submit\" [class.disabled]=\"!isWorkflowSelectorEnabled\" *ngSwitchCase=\"'CAS'\">\r\n Continue to draft </button>\r\n <button class=\"submit\" [class.disabled]=\"!isWorkflowSelectorEnabled\" *ngSwitchCase=\"'LAI'\"\r\n (click)=\"submit()\">{{mode==='EDIT' ? 'Update' : 'Add'}}</button>\r\n <div class=\"dropdown\" *ngIf=\"workflowList\" (click)=\"closeWorkflowList()\" [style.top.px]=\"dropdownTop\"\r\n [style.left.px]=\"dropdownLeft\" [style.width.px]=\"dropdownWidth\">\r\n <ul class=\"dropdown-list\">\r\n <li *ngFor=\"let workflow of workflowTypeList\" (click)=\"changeWorkflow($event,workflow)\">\r\n <app-cs-radio [value]=\"workflow?.code\" [checked]=\"currentWorkflow?.code===workflow?.code\">\r\n {{workflow?.workflowName}}</app-cs-radio>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"dropdown-overlay\" *ngIf=\"workflowList\" (click)=\"closeWorkflowList()\"></div>\r\n </div>\r\n <app-confirmation-alert (action)=\"confirmWorkflowChange($event)\" *ngIf=\"confirmationAlertConfig?.isVisible\"\r\n [message]=\"confirmationAlertConfig?.message\" [config]=\"confirmationAlertConfig\"></app-confirmation-alert>\r\n </div>\r\n</div>\r\n",
|
|
340
346
|
styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");.dropdown-overlay{z-index:2}.dropdown-overlay,.workflow-engine{position:fixed;top:0;right:0;bottom:0;left:0}.workflow-engine{background:rgba(0,0,0,.7);z-index:10}.workflow-engine button.close{position:absolute;background:transparent;cursor:pointer;border:none;font-size:18px;color:#000;top:5px;right:2px;z-index:11;padding:0;display:flex;align-items:center;justify-content:center;height:36px;width:36px;border-radius:2px}.workflow-engine button.close.bulk-opened,.workflow-engine button.close.smiley-opened{z-index:10}.workflow-engine button.close:hover{background:#f1f1f1}.workflow-engine button.close.disabled{pointer-events:none;opacity:.3;filter:grayscale(1)}.workflow-engine-container{position:fixed;top:0;right:0;bottom:0;background:#fff;display:flex;z-index:10;border-top:3px solid #1e5dd3}.workflow-engine-container:before{content:\"\";height:30px;position:absolute;top:0;right:0;left:0;z-index:11;background:linear-gradient(180deg,#fff 0,hsla(0,0%,100%,.75) 66%,hsla(0,0%,100%,.42) 81%,hsla(0,0%,100%,0));filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#ffffff\",endColorstr=\"#00ffffff\",GradientType=0)}.workflow-engine-more{width:318px;padding:36px 22px 36px 40px;height:100vh;overflow:auto;margin-left:-18px;scrollbar-width:none}@media screen and (max-height:900px){.workflow-engine-more{padding:20px 22px 36px 40px}}.workflow-engine-more::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}.workflow-engine-more::-webkit-scrollbar{width:1px;height:1px;background-color:transparent;position:absolute}.workflow-engine-more::-webkit-scrollbar-thumb{border-radius:1px;background-color:#dbdbdb;position:absolute}.workflow-engine-more.disabled{filter:grayscale(1);pointer-events:none}.workflow-engine-more.read-only{pointer-events:none}.workflow-engine-form{width:500px;position:relative;background:#fff}.workflow-engine-form .container{height:calc(100vh - 53px);padding:35px 30px 12px 62px;overflow:auto;margin-left:-22px;scrollbar-width:thin}.workflow-engine-form .container.disabled{pointer-events:none}.workflow-engine-form:before{content:\"\";top:0;bottom:-50px;left:0;width:1px;background:#f1f1f1;position:absolute}.workflow-engine-form button.submit{position:sticky;height:50px;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:48px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:100%;bottom:0;padding:0}.workflow-engine-form button.submit:disabled{background:#f1f1f1;border-color:#f1f1f1;pointer-events:none;cursor:not-allowed;color:#747576}.workflow-engine-form button.submit.disabled{pointer-events:none;opacity:.3;filter:grayscale(1)}.workflow-engine-form.disabled{filter:grayscale(1);pointer-events:none}.workflow-engine-form label.browse{padding:0;margin:0;display:block;position:sticky;bottom:0}.workflow-engine-form label.browse span{height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:19px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:100%}.workflow-engine-form label.browse input{position:absolute;width:100%;height:100%;z-index:1;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.workflow-engine-form .file-browsed{display:flex;align-items:center;background:#fff;border-top:1px solid #f1f1f1;border-bottom:1px solid #f1f1f1}.workflow-engine-form .file-browsed span{display:block;width:calc(100% - 164px);color:#161b2f;font-size:13px;font-weight:400;line-height:20px;padding:0 16px}.workflow-engine-form .file-browsed button{height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:19px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:164px;bottom:0}.workflow-engine-form:after{content:\"\";height:30px;position:absolute;right:0;bottom:50px;left:-20px;z-index:10;background:linear-gradient(180deg,hsla(0,0%,100%,0) 0,hsla(0,0%,100%,.75) 22%,#fff);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#00ffffff\",endColorstr=\"#ffffff\",GradientType=0)}.workflow-engine-form.no-shadow:after{display:none}.workflow-engine.animate{-webkit-animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}.workflow-engine.bg{background:#fff}@-webkit-keyframes animate-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes animate-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}", "@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.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-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}button{font-family:Poppins,sans-serif}::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{content:\"\";border-top:5px solid #707070;border-right:5px solid transparent;border-left:5px solid transparent;position:absolute;right:15px;top:calc(50% - 2px)}::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:#fff;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 rgba(30,93,211,.27)}::ng-deep .vx-form-group .select .custom-input.frequency-custom-input{padding-right:116px}::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}::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}::ng-deep .vx-form-group .tab-group .upload-file{padding:16px 24px;display:flex;align-items:center}::ng-deep .vx-form-group .tab-group .upload-file .image{width:80px;margin-right:20px}::ng-deep .vx-form-group .tab-group .upload-file .browse{display:flex;align-items:center;justify-content:center;width:calc(100% - 100px);text-align:center}::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:12px \u200B24px}::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%}::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:#fff}::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:11px!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;width:100%;margin-top:4px;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;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 .input,::ng-deep .vx-form-group input[type=text]{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#fff;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::-moz-placeholder,::ng-deep .vx-form-group input[type=text]::-moz-placeholder{color:#747576}::ng-deep .vx-form-group .input:-ms-input-placeholder,::ng-deep .vx-form-group input[type=text]:-ms-input-placeholder{color:#747576}::ng-deep .vx-form-group .input::placeholder,::ng-deep .vx-form-group input[type=text]::placeholder{color:#747576}::ng-deep .vx-form-group .input:focus,::ng-deep .vx-form-group .input:hover,::ng-deep .vx-form-group input[type=text]:focus,::ng-deep .vx-form-group input[type=text]:hover{border-color:#1e5dd3;box-shadow:0 0 5px rgba(30,93,211,.27)}::ng-deep .vx-form-group .input.error,::ng-deep .vx-form-group input[type=text].error{border-color:#eb2424;color:#eb2424;margin-bottom:4px}::ng-deep .vx-form-group .input.error:focus,::ng-deep .vx-form-group input[type=text].error:focus{box-shadow:0 0 5px rgba(211,30,30,.27)}::ng-deep .vx-form-group .input:disabled,::ng-deep .vx-form-group input[type=text]:disabled{background:#f1f1f1;cursor:not-allowed}::ng-deep .vx-form-group .input:disabled:hover,::ng-deep .vx-form-group input[type=text]:disabled:hover{border-color:#dbdbdb;box-shadow:none}::ng-deep .vx-form-group .input span.text,::ng-deep .vx-form-group input[type=text] span.text{font-size:13px;color:#747576;font-weight:400;display:block;width:100%}::ng-deep .vx-form-group .input .input-group,::ng-deep .vx-form-group input[type=text] .input-group{display:flex;align-items:center}::ng-deep .vx-form-group .input .input-group.counter,::ng-deep .vx-form-group input[type=text] .input-group.counter{min-width:96px;width:96px}::ng-deep .vx-form-group .input .input-group.counter button,::ng-deep .vx-form-group input[type=text] .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 .input-group.counter input,::ng-deep .vx-form-group input[type=text] .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 .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-outer-spin-button,::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}::ng-deep .vx-form-group .input+.file-list,::ng-deep .vx-form-group input[type=text]+.file-list{margin-top:8px}::ng-deep .vx-form-group .input::-moz-placeholder,::ng-deep .vx-form-group input[type=text]::-moz-placeholder{font-size:13px}::ng-deep .vx-form-group .input::placeholder,::ng-deep .vx-form-group input[type=text]::placeholder{font-size:13px}::ng-deep .vx-form-group .input:-ms-input-placeholder,::ng-deep .vx-form-group input[type=text]:-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group .input::-ms-input-placeholder,::ng-deep .vx-form-group input[type=text]::-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group .classification{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#fff;padding:8px 12px;display:flex;justify-content:space-between}::ng-deep .vx-form-group .classification label{width:100%;position:relative;z-index:1;margin:0 4px 0 0}::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 .chip-container{display:flex;width:calc(100% - 60px);align-items:center}::ng-deep .vx-form-group .selected .chip-container span.chip{background:#fff;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 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.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 button.count{background:#1e5dd3;border-radius:2px;height:24px;padding:2px 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:1px solid #f1f1f1;border-radius:2px;background:#fff;outline:none;cursor:pointer;display:block;height:24px;padding:0 5px 0 4px;font-size:11px;font-weight:500;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:#fff;box-shadow:0 0 5px #1e5dd3;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%}@media not all and (min-resolution:0.001dpcm){@supports (-webkit-appearance:none){::ng-deep .vx-form-group marx-editor .editor-container .editable-block:before{opacity:.72}}}::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}::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:22px}::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}::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}::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}::ng-deep .vx-form-group .date-time-picker:focus-within{border-color:#1e5dd3;box-shadow:0 0 5px rgba(30,93,211,.27)}::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:#fff;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::-moz-placeholder{color:#999;font-size:13px}::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:16px;position:absolute;left:12px;top:0;color:#bcbcbc;font-size:16px;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 .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}.left{width:36px;height:36px;margin-top:30px;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:#fff;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 0 #34aa44;-webkit-animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;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;-webkit-animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}.left .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;-webkit-animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards;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.hide{opacity:0;transition:all .2s ease-in-out}.form-group-row.disabled{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:0;right:0;bottom:0;left:0;background:#fff;opacity:.7}.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 .custom-input,.form-group-row.active .right .vx-form-group input{border-color:#1e5dd3;box-shadow:0 0 5px rgba(30,93,211,.27)}@-webkit-keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes strokeCheck{to{stroke-dashoffset:0}}@-webkit-keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}.action-list{width:220px}.action-list ul{padding:0;margin:0;-webkit-animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;background:#fff;box-shadow:0 3px 6px #1c5bd140;border-radius:4px;max-height:220px;overflow:auto}.action-list ul.action-item{display:block}.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}.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}.action-list ul.action-item li button i{font-size:17px;margin-right:10px;color:#1c5bd1}.action-list ul.action-item li button:hover{background:#f3f3f3}.action-list ul.action-item li .avatar-card{display:flex;align-items:center;width:100%;padding:7.5px}.action-list ul.action-item li .avatar-card.within-con{display:block}.action-list ul.action-item li .avatar-card .avatar{height:24px;width:24px!important;overflow:hidden;background:#4681ef;color:#fff;font-size:10px;display:inline-flex;margin-right:5px;border-radius:50%;align-items:center;justify-content:center;text-transform:uppercase}.action-list ul.action-item li .avatar-card .avatar img{width:100%}.action-list ul.action-item li .avatar-card .avatar+span.value{width:calc(100% - 29px)}.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;-moz-text-align-last:left;text-align-last:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:20px}.action-list ul.action-item li .avatar-card span.value i{font-size:8px;color:#1c5bd1;cursor:pointer;margin-right:5px}.action-list ul.action-item li .avatar-card.no-image{display:block}.action-list ul.action-item li .avatar-card.no-image span.value{width:100%;display:block}.action-list ul.action-item li .chip-item{color:#1e5dd3;padding:10px;display:flex;align-items:center}.action-list ul.action-item li .chip-item i{margin-right:7px;font-size:10px;cursor:pointer;display:inline-flex}.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}.action-list ul.action-item li .chip-item span.chip-block{display:block;width:100%}.action-list ul.action-item li .chip-item span.id{font-size:9px}.action-list ul.action-item li .within{display:flex;align-items:center;justify-content:flex-start}.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}.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}.action-list ul.action-item li:first-child{-webkit-animation:action-list-open .25s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .25s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(2){-webkit-animation:action-list-open .35s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .35s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(3){-webkit-animation:action-list-open .45s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .45s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(4){-webkit-animation:action-list-open .55s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .55s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(5){-webkit-animation:action-list-open .65s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .65s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(6){-webkit-animation:action-list-open .75s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .75s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(7){-webkit-animation:action-list-open .85s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .85s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(8){-webkit-animation:action-list-open .95s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .95s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(9){-webkit-animation:action-list-open 1.05s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open 1.05s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(10){-webkit-animation:action-list-open 1.15s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open 1.15s cubic-bezier(.25,.46,.45,.94) both}@-webkit-keyframes action-list-open{0%{transform:translateY(50px)}to{transform:translateY(0)}}@keyframes action-list-open{0%{transform:translateY(50px)}to{transform:translateY(0)}}@-webkit-keyframes scale-up-center{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@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:0;margin-bottom:0}.edit-loader{position:absolute;top:-3px;left:-3px;width:46px;height:46px;transform:rotate(180deg)}.circular-loader{-webkit-animation:rotate 2s linear infinite;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;-webkit-animation:dash 1.5s ease-in-out infinite;animation:dash 1.5s ease-in-out infinite;stroke-linecap:round}@-webkit-keyframes rotate{to{transform:rotate(1turn)}}@keyframes rotate{to{transform:rotate(1turn)}}@-webkit-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}}@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:#fff;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:0;right:0;bottom:0;left:0;z-index:999}.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:0;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;-webkit-animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;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-calendar-nav-left,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right,dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{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-calendar-nav-left:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn: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:#000;display:inline-flex}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays{display:flex;justify-content:space-around}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week .dp-calendar-weekday,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays .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-calendar-week button,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays 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-calendar-week button:hover,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-selected,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-selected{background:#1e5dd3}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-current-day,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays 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-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-left 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)}@-webkit-keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}@keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}"]
|
|
341
347
|
},] }
|
|
342
348
|
];
|
|
@@ -354,8 +360,10 @@ WorkflowEngineContainerComponent.propDecorators = {
|
|
|
354
360
|
allowedWorkflows: [{ type: Input }],
|
|
355
361
|
frameworkDetails: [{ type: Input }],
|
|
356
362
|
selectedRC: [{ type: Input }],
|
|
357
|
-
|
|
363
|
+
reponsibilityData: [{ type: Input }],
|
|
364
|
+
issueData: [{ type: Input }],
|
|
358
365
|
entrustButtonName: [{ type: Input }],
|
|
366
|
+
config: [{ type: Input }],
|
|
359
367
|
convertFileData: [{ type: Input }],
|
|
360
368
|
selectedCategory: [{ type: Input }],
|
|
361
369
|
riskComponent: [{ type: ViewChild, args: ['risk', { static: false },] }],
|
|
@@ -364,7 +372,7 @@ WorkflowEngineContainerComponent.propDecorators = {
|
|
|
364
372
|
compliance: [{ type: ViewChild, args: ['responsibility', { static: false },] }],
|
|
365
373
|
moreOption: [{ type: ViewChild, args: ['moreOption', { static: false },] }],
|
|
366
374
|
dropdown: [{ type: ViewChild, args: ['dropdown',] }],
|
|
367
|
-
dropdownRow: [{ type: ViewChild, args: ['dropdownRow',] }],
|
|
375
|
+
dropdownRow: [{ type: ViewChild, args: ['dropdownRow', { static: false },] }],
|
|
368
376
|
policy: [{ type: ViewChild, args: ['policy',] }],
|
|
369
377
|
logIssueComponent: [{ type: ViewChild, args: ['logAnIssue',] }],
|
|
370
378
|
onKeydownHandler: [{ type: HostListener, args: ['document:keydown.escape', ['$event'],] }],
|
|
@@ -4912,26 +4920,26 @@ class MoreOptionComponent {
|
|
|
4912
4920
|
{
|
|
4913
4921
|
imageUrl: 'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/exception-type.svg',
|
|
4914
4922
|
name: 'Exception type',
|
|
4915
|
-
tooltipTitle: '',
|
|
4916
|
-
tooltipMessage: '',
|
|
4923
|
+
tooltipTitle: 'Exception type',
|
|
4924
|
+
tooltipMessage: 'Exception type lets you specify whether there is a design or an operational effectiveness problem.',
|
|
4917
4925
|
checked: false,
|
|
4918
4926
|
hidden: false,
|
|
4919
4927
|
code: 'EXCEPTION_TYPE'
|
|
4920
4928
|
},
|
|
4921
|
-
{
|
|
4922
|
-
|
|
4923
|
-
|
|
4924
|
-
|
|
4925
|
-
|
|
4926
|
-
|
|
4927
|
-
|
|
4928
|
-
|
|
4929
|
-
},
|
|
4929
|
+
// {
|
|
4930
|
+
// imageUrl: 'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/issue-type.svg',
|
|
4931
|
+
// name: 'Issue type',
|
|
4932
|
+
// tooltipTitle: '',
|
|
4933
|
+
// tooltipMessage: '',
|
|
4934
|
+
// checked: false,
|
|
4935
|
+
// hidden: false,
|
|
4936
|
+
// code: 'ISSUE_TYPE'
|
|
4937
|
+
// },
|
|
4930
4938
|
{
|
|
4931
4939
|
imageUrl: 'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/priority.svg',
|
|
4932
4940
|
name: 'Priority',
|
|
4933
|
-
tooltipTitle: '',
|
|
4934
|
-
tooltipMessage: '',
|
|
4941
|
+
tooltipTitle: 'Priority',
|
|
4942
|
+
tooltipMessage: 'This sets the priority level for resolving each issue.',
|
|
4935
4943
|
checked: false,
|
|
4936
4944
|
hidden: false,
|
|
4937
4945
|
code: 'PRIORITY',
|
|
@@ -4939,8 +4947,8 @@ class MoreOptionComponent {
|
|
|
4939
4947
|
{
|
|
4940
4948
|
imageUrl: 'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/associated-risks.svg',
|
|
4941
4949
|
name: 'Associated Risks',
|
|
4942
|
-
tooltipTitle: '',
|
|
4943
|
-
tooltipMessage: '',
|
|
4950
|
+
tooltipTitle: 'Associated Risks',
|
|
4951
|
+
tooltipMessage: 'Associated risks lets you specify the risks that are related to this issue.',
|
|
4944
4952
|
checked: false,
|
|
4945
4953
|
hidden: false,
|
|
4946
4954
|
code: 'ASSOCIATED_RISKS'
|
|
@@ -4948,8 +4956,8 @@ class MoreOptionComponent {
|
|
|
4948
4956
|
{
|
|
4949
4957
|
imageUrl: 'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/oversight.svg',
|
|
4950
4958
|
name: 'Overseer',
|
|
4951
|
-
tooltipTitle: '',
|
|
4952
|
-
tooltipMessage: '',
|
|
4959
|
+
tooltipTitle: 'Overseer',
|
|
4960
|
+
tooltipMessage: 'Overseers are the persons responsible for overseeing an issue. These persons will receive email notifications about the issue status. As the person reporting this issue, you will automatically receive such email notifications.',
|
|
4953
4961
|
checked: false,
|
|
4954
4962
|
hidden: false,
|
|
4955
4963
|
code: 'OVERSIGHT'
|
|
@@ -4957,8 +4965,8 @@ class MoreOptionComponent {
|
|
|
4957
4965
|
{
|
|
4958
4966
|
imageUrl: 'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/format-evidence.svg',
|
|
4959
4967
|
name: 'Evidence',
|
|
4960
|
-
tooltipTitle: '',
|
|
4961
|
-
tooltipMessage: '',
|
|
4968
|
+
tooltipTitle: 'Evidence',
|
|
4969
|
+
tooltipMessage: 'You can require that the person resolving the issue uploads evidence to confirm',
|
|
4962
4970
|
checked: false,
|
|
4963
4971
|
hidden: false,
|
|
4964
4972
|
code: 'EVIDENCE'
|
|
@@ -10835,7 +10843,7 @@ class LogIssueService {
|
|
|
10835
10843
|
getIssueCategories() {
|
|
10836
10844
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
10837
10845
|
return this.http
|
|
10838
|
-
.get(this.env.
|
|
10846
|
+
.get(this.env.assurance + 'Issue/Category/List', { headers })
|
|
10839
10847
|
.pipe(retry(2));
|
|
10840
10848
|
}
|
|
10841
10849
|
getResponsibilityCenterList() {
|
|
@@ -10844,17 +10852,49 @@ class LogIssueService {
|
|
|
10844
10852
|
}
|
|
10845
10853
|
createIssue(payload) {
|
|
10846
10854
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
10847
|
-
return this.http.post(this.env.
|
|
10855
|
+
return this.http.post(this.env.assurance + 'Issue', payload, { headers }).pipe(retry(2));
|
|
10848
10856
|
}
|
|
10849
|
-
|
|
10857
|
+
updateIssue(payload, issueId) {
|
|
10858
|
+
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
10859
|
+
return this.http.put(this.env.assurance + 'Issue/' + issueId, payload, { headers }).pipe(retry(2));
|
|
10860
|
+
}
|
|
10861
|
+
getControlRisk(auditPlanId, type) {
|
|
10862
|
+
// Get Linked Audit Plan Responsibilities by Audit_Plan_Id
|
|
10863
|
+
// URL: https://devapi.v-comply.com/responsibilities/?mode=manage_audit_plan_responsibilities&id=610b329144c81a0009cbb598 Method: GET
|
|
10864
|
+
// Get Linked Audit Plan Risk by Audit_Plan_Id
|
|
10865
|
+
// URL: https://devapi.v-comply.com/risk/?mode=risk/manage_audit_plan_risk&id=610b329144c81a0009cbb598
|
|
10866
|
+
// Method: GET
|
|
10867
|
+
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
10868
|
+
if (type === 'RESPONSIBILITY') {
|
|
10869
|
+
return this.http.get(this.env.responsibilitiesGet + 'manage_audit_plan_responsibilities&id=' + auditPlanId, { headers }).pipe(map((items) => {
|
|
10870
|
+
return items.map((item) => ({
|
|
10871
|
+
itemId: item === null || item === void 0 ? void 0 : item.report_id,
|
|
10872
|
+
itemControlId: item === null || item === void 0 ? void 0 : item.control_id,
|
|
10873
|
+
itemControlName: item === null || item === void 0 ? void 0 : item.report_name,
|
|
10874
|
+
itemType: 'RESPONSIBILITY'
|
|
10875
|
+
}));
|
|
10876
|
+
}));
|
|
10877
|
+
}
|
|
10878
|
+
else if (type === 'RISK') {
|
|
10879
|
+
return this.http.get(this.env.risk + 'risk/manage_audit_plan_risk&id=' + auditPlanId, { headers }).pipe(map((items) => {
|
|
10880
|
+
return items.map((item) => ({
|
|
10881
|
+
itemId: item === null || item === void 0 ? void 0 : item.risk_id,
|
|
10882
|
+
itemControlId: item === null || item === void 0 ? void 0 : item.risk_control_id,
|
|
10883
|
+
itemControlName: item === null || item === void 0 ? void 0 : item.title,
|
|
10884
|
+
itemType: 'RISK'
|
|
10885
|
+
}));
|
|
10886
|
+
}));
|
|
10887
|
+
}
|
|
10888
|
+
else {
|
|
10889
|
+
return null;
|
|
10890
|
+
}
|
|
10891
|
+
}
|
|
10892
|
+
validate(issueData, openedFrom, isRCMandatory) {
|
|
10850
10893
|
const errors = [];
|
|
10851
10894
|
if (!issueData.issueName || issueData.issueName.trim().length === 0) {
|
|
10852
10895
|
errors.push('issueName');
|
|
10853
10896
|
}
|
|
10854
|
-
if (issueData.
|
|
10855
|
-
errors.push('issueCategory');
|
|
10856
|
-
}
|
|
10857
|
-
if (issueData.issueRC.length === 0 && opendedFrom === 'GLOBAL') {
|
|
10897
|
+
if (issueData.issueRC.length === 0 && isRCMandatory) {
|
|
10858
10898
|
errors.push('issueRC');
|
|
10859
10899
|
}
|
|
10860
10900
|
if (issueData.entrustTo.length === 0) {
|
|
@@ -10884,7 +10924,7 @@ class LogIssueService {
|
|
|
10884
10924
|
exception_type: optionFieldsStatus.EXCEPTION_TYPE ? issueData.exceptionType.toString() : '',
|
|
10885
10925
|
risk_class: (_a = issueData.issueRiskRating.toString()) !== null && _a !== void 0 ? _a : '',
|
|
10886
10926
|
priority: optionFieldsStatus.PRIORITY ? issueData.issuePriority.toString() : '',
|
|
10887
|
-
issue_category_id: (_b = this.arrayToId(issueData.issueCategory, '
|
|
10927
|
+
issue_category_id: (_b = this.arrayToId(issueData.issueCategory, 'category_id')) !== null && _b !== void 0 ? _b : 0,
|
|
10888
10928
|
recommendation: issueData.issueRecommendation,
|
|
10889
10929
|
entrusted_to: (_c = this.arrayToId(issueData.entrustTo, 'employee_id')) !== null && _c !== void 0 ? _c : 0,
|
|
10890
10930
|
issue_date: dateSplit[0] + '-' + dateSplit[1] + '-' + dateSplit[2] + ' ' + this.convertFrom12To24Format(issueData.issueDueTime),
|
|
@@ -10902,6 +10942,48 @@ class LogIssueService {
|
|
|
10902
10942
|
}
|
|
10903
10943
|
return createIssue;
|
|
10904
10944
|
}
|
|
10945
|
+
payloadBuilder(issueData, optionFieldsStatus) {
|
|
10946
|
+
var _a, _b, _c, _d, _e;
|
|
10947
|
+
console.log(issueData);
|
|
10948
|
+
const selectedDate = new Date(issueData.issueDueDate);
|
|
10949
|
+
const dateSplit = [selectedDate.getFullYear(), selectedDate.getMonth() + 1, selectedDate.getDate()];
|
|
10950
|
+
const payload = {
|
|
10951
|
+
description: [],
|
|
10952
|
+
associated_risk: [],
|
|
10953
|
+
recommendation: []
|
|
10954
|
+
};
|
|
10955
|
+
payload.title = (_a = issueData.issueName) !== null && _a !== void 0 ? _a : '';
|
|
10956
|
+
payload.rc_id = issueData.issueRC.length ? this.arrayToId(issueData.issueRC, 'rc_id') : null;
|
|
10957
|
+
payload.category_id = issueData.issueCategory.length ? this.arrayToId(issueData.issueCategory, 'category_id') : null;
|
|
10958
|
+
payload.description[0] = {
|
|
10959
|
+
text: (_b = issueData.issueDescription) !== null && _b !== void 0 ? _b : '',
|
|
10960
|
+
attachments: (issueData === null || issueData === void 0 ? void 0 : issueData.issueDescriptionAttachements.length) ? issueData === null || issueData === void 0 ? void 0 : issueData.issueDescriptionAttachements : []
|
|
10961
|
+
};
|
|
10962
|
+
payload.exception_type = optionFieldsStatus.EXCEPTION_TYPE ? Number(issueData.exceptionType) : null;
|
|
10963
|
+
payload.risk_class = (_c = issueData.issueRiskRating) !== null && _c !== void 0 ? _c : null;
|
|
10964
|
+
payload.priority = optionFieldsStatus.PRIORITY ? Number(issueData.issuePriority) : null;
|
|
10965
|
+
payload.assignee_id = issueData.entrustTo ? this.arrayToId(issueData.entrustTo, 'my_member_id') : null;
|
|
10966
|
+
payload.associated_risk[0] = {
|
|
10967
|
+
text: optionFieldsStatus.ASSOCIATED_RISKS ? issueData.issueAssociatedRisk : '',
|
|
10968
|
+
attachments: []
|
|
10969
|
+
};
|
|
10970
|
+
payload.recommendation[0] = {
|
|
10971
|
+
text: (_d = issueData.issueRecommendation) !== null && _d !== void 0 ? _d : '',
|
|
10972
|
+
attachments: (issueData === null || issueData === void 0 ? void 0 : issueData.recommendedActionsAttachments.length) ? issueData === null || issueData === void 0 ? void 0 : issueData.recommendedActionsAttachments : []
|
|
10973
|
+
};
|
|
10974
|
+
payload.evidence = { evidence_flag: optionFieldsStatus.EVIDENCE ? (issueData.evidenceRequired ? 1 : 0) : 0 };
|
|
10975
|
+
payload.frequency_details = {
|
|
10976
|
+
frequency_time: (_e = this.convertFrom12To24Format(issueData.issueDueTime)) !== null && _e !== void 0 ? _e : '',
|
|
10977
|
+
frequency_date: dateSplit[0] + '-' + (dateSplit[1] < 10 ? '0' + dateSplit[1] : dateSplit[1]) + '-' + (dateSplit[2] < 10 ? '0' + dateSplit[2] : dateSplit[2])
|
|
10978
|
+
};
|
|
10979
|
+
payload.overseer = {
|
|
10980
|
+
cc_email: optionFieldsStatus.OVERSIGHT ? (issueData.issueCCUsers.length ? issueData.issueCCUsers.map((x) => { var _a; return { member_id: (_a = x.my_member_id) !== null && _a !== void 0 ? _a : 0, alert_enable: 1 }; }) : []) : [],
|
|
10981
|
+
failure_cc_email: optionFieldsStatus.OVERSIGHT ? (issueData.failureCCUsers.length ? issueData.failureCCUsers.map((x) => { var _a; return { member_id: (_a = x.my_member_id) !== null && _a !== void 0 ? _a : 0, alert_enable: 1 }; }) : []) : []
|
|
10982
|
+
};
|
|
10983
|
+
payload.custom_tags = issueData === null || issueData === void 0 ? void 0 : issueData.issueCustomTag;
|
|
10984
|
+
console.log(payload);
|
|
10985
|
+
return payload;
|
|
10986
|
+
}
|
|
10905
10987
|
arrayToId(array, key) {
|
|
10906
10988
|
if (array.length === 0) {
|
|
10907
10989
|
return '';
|
|
@@ -10910,6 +10992,18 @@ class LogIssueService {
|
|
|
10910
10992
|
return array[0][key];
|
|
10911
10993
|
}
|
|
10912
10994
|
}
|
|
10995
|
+
convertFrom24To12Format(time) {
|
|
10996
|
+
const hhmm = time.split(':');
|
|
10997
|
+
time = `${hhmm[0]}:${hhmm[1]}`;
|
|
10998
|
+
// Check correct time format and split into components
|
|
10999
|
+
time = time.toString().match(/^([01]\d|2[0-3])(:)([0-5]\d)(:[0-5]\d)?$/) || [time];
|
|
11000
|
+
if (time.length > 1) { // If time format correct
|
|
11001
|
+
time = time.slice(1); // Remove full string match value
|
|
11002
|
+
time[5] = +time[0] < 12 ? ' AM' : ' PM'; // Set AM/PM
|
|
11003
|
+
time[0] = +time[0] % 12 || 12; // Adjust hours
|
|
11004
|
+
}
|
|
11005
|
+
return time.join(''); // return adjusted time or original string
|
|
11006
|
+
}
|
|
10913
11007
|
arrayToIDsDtring(array, identifierKey) {
|
|
10914
11008
|
const list = array.map((el) => {
|
|
10915
11009
|
return el[identifierKey];
|
|
@@ -10929,6 +11023,10 @@ class LogIssueService {
|
|
|
10929
11023
|
const ORG_PATH = `o/${path}`;
|
|
10930
11024
|
return this.http.post(this.env.fileUploadEndPoint + ORG_PATH + '&ngsw-bypass=true', payload);
|
|
10931
11025
|
}
|
|
11026
|
+
getIssueDetails(issueId) {
|
|
11027
|
+
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
11028
|
+
return this.http.get(this.env.assurance + 'Issue/Edit/' + issueId, { headers }).pipe(retry(3));
|
|
11029
|
+
}
|
|
10932
11030
|
}
|
|
10933
11031
|
LogIssueService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LogIssueService_Factory() { return new LogIssueService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(AuthService), i0.ɵɵinject(Configurations, 8)); }, token: LogIssueService, providedIn: "root" });
|
|
10934
11032
|
LogIssueService.decorators = [
|
|
@@ -10948,22 +11046,33 @@ class LogAnIssueComponent {
|
|
|
10948
11046
|
this.authService = authService;
|
|
10949
11047
|
this.uiKitService = uiKitService;
|
|
10950
11048
|
this.snackBar = snackBar;
|
|
10951
|
-
this.
|
|
10952
|
-
|
|
10953
|
-
|
|
11049
|
+
this.reponsibilityData = {
|
|
11050
|
+
responsibilityId: null,
|
|
11051
|
+
responsibilityName: '',
|
|
11052
|
+
rcId: null
|
|
10954
11053
|
};
|
|
11054
|
+
this.issueDetails = {
|
|
11055
|
+
auditPlanId: null,
|
|
11056
|
+
auditPlanName: '',
|
|
11057
|
+
rcId: null,
|
|
11058
|
+
auditObjId: null
|
|
11059
|
+
};
|
|
11060
|
+
this.mode = 'CREATE';
|
|
10955
11061
|
this.pickerChanged = new EventEmitter();
|
|
10956
11062
|
this.populateOption = new EventEmitter();
|
|
10957
11063
|
this.closeWorkflow = new EventEmitter();
|
|
11064
|
+
this.modeChange = new EventEmitter();
|
|
11065
|
+
this.disconnectRefresh = new EventEmitter();
|
|
10958
11066
|
this.scrollToBottom = false;
|
|
10959
11067
|
this.datePickerOverlay = false;
|
|
10960
11068
|
this.showDateError = false;
|
|
10961
11069
|
this.showSmiley = false;
|
|
10962
11070
|
this.loader = false;
|
|
10963
|
-
this.smileyMessage = `
|
|
11071
|
+
this.smileyMessage = `The issue has been reported.`;
|
|
11072
|
+
this.isRiskControlLoading = false;
|
|
10964
11073
|
this.actionButtons = [
|
|
10965
|
-
{ buttonText: 'Report More Issues', class: 'white-btn', id: 'addMore' }
|
|
10966
|
-
|
|
11074
|
+
{ buttonText: 'Report More Issues', class: 'white-btn', id: 'addMore' },
|
|
11075
|
+
{ buttonText: 'View Issue', class: 'blue-btn', id: 'viewIssue' },
|
|
10967
11076
|
];
|
|
10968
11077
|
this.description = {
|
|
10969
11078
|
// mode: 'prime',
|
|
@@ -10983,7 +11092,8 @@ class LogAnIssueComponent {
|
|
|
10983
11092
|
issueTypeList: [],
|
|
10984
11093
|
userList: [],
|
|
10985
11094
|
categoryList: [],
|
|
10986
|
-
rcList: []
|
|
11095
|
+
rcList: [],
|
|
11096
|
+
linkageList: []
|
|
10987
11097
|
};
|
|
10988
11098
|
this.logIssueForm = {
|
|
10989
11099
|
issueName: '',
|
|
@@ -10991,7 +11101,7 @@ class LogAnIssueComponent {
|
|
|
10991
11101
|
issueDescription: '',
|
|
10992
11102
|
issueDescriptionAttachements: [],
|
|
10993
11103
|
issueCategory: [],
|
|
10994
|
-
issueCustomTag:
|
|
11104
|
+
issueCustomTag: [],
|
|
10995
11105
|
issueRC: [],
|
|
10996
11106
|
issueType: [],
|
|
10997
11107
|
isAssignToMyself: false,
|
|
@@ -11002,11 +11112,15 @@ class LogAnIssueComponent {
|
|
|
11002
11112
|
issueRiskRating: 1,
|
|
11003
11113
|
issuePriority: 1,
|
|
11004
11114
|
issueRecommendation: '',
|
|
11115
|
+
recommendedActionsAttachments: [],
|
|
11005
11116
|
issueAssociatedRisk: '',
|
|
11117
|
+
associatedRisksAttachments: [],
|
|
11006
11118
|
issueCCUsers: [],
|
|
11007
|
-
failureCCUsers: []
|
|
11119
|
+
failureCCUsers: [],
|
|
11120
|
+
linkedControlRisk: [],
|
|
11121
|
+
linkageType: 'RISK'
|
|
11008
11122
|
};
|
|
11009
|
-
this.
|
|
11123
|
+
this.AttachmentTrack = [[], [], []];
|
|
11010
11124
|
this.additionalOptionStatus = {
|
|
11011
11125
|
EXCEPTION_TYPE: false,
|
|
11012
11126
|
EVIDENCE: false,
|
|
@@ -11026,7 +11140,7 @@ class LogAnIssueComponent {
|
|
|
11026
11140
|
{ name: 'MEDIUM', value: 2, class: 'low-med' },
|
|
11027
11141
|
{ name: 'HIGH', value: 3, class: 'high' },
|
|
11028
11142
|
];
|
|
11029
|
-
this.sideSelectorElements = ['ISSUE_CATEGORY', 'ISSUE_RC', 'ISSUE_WHO', 'ISSUE_TYPE', 'ISSUE_CC', 'ISSUE_FCC'];
|
|
11143
|
+
this.sideSelectorElements = ['ISSUE_CATEGORY', 'ISSUE_RC', 'ISSUE_WHO', 'ISSUE_TYPE', 'ISSUE_CC', 'ISSUE_FCC', 'ISSUE_CONTROL_RISK'];
|
|
11030
11144
|
this.selectorConfig = {
|
|
11031
11145
|
ISSUE_CATGORY: {
|
|
11032
11146
|
panelTitle: 'Select Issue Category',
|
|
@@ -11079,6 +11193,13 @@ class LogAnIssueComponent {
|
|
|
11079
11193
|
this.activeSelector = '';
|
|
11080
11194
|
this.listLoadingStatus = [];
|
|
11081
11195
|
this.currentTime = '';
|
|
11196
|
+
/**
|
|
11197
|
+
* isRCPreSelected,isRCVisible are variable used to set the visibility of rc field and edit button in certain conditions
|
|
11198
|
+
*/
|
|
11199
|
+
this.isRCPreSelected = false;
|
|
11200
|
+
this.isRCVisible = true;
|
|
11201
|
+
this.isRCMandatory = true;
|
|
11202
|
+
this.isRiskControlVisible = false;
|
|
11082
11203
|
}
|
|
11083
11204
|
ngOnInit() {
|
|
11084
11205
|
this.currentTime = this.getCurrentTime();
|
|
@@ -11095,10 +11216,20 @@ class LogAnIssueComponent {
|
|
|
11095
11216
|
});
|
|
11096
11217
|
}
|
|
11097
11218
|
ngAfterViewInit() {
|
|
11219
|
+
this.fetchControlRisks();
|
|
11220
|
+
this.decideRCmandatory();
|
|
11098
11221
|
}
|
|
11099
11222
|
ngOnChanges() {
|
|
11100
11223
|
this.currentTime = this.getCurrentTime();
|
|
11101
11224
|
}
|
|
11225
|
+
decideRCmandatory() {
|
|
11226
|
+
if (['GLOBAL', ''].includes(this.openedFrom) && this.mode === 'CREATE') {
|
|
11227
|
+
this.isRCMandatory = true;
|
|
11228
|
+
}
|
|
11229
|
+
else {
|
|
11230
|
+
this.isRCMandatory = false;
|
|
11231
|
+
}
|
|
11232
|
+
}
|
|
11102
11233
|
setCurrentTime() {
|
|
11103
11234
|
this.currentTime = this.getCurrentTime();
|
|
11104
11235
|
}
|
|
@@ -11146,7 +11277,8 @@ class LogAnIssueComponent {
|
|
|
11146
11277
|
this.listLoadingStatus[2] = false;
|
|
11147
11278
|
this.logService.getIssueCategories().subscribe((res) => {
|
|
11148
11279
|
this.listLoadingStatus[2] = true;
|
|
11149
|
-
this.listData.categoryList = res;
|
|
11280
|
+
this.listData.categoryList = res === null || res === void 0 ? void 0 : res.data;
|
|
11281
|
+
this.listData.categoryList = this.listData.categoryList.filter((e) => (e === null || e === void 0 ? void 0 : e.category_name) !== 'Uncategorized');
|
|
11150
11282
|
this.checkAllListLoaded();
|
|
11151
11283
|
}, (error) => {
|
|
11152
11284
|
this.listLoadingStatus[2] = true;
|
|
@@ -11159,11 +11291,51 @@ class LogAnIssueComponent {
|
|
|
11159
11291
|
this.listLoadingStatus[3] = true;
|
|
11160
11292
|
this.listData.rcList = res;
|
|
11161
11293
|
this.checkAllListLoaded();
|
|
11294
|
+
this.setSelectedRC();
|
|
11162
11295
|
}, (error) => {
|
|
11163
11296
|
this.listLoadingStatus[3] = true;
|
|
11164
11297
|
this.checkAllListLoaded();
|
|
11165
11298
|
});
|
|
11166
11299
|
}
|
|
11300
|
+
setSelectedRC() {
|
|
11301
|
+
var _a, _b, _c, _e, _f, _g, _h;
|
|
11302
|
+
if (((_a = this.reponsibilityData) === null || _a === void 0 ? void 0 : _a.rcId) && this.openedFrom === 'COMPLIANCE_WORKROOM') {
|
|
11303
|
+
this.logIssueForm.issueRC = this.reponsibilityData.rcId ? this.listData.rcList.filter((e) => e.rc_id === this.reponsibilityData.rcId) : [];
|
|
11304
|
+
}
|
|
11305
|
+
else if (((_b = this.issueDetails) === null || _b === void 0 ? void 0 : _b.rcId) && ['AUDIT_WORKROOM', 'VIEW_AUDIT_EXECUTION_SUMMARY', 'EXECUTE_AUDIT_PLAN'].includes(this.openedFrom)) {
|
|
11306
|
+
this.logIssueForm.issueRC = ((_c = this.issueDetails) === null || _c === void 0 ? void 0 : _c.rcId) ? this.listData.rcList.filter((e) => { var _a; return e.rc_id === ((_a = this.issueDetails) === null || _a === void 0 ? void 0 : _a.rcId); }) : [];
|
|
11307
|
+
}
|
|
11308
|
+
if ((_f = (_e = this.logIssueForm) === null || _e === void 0 ? void 0 : _e.issueRC) === null || _f === void 0 ? void 0 : _f.length) {
|
|
11309
|
+
this.isRCPreSelected = true;
|
|
11310
|
+
}
|
|
11311
|
+
else {
|
|
11312
|
+
this.isRCPreSelected = false;
|
|
11313
|
+
}
|
|
11314
|
+
if (!(((_g = this.reponsibilityData) === null || _g === void 0 ? void 0 : _g.rcId) || ((_h = this.issueDetails) === null || _h === void 0 ? void 0 : _h.rcId)) && ['COMPLIANCE_WORKROOM', 'AUDIT_WORKROOM', 'VIEW_AUDIT_EXECUTION_SUMMARY', 'EXECUTE_AUDIT_PLAN'].includes(this.openedFrom)) {
|
|
11315
|
+
this.isRCVisible = false;
|
|
11316
|
+
}
|
|
11317
|
+
else {
|
|
11318
|
+
this.isRCVisible = true;
|
|
11319
|
+
}
|
|
11320
|
+
}
|
|
11321
|
+
fetchControlRisks() {
|
|
11322
|
+
var _a;
|
|
11323
|
+
if (['VIEW_AUDIT_EXECUTION_SUMMARY', 'EXECUTE_AUDIT_PLAN'].includes(this.openedFrom)) {
|
|
11324
|
+
this.getLinkage((_a = this.issueDetails) === null || _a === void 0 ? void 0 : _a.auditObjId, this.logIssueForm.linkageType);
|
|
11325
|
+
}
|
|
11326
|
+
}
|
|
11327
|
+
getLinkage(auditId, type) {
|
|
11328
|
+
var _a;
|
|
11329
|
+
this.isRiskControlLoading = true;
|
|
11330
|
+
(_a = this.logService.getControlRisk(auditId, type)) === null || _a === void 0 ? void 0 : _a.subscribe((data) => {
|
|
11331
|
+
this.listData.linkageList = [...this.listData.linkageList, ...data];
|
|
11332
|
+
this.listData.linkageList = this.listData.linkageList.filter((thing, index, self) => index === self.findIndex((t) => (t.itemId === thing.itemId && t.itemType === thing.itemType)));
|
|
11333
|
+
this.isRiskControlLoading = false;
|
|
11334
|
+
console.log("linkage", this.listData);
|
|
11335
|
+
}, (error) => {
|
|
11336
|
+
this.isRiskControlLoading = false;
|
|
11337
|
+
});
|
|
11338
|
+
}
|
|
11167
11339
|
/**
|
|
11168
11340
|
* This functioj check weather all the required lists are loaded
|
|
11169
11341
|
* If loaded hides the loader otherwise shows the loader.
|
|
@@ -11176,6 +11348,9 @@ class LogAnIssueComponent {
|
|
|
11176
11348
|
else {
|
|
11177
11349
|
this.loader = false;
|
|
11178
11350
|
this.uiKitService.isLoader = false;
|
|
11351
|
+
if (this.mode === 'EDIT') {
|
|
11352
|
+
this.fetchIssueDetails();
|
|
11353
|
+
}
|
|
11179
11354
|
}
|
|
11180
11355
|
}
|
|
11181
11356
|
/**
|
|
@@ -11219,7 +11394,7 @@ class LogAnIssueComponent {
|
|
|
11219
11394
|
setActiveFieldSelector(activeField, activeSelector) {
|
|
11220
11395
|
this.activeField = activeField;
|
|
11221
11396
|
(activeSelector ? this.activeSelector = activeSelector : this.activeSelector = '');
|
|
11222
|
-
const sliderType = ['ISSUE_RC', 'ISSUE_CATEGORY', 'ISSUE_TYPE', 'ISSUE_CC', 'ISSUE_FCC', 'ISSUE_WHO'];
|
|
11397
|
+
const sliderType = ['ISSUE_RC', 'ISSUE_CATEGORY', 'ISSUE_TYPE', 'ISSUE_CC', 'ISSUE_FCC', 'ISSUE_WHO', 'ISSUE_CONTROL_RISK'];
|
|
11223
11398
|
if (sliderType.includes(activeField)) {
|
|
11224
11399
|
this.pickerChanged.emit(true);
|
|
11225
11400
|
}
|
|
@@ -11230,13 +11405,26 @@ class LogAnIssueComponent {
|
|
|
11230
11405
|
this.pickerChanged.emit(false);
|
|
11231
11406
|
}
|
|
11232
11407
|
selectorAction(evt, type) {
|
|
11408
|
+
var _a, _b, _c, _e, _f, _g, _h;
|
|
11233
11409
|
switch (type) {
|
|
11234
11410
|
case 'ISSUE_CATEGORY': {
|
|
11235
|
-
|
|
11411
|
+
console.log(evt);
|
|
11412
|
+
this.logIssueForm.issueCategory = this.idToArray(evt, this.listData.categoryList, 'category_id');
|
|
11413
|
+
console.log(this.logIssueForm.issueCategory);
|
|
11236
11414
|
this.fieldDeselector(type);
|
|
11237
11415
|
if ((evt === null || evt === void 0 ? void 0 : evt.length) > 0) {
|
|
11238
11416
|
this.removeError('issueCategory');
|
|
11239
11417
|
}
|
|
11418
|
+
if ((_c = (_b = (_a = this.logIssueForm) === null || _a === void 0 ? void 0 : _a.issueCategory[0]) === null || _b === void 0 ? void 0 : _b.custom_tags) === null || _c === void 0 ? void 0 : _c.length) {
|
|
11419
|
+
const tag = [];
|
|
11420
|
+
(_f = (_e = this.logIssueForm) === null || _e === void 0 ? void 0 : _e.issueCategory[0]) === null || _f === void 0 ? void 0 : _f.custom_tags.forEach((element) => {
|
|
11421
|
+
tag.push({ name: element, value: '' });
|
|
11422
|
+
});
|
|
11423
|
+
this.logIssueForm.issueCustomTag = tag;
|
|
11424
|
+
}
|
|
11425
|
+
else {
|
|
11426
|
+
this.logIssueForm.issueCustomTag = [];
|
|
11427
|
+
}
|
|
11240
11428
|
break;
|
|
11241
11429
|
}
|
|
11242
11430
|
//["issueName", "issueCategory", "issueRC", "entrustTo", "issueDueDate", "issueRecommendation"]
|
|
@@ -11271,13 +11459,18 @@ class LogAnIssueComponent {
|
|
|
11271
11459
|
this.fieldDeselector(type);
|
|
11272
11460
|
break;
|
|
11273
11461
|
}
|
|
11462
|
+
case 'ISSUE_CONTROL_RISK':
|
|
11463
|
+
this.logIssueForm.linkedControlRisk = this.idToArray(evt, this.listData.linkageList, 'itemId');
|
|
11464
|
+
this.logIssueForm.linkageType = (_h = (_g = this.logIssueForm) === null || _g === void 0 ? void 0 : _g.linkedControlRisk[0]) === null || _h === void 0 ? void 0 : _h.itemType;
|
|
11465
|
+
this.fieldDeselector(type);
|
|
11466
|
+
break;
|
|
11274
11467
|
}
|
|
11275
11468
|
this.pickerChanged.emit(false);
|
|
11276
11469
|
}
|
|
11277
11470
|
deleteItem(type, element) {
|
|
11278
11471
|
switch (type) {
|
|
11279
11472
|
case 'ISSUE_CATEGORY': {
|
|
11280
|
-
const itemIndex = this.logIssueForm.issueCategory.findIndex((item) => item.
|
|
11473
|
+
const itemIndex = this.logIssueForm.issueCategory.findIndex((item) => item.category_id === element.category_id);
|
|
11281
11474
|
if (itemIndex !== -1) {
|
|
11282
11475
|
this.logIssueForm.issueCategory.splice(itemIndex, 1);
|
|
11283
11476
|
}
|
|
@@ -11318,6 +11511,12 @@ class LogAnIssueComponent {
|
|
|
11318
11511
|
}
|
|
11319
11512
|
break;
|
|
11320
11513
|
}
|
|
11514
|
+
case 'ISSUE_CONTROL_RISK':
|
|
11515
|
+
const itemIndex = this.logIssueForm.linkedControlRisk.findIndex((item) => item.itemId === element.itemId);
|
|
11516
|
+
if (itemIndex !== -1) {
|
|
11517
|
+
this.logIssueForm.linkedControlRisk.splice(itemIndex, 1);
|
|
11518
|
+
}
|
|
11519
|
+
break;
|
|
11321
11520
|
}
|
|
11322
11521
|
}
|
|
11323
11522
|
assignMyself(event) {
|
|
@@ -11337,70 +11536,178 @@ class LogAnIssueComponent {
|
|
|
11337
11536
|
const x = list.filter((el) => selected.includes(el[key]));
|
|
11338
11537
|
return x;
|
|
11339
11538
|
}
|
|
11340
|
-
|
|
11341
|
-
|
|
11342
|
-
|
|
11343
|
-
|
|
11344
|
-
|
|
11345
|
-
|
|
11539
|
+
///Code between 503 to 608 can be optimized to remove duplication
|
|
11540
|
+
selectFile(type, files) {
|
|
11541
|
+
var _a, _b, _c;
|
|
11542
|
+
switch (type) {
|
|
11543
|
+
case 'ISSUE_DESCRIPTION': {
|
|
11544
|
+
for (let i = 0; i <= files.length - 1; i++) {
|
|
11545
|
+
const name = (_a = files[i].file.name) !== null && _a !== void 0 ? _a : '';
|
|
11546
|
+
this.AttachmentTrack[0].push(name);
|
|
11547
|
+
this.uploadFile(files[i].file, type);
|
|
11548
|
+
}
|
|
11549
|
+
break;
|
|
11550
|
+
}
|
|
11551
|
+
case 'RECOMMENDED_ACTIONS': {
|
|
11552
|
+
for (let i = 0; i <= files.length - 1; i++) {
|
|
11553
|
+
const name = (_b = files[i].file.name) !== null && _b !== void 0 ? _b : '';
|
|
11554
|
+
this.AttachmentTrack[1].push(name);
|
|
11555
|
+
this.uploadFile(files[i].file, type);
|
|
11556
|
+
}
|
|
11557
|
+
break;
|
|
11558
|
+
}
|
|
11559
|
+
case 'ASSOCIATED_RISKS': {
|
|
11560
|
+
for (let i = 0; i <= files.length - 1; i++) {
|
|
11561
|
+
const name = (_c = files[i].file.name) !== null && _c !== void 0 ? _c : '';
|
|
11562
|
+
this.AttachmentTrack[2].push(name);
|
|
11563
|
+
this.uploadFile(files[i].file, type);
|
|
11564
|
+
}
|
|
11565
|
+
break;
|
|
11566
|
+
}
|
|
11346
11567
|
}
|
|
11347
11568
|
}
|
|
11348
|
-
uploadFile(file) {
|
|
11569
|
+
uploadFile(file, type) {
|
|
11570
|
+
let trackIndex = 0;
|
|
11571
|
+
switch (type) {
|
|
11572
|
+
case 'ISSUE_DESCRIPTION': {
|
|
11573
|
+
trackIndex = 0;
|
|
11574
|
+
break;
|
|
11575
|
+
}
|
|
11576
|
+
case 'RECOMMENDED_ACTIONS': {
|
|
11577
|
+
trackIndex = 1;
|
|
11578
|
+
break;
|
|
11579
|
+
}
|
|
11580
|
+
case 'ASSOCIATED_RISKS': {
|
|
11581
|
+
trackIndex = 2;
|
|
11582
|
+
break;
|
|
11583
|
+
}
|
|
11584
|
+
}
|
|
11349
11585
|
const formData = new FormData();
|
|
11350
11586
|
formData.append('file', file);
|
|
11351
11587
|
const destinationString = this.authService.getOrganizationId().toString();
|
|
11352
|
-
this.logService.uploadFiles(formData, destinationString).subscribe((res) => {
|
|
11353
|
-
const index = this.
|
|
11588
|
+
this.logService.uploadFiles(formData, destinationString + '/').subscribe((res) => {
|
|
11589
|
+
const index = this.AttachmentTrack[trackIndex].indexOf(file === null || file === void 0 ? void 0 : file.name);
|
|
11354
11590
|
if (index !== -1) {
|
|
11355
|
-
this.
|
|
11591
|
+
this.AttachmentTrack[trackIndex].splice(index, 1);
|
|
11592
|
+
}
|
|
11593
|
+
switch (type) {
|
|
11594
|
+
case 'ISSUE_DESCRIPTION': {
|
|
11595
|
+
this.logIssueForm.issueDescriptionAttachements.push(res);
|
|
11596
|
+
break;
|
|
11597
|
+
}
|
|
11598
|
+
case 'RECOMMENDED_ACTIONS': {
|
|
11599
|
+
this.logIssueForm.recommendedActionsAttachments.push(res);
|
|
11600
|
+
break;
|
|
11601
|
+
}
|
|
11602
|
+
case 'ASSOCIATED_RISKS': {
|
|
11603
|
+
this.logIssueForm.associatedRisksAttachments.push(res);
|
|
11604
|
+
break;
|
|
11605
|
+
}
|
|
11356
11606
|
}
|
|
11357
|
-
this.logIssueForm.issueDescriptionAttachements.push(res);
|
|
11358
11607
|
}, (error) => {
|
|
11359
|
-
const index = this.
|
|
11608
|
+
const index = this.AttachmentTrack[trackIndex].indexOf(file.name);
|
|
11360
11609
|
if (index !== -1) {
|
|
11361
|
-
this.
|
|
11610
|
+
this.AttachmentTrack[trackIndex].splice(index, 1);
|
|
11362
11611
|
}
|
|
11363
11612
|
});
|
|
11364
11613
|
}
|
|
11365
|
-
deleteFile(file) {
|
|
11366
|
-
var _a, _b, _c;
|
|
11367
|
-
|
|
11368
|
-
(
|
|
11614
|
+
deleteFile(file, type) {
|
|
11615
|
+
var _a, _b, _c, _e, _f, _g, _h, _j, _k;
|
|
11616
|
+
let fileIndex = -1;
|
|
11617
|
+
switch (type) {
|
|
11618
|
+
case 'ISSUE_DESCRIPTION': {
|
|
11619
|
+
fileIndex = (_b = (_a = this.logIssueForm.issueDescriptionAttachements) === null || _a === void 0 ? void 0 : _a.findIndex((currentFiles) => currentFiles.org_file === file.org_file)) !== null && _b !== void 0 ? _b : -1;
|
|
11620
|
+
(_c = this.logIssueForm.issueDescriptionAttachements) === null || _c === void 0 ? void 0 : _c.splice(fileIndex, 1);
|
|
11621
|
+
break;
|
|
11622
|
+
}
|
|
11623
|
+
case 'RECOMMENDED_ACTIONS': {
|
|
11624
|
+
fileIndex = (_f = (_e = this.logIssueForm.recommendedActionsAttachments) === null || _e === void 0 ? void 0 : _e.findIndex((currentFiles) => currentFiles.org_file === file.org_file)) !== null && _f !== void 0 ? _f : -1;
|
|
11625
|
+
(_g = this.logIssueForm.recommendedActionsAttachments) === null || _g === void 0 ? void 0 : _g.splice(fileIndex, 1);
|
|
11626
|
+
break;
|
|
11627
|
+
}
|
|
11628
|
+
case 'ASSOCIATED_RISKS': {
|
|
11629
|
+
fileIndex = (_j = (_h = this.logIssueForm.associatedRisksAttachments) === null || _h === void 0 ? void 0 : _h.findIndex((currentFiles) => currentFiles.org_file === file.org_file)) !== null && _j !== void 0 ? _j : -1;
|
|
11630
|
+
(_k = this.logIssueForm.associatedRisksAttachments) === null || _k === void 0 ? void 0 : _k.splice(fileIndex, 1);
|
|
11631
|
+
break;
|
|
11632
|
+
}
|
|
11633
|
+
}
|
|
11369
11634
|
}
|
|
11370
11635
|
addIssue() {
|
|
11371
|
-
var _a, _b;
|
|
11636
|
+
var _a, _b, _c, _e, _f, _g, _h, _j, _k, _l, _m;
|
|
11372
11637
|
const form = cloneDeep(this.logIssueForm);
|
|
11373
11638
|
if (form.isAssignToMyself) {
|
|
11374
11639
|
form.entrustTo = this.listData.userList.filter((emplist) => emplist.my_member_id === this.currentUser.id);
|
|
11375
11640
|
}
|
|
11376
11641
|
this.fieldsWithError = [];
|
|
11377
|
-
this.fieldsWithError = this.logService.validate(form, this.openedFrom);
|
|
11642
|
+
this.fieldsWithError = this.logService.validate(form, this.openedFrom, this.isRCMandatory);
|
|
11378
11643
|
if (this.fieldsWithError.length > 0) {
|
|
11379
11644
|
return;
|
|
11380
11645
|
}
|
|
11381
|
-
const PAYLOAD = this.logService.
|
|
11382
|
-
if (this.
|
|
11383
|
-
PAYLOAD.
|
|
11646
|
+
const PAYLOAD = this.logService.payloadBuilder(form, this.additionalOptionStatus);
|
|
11647
|
+
if (this.mode === 'CREATE') {
|
|
11648
|
+
PAYLOAD.linkage_object = { source: this.openedFrom };
|
|
11649
|
+
if (this.openedFrom === 'COMPLIANCE_WORKROOM' && ((_a = this.reponsibilityData) === null || _a === void 0 ? void 0 : _a.responsibilityId)) {
|
|
11650
|
+
PAYLOAD.linkage_object = { compliance: { ids: [(_b = this.reponsibilityData) === null || _b === void 0 ? void 0 : _b.responsibilityId], source: "RESPONSIBILITY_WORKROOM" } };
|
|
11651
|
+
}
|
|
11652
|
+
if (['VIEW_AUDIT_EXECUTION_SUMMARY', 'EXECUTE_AUDIT_PLAN'].includes(this.openedFrom)) {
|
|
11653
|
+
if (((_c = this.logIssueForm) === null || _c === void 0 ? void 0 : _c.linkageType) && ((_e = this.logIssueForm) === null || _e === void 0 ? void 0 : _e.linkedControlRisk.length) > 0) {
|
|
11654
|
+
if (((_f = this.logIssueForm) === null || _f === void 0 ? void 0 : _f.linkageType) === 'RISK') {
|
|
11655
|
+
PAYLOAD.linkage_object.risk = { ids: [(_h = (_g = this.logIssueForm) === null || _g === void 0 ? void 0 : _g.linkedControlRisk[0]) === null || _h === void 0 ? void 0 : _h.itemId], source: this.openedFrom };
|
|
11656
|
+
}
|
|
11657
|
+
if (((_j = this.logIssueForm) === null || _j === void 0 ? void 0 : _j.linkageType) === 'RESPONSIBILITY') {
|
|
11658
|
+
PAYLOAD.linkage_object.compliance = { ids: [(_l = (_k = this.logIssueForm) === null || _k === void 0 ? void 0 : _k.linkedControlRisk[0]) === null || _l === void 0 ? void 0 : _l.itemId], source: this.openedFrom };
|
|
11659
|
+
}
|
|
11660
|
+
}
|
|
11661
|
+
}
|
|
11662
|
+
if (['AUDIT_WORKROOM', 'VIEW_AUDIT_EXECUTION_SUMMARY', 'EXECUTE_AUDIT_PLAN'].includes(this.openedFrom)) {
|
|
11663
|
+
if (this.issueDetails.auditPlanId) {
|
|
11664
|
+
PAYLOAD.linkage_object.audit_plan = { ids: [this.issueDetails.auditPlanId], source: this.openedFrom };
|
|
11665
|
+
}
|
|
11666
|
+
}
|
|
11667
|
+
}
|
|
11668
|
+
if (this.mode === 'EDIT') {
|
|
11669
|
+
PAYLOAD.IssueLinkage = (_m = this.dataForEdit) === null || _m === void 0 ? void 0 : _m.linkage_object;
|
|
11384
11670
|
}
|
|
11385
11671
|
this.loader = true;
|
|
11386
11672
|
this.uiKitService.isLoader = true;
|
|
11387
|
-
this.
|
|
11388
|
-
this.
|
|
11389
|
-
|
|
11390
|
-
|
|
11391
|
-
|
|
11392
|
-
|
|
11393
|
-
|
|
11394
|
-
|
|
11395
|
-
|
|
11396
|
-
|
|
11397
|
-
|
|
11673
|
+
if (this.mode === 'EDIT') {
|
|
11674
|
+
this.logService.updateIssue(PAYLOAD, this.issueId).subscribe((res) => {
|
|
11675
|
+
this.smileyMessage = `The issue has been updated.`;
|
|
11676
|
+
this.issueData = res;
|
|
11677
|
+
this.showSmiley = true;
|
|
11678
|
+
this.uiKitService.isSmileyOn = true;
|
|
11679
|
+
this.loader = false;
|
|
11680
|
+
this.uiKitService.isLoader = false;
|
|
11681
|
+
}, error => {
|
|
11682
|
+
this.loader = false;
|
|
11683
|
+
this.uiKitService.isLoader = false;
|
|
11684
|
+
this.snackBar.show('OOPS! Something went wrong and the page could not be loaded. Could you please try one more time?');
|
|
11685
|
+
});
|
|
11686
|
+
}
|
|
11687
|
+
else if (this.mode === 'CREATE' || this.mode === '' || !this.mode) {
|
|
11688
|
+
this.logService.createIssue(PAYLOAD).subscribe((res) => {
|
|
11689
|
+
this.issueData = res;
|
|
11690
|
+
this.showSmiley = true;
|
|
11691
|
+
this.uiKitService.isSmileyOn = true;
|
|
11692
|
+
this.loader = false;
|
|
11693
|
+
this.uiKitService.isLoader = false;
|
|
11694
|
+
}, error => {
|
|
11695
|
+
this.loader = false;
|
|
11696
|
+
this.uiKitService.isLoader = false;
|
|
11697
|
+
this.snackBar.show('OOPS! Something went wrong and the page could not be loaded. Could you please try one more time?');
|
|
11698
|
+
});
|
|
11699
|
+
}
|
|
11398
11700
|
}
|
|
11399
11701
|
closeSmiley(evt) {
|
|
11400
11702
|
this.showSmiley = false;
|
|
11401
11703
|
this.uiKitService.isSmileyOn = false;
|
|
11402
11704
|
this.closeWorkFlow(this.issueData, false);
|
|
11403
11705
|
}
|
|
11706
|
+
/**
|
|
11707
|
+
* Closes workflow engine
|
|
11708
|
+
* @param evt
|
|
11709
|
+
* @param confirm
|
|
11710
|
+
*/
|
|
11404
11711
|
closeWorkFlow(evt, confirm) {
|
|
11405
11712
|
this.closeWorkflow.emit({ evt, confirm });
|
|
11406
11713
|
}
|
|
@@ -11409,10 +11716,34 @@ class LogAnIssueComponent {
|
|
|
11409
11716
|
this.resetIssueForm();
|
|
11410
11717
|
this.showSmiley = false;
|
|
11411
11718
|
this.uiKitService.isSmileyOn = false;
|
|
11719
|
+
this.closeWorkFlow(this.issueData, false);
|
|
11412
11720
|
}
|
|
11413
11721
|
else if (evt === 'viewIssue') {
|
|
11722
|
+
this.showSmiley = false;
|
|
11723
|
+
this.viewIssue();
|
|
11724
|
+
}
|
|
11725
|
+
}
|
|
11726
|
+
viewIssue() {
|
|
11727
|
+
var _a, _b;
|
|
11728
|
+
this.disconnectRefresh.emit(false);
|
|
11729
|
+
let url;
|
|
11730
|
+
if (window.location.host.startsWith('localhost')) {
|
|
11731
|
+
url = 'http://' + window.location.host;
|
|
11732
|
+
}
|
|
11733
|
+
else {
|
|
11734
|
+
url = 'https://' + window.location.host;
|
|
11414
11735
|
}
|
|
11736
|
+
if (window.location.host.startsWith('localhost')) {
|
|
11737
|
+
url += '/issue-workroom/' + ((_a = this.issueData) === null || _a === void 0 ? void 0 : _a._id);
|
|
11738
|
+
}
|
|
11739
|
+
else {
|
|
11740
|
+
url += '/audit/issue-workroom/' + ((_b = this.issueData) === null || _b === void 0 ? void 0 : _b._id);
|
|
11741
|
+
}
|
|
11742
|
+
window.location.href = url;
|
|
11415
11743
|
}
|
|
11744
|
+
/**
|
|
11745
|
+
* Populate the tickmark of optional fields
|
|
11746
|
+
*/
|
|
11416
11747
|
populateOptionalFields() {
|
|
11417
11748
|
const activatedOptions = [];
|
|
11418
11749
|
for (const key of Object.keys(this.additionalOptionStatus)) {
|
|
@@ -11422,6 +11753,104 @@ class LogAnIssueComponent {
|
|
|
11422
11753
|
}
|
|
11423
11754
|
this.populateOption.emit(activatedOptions);
|
|
11424
11755
|
}
|
|
11756
|
+
/**
|
|
11757
|
+
* Fetchs issue details when in edit mode based on the input id passed
|
|
11758
|
+
*/
|
|
11759
|
+
fetchIssueDetails() {
|
|
11760
|
+
this.loader = true;
|
|
11761
|
+
this.uiKitService.isLoader = true;
|
|
11762
|
+
this.logService.getIssueDetails(this.issueId).subscribe((data) => {
|
|
11763
|
+
console.log("issue Data", data);
|
|
11764
|
+
this.populateForm(data);
|
|
11765
|
+
});
|
|
11766
|
+
}
|
|
11767
|
+
/**
|
|
11768
|
+
* Populates the issue form when in edit mode
|
|
11769
|
+
* @param issueData issue data fetched from API
|
|
11770
|
+
*/
|
|
11771
|
+
populateForm(issueData) {
|
|
11772
|
+
var _a, _b, _c, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2;
|
|
11773
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
11774
|
+
this.dataForEdit = issueData;
|
|
11775
|
+
this.loader = false;
|
|
11776
|
+
this.uiKitService.isLoader = false;
|
|
11777
|
+
const issueDueDate = (_a = issueData.frequency_details) === null || _a === void 0 ? void 0 : _a.frequency_date.split('-');
|
|
11778
|
+
this.logIssueForm = {
|
|
11779
|
+
issueName: (_b = issueData.title) !== null && _b !== void 0 ? _b : '',
|
|
11780
|
+
evidenceRequired: (_e = (_c = issueData === null || issueData === void 0 ? void 0 : issueData.evidence) === null || _c === void 0 ? void 0 : _c.evidence_flag) !== null && _e !== void 0 ? _e : 0,
|
|
11781
|
+
issueDescription: ((_f = issueData === null || issueData === void 0 ? void 0 : issueData.description) === null || _f === void 0 ? void 0 : _f.length) ? (_g = issueData === null || issueData === void 0 ? void 0 : issueData.description[0]) === null || _g === void 0 ? void 0 : _g.text : '',
|
|
11782
|
+
issueDescriptionAttachements: ((_h = issueData === null || issueData === void 0 ? void 0 : issueData.description) === null || _h === void 0 ? void 0 : _h.length) ? (_j = issueData === null || issueData === void 0 ? void 0 : issueData.description[0]) === null || _j === void 0 ? void 0 : _j.attachments : [],
|
|
11783
|
+
issueCategory: (issueData === null || issueData === void 0 ? void 0 : issueData.category_id) ? this.listData.categoryList.filter((e) => e.category_id === (issueData === null || issueData === void 0 ? void 0 : issueData.category_id)) : [],
|
|
11784
|
+
issueCustomTag: (_k = issueData === null || issueData === void 0 ? void 0 : issueData.custom_tags) !== null && _k !== void 0 ? _k : [],
|
|
11785
|
+
issueRC: (issueData === null || issueData === void 0 ? void 0 : issueData.rc_id) ? this.listData.rcList.filter((e) => e.rc_id === (issueData === null || issueData === void 0 ? void 0 : issueData.rc_id)) : [],
|
|
11786
|
+
issueType: [],
|
|
11787
|
+
recommendedActionsAttachments: ((_l = issueData === null || issueData === void 0 ? void 0 : issueData.recommendation) === null || _l === void 0 ? void 0 : _l.length) ? (_m = issueData === null || issueData === void 0 ? void 0 : issueData.recommendation[0]) === null || _m === void 0 ? void 0 : _m.attachments : [],
|
|
11788
|
+
associatedRisksAttachments: [],
|
|
11789
|
+
isAssignToMyself: (issueData === null || issueData === void 0 ? void 0 : issueData.assignee_id) === this.currentUser.id ? true : false,
|
|
11790
|
+
entrustTo: (issueData === null || issueData === void 0 ? void 0 : issueData.assignee_id) === this.currentUser.id ? [] : this.listData.userList.filter((e) => e.my_member_id === (issueData === null || issueData === void 0 ? void 0 : issueData.assignee_id)),
|
|
11791
|
+
issueDueDate: ((_o = issueData === null || issueData === void 0 ? void 0 : issueData.frequency_details) === null || _o === void 0 ? void 0 : _o.frequency_date) ? moment(`${issueDueDate[0]}-${issueDueDate[1]}-${issueDueDate[2]}`) : '',
|
|
11792
|
+
issueDueTime: this.logService.convertFrom24To12Format(issueData.frequency_details.frequency_time),
|
|
11793
|
+
exceptionType: (_p = issueData.exception_type) !== null && _p !== void 0 ? _p : 1,
|
|
11794
|
+
issueRiskRating: (_q = issueData.risk_class) !== null && _q !== void 0 ? _q : 1,
|
|
11795
|
+
issuePriority: (_r = issueData.priority) !== null && _r !== void 0 ? _r : 1,
|
|
11796
|
+
issueRecommendation: ((_s = issueData === null || issueData === void 0 ? void 0 : issueData.recommendation) === null || _s === void 0 ? void 0 : _s.length) ? (_t = issueData === null || issueData === void 0 ? void 0 : issueData.recommendation[0]) === null || _t === void 0 ? void 0 : _t.text : '',
|
|
11797
|
+
issueAssociatedRisk: ((_u = issueData === null || issueData === void 0 ? void 0 : issueData.associated_risk) === null || _u === void 0 ? void 0 : _u.length) ? (_v = issueData === null || issueData === void 0 ? void 0 : issueData.associated_risk[0]) === null || _v === void 0 ? void 0 : _v.text : '',
|
|
11798
|
+
issueCCUsers: ((_w = issueData.overseer) === null || _w === void 0 ? void 0 : _w.cc_email.length) ? yield this.generateOverseerList(this.listData.userList, (_x = issueData.overseer) === null || _x === void 0 ? void 0 : _x.cc_email) : [],
|
|
11799
|
+
failureCCUsers: ((_y = issueData.overseer) === null || _y === void 0 ? void 0 : _y.failure_cc_email.length) ? yield this.generateOverseerList(this.listData.userList, (_z = issueData.overseer) === null || _z === void 0 ? void 0 : _z.failure_cc_email) : [],
|
|
11800
|
+
linkedControlRisk: [],
|
|
11801
|
+
linkageType: 'RESPONSIBILITY'
|
|
11802
|
+
};
|
|
11803
|
+
console.log("After Init", this.logIssueForm);
|
|
11804
|
+
if (this.mode === 'EDIT') {
|
|
11805
|
+
((_0 = this.logIssueForm.issueRC) === null || _0 === void 0 ? void 0 : _0.length) > 0 ? this.isRCPreSelected = true : this.isRCPreSelected = false;
|
|
11806
|
+
((_1 = issueData.linkage_object) === null || _1 === void 0 ? void 0 : _1.source) === 'GLOBAL' ? this.isRCMandatory = true : this.isRCMandatory = false;
|
|
11807
|
+
(((_2 = issueData.linkage_object) === null || _2 === void 0 ? void 0 : _2.source) === 'GLOBAL' && (issueData === null || issueData === void 0 ? void 0 : issueData.rc_id)) ? this.isRCPreSelected = false : this.isRCPreSelected = true;
|
|
11808
|
+
// if(issueData.linkage_object?.compliance?.ids?.length){
|
|
11809
|
+
// this.logIssueForm.linkedControlRisk = issueData.linkage_object?.compliance?.ids??[],
|
|
11810
|
+
// this.logIssueForm.linkageType = 'RESPONSIBILITY'
|
|
11811
|
+
// this.isRiskControlVisible = true;
|
|
11812
|
+
// }
|
|
11813
|
+
// if(issueData.linkage_object?.risk?.ids?.length){
|
|
11814
|
+
// this.logIssueForm.linkedControlRisk = issueData.linkage_object?.risk?.ids??[],
|
|
11815
|
+
// this.logIssueForm.linkageType = 'RISK';
|
|
11816
|
+
// this.isRiskControlVisible = true;
|
|
11817
|
+
// }
|
|
11818
|
+
}
|
|
11819
|
+
this.setOptionalField(issueData);
|
|
11820
|
+
});
|
|
11821
|
+
}
|
|
11822
|
+
/**
|
|
11823
|
+
* Sets the visibility of optional fields
|
|
11824
|
+
* @param issueData issue data fetched from API
|
|
11825
|
+
*/
|
|
11826
|
+
setOptionalField(issueData) {
|
|
11827
|
+
this.additionalOptionStatus = {
|
|
11828
|
+
EXCEPTION_TYPE: issueData.exception_type ? true : false,
|
|
11829
|
+
EVIDENCE: issueData.evidence.evidence_flag ? true : false,
|
|
11830
|
+
PRIORITY: issueData.priority ? true : false,
|
|
11831
|
+
ISSUE_TYPE: false,
|
|
11832
|
+
ASSOCIATED_RISKS: issueData.associated_risk.length ? (issueData.associated_risk[0].text.length ? true : false) : false,
|
|
11833
|
+
OVERSIGHT: (issueData.overseer.cc_email.length > 0 || issueData.overseer.failure_cc_email.length > 0) ? true : false
|
|
11834
|
+
};
|
|
11835
|
+
this.populateOptionalFields();
|
|
11836
|
+
}
|
|
11837
|
+
/**
|
|
11838
|
+
* Generates list of selected overseer
|
|
11839
|
+
* @param allUserList list of all users in the organzation
|
|
11840
|
+
* @param overseerList lit of the overseer that needs to be filtered
|
|
11841
|
+
* @returns list of array containing the users objects
|
|
11842
|
+
*/
|
|
11843
|
+
generateOverseerList(allUserList, overseerList) {
|
|
11844
|
+
return overseerList.map((user) => {
|
|
11845
|
+
const foundUser = allUserList.find((element) => element.my_member_id === user.member_id);
|
|
11846
|
+
if (foundUser) {
|
|
11847
|
+
return foundUser;
|
|
11848
|
+
}
|
|
11849
|
+
});
|
|
11850
|
+
}
|
|
11851
|
+
/**
|
|
11852
|
+
* Resets issue form
|
|
11853
|
+
*/
|
|
11425
11854
|
resetIssueForm() {
|
|
11426
11855
|
this.scrollToBottom = false;
|
|
11427
11856
|
this.logIssueForm = {
|
|
@@ -11429,8 +11858,10 @@ class LogAnIssueComponent {
|
|
|
11429
11858
|
evidenceRequired: 0,
|
|
11430
11859
|
issueDescription: '',
|
|
11431
11860
|
issueDescriptionAttachements: [],
|
|
11861
|
+
recommendedActionsAttachments: [],
|
|
11862
|
+
associatedRisksAttachments: [],
|
|
11432
11863
|
issueCategory: [],
|
|
11433
|
-
issueCustomTag:
|
|
11864
|
+
issueCustomTag: [],
|
|
11434
11865
|
issueRC: [],
|
|
11435
11866
|
issueType: [],
|
|
11436
11867
|
isAssignToMyself: false,
|
|
@@ -11448,6 +11879,9 @@ class LogAnIssueComponent {
|
|
|
11448
11879
|
for (const key of Object.keys(this.additionalOptionStatus)) {
|
|
11449
11880
|
this.additionalOptionStatus[key] = false;
|
|
11450
11881
|
}
|
|
11882
|
+
this.smileyMessage = `The issue has been reported.`;
|
|
11883
|
+
this.mode = 'CREATE';
|
|
11884
|
+
this.modeChange.emit(this.mode);
|
|
11451
11885
|
this.populateOptionalFields();
|
|
11452
11886
|
}
|
|
11453
11887
|
checkDescription() {
|
|
@@ -11465,7 +11899,7 @@ class LogAnIssueComponent {
|
|
|
11465
11899
|
LogAnIssueComponent.decorators = [
|
|
11466
11900
|
{ type: Component, args: [{
|
|
11467
11901
|
selector: 'app-log-an-issue',
|
|
11468
|
-
template: "<!-- <p>log-an-issue works!</p> -->\r\n<div class=\"log-an-issue\" *ngIf=\"!showSmiley\">\r\n <div class=\"form-group-row\" *ngIf=\"['COMPLIANCE_WORKROOM','AUDIT_WORKROOM'].includes(openedFrom)\">\r\n <div class=\"left\" [class.checked]=\"false\">\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 Linked to\r\n </label>\r\n <input type=\"text\" placeholder=\"Linked to\" disabled [value]=\"reponsibiltyData?.responsibiltyName\">\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group-row\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_TITLE' && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm.issueName.trim().length\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/what.svg\" alt=\"name\"\r\n *ngIf=\"!logIssueForm.issueName.trim().length || activeField === 'ISSUE_TITLE'\">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm.issueName.trim().length && activeField !== 'ISSUE_TITLE'\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 Issue Title <span class=\"required\">*</span>\r\n </label>\r\n <input type=\"text\" placeholder=\"Enter issue Title\" [(ngModel)]=\"logIssueForm.issueName\"\r\n (focusin)=\"setActiveFieldSelector('ISSUE_TITLE','ISSUE_TITLE')\"\r\n (keyup)=\"logIssueForm.issueName?.trim()?.length > 0 ? removeError('issueName'): null\"\r\n (focusout)=\"setActiveFieldSelector('','')\" *ngIf=\"logIssueForm.issueName =='' || activeSelector === 'ISSUE_TITLE'\">\r\n <div class=\"selected\" *ngIf=\"logIssueForm.issueName.length && activeSelector !== 'ISSUE_TITLE'\">\r\n <div class=\"chip-container\">\r\n <span class=\"value\">{{logIssueForm.issueName}}</span>\r\n </div>\r\n <button class=\"edit\" (click)=\"setActiveFieldSelector('ISSUE_TITLE','ISSUE_TITLE')\" type=\"button\"><i class=\"icons\"></i> Edit</button>\r\n </div>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('issueName')\">Please enter an issue title.</p>\r\n <ng-container *ngIf=\"descriptionAttachmentTrack.length > 0 \">\r\n <div class=\"file-list\" *ngFor=\"let uploadingFile of descriptionAttachmentTrack\">\r\n <div class=\"file-container\">\r\n <span class=\"file-name\">{{uploadingFile}}</span>\r\n <!-- <button>\r\n <i class=\"icons\"></i>\r\n </button> -->\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"logIssueForm?.issueDescriptionAttachements?.length > 0\">\r\n <div class=\"file-list\" *ngFor=\"let file of logIssueForm?.issueDescriptionAttachements\">\r\n <div class=\"file-container\">\r\n <span class=\"file-name\">{{file?.name}}</span>\r\n <button>\r\n <i class=\"icons\" (click)=\"deleteFile(file)\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <marx-editor [editorConfig]=\"{mode: 'prime',file:true,\r\n colorPalette: true,\r\n link: true,\r\n placeholder: 'Description'}\" [(ngModel)]=\"logIssueForm.issueDescription\"\r\n (sendSavedFiles)=\"selectFilefromDescription($event)\" (clickOutside)=\"checkDescription()\"></marx-editor>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\" [class.active]=\"activeField === 'ISSUE_CATEGORY'\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_CATEGORY' && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.issueCategory?.length > 0 \">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/category.svg\" alt=\"\"\r\n *ngIf=\"logIssueForm?.issueCategory?.length === 0 || activeField === 'ISSUE_CATEGORY' \" />\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.issueCategory?.length > 0 && activeField !== 'ISSUE_CATEGORY'\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Issue Category <span class=\"required\">*</span></label>\r\n <div class=\"select\" *ngIf=\"!logIssueForm?.issueCategory || logIssueForm?.issueCategory?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_CATEGORY','ISSUE_CATEGORY')\" type=\"text\"\r\n placeholder=\"Select a category for this issue\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.issueCategory?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_CATEGORY',logIssueForm?.issueCategory[0])\"></i>{{logIssueForm?.issueCategory[0]?.issue_category_name}}</span>\r\n </div>\r\n <button class=\"edit\" *ngIf=\"activeField !=='ISSUE_CATEGORY'\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_CATEGORY','ISSUE_CATEGORY')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('issueCategory')\">Please enter an issue\r\n category.</p>\r\n </div>\r\n <div class=\"vx-form-group\" *ngFor=\"let tag of logIssueForm.issueCustomTag|keyvalue\">\r\n <!-- {{logIssueForm.issueCustomTag|json}} -->\r\n <label class=\"vx-control-panel\">{{tag?.value?.custom_tag_name}}</label>\r\n <input type=\"text\" [placeholder]=\"tag?.value?.custom_tag_name\" [(ngModel)]=\"tag.value.custom_tag_value\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\" [class.active]=\"false\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_RC' && sideSelectorElements.includes(activeField)\"\r\n *ngIf=\"openedFrom === 'GLOBAL'\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.issueRC?.length > 0\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/responsibility-center.svg\" alt=\"\" *ngIf=\"logIssueForm?.issueRC?.length === 0\">\r\n\r\n <svg class=\"checkIcon\" *ngIf=\"logIssueForm?.issueRC?.length > 0 && activeField !== 'ISSUE_RC'\"\r\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 <span class=\"required\">*</span></label>\r\n <div class=\"select\" *ngIf=\"!logIssueForm?.issueRC || logIssueForm?.issueRC?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_RC','ISSUE_RC')\" type=\"text\"\r\n placeholder=\"Select Responsibility Center(s)\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.issueRC?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_RC',logIssueForm?.issueRC[0])\"></i>{{logIssueForm?.issueRC[0]?.item_name}}</span>\r\n </div>\r\n <button *ngIf=\"activeField !=='ISSUE_RC'\" class=\"edit\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_RC','ISSUE_RC')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('issueRC')\">Please select a responsibility center.</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_WHO' && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.entrustTo?.length > 0\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/who.svg\" alt=\"im\"\r\n *ngIf=\"(logIssueForm?.entrustTo?.length === 0 && !logIssueForm?.isAssignToMyself) || activeField === 'ISSUE_WHO' \">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"(logIssueForm?.entrustTo?.length > 0 || logIssueForm?.isAssignToMyself ) && activeField !== 'ISSUE_WHO'\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Who? <span class=\"required\">*</span></label>\r\n <div class=\"select\" [class.disabled]=\"logIssueForm?.isAssignToMyself\"\r\n *ngIf=\"!logIssueForm?.entrustTo || logIssueForm?.entrustTo?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_WHO','ISSUE_WHO')\"\r\n [disabled]=\"logIssueForm?.isAssignToMyself\" type=\"text\"\r\n placeholder=\"Who is responsible for completing the responsibility?\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.entrustTo?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_WHO',logIssueForm?.entrustTo[0])\"></i>{{logIssueForm?.entrustTo[0]?.employee_name}}</span>\r\n </div>\r\n <button *ngIf=\"activeField !=='ISSUE_WHO'\" class=\"edit\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_WHO','ISSUE_WHO')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('entrustTo')\">Please select an assignee.</p>\r\n <div class=\"switch-row align-right\" [class.disabled]=\"activeField === 'ISSUE_WHO'\">\r\n <app-cs-switch [disabled]=\"activeField === 'ISSUE_WHO'\" [(ngValue)]=\"logIssueForm.isAssignToMyself\" (ngValueChange)=\"assignMyself($event)\">OR\r\n ASSIGN TO MYSELF\r\n </app-cs-switch>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_DATE_TIME' && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.issueDueDate \">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/when.svg\" alt=\"im\"\r\n *ngIf=\"!logIssueForm?.issueDueDate || activeField === 'ISSUE_DATE_TIME' \">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.issueDueDate && activeField !== 'ISSUE_DATE_TIME'\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Maximum Time to Resolve <span class=\"required\">*</span></label>\r\n <div class=\"date-time-picker\">\r\n <div class=\"picker-group\">\r\n <input type=\"text\" readonly placeholder=\"Set a deadline.\"\r\n [value]=\"logIssueForm.issueDueDate | date: 'dd MMM yyyy'\" (click)=\"openDatePicker();\">\r\n <i class=\"icons\"></i>\r\n <dp-date-picker #datePicker (onSelect)=\"datePickerOverlay = false;closeDatePicker($event);removeError('issueDueDate')\" [config]=\"dateConfig\"\r\n [(ngModel)]=\"logIssueForm.issueDueDate\" >\r\n </dp-date-picker>\r\n <div class=\"vx-overlay\" (click)=\"closeDatePicker($event)\" *ngIf=\"datePickerOverlay\"></div>\r\n </div>\r\n\r\n <div class=\"picker-group\">\r\n\r\n <input (mouseover)=\"setCurrentTime()\" [(ngModel)]=\"logIssueForm.issueDueTime\" [value]=\"logIssueForm.issueDueTime\" readonly\r\n class=\"time\" aria-label=\"12hr format\" [ngxTimepicker]=\"dailyTime\" placeholder=\"Select Time\"\r\n type=\"text\" [min]=\"currentTime\" readonly>\r\n <i class=\"icons\"></i>\r\n <ngx-material-timepicker (opened)=\"setActiveFieldSelector('ISSUE_DATE_TIME', 'ISSUE_DATE_TIME')\"\r\n (closed)=\"setActiveFieldSelector('','')\" #dailyTime [defaultTime]=\"'11:59 pm'\">\r\n </ngx-material-timepicker>\r\n </div>\r\n\r\n </div>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('issueDueDate')\">Please enter a due date.</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\" [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm.issueRecommendation\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/recommended-action.svg\" alt=\"im\" *ngIf=\"!(logIssueForm.issueRecommendation | spaceBreaker).length\">\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"(logIssueForm.issueRecommendation | spaceBreaker).length>0\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Recommended Actions <span class=\"required\">*</span></label>\r\n <marx-editor [(ngModel)]=\"logIssueForm.issueRecommendation\" [editorConfig]=\"{mode: 'prime',\r\n colorPalette: true,\r\n link: true,\r\n placeholder: 'Recommended actions'}\" (ngModelChange)=\"logIssueForm?.issueRecommendation?.trim()?.length > 0 ? removeError('issueRecommendation'):null\"\r\n (clickOutside)=\"checkDescription()\"></marx-editor>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('issueRecommendation')\">Please enter\r\n recommendations.</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\" *ngIf=\"!hiddenList.includes('RISK_CLASSIFICATION')\" [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm.issueRiskRating\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/risks.svg\" alt=\"im\" *ngIf=\"!logIssueForm?.issueRiskRating\">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.issueRiskRating\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 class=\"low\" *ngFor=\" let class of riskClassification\" [ngClass]=\"[class.class]\">\r\n <input type=\"radio\" name=\"classification\" [value]=\"class.value\"\r\n [checked]=\"logIssueForm?.issueRiskRating === class.value\"\r\n [(ngModel)]=\"logIssueForm.issueRiskRating\">\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 <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" *ngIf=\"additionalOptionStatus.EXCEPTION_TYPE\"\r\n [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.exceptionType > -1\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/exception-type.svg\" alt=\"im\" *ngIf=\"logIssueForm?.exceptionType === null\">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.exceptionType > -1\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 Exception Type\r\n </label>\r\n <app-cs-radio class=\"main-filed\" [value]=\"1\" [checked]=\"logIssueForm?.exceptionType === 1\"\r\n (checkedEvent)=\"setException(1)\">Design Exception\r\n <!-- <i class=\"icons\"></i> -->\r\n </app-cs-radio>\r\n <app-cs-radio class=\"main-filed\" [value]=\"2\" [checked]=\"logIssueForm?.exceptionType === 0\"\r\n (checkedEvent)=\"setException(2)\">Effectiveness Exception\r\n <!-- <i class=\"icons\"></i> -->\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" [class.active]=\"activeField === 'ISSUE_TYPE'\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_TYPE' && sideSelectorElements.includes(activeField)\"\r\n *ngIf=\"additionalOptionStatus.ISSUE_TYPE\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.issueType?.length > 0\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/issue-type.svg\" alt=\"\"\r\n *ngIf=\"logIssueForm?.issueType?.length === 0 || activeField === 'ISSUE_TYPE' \">\r\n\r\n <svg class=\"checkIcon\" *ngIf=\"logIssueForm?.issueType?.length > 0 && activeField !== 'ISSUE_TYPE'\"\r\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Issue Type</label>\r\n <div class=\"select\" *ngIf=\"!logIssueForm?.issueType || logIssueForm?.issueType?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_TYPE','ISSUE_TYPE')\" type=\"text\"\r\n placeholder=\"Select the Issue Type associated with this issue.\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.issueType?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_TYPE',logIssueForm?.issueType[0])\"></i>{{logIssueForm?.issueType[0]?.issue_type_name}}</span>\r\n </div>\r\n <button *ngIf=\"activeField !=='ISSUE_TYPE'\" class=\"edit\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_TYPE','ISSUE_TYPE')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" *ngIf=\"additionalOptionStatus.PRIORITY\"\r\n [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.issuePriority\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/priority.svg\" alt=\"im\" *ngIf=\"!logIssueForm?.issuePriority\">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.issuePriority > 0\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Priority</label>\r\n <div class=\"classification\">\r\n <label *ngFor=\" let priority of riskPrority\" [ngClass]=\"[priority.class]\">\r\n <input type=\"radio\" name=\"classification-priority\" [value]=\"priority.value\"\r\n [checked]=\"logIssueForm?.issuePriority === priority.value\"\r\n [(ngModel)]=\"logIssueForm.issuePriority\">\r\n <span>{{priority.name}}</span>\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" *ngIf=\"additionalOptionStatus.ASSOCIATED_RISKS\"\r\n [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm.issueAssociatedRisk\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/associated-risks.svg\" alt=\"im\" *ngIf=\"!logIssueForm?.issueAssociatedRisk.trim().length\">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.issueAssociatedRisk.trim().length\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Associated Risks </label>\r\n <marx-editor [(ngModel)]=\"logIssueForm.issueAssociatedRisk\" [editorConfig]=\"{mode: 'prime',\r\n colorPalette: true,\r\n link: true,\r\n placeholder: 'Associated Risks'}\" (clickOutside)=\"checkDescription()\"></marx-editor>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" [class.active]=\"false\" *ngIf=\"additionalOptionStatus.OVERSIGHT\"\r\n [class.disabled]=\"activeField && !(['ISSUE_CC','ISSUE_FCC'].includes(activeField)) && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\"\r\n [class.checked]=\"logIssueForm?.issueCCUsers?.length > 0 || logIssueForm?.failureCCUsers?.length > 0\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/oversight.svg\" alt=\"\"\r\n *ngIf=\"(logIssueForm?.issueCCUsers?.length === 0 && logIssueForm?.failureCCUsers?.length === 0)|| activeField === 'ISSUE_CC'|| activeField === 'ISSUE_FCC' \">\r\n\r\n <svg class=\"checkIcon\"\r\n *ngIf=\"logIssueForm?.issueCCUsers?.length > 0 || logIssueForm?.failureCCUsers?.length > 0 && activeField !== 'ISSUE_CC'|| activeField !== 'ISSUE_FCC'\"\r\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 class=\"select\" *ngIf=\"!logIssueForm?.issueCCUsers || logIssueForm?.issueCCUsers?.length === 0\">\r\n <input type=\"text\" (click)=\"setActiveFieldSelector('ISSUE_CC','ISSUE_CC')\"\r\n placeholder=\"Who should have oversight of this issue?\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.issueCCUsers?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_CC',logIssueForm?.issueCCUsers[0])\"></i>{{logIssueForm?.issueCCUsers[0]?.employee_name}}</span>\r\n <button class=\"count\" *ngIf=\"logIssueForm?.issueCCUsers?.length > 1\" type=\"button\" appPopover\r\n (click)=\"CC.popover()\" placement=\"right\">+\r\n {{logIssueForm?.issueCCUsers?.slice(1).length}}</button>\r\n <app-popover #CC [dontCloseonClick]=\"true\">\r\n <div class=\"action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let cc of logIssueForm?.issueCCUsers | slice: 1; let j = index\">\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"deleteItem('ISSUE_CC',cc)\"></i>\r\n {{cc?.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 <button *ngIf=\"activeField !=='ISSUE_CC'\" class=\"edit\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_CC','ISSUE_CC')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n <div class=\"select\" *ngIf=\"!logIssueForm?.failureCCUsers || logIssueForm?.failureCCUsers?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_FCC','ISSUE_FCC')\" type=\"text\"\r\n placeholder=\"Who should be notified if the issue is not resolved?\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.failureCCUsers?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_FCC',logIssueForm?.failureCCUsers[0])\"></i>{{logIssueForm?.failureCCUsers[0]?.employee_name}}</span>\r\n <button class=\"count\" *ngIf=\"logIssueForm?.failureCCUsers?.length > 1\" type=\"button\" appPopover\r\n (click)=\"FCC.popover()\" placement=\"right\">+\r\n {{logIssueForm?.failureCCUsers?.slice(1).length}}</button>\r\n <app-popover #FCC [dontCloseonClick]=\"true\">\r\n <div class=\"action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let fcc of logIssueForm?.failureCCUsers | slice: 1; let j = index\">\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"deleteItem('ISSUE_FCC',fcc)\"></i>\r\n {{fcc?.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 <button *ngIf=\"activeField !=='ISSUE_FCC'\" class=\"edit\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_FCC','ISSUE_FCC')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" *ngIf=\"additionalOptionStatus.EVIDENCE\"\r\n [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"true\">\r\n <!-- <img src=\"https://cdn.v-comply.com/format-evidence.svg\" alt=\"im\"> -->\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 Evidence\r\n </label>\r\n <div class=\"upload-format\">\r\n <span class=\"text\">Do you want evidence of completion of the issue to be uploaded?</span>\r\n <div class=\"radio-group\">\r\n <app-cs-radio [name]=\"'file-evidence'\" [value]=\"1\"\r\n [checked]=\"logIssueForm?.evidenceRequired === 1\" (checkedEvent)=\"setEvidence(1)\">Yes\r\n </app-cs-radio>\r\n <app-cs-radio [name]=\"'file-evidence'\" [value]=\"0\"\r\n [checked]=\"logIssueForm?.evidenceRequired === 0\" (checkedEvent)=\"setEvidence(0)\">No\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<app-loader-inline *ngIf=\"loader\"></app-loader-inline>\r\n<app-radio-list [config]=\"selectorConfig?.ISSUE_CATGORY\" [itemsList]=\"listData?.categoryList\"\r\n [selectedItems]=\"logIssueForm.issueCategory\" [identifierKey]=\"'issue_category_id'\"\r\n [displayKey]=\"'issue_category_name'\" *ngIf=\"activeSelector==='ISSUE_CATEGORY'\"\r\n (saveList)=\"selectorAction($event,'ISSUE_CATEGORY')\" (closeList)=\"fieldDeselector('ISSUE_CATEGORY')\">\r\n</app-radio-list>\r\n\r\n<app-radio-list [config]=\"selectorConfig?.ISSUE_RC\" [itemsList]=\"listData?.rcList\"\r\n [selectedItems]=\"logIssueForm.issueRC\" [identifierKey]=\"'rc_id'\" [displayKey]=\"'rc_name'\"\r\n *ngIf=\"activeSelector==='ISSUE_RC'\" (saveList)=\"selectorAction($event,'ISSUE_RC')\"\r\n (closeList)=\"fieldDeselector('ISSUE_RC')\"></app-radio-list>\r\n\r\n<app-radio-list [config]=\"selectorConfig?.ISSUE_WHO\" [itemsList]=\"listData?.userList\" [twoColumn]=\"true\"\r\n [selectedItems]=\"logIssueForm.entrustTo\" [identifierKey]=\"'employee_id'\" [displayKey]=\"'employee_name'\" [tooltipKey]=\"'employee_email'\"\r\n *ngIf=\"activeSelector==='ISSUE_WHO'\" (saveList)=\"selectorAction($event,'ISSUE_WHO')\"\r\n (closeList)=\"fieldDeselector('ISSUE_WHO')\"></app-radio-list>\r\n\r\n<app-radio-list [config]=\"selectorConfig?.ISSUE_TYPE\" [itemsList]=\"listData?.issueTypeList\"\r\n [selectedItems]=\"logIssueForm.issueType\" [identifierKey]=\"'issue_id'\" [displayKey]=\"'issue_type_name'\"\r\n *ngIf=\"activeSelector==='ISSUE_TYPE'\" (saveList)=\"selectorAction($event,'ISSUE_TYPE')\"\r\n (closeList)=\"fieldDeselector('ISSUE_TYPE')\"></app-radio-list>\r\n\r\n<app-checkbox-list [config]=\"selectorConfig?.ISSUE_CC\" [twoColumn]=\"true\"\r\n [itemsList]=\"listData.userList|userFilter:'employee_email':logIssueForm.entrustTo:{'employee_email':currentUser?.email}\"\r\n [selectedItems]=\"logIssueForm.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')\"></app-checkbox-list>\r\n\r\n<app-checkbox-list [config]=\"selectorConfig?.ISSUE_FCC\" [twoColumn]=\"true\"\r\n [itemsList]=\"listData.userList|userFilter:'employee_email':logIssueForm.entrustTo:{'employee_email':currentUser?.email}\"\r\n [selectedItems]=\"logIssueForm.failureCCUsers\" [identifierKey]=\"'employee_email'\" [displayKey]=\"'employee_name'\" [tooltipKey]=\"'employee_email'\"\r\n *ngIf=\"activeSelector==='ISSUE_FCC'\" (saveList)=\"selectorAction($event,'ISSUE_FCC')\"\r\n (closeList)=\"fieldDeselector('ISSUE_FCC')\"></app-checkbox-list>\r\n\r\n<app-smiley-dialog-inline\r\n *ngIf=\"showSmiley\"\r\n [message]=\"smileyMessage\"\r\n [actionButtons]=\"actionButtons\"\r\n (action)=\"action($event)\"\r\n (closeSmiley)=\"closeSmiley($event)\">\r\n</app-smiley-dialog-inline>\r\n\r\n",
|
|
11902
|
+
template: "<!-- <p>log-an-issue works!</p> -->\r\n<div class=\"log-an-issue\" *ngIf=\"!showSmiley\">\r\n <div class=\"form-group-row\" *ngIf=\"['COMPLIANCE_WORKROOM'].includes(openedFrom)\">\r\n <div class=\"left\" [class.checked]=\"false\">\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 Linked to\r\n </label>\r\n\r\n <div class=\"selected\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\">\r\n {{reponsibilityData?.responsibilityName}}</span>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\" *ngIf=\"['AUDIT_WORKROOM','VIEW_AUDIT_EXECUTION_SUMMARY','EXECUTE_AUDIT_PLAN'].includes(openedFrom)\">\r\n <div class=\"left\" [class.checked]=\"false\">\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 Issue linked with\r\n </label>\r\n <div class=\"selected\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\">\r\n {{issueDetails?.auditPlanName}}</span>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"form-group-row\" *ngIf=\"['VIEW_AUDIT_EXECUTION_SUMMARY','EXECUTE_AUDIT_PLAN'].includes(openedFrom) || isRiskControlVisible\" [class.active]=\"activeField === 'ISSUE_CONTROL_RISK'\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_CONTROL_RISK' && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.linkedControlRisk?.length > 0 \">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/category.svg\" alt=\"\"\r\n *ngIf=\"logIssueForm?.linkedControlRisk?.length === 0 || activeField === 'ISSUE_CONTROL_RISK' \" />\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.linkedControlRisk?.length > 0 && activeField !== 'ISSUE_CONTROL_RISK'\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Select a control or risk</label>\r\n <div class=\"select\" *ngIf=\"!logIssueForm?.linkedControlRisk || logIssueForm?.linkedControlRisk?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_CONTROL_RISK','ISSUE_CONTROL_RISK')\" type=\"text\"\r\n placeholder=\"Select a control or risk.\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.linkedControlRisk?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_CONTROL_RISK',logIssueForm?.linkedControlRisk[0])\"></i>{{logIssueForm?.linkedControlRisk[0]?.itemControlName}}</span>\r\n </div>\r\n <button class=\"edit\" *ngIf=\"activeField !=='ISSUE_CONTROL_RISK'\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_CONTROL_RISK','ISSUE_CONTROL_RISK')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n </div>\r\n <div class=\"vx-form-group\" *ngFor=\"let tag of logIssueForm.issueCustomTag|keyvalue\">\r\n <!-- {{logIssueForm.issueCustomTag|json}} -->\r\n <label class=\"vx-control-panel\">{{tag?.value?.custom_tag_name}}</label>\r\n <input type=\"text\" [placeholder]=\"tag?.value?.custom_tag_name\" [(ngModel)]=\"tag.value.custom_tag_value\">\r\n </div>\r\n </div>\r\n</div>\r\n\r\n\r\n <div class=\"form-group-row\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_TITLE' && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm.issueName.trim().length\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/what.svg\" alt=\"name\"\r\n *ngIf=\"!logIssueForm.issueName.trim().length || activeField === 'ISSUE_TITLE'\">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm.issueName.trim().length && activeField !== 'ISSUE_TITLE'\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 Issue Title <span class=\"required\">*</span>\r\n </label>\r\n <input type=\"text\" placeholder=\"Enter issue Title\" [(ngModel)]=\"logIssueForm.issueName\"\r\n (focusin)=\"setActiveFieldSelector('ISSUE_TITLE','ISSUE_TITLE')\"\r\n (keyup)=\"logIssueForm.issueName?.trim()?.length > 0 ? removeError('issueName'): null\"\r\n (focusout)=\"setActiveFieldSelector('','')\" *ngIf=\"logIssueForm.issueName =='' || activeSelector === 'ISSUE_TITLE'\">\r\n <div class=\"selected\" *ngIf=\"logIssueForm.issueName.length && activeSelector !== 'ISSUE_TITLE'\">\r\n <div class=\"chip-container\">\r\n <span class=\"value\">{{logIssueForm.issueName}}</span>\r\n </div>\r\n <button class=\"edit\" (click)=\"setActiveFieldSelector('ISSUE_TITLE','ISSUE_TITLE')\" type=\"button\"><i class=\"icons\"></i> Edit</button>\r\n </div>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('issueName')\">Enter a name for this issue.</p>\r\n <ng-container *ngIf=\"AttachmentTrack[0]?.length > 0 \">\r\n <div class=\"file-list\" *ngFor=\"let uploadingFile of AttachmentTrack[0]\">\r\n <div class=\"file-container\">\r\n <span class=\"file-name\">{{uploadingFile}}</span>\r\n <!-- <button>\r\n <i class=\"icons\"></i>\r\n </button> -->\r\n </div>\r\n <app-line-loader [loaderHeight]=\"2\"></app-line-loader>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"logIssueForm?.issueDescriptionAttachements?.length > 0\">\r\n <div class=\"file-list\" *ngFor=\"let file of logIssueForm?.issueDescriptionAttachements\">\r\n <div class=\"file-container\">\r\n <span class=\"file-name\">{{file?.name}}</span>\r\n <button>\r\n <i class=\"icons\" (click)=\"deleteFile(file,'ISSUE_DESCRIPTION')\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <marx-editor [editorConfig]=\"{mode: 'prime',file:false,\r\n colorPalette: true,\r\n link: true,\r\n placeholder: 'Description'}\" [(ngModel)]=\"logIssueForm.issueDescription\"\r\n (sendSavedFiles)=\"selectFile('ISSUE_DESCRIPTION',$event)\" (clickOutside)=\"checkDescription()\"></marx-editor>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\" [class.active]=\"activeField === 'ISSUE_CATEGORY'\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_CATEGORY' && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.issueCategory?.length > 0 \">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/category.svg\" alt=\"\"\r\n *ngIf=\"logIssueForm?.issueCategory?.length === 0 || activeField === 'ISSUE_CATEGORY' \" />\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.issueCategory?.length > 0 && activeField !== 'ISSUE_CATEGORY'\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Issue Category </label>\r\n <div class=\"select\" *ngIf=\"!logIssueForm?.issueCategory || logIssueForm?.issueCategory?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_CATEGORY','ISSUE_CATEGORY')\" type=\"text\"\r\n placeholder=\"Select a category for this issue\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.issueCategory?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_CATEGORY',logIssueForm?.issueCategory[0])\"></i>{{logIssueForm?.issueCategory[0]?.category_name}}</span>\r\n </div>\r\n <button class=\"edit\" *ngIf=\"activeField !=='ISSUE_CATEGORY'\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_CATEGORY','ISSUE_CATEGORY')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('issueCategory')\">Select an issue\r\n category.</p>\r\n </div>\r\n <div class=\"vx-form-group\" *ngFor=\"let tag of logIssueForm.issueCustomTag\">\r\n <!-- {{logIssueForm.issueCustomTag|json}} -->\r\n <label class=\"vx-control-panel\">{{tag?.name}}</label>\r\n <input type=\"text\" [placeholder]=\"tag?.name\" [(ngModel)]=\"tag.value\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\" *ngIf=\"isRCVisible\" [class.active]=\"false\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_RC' && sideSelectorElements.includes(activeField)\"\r\n >\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.issueRC?.length > 0\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/responsibility-center.svg\" alt=\"\" *ngIf=\"logIssueForm?.issueRC?.length === 0\">\r\n\r\n <svg class=\"checkIcon\" *ngIf=\"logIssueForm?.issueRC?.length > 0 && activeField !== 'ISSUE_RC'\"\r\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\r\n <span class=\"required\" *ngIf=\"isRCMandatory\">*</span>\r\n </label>\r\n <div class=\"select\" *ngIf=\"!logIssueForm?.issueRC || logIssueForm?.issueRC?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_RC','ISSUE_RC')\" type=\"text\"\r\n placeholder=\"Select Responsibility Center(s)\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.issueRC?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\" *ngIf=\"!isRCPreSelected\"\r\n (click)=\"deleteItem('ISSUE_RC',logIssueForm?.issueRC[0])\"></i>{{logIssueForm?.issueRC[0]?.item_name}}</span>\r\n </div>\r\n <button *ngIf=\"activeField !=='ISSUE_RC' && !isRCPreSelected\" class=\"edit\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_RC','ISSUE_RC')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('issueRC')\">Select the Responsibility Center associated with this issue.</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_WHO' && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.entrustTo?.length > 0\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/who.svg\" alt=\"im\"\r\n *ngIf=\"(logIssueForm?.entrustTo?.length === 0 && !logIssueForm?.isAssignToMyself) || activeField === 'ISSUE_WHO' \">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"(logIssueForm?.entrustTo?.length > 0 || logIssueForm?.isAssignToMyself ) && activeField !== 'ISSUE_WHO'\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Who? <span class=\"required\">*</span></label>\r\n <div class=\"select\" [class.disabled]=\"logIssueForm?.isAssignToMyself\"\r\n *ngIf=\"!logIssueForm?.entrustTo || logIssueForm?.entrustTo?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_WHO','ISSUE_WHO')\"\r\n [disabled]=\"logIssueForm?.isAssignToMyself\" type=\"text\"\r\n placeholder=\"Who is responsible for completing the responsibility?\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.entrustTo?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_WHO',logIssueForm?.entrustTo[0])\"></i>{{logIssueForm?.entrustTo[0]?.employee_name}}</span>\r\n </div>\r\n <button *ngIf=\"activeField !=='ISSUE_WHO'\" class=\"edit\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_WHO','ISSUE_WHO')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('entrustTo')\">Select the person responsible for resolving this issue.</p>\r\n <div class=\"switch-row align-right\" [class.disabled]=\"activeField === 'ISSUE_WHO'\">\r\n <app-cs-switch [disabled]=\"activeField === 'ISSUE_WHO'\" [(ngValue)]=\"logIssueForm.isAssignToMyself\" (ngValueChange)=\"assignMyself($event)\">OR\r\n ASSIGN TO MYSELF\r\n </app-cs-switch>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_DATE_TIME' && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.issueDueDate \">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/when.svg\" alt=\"im\"\r\n *ngIf=\"!logIssueForm?.issueDueDate || activeField === 'ISSUE_DATE_TIME' \">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.issueDueDate && activeField !== 'ISSUE_DATE_TIME'\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Maximum Time to Resolve <span class=\"required\">*</span></label>\r\n <div class=\"date-time-picker\">\r\n <div class=\"picker-group\">\r\n <input type=\"text\" readonly placeholder=\"Set a deadline.\"\r\n [value]=\"logIssueForm.issueDueDate | date: 'dd MMM yyyy'\" (click)=\"openDatePicker();\">\r\n <i class=\"icons\"></i>\r\n <dp-date-picker #datePicker (onSelect)=\"datePickerOverlay = false;closeDatePicker($event);removeError('issueDueDate')\" [config]=\"dateConfig\"\r\n [(ngModel)]=\"logIssueForm.issueDueDate\" >\r\n </dp-date-picker>\r\n <div class=\"vx-overlay\" (click)=\"closeDatePicker($event)\" *ngIf=\"datePickerOverlay\"></div>\r\n </div>\r\n\r\n <div class=\"picker-group\">\r\n\r\n <input (mouseover)=\"setCurrentTime()\" [(ngModel)]=\"logIssueForm.issueDueTime\" [value]=\"logIssueForm.issueDueTime\" readonly\r\n class=\"time\" aria-label=\"12hr format\" [ngxTimepicker]=\"dailyTime\" placeholder=\"Select Time\"\r\n type=\"text\" [min]=\"currentTime\" readonly>\r\n <i class=\"icons\"></i>\r\n <ngx-material-timepicker (opened)=\"setActiveFieldSelector('ISSUE_DATE_TIME', 'ISSUE_DATE_TIME')\"\r\n (closed)=\"setActiveFieldSelector('','')\" #dailyTime [defaultTime]=\"'11:59 pm'\">\r\n </ngx-material-timepicker>\r\n </div>\r\n\r\n </div>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('issueDueDate')\">Select the date by which this issue needs to be resolved.</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\" [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm.issueRecommendation\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/recommended-action.svg\" alt=\"im\" *ngIf=\"!(logIssueForm.issueRecommendation | spaceBreaker).length\">\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"(logIssueForm.issueRecommendation | spaceBreaker).length>0\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Recommended Actions <span class=\"required\">*</span></label>\r\n <ng-container *ngIf=\"AttachmentTrack[1]?.length > 0 \">\r\n <div class=\"file-list\" *ngFor=\"let uploadingFile of AttachmentTrack[1]\">\r\n <div class=\"file-container\">\r\n <span class=\"file-name\">{{uploadingFile}}</span>\r\n <!-- <button>\r\n <i class=\"icons\"></i>\r\n </button> -->\r\n </div>\r\n <app-line-loader [loaderHeight]=\"2\"></app-line-loader>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"logIssueForm?.recommendedActionsAttachments?.length > 0\">\r\n <div class=\"file-list\" *ngFor=\"let file of logIssueForm?.recommendedActionsAttachments\">\r\n <div class=\"file-container\">\r\n <span class=\"file-name\">{{file?.name}}</span>\r\n <button>\r\n <i class=\"icons\" (click)=\"deleteFile(file,'RECOMMENDED_ACTIONS')\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <marx-editor [(ngModel)]=\"logIssueForm.issueRecommendation\" [editorConfig]=\"{mode: 'prime',\r\n colorPalette: true,\r\n link: true,\r\n file:true,\r\n placeholder: 'Recommended actions'}\" (ngModelChange)=\"logIssueForm?.issueRecommendation?.trim()?.length > 0 ? removeError('issueRecommendation'):null\"\r\n (clickOutside)=\"checkDescription()\" (sendSavedFiles)=\"selectFile('RECOMMENDED_ACTIONS',$event)\"></marx-editor>\r\n <p class=\"error-message\" *ngIf=\"fieldsWithError.includes('issueRecommendation')\">Specify the recommended actions to resolve this issue.</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group-row\" *ngIf=\"!hiddenList.includes('RISK_CLASSIFICATION')\" [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm.issueRiskRating\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/risks.svg\" alt=\"im\" *ngIf=\"!logIssueForm?.issueRiskRating\">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.issueRiskRating\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 class=\"low\" *ngFor=\" let class of riskClassification\" [ngClass]=\"[class.class]\">\r\n <input type=\"radio\" name=\"classification\" [value]=\"class.value\"\r\n [checked]=\"logIssueForm?.issueRiskRating === class.value\"\r\n [(ngModel)]=\"logIssueForm.issueRiskRating\">\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 <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" *ngIf=\"additionalOptionStatus.EXCEPTION_TYPE\"\r\n [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.exceptionType > -1\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/exception-type.svg\" alt=\"im\" *ngIf=\"logIssueForm?.exceptionType === null\">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.exceptionType > -1\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 Exception Type\r\n </label>\r\n <app-cs-radio class=\"main-filed\" [value]=\"1\" [checked]=\"logIssueForm?.exceptionType === 1\"\r\n (checkedEvent)=\"setException(1)\">Design Exception\r\n <!-- <i class=\"icons\"></i> -->\r\n </app-cs-radio>\r\n <app-cs-radio class=\"main-filed\" [value]=\"2\" [checked]=\"logIssueForm?.exceptionType === 2\"\r\n (checkedEvent)=\"setException(2)\">Effectiveness Exception\r\n <!-- <i class=\"icons\"></i> -->\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" [class.active]=\"activeField === 'ISSUE_TYPE'\"\r\n [class.disabled]=\"activeField && activeField !== 'ISSUE_TYPE' && sideSelectorElements.includes(activeField)\"\r\n *ngIf=\"additionalOptionStatus.ISSUE_TYPE\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.issueType?.length > 0\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/issue-type.svg\" alt=\"\"\r\n *ngIf=\"logIssueForm?.issueType?.length === 0 || activeField === 'ISSUE_TYPE' \">\r\n\r\n <svg class=\"checkIcon\" *ngIf=\"logIssueForm?.issueType?.length > 0 && activeField !== 'ISSUE_TYPE'\"\r\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Issue Type</label>\r\n <div class=\"select\" *ngIf=\"!logIssueForm?.issueType || logIssueForm?.issueType?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_TYPE','ISSUE_TYPE')\" type=\"text\"\r\n placeholder=\"Select the Issue Type associated with this issue.\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.issueType?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_TYPE',logIssueForm?.issueType[0])\"></i>{{logIssueForm?.issueType[0]?.issue_type_name}}</span>\r\n </div>\r\n <button *ngIf=\"activeField !=='ISSUE_TYPE'\" class=\"edit\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_TYPE','ISSUE_TYPE')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div> -->\r\n\r\n <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" *ngIf=\"additionalOptionStatus.PRIORITY\"\r\n [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm?.issuePriority\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/priority.svg\" alt=\"im\" *ngIf=\"!logIssueForm?.issuePriority\">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.issuePriority > 0\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Priority</label>\r\n <div class=\"classification\">\r\n <label *ngFor=\" let priority of riskPrority\" [ngClass]=\"[priority.class]\">\r\n <input type=\"radio\" name=\"classification-priority\" [value]=\"priority.value\"\r\n [checked]=\"logIssueForm?.issuePriority === priority.value\"\r\n [(ngModel)]=\"logIssueForm.issuePriority\">\r\n <span>{{priority.name}}</span>\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" *ngIf=\"additionalOptionStatus.ASSOCIATED_RISKS\"\r\n [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"logIssueForm.issueAssociatedRisk\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/associated-risks.svg\" alt=\"im\" *ngIf=\"!logIssueForm?.issueAssociatedRisk.trim().length\">\r\n\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\"\r\n *ngIf=\"logIssueForm?.issueAssociatedRisk.trim().length\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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\">Associated Risks </label>\r\n <ng-container *ngIf=\"AttachmentTrack[2]?.length > 0 \">\r\n <div class=\"file-list\" *ngFor=\"let uploadingFile of AttachmentTrack[2]\">\r\n <div class=\"file-container\">\r\n <span class=\"file-name\">{{uploadingFile}}</span>\r\n <!-- <button>\r\n <i class=\"icons\"></i>\r\n </button> -->\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"logIssueForm?.associatedRisksAttachments?.length > 0\">\r\n <div class=\"file-list\" *ngFor=\"let file of logIssueForm?.associatedRisksAttachments\">\r\n <div class=\"file-container\">\r\n <span class=\"file-name\">{{file?.name}}</span>\r\n <button>\r\n <i class=\"icons\" (click)=\"deleteFile(file,'ASSOCIATED_RISKS')\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <marx-editor [(ngModel)]=\"logIssueForm.issueAssociatedRisk\" [editorConfig]=\"{mode: 'prime',\r\n colorPalette: true,\r\n link: true,\r\n file:false,\r\n placeholder: 'Associated Risks'}\" (clickOutside)=\"checkDescription()\" (sendSavedFiles)=\"selectFile('ASSOCIATED_RISKS',$event)\"></marx-editor>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" [class.active]=\"false\" *ngIf=\"additionalOptionStatus.OVERSIGHT\"\r\n [class.disabled]=\"activeField && !(['ISSUE_CC','ISSUE_FCC'].includes(activeField)) && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\"\r\n [class.checked]=\"logIssueForm?.issueCCUsers?.length > 0 || logIssueForm?.failureCCUsers?.length > 0\">\r\n <img src=\"https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/oversight.svg\" alt=\"\"\r\n *ngIf=\"(logIssueForm?.issueCCUsers?.length === 0 && logIssueForm?.failureCCUsers?.length === 0)|| activeField === 'ISSUE_CC'|| activeField === 'ISSUE_FCC' \">\r\n\r\n <svg class=\"checkIcon\"\r\n *ngIf=\"logIssueForm?.issueCCUsers?.length > 0 || logIssueForm?.failureCCUsers?.length > 0 && activeField !== 'ISSUE_CC'|| activeField !== 'ISSUE_FCC'\"\r\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 class=\"select\" *ngIf=\"!logIssueForm?.issueCCUsers || logIssueForm?.issueCCUsers?.length === 0\">\r\n <input type=\"text\" (click)=\"setActiveFieldSelector('ISSUE_CC','ISSUE_CC')\"\r\n placeholder=\"Who should have oversight of this issue?\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.issueCCUsers?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_CC',logIssueForm?.issueCCUsers[0])\"></i>{{logIssueForm?.issueCCUsers[0]?.employee_name}}</span>\r\n <button class=\"count\" *ngIf=\"logIssueForm?.issueCCUsers?.length > 1\" type=\"button\" appPopover\r\n (click)=\"CC.popover()\" placement=\"right\">+\r\n {{logIssueForm?.issueCCUsers?.slice(1).length}}</button>\r\n <app-popover #CC [dontCloseonClick]=\"true\">\r\n <div class=\"action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let cc of logIssueForm?.issueCCUsers | slice: 1; let j = index\">\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"deleteItem('ISSUE_CC',cc)\"></i>\r\n {{cc?.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 <button *ngIf=\"activeField !=='ISSUE_CC'\" class=\"edit\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_CC','ISSUE_CC')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n <div class=\"select\" *ngIf=\"!logIssueForm?.failureCCUsers || logIssueForm?.failureCCUsers?.length === 0\">\r\n <input (click)=\"setActiveFieldSelector('ISSUE_FCC','ISSUE_FCC')\" type=\"text\"\r\n placeholder=\"Who should be notified if the issue is not resolved?\" readonly>\r\n </div>\r\n <div class=\"selected\" *ngIf=\"logIssueForm?.failureCCUsers?.length > 0\">\r\n <div class=\"chip-container\">\r\n <span class=\"chip\"><i class=\"icons\"\r\n (click)=\"deleteItem('ISSUE_FCC',logIssueForm?.failureCCUsers[0])\"></i>{{logIssueForm?.failureCCUsers[0]?.employee_name}}</span>\r\n <button class=\"count\" *ngIf=\"logIssueForm?.failureCCUsers?.length > 1\" type=\"button\" appPopover\r\n (click)=\"FCC.popover()\" placement=\"right\">+\r\n {{logIssueForm?.failureCCUsers?.slice(1).length}}</button>\r\n <app-popover #FCC [dontCloseonClick]=\"true\">\r\n <div class=\"action-list\">\r\n <ul class=\"action-item\">\r\n <li *ngFor=\"let fcc of logIssueForm?.failureCCUsers | slice: 1; let j = index\">\r\n <div class=\"avatar-card\">\r\n <span class=\"value\">\r\n <i class=\"icons\" (click)=\"deleteItem('ISSUE_FCC',fcc)\"></i>\r\n {{fcc?.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 <button *ngIf=\"activeField !=='ISSUE_FCC'\" class=\"edit\" type=\"button\"\r\n (click)=\"setActiveFieldSelector('ISSUE_FCC','ISSUE_FCC')\"><i\r\n class=\"icons\"></i>Edit</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [appScrollInView]=\"scrollToBottom\" class=\"form-group-row\" *ngIf=\"additionalOptionStatus.EVIDENCE\"\r\n [class.disabled]=\"activeField && sideSelectorElements.includes(activeField)\">\r\n <div class=\"left\" [class.checked]=\"true\">\r\n <!-- <img src=\"https://cdn.v-comply.com/format-evidence.svg\" alt=\"im\"> -->\r\n <svg class=\"checkIcon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 52 52\">\r\n <circle class=\"checkIcon__circle\" cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\r\n <path class=\"checkIcon__check\" fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\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 Evidence\r\n </label>\r\n <div class=\"upload-format\">\r\n <span class=\"text\">Do you want evidence of completion of the issue to be uploaded?</span>\r\n <div class=\"radio-group\">\r\n <app-cs-radio [name]=\"'file-evidence'\" [value]=\"1\"\r\n [checked]=\"logIssueForm?.evidenceRequired === 1\" (checkedEvent)=\"setEvidence(1)\">Yes\r\n </app-cs-radio>\r\n <app-cs-radio [name]=\"'file-evidence'\" [value]=\"0\"\r\n [checked]=\"logIssueForm?.evidenceRequired === 0\" (checkedEvent)=\"setEvidence(0)\">No\r\n </app-cs-radio>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<app-loader-inline *ngIf=\"loader\"></app-loader-inline>\r\n<app-radio-list [config]=\"selectorConfig?.ISSUE_CATGORY\" [itemsList]=\"listData?.categoryList\"\r\n [selectedItems]=\"logIssueForm.issueCategory\" [identifierKey]=\"'category_id'\"\r\n [displayKey]=\"'category_name'\" *ngIf=\"activeSelector==='ISSUE_CATEGORY'\"\r\n (saveList)=\"selectorAction($event,'ISSUE_CATEGORY')\" (closeList)=\"fieldDeselector('ISSUE_CATEGORY')\">\r\n</app-radio-list>\r\n\r\n<app-radio-list [config]=\"selectorConfig?.ISSUE_RC\" [itemsList]=\"listData?.rcList\"\r\n [selectedItems]=\"logIssueForm.issueRC\" [identifierKey]=\"'rc_id'\" [displayKey]=\"'rc_name'\"\r\n *ngIf=\"activeSelector==='ISSUE_RC'\" (saveList)=\"selectorAction($event,'ISSUE_RC')\"\r\n (closeList)=\"fieldDeselector('ISSUE_RC')\"></app-radio-list>\r\n\r\n<app-radio-list [config]=\"selectorConfig?.ISSUE_WHO\" [itemsList]=\"listData?.userList\" [twoColumn]=\"true\"\r\n [selectedItems]=\"logIssueForm.entrustTo\" [identifierKey]=\"'employee_id'\" [displayKey]=\"'employee_name'\" [tooltipKey]=\"'employee_email'\"\r\n *ngIf=\"activeSelector==='ISSUE_WHO'\" (saveList)=\"selectorAction($event,'ISSUE_WHO')\"\r\n (closeList)=\"fieldDeselector('ISSUE_WHO')\"></app-radio-list>\r\n\r\n<app-radio-list [config]=\"selectorConfig?.ISSUE_TYPE\" [itemsList]=\"listData?.issueTypeList\"\r\n [selectedItems]=\"logIssueForm.issueType\" [identifierKey]=\"'issue_id'\" [displayKey]=\"'issue_type_name'\"\r\n *ngIf=\"activeSelector==='ISSUE_TYPE'\" (saveList)=\"selectorAction($event,'ISSUE_TYPE')\"\r\n (closeList)=\"fieldDeselector('ISSUE_TYPE')\"></app-radio-list>\r\n\r\n<app-checkbox-list [config]=\"selectorConfig?.ISSUE_CC\" [twoColumn]=\"true\"\r\n [itemsList]=\"listData.userList|userFilter:'employee_email':logIssueForm.entrustTo:{'employee_email':currentUser?.email}\"\r\n [selectedItems]=\"logIssueForm.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')\"></app-checkbox-list>\r\n\r\n<app-checkbox-list [config]=\"selectorConfig?.ISSUE_FCC\" [twoColumn]=\"true\"\r\n [itemsList]=\"listData.userList|userFilter:'employee_email':logIssueForm.entrustTo:{'employee_email':currentUser?.email}\"\r\n [selectedItems]=\"logIssueForm.failureCCUsers\" [identifierKey]=\"'employee_email'\" [displayKey]=\"'employee_name'\" [tooltipKey]=\"'employee_email'\"\r\n *ngIf=\"activeSelector==='ISSUE_FCC'\" (saveList)=\"selectorAction($event,'ISSUE_FCC')\"\r\n (closeList)=\"fieldDeselector('ISSUE_FCC')\"></app-checkbox-list>\r\n\r\n<app-responsibility-risk-selector [loading]=\"isRiskControlLoading\" *ngIf=\"activeSelector==='ISSUE_CONTROL_RISK'\"\r\n (closeList)=\"fieldDeselector('ISSUE_CONTROL_RISK')\" (fetchList)=\"getLinkage(issueDetails?.auditObjId, $event)\"\r\n (saveList)=\"selectorAction($event,'ISSUE_CONTROL_RISK')\"\r\n[activeEntity]=\"logIssueForm?.linkageType\" [listItems]=\"listData?.linkageList\" [selectedItems]=\"logIssueForm?.linkedControlRisk\"></app-responsibility-risk-selector>\r\n\r\n<app-smiley-dialog-inline\r\n *ngIf=\"showSmiley\"\r\n [message]=\"smileyMessage\"\r\n [actionButtons]=\"actionButtons\"\r\n (action)=\"action($event)\"\r\n (closeSmiley)=\"closeSmiley($event)\">\r\n</app-smiley-dialog-inline>\r\n",
|
|
11469
11903
|
styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");:root{font-size:4px}::ng-deep .log-an-issue{position:relative}", "@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.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-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}button{font-family:Poppins,sans-serif}::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{content:\"\";border-top:5px solid #707070;border-right:5px solid transparent;border-left:5px solid transparent;position:absolute;right:15px;top:calc(50% - 2px)}::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:#fff;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 rgba(30,93,211,.27)}::ng-deep .vx-form-group .select .custom-input.frequency-custom-input{padding-right:116px}::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}::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}::ng-deep .vx-form-group .tab-group .upload-file{padding:16px 24px;display:flex;align-items:center}::ng-deep .vx-form-group .tab-group .upload-file .image{width:80px;margin-right:20px}::ng-deep .vx-form-group .tab-group .upload-file .browse{display:flex;align-items:center;justify-content:center;width:calc(100% - 100px);text-align:center}::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:12px \u200B24px}::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%}::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:#fff}::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:11px!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;width:100%;margin-top:4px;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;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 .input,::ng-deep .vx-form-group input[type=text]{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#fff;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::-moz-placeholder,::ng-deep .vx-form-group input[type=text]::-moz-placeholder{color:#747576}::ng-deep .vx-form-group .input:-ms-input-placeholder,::ng-deep .vx-form-group input[type=text]:-ms-input-placeholder{color:#747576}::ng-deep .vx-form-group .input::placeholder,::ng-deep .vx-form-group input[type=text]::placeholder{color:#747576}::ng-deep .vx-form-group .input:focus,::ng-deep .vx-form-group .input:hover,::ng-deep .vx-form-group input[type=text]:focus,::ng-deep .vx-form-group input[type=text]:hover{border-color:#1e5dd3;box-shadow:0 0 5px rgba(30,93,211,.27)}::ng-deep .vx-form-group .input.error,::ng-deep .vx-form-group input[type=text].error{border-color:#eb2424;color:#eb2424;margin-bottom:4px}::ng-deep .vx-form-group .input.error:focus,::ng-deep .vx-form-group input[type=text].error:focus{box-shadow:0 0 5px rgba(211,30,30,.27)}::ng-deep .vx-form-group .input:disabled,::ng-deep .vx-form-group input[type=text]:disabled{background:#f1f1f1;cursor:not-allowed}::ng-deep .vx-form-group .input:disabled:hover,::ng-deep .vx-form-group input[type=text]:disabled:hover{border-color:#dbdbdb;box-shadow:none}::ng-deep .vx-form-group .input span.text,::ng-deep .vx-form-group input[type=text] span.text{font-size:13px;color:#747576;font-weight:400;display:block;width:100%}::ng-deep .vx-form-group .input .input-group,::ng-deep .vx-form-group input[type=text] .input-group{display:flex;align-items:center}::ng-deep .vx-form-group .input .input-group.counter,::ng-deep .vx-form-group input[type=text] .input-group.counter{min-width:96px;width:96px}::ng-deep .vx-form-group .input .input-group.counter button,::ng-deep .vx-form-group input[type=text] .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 .input-group.counter input,::ng-deep .vx-form-group input[type=text] .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 .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-outer-spin-button,::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}::ng-deep .vx-form-group .input+.file-list,::ng-deep .vx-form-group input[type=text]+.file-list{margin-top:8px}::ng-deep .vx-form-group .input::-moz-placeholder,::ng-deep .vx-form-group input[type=text]::-moz-placeholder{font-size:13px}::ng-deep .vx-form-group .input::placeholder,::ng-deep .vx-form-group input[type=text]::placeholder{font-size:13px}::ng-deep .vx-form-group .input:-ms-input-placeholder,::ng-deep .vx-form-group input[type=text]:-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group .input::-ms-input-placeholder,::ng-deep .vx-form-group input[type=text]::-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group .classification{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#fff;padding:8px 12px;display:flex;justify-content:space-between}::ng-deep .vx-form-group .classification label{width:100%;position:relative;z-index:1;margin:0 4px 0 0}::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 .chip-container{display:flex;width:calc(100% - 60px);align-items:center}::ng-deep .vx-form-group .selected .chip-container span.chip{background:#fff;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 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.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 button.count{background:#1e5dd3;border-radius:2px;height:24px;padding:2px 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:1px solid #f1f1f1;border-radius:2px;background:#fff;outline:none;cursor:pointer;display:block;height:24px;padding:0 5px 0 4px;font-size:11px;font-weight:500;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:#fff;box-shadow:0 0 5px #1e5dd3;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%}@media not all and (min-resolution:0.001dpcm){@supports (-webkit-appearance:none){::ng-deep .vx-form-group marx-editor .editor-container .editable-block:before{opacity:.72}}}::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}::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:22px}::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}::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}::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}::ng-deep .vx-form-group .date-time-picker:focus-within{border-color:#1e5dd3;box-shadow:0 0 5px rgba(30,93,211,.27)}::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:#fff;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::-moz-placeholder{color:#999;font-size:13px}::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:16px;position:absolute;left:12px;top:0;color:#bcbcbc;font-size:16px;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 .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}.left{width:36px;height:36px;margin-top:30px;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:#fff;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 0 #34aa44;-webkit-animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;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;-webkit-animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}.left .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;-webkit-animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards;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.hide{opacity:0;transition:all .2s ease-in-out}.form-group-row.disabled{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:0;right:0;bottom:0;left:0;background:#fff;opacity:.7}.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 .custom-input,.form-group-row.active .right .vx-form-group input{border-color:#1e5dd3;box-shadow:0 0 5px rgba(30,93,211,.27)}@-webkit-keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes strokeCheck{to{stroke-dashoffset:0}}@-webkit-keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}.action-list{width:220px}.action-list ul{padding:0;margin:0;-webkit-animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;background:#fff;box-shadow:0 3px 6px #1c5bd140;border-radius:4px;max-height:220px;overflow:auto}.action-list ul.action-item{display:block}.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}.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}.action-list ul.action-item li button i{font-size:17px;margin-right:10px;color:#1c5bd1}.action-list ul.action-item li button:hover{background:#f3f3f3}.action-list ul.action-item li .avatar-card{display:flex;align-items:center;width:100%;padding:7.5px}.action-list ul.action-item li .avatar-card.within-con{display:block}.action-list ul.action-item li .avatar-card .avatar{height:24px;width:24px!important;overflow:hidden;background:#4681ef;color:#fff;font-size:10px;display:inline-flex;margin-right:5px;border-radius:50%;align-items:center;justify-content:center;text-transform:uppercase}.action-list ul.action-item li .avatar-card .avatar img{width:100%}.action-list ul.action-item li .avatar-card .avatar+span.value{width:calc(100% - 29px)}.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;-moz-text-align-last:left;text-align-last:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:20px}.action-list ul.action-item li .avatar-card span.value i{font-size:8px;color:#1c5bd1;cursor:pointer;margin-right:5px}.action-list ul.action-item li .avatar-card.no-image{display:block}.action-list ul.action-item li .avatar-card.no-image span.value{width:100%;display:block}.action-list ul.action-item li .chip-item{color:#1e5dd3;padding:10px;display:flex;align-items:center}.action-list ul.action-item li .chip-item i{margin-right:7px;font-size:10px;cursor:pointer;display:inline-flex}.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}.action-list ul.action-item li .chip-item span.chip-block{display:block;width:100%}.action-list ul.action-item li .chip-item span.id{font-size:9px}.action-list ul.action-item li .within{display:flex;align-items:center;justify-content:flex-start}.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}.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}.action-list ul.action-item li:first-child{-webkit-animation:action-list-open .25s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .25s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(2){-webkit-animation:action-list-open .35s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .35s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(3){-webkit-animation:action-list-open .45s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .45s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(4){-webkit-animation:action-list-open .55s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .55s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(5){-webkit-animation:action-list-open .65s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .65s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(6){-webkit-animation:action-list-open .75s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .75s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(7){-webkit-animation:action-list-open .85s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .85s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(8){-webkit-animation:action-list-open .95s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open .95s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(9){-webkit-animation:action-list-open 1.05s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open 1.05s cubic-bezier(.25,.46,.45,.94) both}.action-list ul.action-item li:nth-child(10){-webkit-animation:action-list-open 1.15s cubic-bezier(.25,.46,.45,.94) both;animation:action-list-open 1.15s cubic-bezier(.25,.46,.45,.94) both}@-webkit-keyframes action-list-open{0%{transform:translateY(50px)}to{transform:translateY(0)}}@keyframes action-list-open{0%{transform:translateY(50px)}to{transform:translateY(0)}}@-webkit-keyframes scale-up-center{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@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:0;margin-bottom:0}.edit-loader{position:absolute;top:-3px;left:-3px;width:46px;height:46px;transform:rotate(180deg)}.circular-loader{-webkit-animation:rotate 2s linear infinite;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;-webkit-animation:dash 1.5s ease-in-out infinite;animation:dash 1.5s ease-in-out infinite;stroke-linecap:round}@-webkit-keyframes rotate{to{transform:rotate(1turn)}}@keyframes rotate{to{transform:rotate(1turn)}}@-webkit-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}}@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:#fff;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:0;right:0;bottom:0;left:0;z-index:999}.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:0;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;-webkit-animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;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-calendar-nav-left,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right,dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{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-calendar-nav-left:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn: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:#000;display:inline-flex}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays{display:flex;justify-content:space-around}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week .dp-calendar-weekday,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays .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-calendar-week button,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays 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-calendar-week button:hover,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-selected,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-selected{background:#1e5dd3}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-current-day,dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays 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-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-left 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)}@-webkit-keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}@keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}"]
|
|
11470
11904
|
},] }
|
|
11471
11905
|
];
|
|
@@ -11477,10 +11911,16 @@ LogAnIssueComponent.ctorParameters = () => [
|
|
|
11477
11911
|
];
|
|
11478
11912
|
LogAnIssueComponent.propDecorators = {
|
|
11479
11913
|
openedFrom: [{ type: Input }],
|
|
11480
|
-
|
|
11914
|
+
issueId: [{ type: Input }],
|
|
11915
|
+
reponsibilityData: [{ type: Input }],
|
|
11916
|
+
issueDetails: [{ type: Input }],
|
|
11917
|
+
mode: [{ type: Input }],
|
|
11918
|
+
config: [{ type: Input }],
|
|
11481
11919
|
pickerChanged: [{ type: Output }],
|
|
11482
11920
|
populateOption: [{ type: Output }],
|
|
11483
11921
|
closeWorkflow: [{ type: Output }],
|
|
11922
|
+
modeChange: [{ type: Output }],
|
|
11923
|
+
disconnectRefresh: [{ type: Output }],
|
|
11484
11924
|
datePicker: [{ type: ViewChild, args: ['datePicker',] }]
|
|
11485
11925
|
};
|
|
11486
11926
|
|
|
@@ -11617,7 +12057,7 @@ class CheckboxListComponent {
|
|
|
11617
12057
|
CheckboxListComponent.decorators = [
|
|
11618
12058
|
{ type: Component, args: [{
|
|
11619
12059
|
selector: 'app-checkbox-list',
|
|
11620
|
-
template: "<div class=\"add-risk-rc\" [class.animate]=\"animation\">\r\n <div class=\"add-risk-rc-head\">\r\n <h3 class=\"add-risk-rc-title\">{{config?.panelTitle}}</h3>\r\n <!-- <button class=\"add-risk-rc-close\" (click)=close()>\r\n <i class=\"icons\"></i>\r\n </button> -->\r\n </div>\r\n <div class=\"add-risk-rc-body\">\r\n <div class=\"search-block\">\r\n <i class=\"icons\"></i>\r\n <input type=\"text\" placeholder=\"{{config?.searchPlaceholder}}\" [(ngModel)]=\"searchItem\" />\r\n </div>\r\n <ng-container *ngIf=\"(itemsList | search:searchItem) as searchList\">\r\n <div class=\"body-top\" *ngIf=\"config?.selectAllEnabled && searchList?.length > 0 && searchItem?.trim()?.length === 0 \">\r\n <app-cs-checkbox [ngValue]=\"itemsList?.length === selectedItems?.length && selectedItems?.length > 0\"\r\n (ngValueChange)=\"selectAll($event)\"><strong> {{itemsList?.length === selectedItems?.length &&\r\n selectedItems?.length > 0?'Deselect All':'Select All'}}</strong>\r\n </app-cs-checkbox>\r\n </div>\r\n <ul class=\"add-risk-rc-list\" [class.two-column]=\"twoColumn\" *ngIf=\"searchList?.length > 0\">\r\n <li *ngFor=\"let item of searchList\" #ulElement>\r\n <app-cs-checkbox [ngValue]=\"selectedItems.includes(item[identifierKey])\"\r\n (ngValueChange)=\"selectItem(item[identifierKey],$event)\"\r\n [appTooltip]=\"tooltipKey ? item[tooltipKey]: item[displayKey]\" placement=\"bottom-left\" delay=\"0\"\r\n [tooltipMandatory]=\"true\">\r\n {{item[displayKey]}}\r\n </app-cs-checkbox>\r\n </li>\r\n </ul>\r\n <app-no-data *ngIf=\"searchList.length === 0\"\r\n [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\"\r\n [noDataText]=\"config?.noDataText?.length > 0 ? config?.noDataText:'No data to display'\"></app-no-data>\r\n </ng-container>\r\n </div>\r\n\r\n <app-floating-bar [selectedData]=\"selectedItems|listMapper:itemsList:identifierKey\" [displayElementKey]=\"displayKey\"\r\n [singularText]=\"config?.floatingTextSingular\"\r\n [pluralText]=\"config?.floatingTextPlural ?config?.floatingTextPlural:'Users selected'\" (closeEvent)=\"save()\"\r\n (closeList)=\"close()\" [isDisabled]=\"selectedItems.length === 0 || itemsList.length === 0 \"\r\n (deleteEvent)=\"deleteItem($event)\"></app-floating-bar>\r\n</div
|
|
12060
|
+
template: "<div class=\"add-risk-rc\" [class.animate]=\"animation\">\r\n <div class=\"add-risk-rc-head\">\r\n <h3 class=\"add-risk-rc-title\">{{config?.panelTitle}}</h3>\r\n <!-- <button class=\"add-risk-rc-close\" (click)=close()>\r\n <i class=\"icons\"></i>\r\n </button> -->\r\n </div>\r\n <div class=\"add-risk-rc-body\">\r\n <div class=\"search-block\">\r\n <i class=\"icons\"></i>\r\n <input type=\"text\" placeholder=\"{{config?.searchPlaceholder}}\" [(ngModel)]=\"searchItem\" />\r\n </div>\r\n <ng-container *ngIf=\"(itemsList | search:searchItem:displayKey) as searchList\">\r\n <div class=\"body-top\" *ngIf=\"config?.selectAllEnabled && searchList?.length > 0 && searchItem?.trim()?.length === 0 \">\r\n <app-cs-checkbox [ngValue]=\"itemsList?.length === selectedItems?.length && selectedItems?.length > 0\"\r\n (ngValueChange)=\"selectAll($event)\"><strong> {{itemsList?.length === selectedItems?.length &&\r\n selectedItems?.length > 0?'Deselect All':'Select All'}}</strong>\r\n </app-cs-checkbox>\r\n </div>\r\n <ul class=\"add-risk-rc-list\" [class.two-column]=\"twoColumn\" *ngIf=\"searchList?.length > 0\">\r\n <li *ngFor=\"let item of searchList\" #ulElement>\r\n <app-cs-checkbox [ngValue]=\"selectedItems.includes(item[identifierKey])\"\r\n (ngValueChange)=\"selectItem(item[identifierKey],$event)\"\r\n [appTooltip]=\"tooltipKey ? item[tooltipKey]: item[displayKey]\" placement=\"bottom-left\" delay=\"0\"\r\n [tooltipMandatory]=\"true\">\r\n {{item[displayKey]}}\r\n </app-cs-checkbox>\r\n </li>\r\n </ul>\r\n <app-no-data *ngIf=\"searchList.length === 0\"\r\n [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\"\r\n [noDataText]=\"config?.noDataText?.length > 0 ? config?.noDataText:'No data to display'\"></app-no-data>\r\n </ng-container>\r\n </div>\r\n\r\n <app-floating-bar [selectedData]=\"selectedItems|listMapper:itemsList:identifierKey\" [displayElementKey]=\"displayKey\"\r\n [singularText]=\"config?.floatingTextSingular\"\r\n [pluralText]=\"config?.floatingTextPlural ?config?.floatingTextPlural:'Users selected'\" (closeEvent)=\"save()\"\r\n (closeList)=\"close()\" [isDisabled]=\"selectedItems.length === 0 || itemsList.length === 0 \"\r\n (deleteEvent)=\"deleteItem($event)\"></app-floating-bar>\r\n</div>\r\n",
|
|
11621
12061
|
styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");::ng-deep .add-risk-rc{border-top:3px solid #1e5dd3;position:fixed;top:0;right:500px;bottom:0;left:0}::ng-deep .add-risk-rc-head{background:#fbfbfb;height:42px;padding:0 18px;display:flex;justify-content:space-between;align-items:center;border:1px solid #f1f1f1;border-right:none}::ng-deep .add-risk-rc-title{color:#161b2f;font-size:15px;font-weight:500;margin:0!important;padding:0;line-height:21px}::ng-deep .add-risk-rc-close{background:transparent;border:none;outline:none;cursor:pointer;color:#000;font-size:12px;display:inline-block;padding:0}::ng-deep .add-risk-rc-body{padding:24px 36px 16px;height:calc(100vh - 112px)}::ng-deep .add-risk-rc-body .search-block{position:relative}::ng-deep .add-risk-rc-body .search-block input{height:44px;line-height:24px;padding:10px 15px 10px 40px;outline:none;border:1px solid #7475763f;border-radius:4px;width:100%;font-size:14px;color:#747576}::ng-deep .add-risk-rc-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .add-risk-rc-body .search-block i{position:absolute;left:17px;font-size:12px;font-weight:400;top:17px;pointer-events:none;color:#f1f1f1}::ng-deep .add-risk-rc-body .body-top{display:flex;justify-content:space-between;padding:16px 0 0}::ng-deep .add-risk-rc-body .body-top app-cs-checkbox{display:flex}::ng-deep .add-risk-rc-body .body-top app-cs-checkbox label span.value strong{color:#161b2f;font-size:14px;font-weight:600;white-space:nowrap}::ng-deep .add-risk-rc-body ul{padding:0;margin:0}::ng-deep .add-risk-rc-body ul.add-risk-rc-list{padding:16px 0 0;display:block;align-items:flex-start;flex-wrap:wrap;max-height:calc(100vh - 248px);overflow:auto}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li{width:100%;padding:0 0 16px;list-style:none}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio{display:flex}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox label,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio label{width:100%}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox label span.value,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio label span.value{width:auto;justify-content:flex-start;line-height:18px!important}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox ul.add-risk-rc-name,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio ul.add-risk-rc-name{display:flex;justify-content:flex-start;width:auto;max-width:100%}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox ul.add-risk-rc-name li,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio ul.add-risk-rc-name li{list-style:none;color:#747576;font-size:14px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:auto;padding:0 8px 0 0;max-width:100%}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox ul.add-risk-rc-name li i,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio ul.add-risk-rc-name li i{font-size:8px;padding-right:8px}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox ul.add-risk-rc-name li:first-child,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio ul.add-risk-rc-name li:first-child{color:#4681ef;max-width:100%}::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-checkbox ul.add-risk-rc-name li:last-of-type,::ng-deep .add-risk-rc-body ul.add-risk-rc-list li app-cs-radio ul.add-risk-rc-name li:last-of-type{color:#66bf72}::ng-deep .add-risk-rc-body ul.add-risk-rc-list.two-column{display:flex;flex-wrap:wrap}::ng-deep .add-risk-rc-body ul.add-risk-rc-list.two-column li{width:50%;padding-right:20px}::ng-deep .add-risk-rc-body app-no-data .no-data-wrapper{height:calc(100vh - 182px)}::ng-deep .add-risk-rc.animate{-webkit-animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}::ng-deep .add-risk-rc .message-footer{background:#1e5dd3;border-radius:5px;margin:0 0 0 30px;width:calc(100% - 60px);position:relative;bottom:0}::ng-deep .add-risk-rc .message-footer .message{padding:15px;display:flex;align-items:flex-start}::ng-deep .add-risk-rc .message-footer .message i{width:auto;font-size:16px;color:#fff}::ng-deep .add-risk-rc .message-footer .message span{color:#fff;font-size:12px;line-height:18px;padding-left:9px;font-weight:300}::ng-deep .add-risk-rc .message-footer .footer{border-top:1px solid #1483ef;display:flex;justify-content:space-between;align-items:center;padding:10px 15px}::ng-deep .add-risk-rc .message-footer .footer span{color:#fff;font-size:14px}::ng-deep .add-risk-rc .message-footer .footer .button-wrapper{display:flex}::ng-deep .add-risk-rc .message-footer .footer .button-wrapper button{width:60px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:11px;font-weight:500;border:1px solid #fff;text-transform:uppercase;border-radius:2px;outline:none;padding:0;margin:0}::ng-deep .add-risk-rc .message-footer .footer .button-wrapper button.outline{background:#1e5dd3;color:#fff}::ng-deep .add-risk-rc .message-footer .footer .button-wrapper button.fill{background:#fff;color:#1e5dd3}@-webkit-keyframes animate-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes animate-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}"]
|
|
11622
12062
|
},] }
|
|
11623
12063
|
];
|
|
@@ -11653,9 +12093,12 @@ class RadioListComponent {
|
|
|
11653
12093
|
}, 300);
|
|
11654
12094
|
this.selectedItems = this.arrayToId(this.selectedItems, this.identifierKey);
|
|
11655
12095
|
// this.rerenderList();
|
|
12096
|
+
}
|
|
12097
|
+
ngAfterViewInit() {
|
|
11656
12098
|
setTimeout(() => {
|
|
11657
|
-
|
|
11658
|
-
|
|
12099
|
+
var _a, _b;
|
|
12100
|
+
this.blockWidth = (_b = (_a = this.listBlock) === null || _a === void 0 ? void 0 : _a.nativeElement) === null || _b === void 0 ? void 0 : _b.offsetWidth;
|
|
12101
|
+
}, 100);
|
|
11659
12102
|
}
|
|
11660
12103
|
selectItem(item) {
|
|
11661
12104
|
this.selectedItems = [];
|
|
@@ -11678,7 +12121,7 @@ class RadioListComponent {
|
|
|
11678
12121
|
RadioListComponent.decorators = [
|
|
11679
12122
|
{ type: Component, args: [{
|
|
11680
12123
|
selector: 'app-radio-list',
|
|
11681
|
-
template: "<div class=\"radio-list\" [class.animate]=\"animation\">\r\n <div class=\"radio-list-head\">\r\n <h3 class=\"radio-list-title\">{{config?.panelTitle}}</h3>\r\n <!-- <button class=\"radio-list-close\">\r\n <i class=\"icons\" (click)=\"close()\"></i>\r\n </button> -->\r\n </div>\r\n\r\n <div class=\"radio-list-body\">\r\n <div class=\"search-block\" *ngIf=\"config?.searchEnabled\">\r\n <i class=\"icons\"></i>\r\n <input type=\"text\" [placeholder]=\"config?.searchPlaceholder\" [(ngModel)]=\"searchItem\" />\r\n </div>\r\n <!-- <div class=\"body-top\">\r\n <div class=\"pagination\"></div>\r\n </div> -->\r\n <ng-container *ngIf=\"(itemsList | search:searchItem) as searchList\">\r\n <ul class=\"categories\" [class.two-column]=\"twoColumn\" *ngIf=\"searchList?.length > 0\">\r\n <li *ngFor=\"let item of searchList\">\r\n <ng-container *ngIf=\"(item[displayKey]|dataType) !== 'object' \">\r\n <app-cs-radio [name]=\"'radio-selector'\" (checkedEvent)=\"selectItem(item[identifierKey])\"\r\n [name]=\"'rx-category'\" [checked]=\"selectedItems.includes(item[identifierKey])\"\r\n [appTooltip]=\"tooltipKey ? item[tooltipKey]: item[displayKey]\" placement=\"bottom-left\"\r\n delay=\"0\" [tooltipMandatory]=\"true\">\r\n {{item[displayKey]}}\r\n </app-cs-radio>\r\n </ng-container>\r\n <ng-container *ngIf=\"(item[displayKey]|dataType) === 'object' \">\r\n <app-cs-radio [name]=\"'radio-selector'\" (checkedEvent)=\"selectItem(item[identifierKey])\"\r\n [checked]=\"selectedItems.includes(item[identifierKey])\">\r\n\r\n <ul class=\"category-within-list\" #listBlock>\r\n <li *ngFor=\"let child of item[displayKey]\" [style.max-width.px]=\"blockWidth / item[displayKey].length\">\r\n <span [appTooltip]=\"child\" placement=\"bottom-left\" delay=\"0\">{{child}}</span>\r\n </li>\r\n </ul>\r\n </app-cs-radio>\r\n </ng-container>\r\n </li>\r\n </ul>\r\n <app-no-data *ngIf=\"searchList?.length === 0\" [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\" [noDataText]=\"config?.noDataText?.length > 0 ? config?.noDataText:'No data to display'\"></app-no-data>\r\n\r\n </ng-container>\r\n </div>\r\n <div class=\"radio-list-footer\">\r\n <app-floating-bar [selectedData]=\"selectedItems|listMapper:itemsList:identifierKey\" [displayElementKey]=\"displayKey\"\r\n [singularText]=\"config?.floatingTextSingular\"\r\n [pluralText]=\"config?.floatingTextPlural ?config?.floatingTextPlural:'Users selected'\"\r\n (closeEvent)=\"save()\"\r\n (closeList)=\"close()\" (deleteEvent)=\"deleteItem($event)\"\r\n [isDisabled]=\"selectedItems.length === 0 || itemsList.length === 0 \">\r\n </app-floating-bar>\r\n </div>\r\n</div>\r\n",
|
|
12124
|
+
template: "<div class=\"radio-list\" [class.animate]=\"animation\">\r\n <div class=\"radio-list-head\">\r\n <h3 class=\"radio-list-title\">{{config?.panelTitle}}</h3>\r\n <!-- <button class=\"radio-list-close\">\r\n <i class=\"icons\" (click)=\"close()\"></i>\r\n </button> -->\r\n </div>\r\n\r\n <div class=\"radio-list-body\">\r\n <div class=\"search-block\" *ngIf=\"config?.searchEnabled\">\r\n <i class=\"icons\"></i>\r\n <input type=\"text\" [placeholder]=\"config?.searchPlaceholder\" [(ngModel)]=\"searchItem\" />\r\n </div>\r\n <!-- <div class=\"body-top\">\r\n <div class=\"pagination\"></div>\r\n </div> -->\r\n <ng-container *ngIf=\"(itemsList | search:searchItem:displayKey) as searchList\">\r\n <ul class=\"categories\" [class.two-column]=\"twoColumn\" *ngIf=\"searchList?.length > 0\">\r\n <li *ngFor=\"let item of searchList\">\r\n <ng-container *ngIf=\"(item[displayKey]|dataType) !== 'object' \">\r\n <app-cs-radio [name]=\"'radio-selector'\" (checkedEvent)=\"selectItem(item[identifierKey])\"\r\n [name]=\"'rx-category'\" [checked]=\"selectedItems.includes(item[identifierKey])\"\r\n [appTooltip]=\"tooltipKey ? item[tooltipKey]: item[displayKey]\" placement=\"bottom-left\"\r\n delay=\"0\" [tooltipMandatory]=\"true\">\r\n {{item[displayKey]}}\r\n </app-cs-radio>\r\n </ng-container>\r\n <ng-container *ngIf=\"(item[displayKey]|dataType) === 'object' \">\r\n <app-cs-radio [name]=\"'radio-selector'\" (checkedEvent)=\"selectItem(item[identifierKey])\"\r\n [checked]=\"selectedItems.includes(item[identifierKey])\">\r\n\r\n <ul class=\"category-within-list\" #listBlock>\r\n <li *ngFor=\"let child of item[displayKey]\" [style.max-width.px]=\"blockWidth / item[displayKey].length\">\r\n <span [appTooltip]=\"child\" placement=\"bottom-left\" delay=\"0\">{{child}}</span>\r\n </li>\r\n </ul>\r\n </app-cs-radio>\r\n </ng-container>\r\n </li>\r\n </ul>\r\n <app-no-data *ngIf=\"searchList?.length === 0\" [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\" [noDataText]=\"config?.noDataText?.length > 0 ? config?.noDataText:'No data to display'\"></app-no-data>\r\n\r\n </ng-container>\r\n </div>\r\n <div class=\"radio-list-footer\">\r\n <app-floating-bar [selectedData]=\"selectedItems|listMapper:itemsList:identifierKey\" [displayElementKey]=\"displayKey\"\r\n [singularText]=\"config?.floatingTextSingular\"\r\n [pluralText]=\"config?.floatingTextPlural ?config?.floatingTextPlural:'Users selected'\"\r\n (closeEvent)=\"save()\"\r\n (closeList)=\"close()\" (deleteEvent)=\"deleteItem($event)\"\r\n [isDisabled]=\"selectedItems.length === 0 || itemsList.length === 0 \">\r\n </app-floating-bar>\r\n </div>\r\n</div>\r\n",
|
|
11682
12125
|
styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");::ng-deep .radio-list{position:fixed;top:0;right:500px;bottom:0;left:0;border-top:3px solid #1e5dd3}::ng-deep .radio-list-head{background:#fbfbfb;height:42px;padding:0 18px;display:flex;justify-content:space-between;align-items:center;border:1px solid #f1f1f1;border-right:none}::ng-deep .radio-list-title{color:#161b2f;font-size:15px;font-weight:500;margin:0!important;padding:0;line-height:21px}::ng-deep .radio-list-close{background:transparent;border:none;outline:none;cursor:pointer;color:#000;font-size:12px;display:inline-block;padding:0}::ng-deep .radio-list-body{padding:24px 40px 24px 36px;background:#fff;height:calc(100vh - 124px)}::ng-deep .radio-list-body .filter-card{display:flex;align-items:center;border:1px solid #dbdbdb;border-radius:4px;height:55px;padding:12px 15px;width:100%;justify-content:space-between;cursor:pointer}::ng-deep .radio-list-body .filter-card.active{box-shadow:0 3px 6px #1e5dd31a}::ng-deep .radio-list-body .filter-card label{font-weight:600;text-transform:uppercase;color:#747576;line-height:16px;margin-left:0;font-size:11px;width:100%;pointer-events:none}::ng-deep .radio-list-body .filter-card p{line-height:16px;font-size:10px;color:#161b2f;font-weight:600;margin:0}::ng-deep .radio-list-body .filter-card span.counter{display:flex;height:32px;min-width:32px;border-radius:4px;background:#042e7d;color:#fff;font-size:11px;font-weight:600;justify-content:center;align-items:center;padding:0 5px;line-height:32px}::ng-deep .radio-list-body .filter-card .left{display:flex;flex-wrap:wrap}::ng-deep .radio-list-body .filter-card+.filter-card{margin-left:10px}::ng-deep .radio-list-body .filter-card-row{display:flex;padding-bottom:15px}::ng-deep .radio-list-body .search-block{position:relative}::ng-deep .radio-list-body .search-block input{height:44px;line-height:24px;padding:10px 16px 10px 40px;outline:none;border:1px solid #7475763f;border-radius:4px;width:100%;font-size:14px;color:#747576}::ng-deep .radio-list-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .radio-list-body .search-block i{position:absolute;left:17px;font-size:12px;font-weight:400;top:17px;pointer-events:none;color:#f1f1f1}::ng-deep .radio-list-body .body-top{display:flex;justify-content:space-between;padding:0 0 16px}::ng-deep .radio-list-body .body-top app-cs-checkbox,::ng-deep .radio-list-body .body-top app-cs-radio{display:flex}::ng-deep .radio-list-body .body-top app-cs-checkbox label span.value strong,::ng-deep .radio-list-body .body-top app-cs-radio label span.value strong{color:#161b2f;font-size:14px;font-weight:600;white-space:nowrap}::ng-deep .radio-list-body ul{padding:0;margin:0}::ng-deep .radio-list-body ul.categories{display:block;align-items:flex-start;flex-wrap:wrap;max-height:calc(100vh - 200px);overflow:auto;padding:16px 0 0}::ng-deep .radio-list-body ul.categories li{padding:0 0 16px;list-style:none}::ng-deep .radio-list-body ul.categories li app-cs-radio{display:flex}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item{width:100%}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item span.value{width:100%;font-size:13px;font-weight:400;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}::ng-deep .radio-list-body ul.categories li app-cs-radio ul.category-name{display:flex;justify-content:flex-start;width:auto}::ng-deep .radio-list-body ul.categories li app-cs-radio ul.category-name li{list-style:none;color:#747576;font-size:14px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:auto;padding:0 8px 0 0}::ng-deep .radio-list-body ul.categories li app-cs-radio ul.category-name li i{font-size:8px;padding-left:8px}::ng-deep .radio-list-body ul.categories li app-cs-radio ul.category-name li:first-child{color:#4681ef;max-width:100%}::ng-deep .radio-list-body ul.categories li app-cs-radio ul.category-name li:last-of-type{color:#66bf72}::ng-deep .radio-list-body ul.categories li app-cs-radio ul.category-name li:last-of-type i{display:none}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul{padding:0;margin:0}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list{display:flex;max-width:100%}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li{display:block;padding:0 8px;position:relative;max-width:50%;width:auto}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li:after{content:\">\";position:absolute;top:0;right:-3px;color:#747576;font-size:13px}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;color:#747576}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li:last-of-type:after{display:none}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li:last-of-type span{color:#34aa44}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li:first-of-type{padding-left:0}::ng-deep .radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li:first-of-type span{color:#1e5dd3}::ng-deep .radio-list-body ul.categories.two-column{display:flex;flex-wrap:wrap}::ng-deep .radio-list-body ul.categories.two-column li{width:50%;padding-right:20px}::ng-deep .radio-list-body app-no-data .no-data-wrapper{height:calc(100% - 42px)!important}::ng-deep .radio-list-body.no-footer{height:calc(100vh - 42px)}::ng-deep .radio-list-body .card-row{display:flex;justify-content:space-between;margin-bottom:12px}::ng-deep .radio-list-body .card-row .card-block{width:100%;display:flex;padding:8px 12px;border-radius:2px;box-shadow:0 0 3px rgba(30,93,211,.27);min-height:48px;position:relative;cursor:pointer;justify-content:space-between;align-items:center}::ng-deep .radio-list-body .card-row .card-block+.card-block{margin-left:4px}::ng-deep .radio-list-body .card-row .card-block.active{box-shadow:0 0 10px rgba(30,93,210,.9);z-index:1}::ng-deep .radio-list-body .card-row .card-block .card-text{padding:0;margin:0;font-weight:500;font-size:11px;text-transform:uppercase;line-height:16px;width:auto;white-space:nowrap}::ng-deep .radio-list-body .card-row .card-block span.count{font-size:14px;line-height:24px;background:#042e7d;padding:0 8px;border-radius:2px;min-width:28px;color:#fff}::ng-deep .radio-list.animate{-webkit-animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}@-webkit-keyframes animate-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes animate-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}"]
|
|
11683
12126
|
},] }
|
|
11684
12127
|
];
|
|
@@ -11856,24 +12299,67 @@ CreateDocumentsComponent.propDecorators = {
|
|
|
11856
12299
|
};
|
|
11857
12300
|
|
|
11858
12301
|
class SearchPipe {
|
|
11859
|
-
transform(
|
|
11860
|
-
|
|
11861
|
-
|
|
12302
|
+
transform(items, ...args) {
|
|
12303
|
+
let searchText = args[0];
|
|
12304
|
+
const searchKey = args[1];
|
|
12305
|
+
if (!items) {
|
|
12306
|
+
return [];
|
|
11862
12307
|
}
|
|
11863
|
-
if (!
|
|
11864
|
-
return
|
|
12308
|
+
if (!searchText) {
|
|
12309
|
+
return items;
|
|
12310
|
+
}
|
|
12311
|
+
searchText = searchText.toLowerCase();
|
|
12312
|
+
if (items === null || items === void 0 ? void 0 : items.length) {
|
|
12313
|
+
return items.filter((it) => {
|
|
12314
|
+
var _a, _b;
|
|
12315
|
+
if (!searchKey) {
|
|
12316
|
+
return JSON.stringify(it).toLowerCase().includes(searchText);
|
|
12317
|
+
}
|
|
12318
|
+
else if (searchKey) {
|
|
12319
|
+
// return empIds.indexOf(itm.empid) > -1;
|
|
12320
|
+
return ((_b = (_a = it[searchKey]) === null || _a === void 0 ? void 0 : _a.toString()) === null || _b === void 0 ? void 0 : _b.toLowerCase().indexOf(searchText)) > -1;
|
|
12321
|
+
//return it[searchKey].toLowerCase().includes(searchText);
|
|
12322
|
+
}
|
|
12323
|
+
});
|
|
12324
|
+
}
|
|
12325
|
+
else {
|
|
12326
|
+
return [];
|
|
11865
12327
|
}
|
|
11866
|
-
args = args.toLowerCase();
|
|
11867
|
-
return value.filter((item) => {
|
|
11868
|
-
return JSON.stringify(item).toLowerCase().includes(args);
|
|
11869
|
-
});
|
|
11870
12328
|
}
|
|
11871
12329
|
}
|
|
11872
12330
|
SearchPipe.decorators = [
|
|
11873
12331
|
{ type: Pipe, args: [{
|
|
11874
12332
|
name: 'search'
|
|
11875
12333
|
},] }
|
|
11876
|
-
];
|
|
12334
|
+
];
|
|
12335
|
+
// export class FilterPipe implements PipeTransform {
|
|
12336
|
+
// transform(items: any[], ...args: any[]): any[] {
|
|
12337
|
+
// let searchText = args[0];
|
|
12338
|
+
// const searchKey = args[1];
|
|
12339
|
+
// if (!items) {
|
|
12340
|
+
// return [];
|
|
12341
|
+
// }
|
|
12342
|
+
// if (!searchText) {
|
|
12343
|
+
// return items;
|
|
12344
|
+
// }
|
|
12345
|
+
// searchText = searchText.toLowerCase();
|
|
12346
|
+
// if(items?.length){
|
|
12347
|
+
// return items.filter((it: any) => {
|
|
12348
|
+
// if(!searchKey){
|
|
12349
|
+
// return JSON.stringify(it).toLowerCase().includes(searchText);
|
|
12350
|
+
// }
|
|
12351
|
+
// else if(searchKey){
|
|
12352
|
+
// // return empIds.indexOf(itm.empid) > -1;
|
|
12353
|
+
// console.log("sda",it[searchKey].toLowerCase().indexOf(searchText) > -1)
|
|
12354
|
+
// return it[searchKey].toLowerCase().indexOf(searchText) > -1;
|
|
12355
|
+
// //return it[searchKey].toLowerCase().includes(searchText);
|
|
12356
|
+
// }
|
|
12357
|
+
// });
|
|
12358
|
+
// }else{
|
|
12359
|
+
// return [];
|
|
12360
|
+
// }
|
|
12361
|
+
// }
|
|
12362
|
+
// }
|
|
11877
12363
|
|
|
11878
12364
|
class UserFilterPipe {
|
|
11879
12365
|
transform(value, ...args) {
|
|
@@ -13334,6 +13820,75 @@ PopoverHoverModule.decorators = [
|
|
|
13334
13820
|
},] }
|
|
13335
13821
|
];
|
|
13336
13822
|
|
|
13823
|
+
class ResponsibilityRiskSelectorComponent {
|
|
13824
|
+
constructor() {
|
|
13825
|
+
this.animation = true;
|
|
13826
|
+
this.activeTab = 'RESPONSIBILITY';
|
|
13827
|
+
this.controlIdKey = 'itemControlId';
|
|
13828
|
+
this.itemDisplayKey = 'itemControlName';
|
|
13829
|
+
this.identifierKey = 'itemId';
|
|
13830
|
+
this.listItems = [];
|
|
13831
|
+
this.selectedItems = [];
|
|
13832
|
+
this.loading = false;
|
|
13833
|
+
this.fetchList = new EventEmitter();
|
|
13834
|
+
this.closeList = new EventEmitter();
|
|
13835
|
+
this.saveList = new EventEmitter();
|
|
13836
|
+
}
|
|
13837
|
+
set activeEntity(value) {
|
|
13838
|
+
if (value) {
|
|
13839
|
+
this.activeTab = value;
|
|
13840
|
+
}
|
|
13841
|
+
}
|
|
13842
|
+
ngOnInit() {
|
|
13843
|
+
setTimeout(() => {
|
|
13844
|
+
this.animation = false;
|
|
13845
|
+
}, 300);
|
|
13846
|
+
this.selectedItems = this.arrayToId(this.selectedItems, this.identifierKey);
|
|
13847
|
+
}
|
|
13848
|
+
changeTab(type) {
|
|
13849
|
+
if (this.loading === true) {
|
|
13850
|
+
return;
|
|
13851
|
+
}
|
|
13852
|
+
this.activeTab = type;
|
|
13853
|
+
this.fetchList.emit(type);
|
|
13854
|
+
this.listItems = [];
|
|
13855
|
+
}
|
|
13856
|
+
selectItem(item) {
|
|
13857
|
+
this.selectedItems = [];
|
|
13858
|
+
this.selectedItems.push(item);
|
|
13859
|
+
}
|
|
13860
|
+
deleteItem(item) {
|
|
13861
|
+
this.selectedItems = [];
|
|
13862
|
+
// this.rerenderList();
|
|
13863
|
+
}
|
|
13864
|
+
save() {
|
|
13865
|
+
this.saveList.emit(this.selectedItems);
|
|
13866
|
+
}
|
|
13867
|
+
close() {
|
|
13868
|
+
this.closeList.emit();
|
|
13869
|
+
}
|
|
13870
|
+
arrayToId(array, identifierKey) {
|
|
13871
|
+
return array.map((a) => a[identifierKey]);
|
|
13872
|
+
}
|
|
13873
|
+
}
|
|
13874
|
+
ResponsibilityRiskSelectorComponent.decorators = [
|
|
13875
|
+
{ type: Component, args: [{
|
|
13876
|
+
selector: 'app-responsibility-risk-selector',
|
|
13877
|
+
template: "<div class=\"risk-radio-list\" [class.animate]=\"animation\">\r\n <div class=\"risk-radio-list-head\">\r\n <h3 class=\"risk-radio-list-title\">Define Sample Size for Selected Audit Objects</h3>\r\n <!-- <button class=\"radio-list-close\">\r\n <i class=\"icons\" (click)=\"close()\"></i>\r\n </button> -->\r\n </div>\r\n\r\n <div class=\"risk-radio-list-body\">\r\n\r\n <div class=\"tab-button\">\r\n <button [class.active]=\"activeTab === 'RESPONSIBILITY'\" (click)=\"changeTab('RESPONSIBILITY')\">RESPONSIBILITIES</button>\r\n <button [class.active]=\"activeTab === 'RISK'\" (click)=\"changeTab('RISK')\">RISKS</button>\r\n </div>\r\n <ng-container *ngIf=\"!loading\">\r\n <ul class=\"categories\">\r\n <li *ngFor= \"let item of listItems |arrayFilter : activeTab\"\r\n ><app-cs-radio [checked]=\"selectedItems.includes(item[identifierKey])\" (checkedEvent)=\"selectItem(item[identifierKey])\"><span class=\"cid\" *ngIf=\"item[controlIdKey]\">{{item[controlIdKey]}}</span>{{ ''+ item[itemDisplayKey]}}</app-cs-radio></li>\r\n </ul>\r\n </ng-container>\r\n <app-list-loader *ngIf=\"loading\"></app-list-loader>\r\n <app-no-data *ngIf=\"listItems?.length === 0 && !loading\"\r\n [noDataImage]=\"'https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/search-data.svg'\"\r\n [noDataText]=\"'No Categories Found'\"></app-no-data>\r\n </div>\r\n <!-- [singularText]=\"config?.floatingTextSingular\"\r\n [pluralText]=\"config?.floatingTextPlural ?config?.floatingTextPlural:'Users selected'\" -->\r\n <!-- [selectedData]=\"selectedItems|listMapper:listItems:identifierKey\" -->\r\n <div class=\"risk-radio-list-footer\">\r\n <app-floating-bar [displayElementKey]=\"itemDisplayKey\"\r\n [selectedData]=\"selectedItems|listMapper:listItems:identifierKey\"\r\n (closeEvent)=\"save()\"\r\n (closeList)=\"close()\" (deleteEvent)=\"deleteItem($event)\"\r\n [isDisabled]=\"selectedItems.length === 0 || listItems.length === 0 \">\r\n </app-floating-bar>\r\n </div>\r\n</div>\r\n",
|
|
13878
|
+
styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");::-webkit-scrollbar-track{background-color:#fff;position:absolute}::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}::ng-deep .risk-radio-list{background:#fff;position:fixed;top:0;right:500px;bottom:0;left:0;border-top:3px solid #1e5dd3}::ng-deep .risk-radio-list-head{background:#fbfbfb;height:42px;padding:0 18px;display:flex;justify-content:space-between;align-items:center;border:1px solid #f1f1f1;border-right:none}::ng-deep .risk-radio-list-title{color:#161b2f;font-size:15px;font-weight:500;margin:0!important;padding:0;line-height:21px}::ng-deep .risk-radio-list-close{background:transparent;border:none;outline:none;cursor:pointer;color:#000;font-size:12px;display:inline-block;padding:0}::ng-deep .risk-radio-list-body{padding:24px 40px 24px 36px;background:#fff;height:calc(100vh - 124px)}::ng-deep .risk-radio-list-body .filter-card{display:flex;align-items:center;border:1px solid #dbdbdb;border-radius:4px;height:55px;padding:12px 15px;width:100%;justify-content:space-between;cursor:pointer}::ng-deep .risk-radio-list-body .filter-card.active{box-shadow:0 3px 6px #1e5dd31a}::ng-deep .risk-radio-list-body .filter-card label{font-weight:600;text-transform:uppercase;color:#747576;line-height:16px;margin-left:0;font-size:11px;width:100%;pointer-events:none}::ng-deep .risk-radio-list-body .filter-card p{line-height:16px;font-size:10px;color:#161b2f;font-weight:600;margin:0}::ng-deep .risk-radio-list-body .filter-card span.counter{display:flex;height:32px;min-width:32px;border-radius:4px;background:#042e7d;color:#fff;font-size:11px;font-weight:600;justify-content:center;align-items:center;padding:0 5px;line-height:32px}::ng-deep .risk-radio-list-body .filter-card .left{display:flex;flex-wrap:wrap}::ng-deep .risk-radio-list-body .filter-card+.filter-card{margin-left:10px}::ng-deep .risk-radio-list-body .filter-card-row{display:flex;padding-bottom:15px}::ng-deep .risk-radio-list-body .search-block{position:relative}::ng-deep .risk-radio-list-body .search-block input{height:44px;line-height:24px;padding:10px 16px 10px 40px;outline:none;border:1px solid #7475763f;border-radius:4px;width:100%;font-size:14px;color:#747576}::ng-deep .risk-radio-list-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .risk-radio-list-body .search-block i{position:absolute;left:17px;font-size:12px;font-weight:400;top:17px;pointer-events:none;color:#f1f1f1}::ng-deep .risk-radio-list-body .tab-button{display:flex;align-items:center;border-bottom:1px solid #f1f1f1}::ng-deep .risk-radio-list-body .tab-button button{background:transparent;border:none;border-bottom:2px solid transparent;border-radius:0;color:#161b2f;font-size:11px;font-weight:600;text-transform:uppercase;padding:0;margin-right:28px}::ng-deep .risk-radio-list-body .tab-button button.active{border-bottom:2px solid #1e5dd3;color:#1e5dd3}::ng-deep .risk-radio-list-body .body-top{display:flex;justify-content:space-between;padding:0 0 16px}::ng-deep .risk-radio-list-body .body-top app-cs-checkbox,::ng-deep .risk-radio-list-body .body-top app-cs-radio{display:flex}::ng-deep .risk-radio-list-body .body-top app-cs-checkbox label span.value strong,::ng-deep .risk-radio-list-body .body-top app-cs-radio label span.value strong{color:#161b2f;font-size:14px;font-weight:600;white-space:nowrap}::ng-deep .risk-radio-list-body ul{padding:0;margin:0}::ng-deep .risk-radio-list-body ul.categories{display:block;align-items:flex-start;flex-wrap:wrap;max-height:calc(100vh - 200px);overflow:auto;padding:12px 0 0;scrollbar-width:thin}::ng-deep .risk-radio-list-body ul.categories li{padding:12px 0;list-style:none;border-bottom:1px solid #f1f1f1}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio{display:flex}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item{width:100%}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value{width:100%;color:#1e5dd3;font-size:12px;font-weight:400;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value .cid{font-size:10px}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio ul.category-name{display:flex;justify-content:flex-start;width:auto}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio ul.category-name li{list-style:none;color:#747576;font-size:14px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:auto;padding:0 8px 0 0}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio ul.category-name li i{font-size:8px;padding-left:8px}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio ul.category-name li:first-child{color:#4681ef;max-width:100%}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio ul.category-name li:last-of-type{color:#66bf72}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio ul.category-name li:last-of-type i{display:none}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul{padding:0;margin:0}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list{display:flex;max-width:100%}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li{display:block;padding:0 8px;position:relative;max-width:50%;width:auto}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li:after{content:\">\";position:absolute;top:0;right:-3px;color:#747576;font-size:13px}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;color:#747576}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li:last-of-type:after{display:none}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li:last-of-type span{color:#34aa44}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li:first-of-type{padding-left:0}::ng-deep .risk-radio-list-body ul.categories li app-cs-radio label.radio-item span.value ul.category-within-list li:first-of-type span{color:#1e5dd3}::ng-deep .risk-radio-list-body ul.categories.two-column{display:flex;flex-wrap:wrap}::ng-deep .risk-radio-list-body ul.categories.two-column li{width:50%;padding-right:20px}::ng-deep .risk-radio-list-body app-no-data .no-data-wrapper{height:calc(100% - 42px)!important}::ng-deep .risk-radio-list-body.no-footer{height:calc(100vh - 42px)}::ng-deep .risk-radio-list-body .card-row{display:flex;justify-content:space-between;margin-bottom:12px}::ng-deep .risk-radio-list-body .card-row .card-block{width:100%;display:flex;padding:8px 12px;border-radius:2px;box-shadow:0 0 3px rgba(30,93,211,.27);min-height:48px;position:relative;cursor:pointer;justify-content:space-between;align-items:center}::ng-deep .risk-radio-list-body .card-row .card-block+.card-block{margin-left:4px}::ng-deep .risk-radio-list-body .card-row .card-block.active{box-shadow:0 0 10px rgba(30,93,210,.9);z-index:1}::ng-deep .risk-radio-list-body .card-row .card-block .card-text{padding:0;margin:0;font-weight:500;font-size:11px;text-transform:uppercase;line-height:16px;width:auto;white-space:nowrap}::ng-deep .risk-radio-list-body .card-row .card-block span.count{font-size:14px;line-height:24px;background:#042e7d;padding:0 8px;border-radius:2px;min-width:28px;color:#fff}::ng-deep .risk-radio-list.animate{-webkit-animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}@-webkit-keyframes animate-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes animate-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}"]
|
|
13879
|
+
},] }
|
|
13880
|
+
];
|
|
13881
|
+
ResponsibilityRiskSelectorComponent.ctorParameters = () => [];
|
|
13882
|
+
ResponsibilityRiskSelectorComponent.propDecorators = {
|
|
13883
|
+
activeEntity: [{ type: Input }],
|
|
13884
|
+
listItems: [{ type: Input }],
|
|
13885
|
+
selectedItems: [{ type: Input }],
|
|
13886
|
+
loading: [{ type: Input }],
|
|
13887
|
+
fetchList: [{ type: Output }],
|
|
13888
|
+
closeList: [{ type: Output }],
|
|
13889
|
+
saveList: [{ type: Output }]
|
|
13890
|
+
};
|
|
13891
|
+
|
|
13337
13892
|
class ConditionalFocusDirective {
|
|
13338
13893
|
constructor(el) {
|
|
13339
13894
|
this.el = el;
|
|
@@ -13369,6 +13924,33 @@ ConditionalFocusDirective.propDecorators = {
|
|
|
13369
13924
|
appConditionalFocus: [{ type: Input }]
|
|
13370
13925
|
};
|
|
13371
13926
|
|
|
13927
|
+
class ListLoaderComponent {
|
|
13928
|
+
constructor() { }
|
|
13929
|
+
ngOnInit() {
|
|
13930
|
+
}
|
|
13931
|
+
}
|
|
13932
|
+
ListLoaderComponent.decorators = [
|
|
13933
|
+
{ type: Component, args: [{
|
|
13934
|
+
selector: 'app-list-loader',
|
|
13935
|
+
template: "<div class=\"link-treatment-loader-container\">\r\n <!-- <div class=\"link-treatment-tab\">\r\n <ul>\r\n <li><div class=\"loader\"></div></li>\r\n <li><div class=\"loader\"></div></li>\r\n <li><div class=\"loader\"></div></li>\r\n <li><div class=\"loader\"></div></li>\r\n </ul>\r\n </div> -->\r\n <!-- <div class=\"link-treatment-create-btn\">\r\n <div class=\"loader\"></div>\r\n </div> -->\r\n <div class=\"link-treatment-body\">\r\n <!-- <div class=\"search-block\">\r\n <div class=\"loader\"></div>\r\n </div> -->\r\n <div class=\"link-treatment-list\">\r\n <ul>\r\n <li *ngFor=\"let data of [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]\">\r\n <div class=\"loader\"></div>\r\n </li>\r\n </ul>\r\n </div>\r\n <!-- <div class=\"link-treatment-footer\">\r\n <div class=\"left\">\r\n <div class=\"loader\"></div>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"loader\"></div>\r\n </div>\r\n </div> -->\r\n </div>\r\n</div>\r\n",
|
|
13936
|
+
styles: [".link-treatment-loader-container{background:#fff}.link-treatment-tab{background:#fff;padding:0 20px;position:relative;z-index:1}.link-treatment-tab:before{background:#dbdbdb;content:\"\";position:absolute;bottom:0;left:0;width:100%;height:1px;z-index:-1}.link-treatment-tab ul{display:flex;justify-content:space-between;list-style-type:none;margin:0;padding:0}.link-treatment-tab ul li{height:31px;display:flex;align-items:center}.link-treatment-tab ul li .loader{background:#f3f3f3;border-radius:20px;height:10px;width:85px}.link-treatment-create-btn{background:#fff;padding:20px 20px 0;height:50px}.link-treatment-create-btn .loader{background:#f3f3f3;border-radius:3px;height:30px;width:500px}.link-treatment-body{background:#fff;width:100%;padding:10px 20px 20px;height:calc(100vh - 173px)}.link-treatment-body .search-block{position:relative}.link-treatment-body .search-block .loader{background:#fbfbfb;border:1px solid #f1f1f1;border-radius:3px;height:45px;width:100%}.link-treatment-list{padding-top:10px;width:calc(100% + 20px)}.link-treatment-list ul{padding:0;margin:0;height:calc(100vh - 281px);overflow:auto}.link-treatment-list ul li{width:100%;padding:12px 0;list-style:none}.link-treatment-list ul li .loader{background:#f3f3f3;border-radius:20px;height:10px;width:60%}.link-treatment-footer{height:50px;background:#f8f8f8;border-top:1px solid #f1f1f1;padding:0 20px 0 22px;justify-content:space-between;width:500px;position:fixed;bottom:0;right:0;z-index:2}.link-treatment-footer,.link-treatment-footer .left{display:flex;align-items:center}.link-treatment-footer .left .loader{background:#eee;border-radius:20px;height:10px;width:170px}.link-treatment-footer .right{display:flex;align-items:center}.link-treatment-footer .right .loader{background:#eee;border-radius:5px;height:30px;width:90px}"]
|
|
13937
|
+
},] }
|
|
13938
|
+
];
|
|
13939
|
+
ListLoaderComponent.ctorParameters = () => [];
|
|
13940
|
+
|
|
13941
|
+
class ArrayFilterPipe {
|
|
13942
|
+
transform(value, ...args) {
|
|
13943
|
+
return value.filter((item) => {
|
|
13944
|
+
return item.itemType === args[0];
|
|
13945
|
+
});
|
|
13946
|
+
}
|
|
13947
|
+
}
|
|
13948
|
+
ArrayFilterPipe.decorators = [
|
|
13949
|
+
{ type: Pipe, args: [{
|
|
13950
|
+
name: 'arrayFilter'
|
|
13951
|
+
},] }
|
|
13952
|
+
];
|
|
13953
|
+
|
|
13372
13954
|
class AuditCategoryListComponent {
|
|
13373
13955
|
constructor() {
|
|
13374
13956
|
this.animation = false;
|
|
@@ -13650,6 +14232,10 @@ WorkflowEngineModule.decorators = [
|
|
|
13650
14232
|
SpaceBreakerPipe,
|
|
13651
14233
|
FormatHtmlPipe,
|
|
13652
14234
|
WithinDataPipe,
|
|
14235
|
+
ResponsibilityRiskSelectorComponent,
|
|
14236
|
+
ConditionalFocusDirective,
|
|
14237
|
+
ListLoaderComponent,
|
|
14238
|
+
ArrayFilterPipe,
|
|
13653
14239
|
ConditionalFocusDirective,
|
|
13654
14240
|
AuditCategoryListComponent,
|
|
13655
14241
|
DocumentSectionComponent,
|
|
@@ -13688,5 +14274,5 @@ WorkflowEngineModule.decorators = [
|
|
|
13688
14274
|
* Generated bundle index. Do not edit.
|
|
13689
14275
|
*/
|
|
13690
14276
|
|
|
13691
|
-
export { WorkflowEngineContainerComponent, WorkflowEngineModule, WorkflowEngineService, UiKitService as ɵa, SnackBarService as ɵb, FrequencyContainerComponent as ɵba, FrequencyDailyComponent as ɵbb, FrequencyWeeklyComponent as ɵbc, FrequencyMonthlyComponent as ɵbd, FrequencyQuarterlyComponent as ɵbe, FrequencyBiannualComponent as ɵbf, FrequencyAnnualComponent as ɵbg, FrequencyOneTimeComponent as ɵbh, FrequencyRandomComponent as ɵbi, FrequencyOnCompletionOfComponent as ɵbj, FrequencyOngoingComponent as ɵbk, FrequencyTopComponent as ɵbl, FrequencyLifecycleComponent as ɵbm, FrequencyDueDateComponent as ɵbn, FrequencyCheckboxListComponent as ɵbo, FrequencyRadioListComponent as ɵbp, GroupUsersListComponent as ɵbq, AddMultipleResponsibilityComponent as ɵbr, FrequencyBulkService as ɵbs, BulkResponsibilityViewComponent as ɵbt, CheckpointsPolicyContainerComponent as ɵbu, CheckpointsPolicyListComponent as ɵbv, CheckpointsPolicyQuestionsComponent as ɵbw, WorkflowSurveyFormComponent as ɵbx, LogAnIssueComponent as ɵby, LogIssueService as ɵbz, WorkflowRiskComponent as ɵc, FilterPipe as ɵca, CheckboxListComponent as ɵcb, RadioListComponent as ɵcc, ListMapperPipe as ɵcd, CreateDocumentsComponent as ɵce, SearchPipe as ɵcf, UserFilterPipe as ɵcg, FrameworkListComponent as ɵch, ParentTableComponent as ɵci, DataTypePipe as ɵcj, CheckpointFloatingBarComponent as ɵck, FormatAndEvidenceComponent as ɵcl, RiskClassificationComponent as ɵcm, DragDropDirective as ɵcn, AutofocusDirective as ɵco, ScrollInViewDirective as ɵcp, ShortMergePipe as ɵcq, SpaceBreakerPipe as ɵcr, FormatHtmlPipe as ɵcs, WithinDataPipe as ɵct,
|
|
14277
|
+
export { WorkflowEngineContainerComponent, WorkflowEngineModule, WorkflowEngineService, UiKitService as ɵa, SnackBarService as ɵb, FrequencyContainerComponent as ɵba, FrequencyDailyComponent as ɵbb, FrequencyWeeklyComponent as ɵbc, FrequencyMonthlyComponent as ɵbd, FrequencyQuarterlyComponent as ɵbe, FrequencyBiannualComponent as ɵbf, FrequencyAnnualComponent as ɵbg, FrequencyOneTimeComponent as ɵbh, FrequencyRandomComponent as ɵbi, FrequencyOnCompletionOfComponent as ɵbj, FrequencyOngoingComponent as ɵbk, FrequencyTopComponent as ɵbl, FrequencyLifecycleComponent as ɵbm, FrequencyDueDateComponent as ɵbn, FrequencyCheckboxListComponent as ɵbo, FrequencyRadioListComponent as ɵbp, GroupUsersListComponent as ɵbq, AddMultipleResponsibilityComponent as ɵbr, FrequencyBulkService as ɵbs, BulkResponsibilityViewComponent as ɵbt, CheckpointsPolicyContainerComponent as ɵbu, CheckpointsPolicyListComponent as ɵbv, CheckpointsPolicyQuestionsComponent as ɵbw, WorkflowSurveyFormComponent as ɵbx, LogAnIssueComponent as ɵby, LogIssueService as ɵbz, WorkflowRiskComponent as ɵc, FilterPipe as ɵca, CheckboxListComponent as ɵcb, RadioListComponent as ɵcc, ListMapperPipe as ɵcd, CreateDocumentsComponent as ɵce, SearchPipe as ɵcf, UserFilterPipe as ɵcg, FrameworkListComponent as ɵch, ParentTableComponent as ɵci, DataTypePipe as ɵcj, CheckpointFloatingBarComponent as ɵck, FormatAndEvidenceComponent as ɵcl, RiskClassificationComponent as ɵcm, DragDropDirective as ɵcn, AutofocusDirective as ɵco, ScrollInViewDirective as ɵcp, ShortMergePipe as ɵcq, SpaceBreakerPipe as ɵcr, FormatHtmlPipe as ɵcs, WithinDataPipe as ɵct, ResponsibilityRiskSelectorComponent as ɵcu, ConditionalFocusDirective as ɵcv, ListLoaderComponent as ɵcw, ArrayFilterPipe as ɵcx, AuditCategoryListComponent as ɵcy, DocumentSectionComponent as ɵcz, AddRiskService as ɵd, FormgroupModule as ɵda, CsCheckboxComponent as ɵdb, CsRadioComponent as ɵdc, CsSwitchComponent as ɵdd, CsRadioGroupComponent as ɵde, CsSelectComponent$1 as ɵdf, PascalPipe as ɵdg, TooltipModule as ɵdh, ToolTipDirective as ɵdi, PopoverModule as ɵdj, PopoverComponent as ɵdk, PopoverService as ɵdl, PopoverDirective as ɵdm, PopoverEventDirective as ɵdn, PopoverLongpressDirective as ɵdo, LineLoaderModule as ɵdp, LineLoaderComponent as ɵdq, SelectModule as ɵdr, CsSelectComponent as ɵds, SelectService as ɵdt, CsOptionComponent as ɵdu, NoDataModule as ɵdv, NoDataComponent as ɵdw, VLoaderModule as ɵdx, LoaderComponent as ɵdy, LoaderInlineComponent as ɵdz, AuthService as ɵe, SmileyDialogModule as ɵea, SmileyDialogComponent as ɵeb, SnackBarModule as ɵec, SnackBarComponent as ɵed, SmileyDialogInlineModule as ɵee, SmileyDialogInlineComponent as ɵef, ClickOutsideModule as ɵeg, ClickOutsideDirective as ɵeh, PopoverHoverModule as ɵei, PopoverHoverComponent as ɵej, PopoverHoverService as ɵek, PopoverHoverDirective as ɵel, Configurations as ɵf, WorkflowComplianceComponent as ɵg, ResponsibilityService as ɵh, FrequencyService as ɵi, WorkflowPolicyComponent as ɵj, PolicyService as ɵk, MoreOptionComponent as ɵl, OwnerListComponent as ɵm, UserRadioListComponent as ɵn, CategoryListComponent as ɵo, CategoryMultiSelectComponent as ɵp, FloatingBarComponent as ɵq, ResponsibilityCentersListComponent as ɵr, WorkflowPaginationComponent as ɵs, AddMultipleRiskComponent as ɵt, BulkViewComponent as ɵu, CheckpointsComponent as ɵv, ConfirmationAlertComponent as ɵw, CheckpointsQuestionsComponent as ɵx, CheckpointsListComponent as ɵy, ReviewFrequencyComponent as ɵz };
|
|
13692
14278
|
//# sourceMappingURL=vcomply-workflow-engine.js.map
|