tango-app-ui-analyse-trax 3.9.64 → 3.9.65

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.
@@ -18159,11 +18159,11 @@ class GalleryComponent {
18159
18159
  }
18160
18160
  }
18161
18161
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GalleryComponent, deps: [{ token: i1$1.FormBuilder }, { token: i2$1.GlobalStateService }, { token: TraxService }, { token: i0.ChangeDetectorRef }, { token: i1.NgbModal }, { token: i1$3.ActivatedRoute }, { token: i1$3.Router }, { token: i3.ToastService }, { token: i6.Location }, { token: i2$1.PageInfoService }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
18162
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: GalleryComponent, selector: "lib-gallery", host: { listeners: { "document:click": "onClick($event)", "document:fullscreenchange": "onFullscreenChange()" } }, viewQueries: [{ propertyName: "zoomPopup", first: true, predicate: ["zoomPopup"], descendants: true }, { propertyName: "proofPopup", first: true, predicate: ["proofPopup"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"notifyCount>0\" class=\"h-xl-100 flex-row flex-stack flex-wrap p-2\">\r\n <!-- toast card starts -->\r\n <div class=\"toastcard col-md-12 mb-4\">\r\n <div class=\"d-flex align-items-center justify-content-between w-100\">\r\n <span class=\"align-items-start\">\r\n <span class=\"toasttext d-block\"><span class=\"me-5\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"20\" viewBox=\"0 0 16 20\" fill=\"none\">\r\n <path\r\n d=\"M9.14234 2.4V1.6875C9.14234 1.03178 8.63166 0.5 7.99955 0.5C7.36744 0.5 6.85675 1.03178 6.85675 1.6875V2.4C4.21761 2.95033 2.28558 5.34649 2.28558 8.21875V8.91641C2.28558 10.6643 1.66918 12.3453 0.553532 13.6516L0.28869 13.9596C-0.0103044 14.3121 -0.0840396 14.8094 0.100307 15.2361C0.284654 15.6629 0.69281 15.9375 1.14279 15.9375H14.8563C15.3063 15.9375 15.7134 15.6629 15.8991 15.2361C16.0848 14.8094 16.0098 14.3121 15.7098 13.9596L15.4456 13.6516C14.3313 12.3453 13.7135 10.6643 13.7135 8.91641V8.21875C13.7135 7.94125 13.6952 7.66819 13.6597 7.40081C13.2676 7.54576 12.8432 7.625 12.4 7.625C10.4118 7.625 8.8 6.03001 8.8 4.0625C8.8 3.46778 8.88193 2.89289 9.14234 2.4C9.16417 2.40461 9.12061 2.39514 9.14234 2.4Z\"\r\n fill=\"#00A3FF\" />\r\n <path\r\n d=\"M6.38178 18.8061C6.81033 19.2514 7.39244 19.5 7.99955 19.5C8.57452 19.5 9.18877 19.2514 9.61732 18.8061C10.0459 18.3607 10.2851 17.7225 10.2851 17.125H5.71396C5.71396 17.7225 5.95323 18.3607 6.38178 18.8061Z\"\r\n fill=\"#00A3FF\" />\r\n <circle cx=\"13\" cy=\"3.5\" r=\"3\" fill=\"#F04438\" />\r\n </svg>\r\n </span>New Detection Found! Refresh Now to view new detection</span>\r\n </span>\r\n <button (click)=\"refreshnow()\" type=\"button\"\r\n class=\"btn-outline btn align-items-end text-nowrap ms-4 cursor-pointer\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_12165_62781)\">\r\n <path\r\n d=\"M19.1672 3.33172V8.33172M19.1672 8.33172H14.1672M19.1672 8.33172L15.3089 4.69838C14.1594 3.54817 12.6672 2.80271 11.0572 2.57434C9.44716 2.34597 7.80653 2.64706 6.38251 3.43225C4.9585 4.21744 3.82826 5.44418 3.1621 6.92761C2.49595 8.41104 2.32997 10.0708 2.68919 11.6568C3.0484 13.2427 3.91335 14.669 5.15368 15.7206C6.39401 16.7722 7.94254 17.3922 9.5659 17.4872C11.1893 17.5822 12.7995 17.147 14.154 16.2471C15.5085 15.3473 16.5339 14.0316 17.0756 12.4984\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_12165_62781\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg><span class=\"refreshtext ms-2\"></span> Refresh Now </button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"gallery-card po\">\r\n <div class=\"header mb-4\">Gallery</div>\r\n\r\n <form [formGroup]=\"galleryForm\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <div class=\"col-md-3 mb-3\">\r\n <div class=\"position-relative\">\r\n <span style=\"top: 20%;\" class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path\r\n d=\"M13.3333 1.66663V4.99996M6.66667 1.66663V4.99996M2.5 8.33329H17.5M4.16667 3.33329H15.8333C16.7538 3.33329 17.5 4.07948 17.5 4.99996V16.6666C17.5 17.5871 16.7538 18.3333 15.8333 18.3333H4.16667C3.24619 18.3333 2.5 17.5871 2.5 16.6666V4.99996C2.5 4.07948 3.24619 3.33329 4.16667 3.33329Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <input class=\"fx-date-range form-control ps-14 z-2\" style=\"min-width: 260px !important;\"\r\n type=\"text\" matInput ngxDaterangepickerMd [drops]=\"'down'\" [opens]=\"'right'\"\r\n placeholder=\"Select date range\"\r\n [alwaysShowCalendars]=\"false\" [keepCalendarOpeningWithRange]=\"true\" [showCancel]=\"false\"\r\n autocomplete=\"off\" [(ngModel)]=\"selectedDateRange\" [ngModelOptions]=\"{standalone: true}\"\r\n (datesUpdated)=\"datechange($event)\" (click)=\"resetValidation()\"\r\n (startDateChanged)=\"onStartDateChange($event)\" [isCustomDate]=\"isCustomDate\"\r\n [autoApply]=\"true\"\r\n [locale]=\"{ format: 'DD-MM-YYYY', firstDay: 1, monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] }\"\r\n name=\"daterange\" [readonly]=\"true\" />\r\n </div>\r\n </div>\r\n <div class=\"col-md-2 mb-4\">\r\n <lib-reactive-select formControlName=\"type\" [idField]=\"'value'\" [nameField]=\"'label'\"\r\n [data]=\"type\" (itemChange)=\"typeChange($event)\"></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-4 mb-4\">\r\n <lib-single-select [items]=\"checklists\" [multi]=\"false\" [searchField]=\"'checkListName'\"\r\n label=\"Select checklist\"\r\n [idField]=\"'_id'\" (selected)=\"checklistNamechange($event,false)\"\r\n [selectedValues]=\"[{checkListName:galleryForm.get('checklistName')?.value}]\"></lib-single-select>\r\n </div>\r\n <div class=\"col-md-3 mb-4\">\r\n <lib-reactive-select formControlName=\"answerType\" [isDisabled]=\"!showflag\" [idField]=\"'value'\"\r\n [nameField]=\"'label'\" [data]=\"answerType\"></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-2 mb-4\">\r\n\r\n <lib-reactive-select formControlName=\"filtertype\" [idField]=\"'value'\" [nameField]=\"'label'\"\r\n [data]=\"filtertype\" (itemChange)=\"filterChange($event)\"></lib-reactive-select>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Clusters'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('ClusterList')?.value?.length)\">\r\n Select cluster\r\n </div>\r\n <lib-group-select [items]=\"ClusterList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'groupName'\" [idField]=\"'groupName'\" (selected)=\"ongroupSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('ClusterList')?.value\">\r\n </lib-group-select>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Teams'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('TeamsList')?.value?.length)\">\r\n Select Teams\r\n </div>\r\n <lib-group-select [items]=\"TeamsList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'teamName'\" [idField]=\"'teamName'\" (selected)=\"onTeamsSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('TeamsList')?.value\">\r\n </lib-group-select>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Clusters'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('storeList')?.value?.length)\">\r\n Select Stores\r\n </div>\r\n <lib-stores-select [items]=\"storeList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'storeName'\" [idField]=\"'storeId'\" (selected)=\"onStoreSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('storeList')?.value\"></lib-stores-select>\r\n </div>\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Teams'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('userList')?.value?.length)\">\r\n Select users\r\n </div>\r\n <lib-stores-select [items]=\"userList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'userName'\" [idField]=\"'userName'\" (selected)=\"onUserSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('userList')?.value\"></lib-stores-select>\r\n </div>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <div class=\"d-flex justify-content-end\">\r\n <div class=\"me-5 w-100\" *ngIf=\"select === 'eyetest'\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"adults\">Adults</option>\r\n <option value=\"kids\">Kids</option>\r\n </select>\r\n </div>\r\n\r\n <div class=\"me-5 w-100\"\r\n *ngIf=\"breachFilterSelectTypes.includes(select)\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Breached\" *ngIf=\"!['activitymonitoring'].includes(select)\">Breached</option>\r\n <option value=\"Not Breached\" *ngIf=\"!['uniformdetection','mobileusagedetection','storehygienemonitoring','unattendeddetection','activitymonitoring'].includes(select)\">Not Breached</option>\r\n <option value=\"Offline\">Offline</option>\r\n </select>\r\n </div>\r\n <div class=\"me-5 w-100\"\r\n *ngIf=\"['staffgrouping','storehygienemonitoring','halfshutter','tvcompliance','customerunattended'].includes(galleryForm.value.sourceCheckList_id)\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\" (change)=\"onfilterChange($event)\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Breached\">Breached</option>\r\n <option value=\"Not Breached\">Not Breached</option>\r\n <option value=\"Offline\">Offline</option> \r\n </select>\r\n </div>\r\n <div class=\"me-5 w-100\" *ngIf=\"select === 'outsidebusinesshoursqueuetracking'\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Detected\">Detected</option>\r\n <option value=\"Not Detected\">Not Detected</option>\r\n <option value=\"Offline\">Offline</option>\r\n </select>\r\n </div>\r\n <!-- <div class=\"me-5 w-100 text-start\" *ngIf=\"select === 'queuealert'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\"\r\n *ngIf=\"!(galleryForm.get('zoneList')?.value?.length)\">\r\n Select Zone\r\n </div>\r\n <lib-stores-select [items]=\"zoneList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'value'\" [idField]=\"'key'\" (selected)=\"onzoneSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('zoneList')?.value\"></lib-stores-select>\r\n </div>\r\n </div> -->\r\n <div class=\"me-5 w-50\" *ngIf=\"showflag\">\r\n <select class=\"form-select\" (change)=\"approveFilterChange($event)\"\r\n [(ngModel)]=\"approveFilter\" [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Approved\">Approved</option>\r\n <option value=\"notapproved\">Not-Approved</option>\r\n </select>\r\n </div>\r\n <span class=\"me-4 mt-3\" *ngIf=\"showflag\">\r\n <input formControlName=\"viewRedo\" change type=\"checkbox\" (click)=\"redoChanged($event)\"\r\n class=\"form-check-input cursor-pointer mt-1 me-2\" id=\"viewRedo\">\r\n <label class=\"checkbox-label\" for=\"viewRedo\">Re-do</label>\r\n </span>\r\n <span class=\"me-3 mt-3\" *ngIf=\"showflag&&galleryForm.value.type==='checklist'\">\r\n <input formControlName=\"viewFlag\" change type=\"checkbox\" (click)=\"flagChanged($event)\"\r\n class=\"form-check-input cursor-pointer mt-1 me-2\" id=\"viewFlag\">\r\n <label class=\"checkbox-label\" for=\"viewFlag\">Flag</label>\r\n </span>\r\n\r\n <a (click)=\"onSubmit()\" type=\"submit\" class=\"btn btn-primary px-4 \"><span>Apply</span></a>\r\n <!-- <a (click)=\"notify([])\" type=\"submit\" class=\"btn btn-primary px-4 \"><span>test</span></a> -->\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n </div>\r\n </form>\r\n</div>\r\n<div class=\"card my-2\">\r\n <div class=\"row main-container my-5 \">\r\n\r\n <div [ngClass]=\"showsidenav ? 'col-md-4 left-sidebar':'d-none'\" class=\"h-650px position-relative\">\r\n <div class=\"h-650px scroll-y\">\r\n <div class=\"card-body p-5\">\r\n <div class=\"checklist-left\">\r\n <div class=\"checklist-title\">{{checklistName}}</div>\r\n <div class=\"checklist-text\">{{checkListDescription}}</div>\r\n </div>\r\n <div *ngIf=\"loading\" class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"noData&&select === 'custom' || noData&&select === 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"w-75 h-300px\" src=\"./assets/tango/Icons/Nodata1.svg\" alt=\"\">\r\n <div class=\"nodata-title mt-0\">No data found</div>\r\n <div class=\"nodata-sub\">There is no result for this checklist</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"noData&&select !== 'custom'&&select !== 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata2.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No Detections found</div>\r\n <div class=\"nodata-sub\">There is no breaches for the selected period</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <section *ngIf=\"!noData && !loading\">\r\n\r\n <div *ngIf=\"select === 'custom'||select === 'task'\">\r\n <div class=\"text-end mt-10\">\r\n <!-- <button class=\"btn btn-outline w-25 me-3 btn-resize\" (click)=\"viewChecklists()\"> Reset </button> -->\r\n <button class=\"btn btn-outline w-25 me-3 btn-resize\"\r\n *ngIf=\"selectedSection.length>0||tempselectedSection.length>0\"\r\n (click)=\"onchecklistreset()\"> Reset </button>\r\n <button *ngIf=\"selectedSection.length>0||tempselectedSection.length>0\"\r\n class=\"btn btn-primary w-25 btn-resize\"\r\n (click)=\"selectsinglequestion()\">Apply</button>\r\n </div>\r\n <div class=\"my-6\" [ngClass]=\"selectedSection.length===0 ? 'view-all':'view-questions'\"\r\n style=\"cursor: pointer;\" (click)=\"onchecklistreset()\">\r\n View All Answers\r\n </div>\r\n <div class=\"mx-2\" *ngFor=\"let section of checklistData; let i=index;\">\r\n <div class=\"d-flex align-items-center justify-content-between mt-4\"\r\n style=\"cursor: pointer;\" (click)=\"accordian(i)\">\r\n <div class=\"fs-4 fw-bold section\" *ngIf=\"galleryForm.value.type==='checklist'\">\r\n {{section.sectionName}} {{getSectionCompliance(section.sectionName)}}</div>\r\n <hr class=\"mx-2\">\r\n <svg class=\"cursor-pointer\" [ngClass]=\"{'rotate' : show !== i}\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"25\" height=\"25\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path d=\"M5 7.5L10 12.5L15 7.5\" stroke=\"#667085\" stroke-width=\"1.67\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n <div *ngIf=\"show===i\" class=\"question-left\">\r\n <div cdkDropList [cdkDropListData]=\"section.questions\">\r\n <div *ngFor=\"let question of section.questions;let j=index;\"\r\n class=\"d-flex my-2 q-btn\" cdkDrag>\r\n <input id=\"label\" [(ngModel)]=\"question.checked\"\r\n (click)=\"selectedQuestion($event,section,question)\"\r\n class=\"form-check-input cursor-pointer mt-2 me-4\" type=\"checkbox\">\r\n <div class=\"editablecontent\" [ngClass]=\"question?.checked ? 'view-all':''\"\r\n style=\"cursor: pointer;\">\r\n {{question.qno}} . {{question.qname}}\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n <div *ngIf=\"combinedChecklist.includes(select)\">\r\n <div class=\"text-end mt-10\">\r\n <button class=\"btn btn-outline w-25 me-3 btn-resize\" (click)=\"onreset()\"> Reset\r\n </button>\r\n <button class=\"btn btn-primary w-25 btn-resize\" (click)=\"onview()\">Apply</button>\r\n </div>\r\n <div class=\"dropdownselect h-900px scroll-y\">\r\n <div class=\"d-flex justify-content-left \"\r\n [ngClass]=\"selectAll ? 'backgroundBorder':'withoutbackground'\">\r\n <input class=\"form-check-input cursor-pointer me-4\" type=\"checkbox\"\r\n [(ngModel)]=\"selectAll\" (click)=\"selectAllStore($event)\"> <span\r\n [ngClass]=\"selectAll ? 'usage-detection':'usage-text'\">Select All</span>\r\n </div>\r\n <!-- dropdownbg -->\r\n <div class=\"my-4\" *ngFor=\"let list of mobileusageDataList;let i=index\">\r\n <div (change)=\"updateCheck($event,list)\" class=\"d-flex align-items-center\"\r\n [ngClass]=\"list.checked ? 'backgroundBorder':'withoutbackground'\">\r\n <input id=\"label{{i}}\" class=\"form-check-input cursor-pointer me-4 flex-shrink-0\"\r\n type=\"checkbox\" [(ngModel)]=\"list.checked\">\r\n <label for=\"label{{i}}\" class=\"text-truncate mb-0\"\r\n [ngClass]=\"list.checked ? 'usage-detection':'usage-text'\">{{list?.storeName}}</label>\r\n <span class=\"badge badge-light-primary detectionright ms-auto flex-shrink-0 text-nowrap\"\r\n *ngIf=\"list.detection\">{{list.detection}} Detections</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n </div>\r\n\r\n\r\n\r\n\r\n\r\n </div>\r\n <div *ngIf=\"showsidenav\" (click)=\"sidenav()\" class=\"backButtonright text-center pt-1 cursor-pointer\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path d=\"M11 17L6 12L11 7M18 17L13 12L18 7\" stroke=\"#101828\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n </div>\r\n <div class=\"position-relative\"\r\n [ngClass]=\"showsidenav ? 'col-md-8 border border-bottom-0 border-top-0 border-left border-5 right-sidebar':'col-md-12'\">\r\n <div class=\"h-1000px scroll-y\">\r\n <!-- (select === 'custom' || select === 'task'||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo') -->\r\n <div class=\"card-header border-0 px-0 my-0\"\r\n *ngIf=\"!viewloading && !viewnoData\">\r\n <h3 *ngIf=\"!showsingle || (gs.userAccess | async)?.userType === 'tango'||!allapprovalStatus\"></h3>\r\n\r\n <div class=\" m-3\"\r\n *ngIf=\"canSelectAllTask(gs.userAccess | async)\">\r\n <div class=\"form-check\">\r\n <input [(ngModel)]=\"selectAllTask\"\r\n (click)=\"selectedAllTask($event,viewChecklistsData?.checklistAnswers[0],viewChecklistsData?.checklistAnswers[0].questionAnswer[0].questions[0],viewChecklistsData?.checklistAnswers[0]?.checklistInfo,viewChecklistsData?.checklistAnswers[0].questionAnswer[0])\"\r\n class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"flexCheckDefault\">\r\n <label class=\"ms-2\" for=\"flexCheckDefault\">\r\n Select All <span *ngIf=\"selectedRecordCount\">({{selectedRecordCount}} Records\r\n Selected)</span>\r\n </label>\r\n </div>\r\n\r\n\r\n\r\n </div>\r\n <div class=\"card-toolbar\">\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowCreateTaskToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\" class=\"icon-btn\"\r\n (click)=\"createMultipleTask('task')\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path\r\n d=\"M11.6654 1.66797H4.9987C4.55667 1.66797 4.13275 1.84356 3.82019 2.15612C3.50763 2.46868 3.33203 2.89261 3.33203 3.33464V16.668C3.33203 17.11 3.50763 17.5339 3.82019 17.8465C4.13275 18.159 4.55667 18.3346 4.9987 18.3346H14.9987C15.4407 18.3346 15.8646 18.159 16.1772 17.8465C16.4898 17.5339 16.6654 17.11 16.6654 16.668V6.66797M11.6654 1.66797L16.6654 6.66797M11.6654 1.66797V6.66797H16.6654M9.9987 15.0013V10.0013M7.4987 12.5013H12.4987\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n \r\n <span class=\"btn-text\">Create Task</span>\r\n </span>\r\n\r\n </div>\r\n\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowRedoExportToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\"\r\n (click)=\"createMultipleTask('redo')\" class=\"icon-btn\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"18\" viewBox=\"0 0 20 18\"\r\n fill=\"none\">\r\n <path\r\n d=\"M19.1654 2.33527V7.33527M19.1654 7.33527H14.1654M19.1654 7.33527L15.2987 3.70193C14.4031 2.80586 13.2951 2.15127 12.078 1.79925C10.861 1.44722 9.57462 1.40923 8.33894 1.68882C7.10325 1.96841 5.95853 2.55646 5.01159 3.39812C4.06464 4.23977 3.34634 5.30759 2.9237 6.50193M0.832031 15.6686V10.6686M0.832031 10.6686H5.83203M0.832031 10.6686L4.6987 14.3019C5.59432 15.198 6.70234 15.8526 7.91937 16.2046C9.1364 16.5567 10.4228 16.5946 11.6585 16.3151C12.8941 16.0355 14.0389 15.4474 14.9858 14.6058C15.9328 13.7641 16.6511 12.6963 17.0737 11.5019\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"btn-text\">Redo</span>\r\n </span>\r\n </div>\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowRedoExportToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\"\r\n (click)=\"exportDet($event)\" class=\"icon-btn\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n<path d=\"M8.125 13.125H16.3562L14.7438 14.7438L15.625 15.625L18.75 12.5L15.625 9.375L14.7438 10.2562L16.3562 11.875H8.125V13.125Z\" fill=\"black\"/>\r\n<path d=\"M13.75 8.75001V6.25001C13.7505 6.16776 13.7347 6.08622 13.7036 6.01007C13.6725 5.93392 13.6267 5.86466 13.5688 5.80626L9.19375 1.43126C9.13535 1.37333 9.06609 1.32751 8.98994 1.2964C8.91379 1.2653 8.83225 1.24953 8.75 1.25001H2.5C2.16848 1.25001 1.85054 1.38171 1.61612 1.61613C1.3817 1.85055 1.25 2.16849 1.25 2.50001V17.5C1.25 17.8315 1.3817 18.1495 1.61612 18.3839C1.85054 18.6183 2.16848 18.75 2.5 18.75H12.5C12.8315 18.75 13.1495 18.6183 13.3839 18.3839C13.6183 18.1495 13.75 17.8315 13.75 17.5V16.25H12.5V17.5H2.5V2.50001H7.5V6.25001C7.5 6.58153 7.6317 6.89947 7.86612 7.13389C8.10054 7.36831 8.41848 7.50001 8.75 7.50001H12.5V8.75001H13.75ZM8.75 6.25001V2.75626L12.2438 6.25001H8.75Z\" fill=\"black\"/>\r\n</svg>\r\n <span class=\"btn-text\">Export</span>\r\n </span>\r\n <div *ngIf=\"exportShow\"\r\n class=\"card py-2 position-absolute productdrop top-10 w-150px end-0 z-1\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li class=\"cursor-pointer py-4 checkbox-label mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li class=\" cursor-pointer checkbox-label py-4 mx-2\"\r\n *ngIf=\"csvExportTypes.includes(select)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div class=\"position-relative cursor-pointer me-10\" *ngIf=\"!galleryForm.value.viewRedo&&selectedUsers.length===0&&selectedStores.length===0\">\r\n <div *ngIf=\"!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\"\r\n class=\" btn btn-primary form-control no-text-transform\" (click)=\"exportDet($event)\">\r\n {{ exportLabel }}\r\n </div>\r\n <div *ngIf=\"exportConfig?.enabled &&exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\"\r\n class=\" btn btn-primary form-control no-text-transform\" (click)=\"exportDet($event)\">\r\n {{ exportLabel }} <!-- Bind label text here -->\r\n </div>\r\n <div *ngIf=\"exportShow\"\r\n class=\"card py-2 position-absolute productdrop top-10 w-150px end-0 z-1\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li class=\"cursor-pointer py-4 checkbox-label mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select) &&!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li class=\" cursor-pointer checkbox-label py-4 mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select) &&!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('PDF') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\"cursor-pointer py-4 checkbox-label mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('CSV') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('PPT') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <li *ngIf=\"galleryForm.value.sourceCheckList_id === 'halfshutter' && exportConfig?.enabled && exportConfig?.format?.includes('ZIP')\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body p-0\">\r\n <div>\r\n <div *ngIf=\"viewloading\" class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"viewnoData&&select !== 'custom'&&select !== 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div\r\n class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata2.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No Detections found</div>\r\n <div class=\"nodata-sub\">There is no breaches for the selected period</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"viewnoData&&select === 'custom' || viewnoData&&select === 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div\r\n class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata1.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No data found</div>\r\n <div class=\"nodata-sub\">There is no result for this checklist</div>\r\n </div>\r\n </div>\r\n </div>\r\n <section *ngIf=\"!viewloading && !viewnoData\">\r\n <lib-gallery-qa-view\r\n *ngIf=\"select==='custom'||select==='task'\"\r\n [data]=\"viewChecklistsData\"\r\n [galleryForm]=\"galleryForm\"\r\n [clientData]=\"clientData\"\r\n [environment]=\"environment\"\r\n [userAccess]=\"gs.userAccess | async\"\r\n [showsingle]=\"showsingle\"\r\n [showmulti]=\"showmulti\"\r\n [showfilter]=\"showfilter\"\r\n [selectedSection]=\"selectedSection\"\r\n [answerFilter]=\"answerFilter\"\r\n [select]=\"select\"\r\n [checklistName]=\"checklistName\"\r\n [selectedStores]=\"selectedStores\"\r\n [selectedUsers]=\"selectedUsers\"\r\n (taskTabChange)=\"taskTab($event)\"\r\n (selectMultiTask)=\"onQaSelectMultiTask($event)\"\r\n (viewInDetails)=\"onQaViewInDetails($event)\"\r\n (openProofEvent)=\"openProof($event)\"\r\n (addTaskEvent)=\"onQaAddTask($event)\"\r\n (taskRedirect)=\"onQaTaskRedirect($event)\">\r\n </lib-gallery-qa-view>\r\n\r\n <div class=\"px-4 my-5\" *ngIf=\"imageChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <!-- <div> <h2>Checklist Name : {{this.checklistName}}</h2> </div> -->\r\n <div *ngIf=\"!['outsidebusinesshoursqueuetracking', 'halfshutter','tvcompliance','cameratampering','staffgrouping','employeeCount','unattendeddetection','customerunattended'].includes(galleryForm.value.sourceCheckList_id)\">\r\n @if(['Store Hygiene Monitoring','Mobile usage detection','Uniform detection','staffgrouping','employeeCount','Unattended Detection','Customer Unattended','Employee Monitoring','Activity Monitoring'].includes(this.checklistName)) {\r\n <div class=\"row\">\r\n <div class=\"col-md-3\" >\r\n <h3 class=\"uni-title\">Checklist Name:</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">{{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n }\r\n <div class=\" my-3 mt-5\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{this.checklistName}} </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{item.storeName}}</p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.down_time && !mediaFirstChecklistNames.includes(this.checklistName)\" >\r\n <h3 class=\"uni-title\">Average Downtime</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.down_time && !mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{item.down_time}} Mins</p>\r\n </div>\r\n </div>\r\n <ul class=\"row w-100 ps-2\">\r\n <!-- <li class=\"qa-heading\"> {{item.storeName}} </li> -->\r\n <div class=\"row\">\r\n <div class=\"row qa-bodrer mb-4\" *ngFor=\"let detection of item?.imageUrl\">\r\n <div class=\"my-2\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'col-md-6' : 'col-md-12'\"\r\n *ngIf=\"!(['Unattended Detection','Store Hygiene Monitoring'].includes(this.checklistName) && ['Offline','File Not Received','Files Not Received','Offline \u2013 No data Received from store'].includes(detection?.detectionStatus))\">\r\n @if(['Mobile usage detection','Uniform detection'].includes(this.checklistName)) {\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.imageurl}}\"\r\n alt=\"\" *ngIf=\"detection?.imageurl\" (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.imageurl, this.checklistName)\">\r\n }@else if(['Store Hygiene Monitoring','Unattended Detection','Employee Monitoring','Activity Monitoring'].includes(this.checklistName)) {\r\n <div *ngIf=\"detection?.detectionStatus_afterTaskSubmission\" class=\"mb-3 uni-title\">\r\n Breached Image\r\n </div>\r\n <div>\r\n @if(['Activity Monitoring','Unattended Detection'].includes(this.checklistName) && detection?.videourl) {\r\n <video controls preload=\"metadata\"\r\n [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\"\r\n [src]=\"environment.TraxAIchecklistCDN + detection.videourl\">\r\n </video>\r\n }@else if(detection.imageurl) {\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.imageurl, this.checklistName)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.imageurl}}\"\r\n alt=\"\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\" *ngIf=\"detection.imageurl\" />\r\n }@else {\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection, this.checklistName)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection}}\"\r\n alt=\"\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\" *ngIf=\"!fileNotReceivedStatuses.includes(detection?.detectionStatus)\" />\r\n }\r\n </div>\r\n } @else{\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection, this.checklistName)\" class=\"w-100 h-500px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection}}\"\r\n alt=\"\" >\r\n }\r\n <!-- <div class=\"text-center mt-3\"> {{this.checklistName}}</div> -->\r\n </div>\r\n <div class=\"my-2 col-md-6\" *ngIf=\"detection?.detectionStatus_afterTaskSubmission\">\r\n <div class=\"d-flex justify-content-between mb-3\" >\r\n <div class=\"uni-title\">\r\n Detection after Task Submission\r\n </div>\r\n <div>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus_afterTaskSubmission === 'Clean'\">Clean</span>\r\n <span class=\"ms-3 mt-1 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus_afterTaskSubmission !== 'Clean'\">{{detection.detectionStatus_afterTaskSubmission}}</span>\r\n </div>\r\n </div>\r\n <div >\r\n <img class=\"w-100 heightImage rounded\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.new_image_url}}\" alt=\"\" *ngIf=\"detection.new_image_url\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"389\" height=\"218\" viewBox=\"0 0 389 218\" fill=\"none\" *ngIf=\"!detection.new_image_url\">\r\n <rect width=\"389\" height=\"218\" rx=\"8\" fill=\"black\"/>\r\n </svg>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <div class=\"col-md-3\" *ngIf=\"item.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.storeName\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.temp_id\">\r\n <h3 class=\"uni-title\">Cust Id</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.temp_id\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.temp_id}}</span></p>\r\n </div>\r\n\r\n @if(this.checklistName === 'Unattended Detection' && (detection?.detectionStatus === 'Offline' )) {\r\n <div class=\"col-md-3\" *ngIf=\"detection?.store_timestamp\">\r\n <h3 class=\"uni-title\">Detection Date</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.store_timestamp\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.store_timestamp?.split(' - ')[1] || detection.store_timestamp}}</span></p>\r\n </div>\r\n }@else {\r\n <div class=\"col-md-3\" *ngIf=\"detection.detectionTime\">\r\n <h3 class=\"uni-title\">Detection Time</h3>\r\n </div>\r\n <div [class]=\"detection?.detectionType ? 'col-md-3' : 'col-md-9'\" *ngIf=\"detection.detectionTime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}</span></p>\r\n </div>\r\n }\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionType && !(['Unattended Detection',].includes(this.checklistName) && (detection?.detectionStatus === 'Offline' )) && this.checklistName != 'Activity Monitoring'\">\r\n <h3 class=\"uni-title\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionType && !(['Unattended Detection'].includes(this.checklistName) && (detection?.detectionStatus === 'Offline' )) && this.checklistName != 'Activity Monitoring'\">\r\n <p class=\"uni-subtitle text-nowrap\"> : <span class=\"ms-3 badge badge-light-warning\">{{detection.detectionType}}</span></p>\r\n </div>\r\n\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionStatus && (this.checklistName != 'Activity Monitoring' || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n \r\n <div [class]=\"(detection?.downtime != null && detection?.downtime != undefined) ? ['Offline'].includes(detection?.detectionStatus) ? 'col-md-5' : 'col-md-3' : 'col-md-9'\"\r\n *ngIf=\"detection?.detectionStatus && (this.checklistName != 'Activity Monitoring' || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!detection?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Clutter'\">Clutter</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Clean'\">Clean</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline' \">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div [class]=\"['Offline'].includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection.ProductType\">\r\n <h3 class=\"uni-title\">Activity Type</h3>\r\n </div>\r\n <div [class]=\"['Offline'].includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection.ProductType\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.ProductType}}</span></p>\r\n </div>\r\n <div class='col-md-3' *ngIf=\"this.checklistName == 'Activity Monitoring'\">\r\n <h3 class=\"uni-title\">Detection</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"this.checklistName == 'Activity Monitoring'\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.timestamp | date:'dd MMM, YYYY'}}</span></p>\r\n </div>\r\n <div [class]=\"fileNotReceivedStatuses.includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined && (!['Unattended Detection','Activity Monitoring'].includes(this.checklistName) || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div [class]=\"fileNotReceivedStatuses.includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined && (!['Unattended Detection','Activity Monitoring'].includes(this.checklistName) || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downtime}} Mins </span></p>\r\n </div>\r\n \r\n <div class=\"col-md-6\" *ngIf=\"detection.detectionTime_afterTaskSubmission\">\r\n <h3 class=\"uni-title\">Detection Time (After Task Submission)</h3>\r\n </div>\r\n <div class=\"col-md-6\" *ngIf=\"detection.detectionTime_afterTaskSubmission\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime_afterTaskSubmission}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.detectionOn\">\r\n <h3 class=\"uni-title\">Detection On</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection.detectionOn\">\r\n <p class=\"uni-subtitle\">:<span class=\"ms-3\">{{detection.detectionOn}}</span></p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='inventorycount'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}} </span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\" *ngIf=\"detection?.car_count\">No of\r\n cars :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.car_count}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='numberplateinfo'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_license_id\">Number Plate :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.car_license_id}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Entry Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='carsattended'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.interacted_person_count\">Number of\r\n People Interacted :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.interacted_person_count}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-6 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_reg_number\">Number Plate :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection?.car_reg_number}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_reg_number\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection?.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-6 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.interacted_duration_in_secs\">Time\r\n spent :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.interacted_duration_in_secs}}\r\n Mins</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='vehicle_check_in'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Slot :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.slot_id}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='outsidebusinesshoursqueuetracking'\">\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatus\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!detection?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <ng-template #noDetectionStatus>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\"> :\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"!detection?.Flag\">Not\r\n Breached</span>\r\n </p>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.Date|date:'dd-MM-yyyy'\r\n }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection Count</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.detections.length}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection at</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mt-2\"\r\n *ngIf=\"detection.path && detection.path !== null && detection.path !== undefined && detection.path !== ''\">\r\n <img class=\"w-100 h-500px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n alt=\"\">\r\n <div *ngIf=\"galleryForm.value.sourceCheckList_id !== 'employeemonitoring'\" class=\"text-center mt-3\"> {{this.checklistName}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n <div\r\n *ngIf=\"galleryForm.value.sourceCheckList_id === 'outsidebusinesshoursqueuetracking'\">\r\n <div class=\" my-3 mt-5\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <ul class=\"row ps-2\">\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='outsidebusinesshoursqueuetracking'\">\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\"\r\n *ngIf=\"detection?.detectionStatus\"> :\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Detected'\">Detected</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Detected'\">Not\r\n Detected</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title text-end\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.Date}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection Count</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.detections.length}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection at</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">:\r\n <span\r\n *ngFor=\"let detectionAt of detection.detections; let i=index\">\r\n <span class=\"ms-3 badge backgroundGray\"\r\n *ngIf=\"i < 5\">\r\n {{detectionAt}}\r\n </span>\r\n </span>\r\n <span *ngIf=\"detection.detections.length > 5\"\r\n class=\"ms-3 badge backgroundGray\">\r\n +{{ detection.detections.length - 5 }}\r\n </span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"mediaGridChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <div class=\" my-3 mt-5\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-1\">:</div>\r\n <div class=\"col-md-8\">\r\n <p class=\"uni-subtitle\"> {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <ul class=\"row ps-2\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"mediaGridChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <div class=\"snapcard\">\r\n <!-- Giva (107) Employee Count Detection: media-first design -->\r\n <div *ngIf=\"isGivaEmpCount\" class=\"row w-100\">\r\n <div class=\"col-md-12 my-2 mb-4\" *ngIf=\"detection?.path\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\" alt=\"\">\r\n </div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.storeName}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{['Offline','Files Not Received'].includes(detection?.detectionStatus) ? 'Offline \u2013 No data Received from store' : detection?.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.downtime}} mins</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.employee_count != null && !['Offline','Files Not Received'].includes(detection?.detectionStatus)\"><h3 class=\"uni-title\">Staff Present</h3></div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.employee_count != null && !['Offline','Files Not Received'].includes(detection?.detectionStatus)\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.employee_count}}</span></p></div>\r\n </div>\r\n <div *ngIf=\"!isGivaEmpCount\" class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-12 my-2\" *ngIf=\"detection?.path && galleryForm.value.sourceCheckList_id == 'employeeCount'\">\r\n <div class=\"\" *ngIf=\"detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n <div class=\"\" *ngIf=\"!detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Store Name</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-7\">{{ detection.storeName }}</span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection.detectionTime\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Detection Time</span> <span class=\"col-1\">:</span>\r\n <span class=\"col-md-7\">\r\n\r\n <span class=\"badge badge-light-primary\">{{detection.detectionTime}}</span>\r\n </span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\">\r\n \r\n <h3 class=\"uni-title row\" >\r\n <ng-container *ngIf=\"detection?.detectionStatus&&galleryForm.value.sourceCheckList_id != 'employeeCount'\">\r\n\r\n <span class=\"label col-md-4\">Detection Status</span><span class=\"col-1\">:</span>\r\n <span class=\"col-md-2\">\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not Breached</span>\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'angle changed'\">Angle Changed</span>\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"['Offline','Files Not Received'].includes(detection.detectionStatus)\">Files Not Received</span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"galleryForm.value.sourceCheckList_id === 'employeeCount'\">\r\n\r\n <span class=\"label col-md-4\">Employee Count</span><span class=\"col-1\">:</span>\r\n <span class=\"col-md-2\">\r\n <span class=\"badge badge-light-primary\" *ngIf=\"detection.employee_count\">{{detection.employee_count}}</span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"select!=='staffgrouping'&&detection?.downtime != null && detection?.downtime != undefined\">\r\n\r\n <span class=\"label col-md-2\">Downtime</span> <span class=\"col-1\">:</span>\r\n <span\r\n class=\"col-md-2\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span>\r\n </ng-container>\r\n \r\n </h3>\r\n </div>\r\n \r\n <div class=\"col-md-12\" *ngIf=\"detection?.configuredStoreTime\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Configured Store Time</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-3\"><span class=\"badge badge-num-muted\">{{detection.configuredStoreTime}}</span></span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection.streamId\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Camera Name & Stream ID</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"cursor-pointer col-md-5\" (click)=\"cameraView(detection.StoreID)\"><span class=\"badge badge-num-muted\">{{detection.cameraName}}{{detection.streamId}}<span class=\"ms-2\" ><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n<path d=\"M12 8.66667V12.6667C12 13.0203 11.8595 13.3594 11.6095 13.6095C11.3594 13.8595 11.0203 14 10.6667 14H3.33333C2.97971 14 2.64057 13.8595 2.39052 13.6095C2.14048 13.3594 2 13.0203 2 12.6667V5.33333C2 4.97971 2.14048 4.64057 2.39052 4.39052C2.64057 4.14048 2.97971 4 3.33333 4H7.33333M10 2H14M14 2V6M14 2L6.66667 9.33333\" stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg></span></span></span></h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"galleryForm.value.sourceCheckList_id === 'halfshutter' && headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Scheduled Employee</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-7\">\r\n @if(detection.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted\" *ngFor=\"let emp of detection.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted\">NA</span>\r\n }\r\n </span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12 my-2\" *ngIf=\"detection?.path && galleryForm.value.sourceCheckList_id != 'employeeCount'\">\r\n <div class=\"\" *ngIf=\"detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n <div class=\"\" *ngIf=\"!detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"px-4 my-5\" *ngIf=\"videoChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n\r\n <div class=\"my-3 mt-5\" *ngFor=\"let item of customerunattendedData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{this.checklistName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"!isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum && select!=='customerunattended'\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum && select!=='customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n </div>\r\n <ul class=\"row w-100 ps-2\" [ngClass]=\"(isGivaScrum || isGivaCustomerUnattended ) ? '' : 'margin-top-side'\">\r\n <li class=\"qa-heading\"> </li>\r\n <div class=\"row\">\r\n <div class=\"col-md-12\" [ngClass]=\"(select === 'customerunattended' || isStoreMopping) ? 'card my-3' : ''\" *ngFor=\"let detection of item.imagesData\">\r\n <!-- Store Mopping: media first, then details below (matches Mobile Usage design) -->\r\n <div class=\"mt-5 mb-4\" *ngIf=\"isStoreMopping || select === 'customerunattended'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection?.video_path?.trim()\">\r\n </video>\r\n </div>\r\n <!-- Store Mopping: dedicated details block below the media (matches target design) -->\r\n <div class=\"row px-4 mt-5 margin-left-side\" *ngIf=\"isStoreMopping\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Configured Time</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.configTime}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.date\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.date\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection?.date | date:\"dd MMM YYYY\"}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"detection.detectionStatus == 'Offline' ? 'col-md-4' : 'col-md-3'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus == 'Offline' ? 'Offline - No data received from store' : detection.detectionStatus}}</span></p>\r\n </div>\r\n <div [class]=\"detection.detectionStatus == 'Offline' ? 'col-md-2' : 'col-md-3'\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p>\r\n </div>\r\n </div>\r\n <!-- Activity Monitoring: media-first layout (matches target design) -->\r\n <!-- <ng-container *ngIf=\"isActivityMonitoring\">\r\n <div class=\"snapcard mb-4\">\r\n \r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\"></video>\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Cust ID</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\" *ngIf=\"detection?.customer_id\">{{detection.customer_id}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Activity Type</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.activityType}}</span></p></div>\r\n </div>\r\n </ng-container>\r\n \r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Detection</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container> -->\r\n <!-- Giva (107) Customer unattended: media-first design -->\r\n <ng-container *ngIf=\"isGivaCustomerUnattended\">\r\n <div class=\"snapcard mb-4\">\r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\" *ngIf=\"detection?.video_path\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\"></video>\r\n </div>\r\n <div class=\"w-100 mb-4\" *ngIf=\"!detection?.video_path && detection?.path\">\r\n <img class=\"w-100 h-450px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\" alt=\"\">\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Cust ID</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\" *ngIf=\"detection?.customer_id\">{{detection.customer_id}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Date</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Entry Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-num-muted\">{{detection.customer_entry_time || detection.entry_time}}</span></p></div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Date</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <!-- Giva (107) Store Huddle Adherence (scrum): video-first design -->\r\n <ng-container *ngIf=\"isGivaScrum\">\r\n <div class=\"snapcard mb-4\">\r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\"></video>\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Configured Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{formatTimeRange12h(detection.configTime)}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div [class]=\"detection?.duration ? 'col-md-3' : 'col-md-9'\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\"><h3 class=\"uni-title\">Duration</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.duration}} Mins</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div [class]=\"(detection?.downTime != null && detection?.downTime != undefined) ? 'col-md-3' : 'col-md-9'\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime != null && detection?.downTime != undefined\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime != null && detection?.downTime != undefined\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Configured Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{formatTimeRange12h(detection.configTime)}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{formatDetectionDate(detection.date)}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <div class=\"row px-4 mt-5 margin-left-side\"\r\n *ngIf=\"select!=='suspiciousactivity' && !isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum\">\r\n <div class=\"col-md-3\" *ngIf=\"select === 'customerunattended'\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"select === 'customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatusCard\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <ng-template #noDetectionStatusCard>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.Answer\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatus\">\r\n <p class=\"uni-subtitle\">:\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Answer==='rejected'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"detection?.Answer==='approved'\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <ng-template #noDetectionStatus>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.Answer\">\r\n <p class=\"uni-subtitle\">:\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.Answer==='rejected'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.Answer==='approved'\">Not\r\n Breached</span>\r\n </p>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.date|date:'dd-MM-yyyy' }}\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.zoneName && select!=='customerunattended'\">\r\n <h3 class=\"uni-title\">Zone Name</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.zoneName && select!=='customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.zoneName }}\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.configTime\">\r\n <h3 class=\"uni-title\">Configured Time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.configTime\">\r\n <p class=\"uni-subtitle \">: <span\r\n class=\"ms-3\">{{detection.configTime }}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\">\r\n <h3 class=\"uni-title\">Duration</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.duration }} Mins </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downTime }} Mins </span>\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_id\">\r\n <h3 class=\"uni-title\">Cust ID</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_id\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-primary\">{{detection.customer_id }}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_entry_time\">\r\n <h3 class=\"uni-title\">Entry time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_entry_time\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-default\">{{detection.customer_entry_time }}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_exit_time && headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title\">Exit time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_exit_time && headerFilters?.client =='11'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-default\">{{detection.customer_exit_time }}</span>\r\n </p>\r\n </div>\r\n </div>\r\n <div class=\"card-header border-0 min-h-45px px-0 my-0\" *ngIf=\"!isGivaCustomerUnattended && !isGivaScrum\">\r\n <h3 class=\"card-title\">\r\n <!-- <span class=\"me-3 store-title\">{{item.storeName}}</span> -->\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_id && select!=='customerunattended'\">Cust ID : <span\r\n class=\"ms-3\">{{detection.customer_id}}</span></span>\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.queue_id\">Queue ID : <span\r\n class=\"ms-3\">{{detection.queue_id}}</span></span>\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.optum_id\">Optom ID : <span\r\n class=\"ms-3\">{{detection.optum_id}}</span></span>\r\n <!-- <span class=\"ms-2 badge badge-light-default\" *ngIf=\"detection?.date\">Date : {{detection.date|date:'dd-MM-yyyy' }}</span> -->\r\n <!-- <span class=\"ms-3 badge badge-light-default\" *ngIf=\"detection?.configTime\">Inspection time : {{detection.configTime}}</span> -->\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.temp_id\">TempId : <span\r\n class=\"ms-3\">{{detection.temp_id}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.time_spend\">Timespend : <span\r\n class=\"ms-3\">{{detection.time_spend}}Mins</span></span>\r\n </h3>\r\n\r\n <!-- Switch toggle -->\r\n <div class=\"card-toolbar\">\r\n <div class=\"col-md-12 text-end\">\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.entry_time\">Entry time : <span\r\n class=\"ms-3\">{{detection.entry_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.exit_time\">Exit time : <span\r\n class=\"ms-3\">{{detection.exit_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.adherence_rate\">Adherence Rate : <span\r\n class=\"ms-3\">{{detection.adherence_rate}}</span></span>\r\n <span class=\"ms-3 badge badge-light-primary text-capitalize\"\r\n *ngIf=\"detection?.category\"> <span\r\n class=\"ms-3\">{{detection.category}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_entry_time && select!=='customerunattended'\">Entry time :\r\n <span\r\n class=\"ms-3\">{{detection.customer_entry_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_exit_time && select!=='customerunattended'\">Exit time : <span\r\n class=\"ms-3\">{{detection.customer_exit_time}}</span></span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"my-0\" *ngIf=\"select !=='eyetest' && !isStoreMopping && !isGivaScrum && !isGivaCustomerUnattended && select!=='customerunattended'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\"\r\n alt=\"\" *ngIf=\"detection.video_path\">\r\n </video>\r\n </div>\r\n <div class=\"my-0\" *ngIf=\"select ==='eyetest'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.EyeTestCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\">\r\n </video>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"select ==='storeopenandclose'\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name : </h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\"> {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 margin-top-side\" *ngFor=\"let store of storeOpencloseView\">\r\n <div class=\"mx-8 my-8\" *ngFor=\"let item of store.imagesData\">\r\n @if(item?.process_type == 'live') {\r\n <div class=\"snapcard\">\r\n <div class=\"row m-0 w-100\">\r\n <div class=\"col-12\">\r\n <div class=\"img mt-4 px-3 position-relative\" *ngIf=\"!item.openTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.openTime && item.type == 'open'\">\r\n <img class=\"mx-1 openclosesnapLiveIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/open.jpeg\"\r\n alt=\"open close snap\" *ngIf=\"item.s3_path != ''\"\r\n (click)=\"openSnapPopup(item, 'open')\">\r\n <!-- <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Opening Snap</div>\r\n <div class=\"snaptime\">{{item.openTime}} -\r\n {{item.date}} </div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.onopenTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.lateopenTimeFlag\">Late Open</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n <div class=\"col-12\">\r\n <div class=\"img mt-4 px-3 position-relative\"\r\n *ngIf=\"!item.closeTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.closeTime && item.type == 'close'&& item.s3_path != ''\">\r\n <img class=\"mx-1 openclosesnapLiveIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/close.jpeg\"\r\n alt=\"Checklist Video Player\" *ngIf=\"item.s3_path != ''\"\r\n (click)=\"openSnapPopup(item, 'close')\">\r\n <!-- <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Closing Snap</div>\r\n <div class=\"snaptime\">{{item.closeTime}} -\r\n {{item.date}}</div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.oncloseTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">Early Close</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"item?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_open\">\r\n <h3 class=\"uni-title\">Buffer for Open Time </h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_open\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.buffer_open }}\r\n mins</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_close\">\r\n <h3 class=\"uni-title\">Buffer for Close Time </h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_close\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.buffer_close }}\r\n mins</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span\r\n class=\"ms-1 badge badge-light-warning snapbadge\">{{item.type =='open' ? 'Store Open' : 'Store Close'}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"(item.reason == 'File Not Received' || item?.detectionStatus === 'Offline') ? 'col-md-9' : item?.detectionStatus === 'Not Breached' ? 'col-md-8':'col-md-4'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Breached' && item.reason != 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"(item?.detectionStatus === 'Breached' && item.reason == 'File Not Received') || item.detectionStatus == 'Offline'\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.detectionStatus && item?.detectionStatus !== 'Not Breached' && item.reason !== 'File Not Received'\">\r\n <h3 class=\"uni-title\">Breached Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.detectionStatus && item?.detectionStatus !== 'Not Breached' && item.reason !== 'File Not Received'\">\r\n <p class=\"uni-subtitle text-nowrap\" *ngIf=\"item.type == 'open'\">:\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.detectionStatus != 'Breached' && !item.Flag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.detectionStatus == 'Breached' && item.Flag\">Late Open</span>\r\n <!-- <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span> -->\r\n </p>\r\n <p class=\"uni-subtitle text-nowrap\" *ngIf=\"item.type == 'close'\">:\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.detectionStatus != 'Breached' && !item.Flag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.detectionStatus == 'Breached' && item.Flag\">Early Close</span>\r\n <!-- <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span> -->\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.detection_time\">\r\n <h3 class=\"uni-title\">Detection Time</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item?.detection_time\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{item.detection_time}} - {{item.date}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.downtime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{item.downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-3\">Scheduled Employee</span>\r\n <span class=\"value col-md-7\">\r\n <p class=\"uni-subtitle text-nowrap\">: \r\n @if(item.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted ms-3\" *ngFor=\"let emp of item.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted ms-3\">NA</span>\r\n }\r\n </p>\r\n </span>\r\n </h3>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n }\r\n @else {\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"store?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"store?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{store.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title ms-15\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-1 badge badge-light-warning\">{{item.type =='open' ? 'Store Open' : 'Store Close'}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"item.reason === 'File Not Received' ? 'col-md-5' : item.detectionStatus === 'Not Breached' ? 'col-md-4': 'col-md-3'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Breached' && item.reason !== 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Offline' || (item?.detectionStatus === 'Breached' && item.reason == 'File Not Received')\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason !== 'File Not Received'\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason !== 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date|date:'dd-MM-yyyy' }} </span></p>\r\n </div>\r\n <div class=\"col-md-12\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-3\">Scheduled Employee</span>\r\n <span class=\"value col-md-7\">\r\n <p class=\"uni-subtitle text-nowrap\">: \r\n @if(item.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted ms-3\" *ngFor=\"let emp of item.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted ms-3\">NA</span>\r\n }\r\n </p>\r\n </span>\r\n </h3>\r\n </div>\r\n <!-- <div class=\"col-md-4\" *ngIf=\"item?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.downtime\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div> -->\r\n </div>\r\n <div class=\"row m-0 w-100\">\r\n <!-- @for (item of store.imagesData; track item) { -->\r\n <div class=\"col-6\">\r\n <div class=\"img mt-4 px-3 position-relative\" *ngIf=\"!item.openTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.openTime && item.reason !== 'File Not Received'\">\r\n <img class=\"mx-1 openclosesnapIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/open.jpeg\"\r\n alt=\"open close snap\"\r\n (click)=\"openSnapPopup(item, 'open')\">\r\n <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Opening Snap</div>\r\n <div class=\"snaptime\">{{item.openTime}} -\r\n {{item.date}} <span class=\"ms-5 badge badge-light-danger\"\r\n *ngIf=\"item?.lateopenTimeFlag\">{{item.lateOpen}} mins Delay</span></div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.onopenTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.lateopenTimeFlag\">Late Open</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"img mt-4 px-3 position-relative\"\r\n *ngIf=\"!item.closeTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.closeTime && item.reason !== 'File Not Received'\">\r\n <img class=\"mx-1 openclosesnapIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/close.jpeg\"\r\n alt=\"Checklist Video Player\"\r\n (click)=\"openSnapPopup(item, 'close')\">\r\n <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Closing Snap</div>\r\n <div class=\"snaptime\">{{item.closeTime}} -\r\n {{item.date}} <span class=\"ms-2 badge badge-light-danger\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">{{item.earlyClose}} mins Early</span></div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.oncloseTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">Early Close</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- } -->\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n \r\n </div>\r\n </div>\r\n \r\n <div *ngIf=\"boximageChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"col-md-12\" *ngFor=\"let store of queueAlertView\">\r\n @if(select==='queuealert' && store.process_type == 'live') {\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{checklistName}}</p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <h3 class=\"uni-title\">Description:</h3>\r\n </div>\r\n <div class=\"col-md-9\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <p class=\"uni-subtitle\">{{checkListDescription}}</p>\r\n </div>\r\n </div>\r\n <div class=\"row m-0 w-100 \">\r\n <div class=\"col-12 mt-2\" *ngFor=\"let item of store.imagesData\">\r\n <div class=\"card bordercolor bg-secondary mt-8\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"item?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.date_timestamp\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.date_timestamp\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{item.date_timestamp }}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"(item.reason == 'File Not Received' || item?.detectionStatus === 'Offline') ? 'col-md-9' : item?.detectionStatus === 'Not Breached' ? 'col-md-8':'col-md-4'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.status === 'Breached' && item.reason != 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.status === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"(item?.status === 'Breached' && item.reason == 'File Not Received') || item.status == 'Offline'\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.Downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.Downtime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{item.Downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n <!-- <div class=\"text-start ms-5 mt-2 mb-5\">\r\n <div *ngIf=\"item.zone\">\r\n <span\r\n class=\"btn btn-secondary rounded-lg p-2\">{{item.zone}}</span>\r\n </div>\r\n\r\n <div class=\"mt-3 fw-semibold\">{{ item.date_timestamp }}</div>\r\n <div *ngIf=\"select==='boxalert'\" class=\"mt-3 fw-semibold\">Empty shelves : {{ item.emptyBoxCount }}</div>\r\n </div> -->\r\n <img class=\"openclosesnapLiveIMG\" (click)=\"openModel(item)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{item.path}}\" alt=\"\">\r\n\r\n </div>\r\n </div>\r\n </div>\r\n }@else {\r\n <div class=\"row px-4 mt-5\" *ngIf=\"showmulti\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{store?.storeName}} |\r\n {{store?.city}},{{store?.state}},{{store?.country}} </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n \r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{checklistName}}</p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <h3 class=\"uni-title\">Description:</h3>\r\n </div>\r\n <div class=\"col-md-9\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <p class=\"uni-subtitle\">{{checkListDescription}}</p>\r\n </div>\r\n \r\n </div>\r\n <div class=\"row m-0 w-100 \">\r\n <div class=\"col-4 mt-2\" *ngFor=\"let item of store.imagesData\">\r\n <div class=\"card bordercolor bg-secondary mt-8\">\r\n <div class=\"text-start ms-5 mt-2 mb-5\">\r\n <!-- <div *ngIf=\"item.zone\">\r\n <span\r\n class=\"btn btn-secondary rounded-lg p-2\">{{item.zone}}</span>\r\n </div> -->\r\n \r\n <div class=\"mt-3 fw-semibold\">{{ item.date_timestamp }}</div>\r\n <div *ngIf=\"select==='boxalert'\" class=\"mt-3 fw-semibold\">Empty shelves : {{ item.emptyBoxCount }}</div>\r\n </div>\r\n <img class=\"w-100 h-250px rounded-bottom\" (click)=\"openModel(item)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{item.path}}\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n\r\n <!-- ===== Occupancy Detection body (static cards; reuses existing left/right panels) ===== -->\r\n <div *ngIf=\"select === 'occupancyDetection'\" class=\"occ-body\">\r\n <div class=\"text-center\" *ngIf=\"clientData?.logo && clientData?.logo !== ''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{ checklistName }}</p>\r\n </div>\r\n </div>\r\n <div class=\"row m-0 w-100\">\r\n <div class=\"col-4 mt-2\" *ngFor=\"let card of occupancyData.cards\">\r\n <div class=\"occ-card mt-8\">\r\n <div class=\"occ-card-head\">{{ card.storeCode }}</div>\r\n <div class=\"occ-card-img-wrap\">\r\n <!-- Offline: gray placeholder with camera-slash icon -->\r\n <div class=\"occ-card-offline\" *ngIf=\"card.status === 'Offline'\">\r\n <svg width=\"64\" height=\"64\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <circle cx=\"12\" cy=\"12\" r=\"10.25\" stroke=\"#B42318\" stroke-width=\"1.5\" />\r\n <path d=\"M4.5 4.5L19.5 19.5\" stroke=\"#B42318\" stroke-width=\"1.5\"\r\n stroke-linecap=\"round\" />\r\n <path\r\n d=\"M9.5 8.25H10.2L11 7H13L13.8 8.25H14.5C15.33 8.25 16 8.92 16 9.75V13.5M16 16C16 16 15.33 16 14.5 16H8.5C7.67 16 7 15.33 7 14.5V9.75C7 9.2 7.3 8.72 7.74 8.46\"\r\n stroke=\"#B42318\" stroke-width=\"1.5\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <circle cx=\"11.5\" cy=\"12\" r=\"2\" stroke=\"#B42318\" stroke-width=\"1.5\" />\r\n </svg>\r\n </div>\r\n <img class=\"occ-card-img\" *ngIf=\"card.status !== 'Offline'\"\r\n src=\"{{ card.image }}\" alt=\"{{ card.storeCode }}\">\r\n </div>\r\n <div class=\"occ-card-body\">\r\n <div class=\"occ-card-time\">{{ card.capturedAt }}</div>\r\n <div class=\"occ-card-seats\" *ngIf=\"card.status !== 'Offline'\">Empty Seats : <strong>{{ card.emptySeats }}</strong></div>\r\n <span class=\"occ-status-badge\" [ngClass]=\"occupancyStatusClass(card.status)\">\r\n {{ card.status }}\r\n <span class=\"occ-badge-icon\"\r\n *ngIf=\"card.status === 'Offline'\"\r\n [ngbTooltip]=\"offlineTip\"\r\n placement=\"top\" container=\"body\" triggers=\"hover focus\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M6 8V6M6 4H6.005M11 6C11 8.76142 8.76142 11 6 11C3.23858 11 1 8.76142 1 6C1 3.23858 3.23858 1 6 1C8.76142 1 11 3.23858 11 6Z\"\r\n stroke=\"#B42318\" stroke-width=\"1.5\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <ng-template #offlineTip>Offline \u2013 No data Received from store</ng-template>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <lib-pagination *ngIf=\"!viewloading && !viewnoData && select !== 'occupancyDetection'\" [itemsPerPage]=\"limit\"\r\n [currentPage]=\"offset\" [totalItems]=\"totalCount\" [paginationSizes]='paginationSizes'\r\n [pageSize]=\"limit\" (pageChange)=\"onPageChangeview($event)\"\r\n (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n\r\n <lib-pagination *ngIf=\"select === 'occupancyDetection'\" [itemsPerPage]=\"1\"\r\n [currentPage]=\"occupancyCurrentPage\" [totalItems]=\"occupancyData.totalItems\"\r\n [paginationSizes]=\"[1]\" [pageSize]=\"1\"\r\n (pageChange)=\"goToOccupancyPage($event)\"></lib-pagination>\r\n </section>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!showsidenav\" (click)=\"sidenav()\" class=\"backButtonleft text-center pt-1 cursor-pointer\">\r\n <svg class=\"mt-2 ms-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path\r\n d=\"M9.72714 12.6365L13.3635 9.00013L9.72714 5.36377M4.63623 12.6365L8.27259 9.00013L4.63623 5.36377\"\r\n stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"row card mx-0 p-3\" *ngIf=\"galleryForm.get('type')?.value != 'aiChecklist'\">\r\n <div class=\"col-md-12 text-end\">\r\n <button\r\n class=\"btn btn-sm border-primary1\"\r\n [disabled]=\"!approvalStatus\"\r\n (click)=\"onApproveChecklistClick()\">\r\n Approve\r\n </button>\r\n </div>\r\n</div>\r\n<ng-template #zoomPopup let-model>\r\n <div class=\"p-8\">\r\n <div class=\"modal-header pt-0 ps-1 pe-0\">\r\n <div>\r\n <div class=\"text-start mt-2\">\r\n <div *ngIf=\"viewImage.zone\">\r\n <span class=\"btn btn-secondary rounded-lg p-2\">{{viewImage.zone}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.emptyBoxCount\">\r\n <span>Empty shelves : {{viewImage.emptyBoxCount}}</span>\r\n </div>\r\n\r\n <div *ngIf=\"viewImage.entry_time\">\r\n <span>Entry Time : {{viewImage.entry_time}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.exit_time\">\r\n <span>Exit Time : {{viewImage.exit_time}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.temp_id\">\r\n <span>Temp Id : {{viewImage.temp_id}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.time_spend\">\r\n <span>Time Spend : {{viewImage.time_spend}} Mins</span>\r\n </div>\r\n\r\n <div class=\"mt-2\" *ngIf=\"viewImage.threshold&&viewImage.Dwelltime\">\r\n <p>If the queue exceeds {{viewImage.threshold}} people and wait time surpasses\r\n {{viewImage.Dwelltime}} minutes, an alert will be triggered</p>\r\n </div>\r\n <div class=\"mt-3 fw-semibold\">{{ viewImage.date_timestamp }}</div>\r\n </div>\r\n\r\n </div>\r\n <div data-bs-dismiss=\"modal\">\r\n <!-- <span class=\"stream fw-semibold text-nowrap me-5\" *ngIf=\"camera.height && camera.width\"> Resolution: {{camera.height}} X {{camera.width}}</span> -->\r\n <span class=\"btn btn-sm btn-icon btn-active-color-primary me-0\" (click)=\"model.dismiss()\"><svg\r\n width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"viewImage.path\" class=\"mt-2 overflow-auto\">\r\n <img class=\"rounded-4 mt-5 img-popup-src w-100\" src=\"{{environment.TraxAIchecklistCDN}}{{viewImage.path}}\">\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #proofPopup let-modal>\r\n <div class=\"modal-header border-0 align-items-center pb-2\">\r\n <h4 class=\"modal-title fw-bold mb-0\">Verification Details</h4>\r\n <span class=\"btn btn-sm btn-icon btn-active-color-primary me-0 cursor-pointer\" (click)=\"modal.dismiss()\">\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"modal-body pt-0\">\r\n <div *ngIf=\"proofData?.userImage\">\r\n <div class=\"title-ref my-3\">Captured Photo</div>\r\n <img class=\"w-100 h-350px rounded cursor-pointer\" [src]=\"environment.TraxAnswerCDN + proofData.userImage\" alt=\"Captured Photo\" style=\"object-fit:contain\">\r\n </div>\r\n <div class=\"row mt-5\" *ngIf=\"proofData?.userSignature\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Name :</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">{{proofData?.userSignature}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [".gallery-card{padding:24px;border-radius:12px;background:#fff}.gallery-card .header{color:#101828;font-size:18px;font-weight:500;line-height:28px}.img{border-radius:10px;border:1px solid var(--Gray-500, #667085);background:var(--Gray-100, #F2F4F7);width:100%;height:230px}.prvtxt{color:var(--Gray-500, #667085);font-family:Inter;font-size:20px;font-style:normal;font-weight:700;line-height:20px;letter-spacing:-.4px}.refreshtxt{color:var(--Gray-400, #98A2B3);font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px}::ng-deep .applyBtn{display:none!important}::ng-deep .custom-height-modal .modal-dialog{max-height:80vh;height:80vh}::ng-deep .custom-height-modal .modal-content{overflow:auto;max-height:100%}:host::ng-deep .md-drppicker .btn{line-height:10px!important}:host::ng-deep .md-drppicker.shown.drops-down-right{transform-origin:0 0;width:560px!important}:host::ng-deep .daterangepicker-input+.ngx-daterangepicker-material .applyBtn{display:none}:host::ng-deep .md-drppicker.drops-down-right.ltr.show-ranges.shown{top:65px!important}:host::ng-deep .md-drppicker.drops-down-right.ltr.double.show-ranges.shown{top:65px!important;right:-475px!important;left:unset!important;height:400px!important}:host::ng-deep .md-drppicker .btn{border-radius:8px!important;border:1px solid var(--Primary-600, #00A3FF)!important;background:var(--Primary-600, #00A3FF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--White, #FFF)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}:host::ng-deep .md-drppicker .ranges ul li button{padding:12px 16px;width:160px;color:var(--Gray-700, #344054);font-size:14px;font-weight:400;line-height:20px;background:none;border:none;text-align:left;cursor:pointer}:host::ng-deep .md-drppicker td.active,:host::ng-deep .md-drppicker td.active:hover{background-color:#029cf4!important;border-radius:20px!important;color:var(--White, #FFF)!important;text-align:center!important;font-size:14px!important;font-weight:500!important;line-height:20px}:host::ng-deep .md-drppicker.ltr .ranges{float:left;margin-top:10px!important}:host::ng-deep .md-drppicker td.in-range{background:var(--Primary-50, #EAF8FF)}:host::ng-deep .md-drppicker .ranges ul li button.active{background:var(--Primary-50, #EAF8FF)!important;border-radius:8px!important;color:var(--Primary-700, #009BF3);font-size:14px!important;font-weight:500!important;line-height:20px!important}:host::ng-deep table th,:host::ng-deep table td{width:40px!important;height:40px!important;padding:10px 8px!important}:host::ng-deep .md-drppicker td.available.prev,:host::ng-deep .md-drppicker th.available.prev{background-image:url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMy43IDYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDMuNyA2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxwYXRoIGQ9Ik0zLjcsMC43TDEuNCwzbDIuMywyLjNMMyw2TDAsM2wzLTNMMy43LDAuN3oiLz4NCjwvZz4NCjwvc3ZnPg0K)!important;background-repeat:no-repeat!important;background-size:.5em!important;background-position:center!important}:host::ng-deep .md-drppicker td.available.next,:host::ng-deep .md-drppicker th.available.next{background-image:url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMy43IDYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDMuNyA2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxwYXRoIGQ9Ik0zLjcsMC43TDEuNCwzbDIuMywyLjNMMyw2TDAsM2wzLTNMMy43LDAuN3oiLz4NCjwvZz4NCjwvc3ZnPg0K)!important;background-repeat:no-repeat!important;background-size:.5em!important;background-position:center!important}:host::ng-deep table th{border-bottom:0px solid var(--Gray-200, #EAECF0)!important;background:transparent!important;color:var(--Gray-700, #344054)!important;text-align:center;font-size:16px!important;font-weight:500!important;line-height:24px}:host::ng-deep .md-drppicker .btn.btn-default{border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize;margin-right:10px!important}:host::ng-deep .md-drppicker td.available.invalid-date{text-decoration:line-through;pointer-events:none;color:#a9a9a9}:host::ng-deep .md-drppicker td.available.today:not(.invalid-date){text-decoration:unset;pointer-events:unset;color:unset}.btn-primary{line-height:18px!important}.checkbox-label{color:#344054;font-size:14px;font-weight:500;line-height:20px;cursor:pointer}.checklist-left .checklist-title{overflow:hidden;color:var(--Black, #101828)!important;text-overflow:ellipsis;font-size:18px!important;font-weight:500;line-height:28px}.checklist-left .checklist-text{overflow:hidden;color:var(--Black, #101828)!important;text-overflow:ellipsis;font-size:12px!important;font-weight:400!important;line-height:18px}.section{display:inline-block;width:600px;white-space:nowrap;outline:none!important;border:none!important;box-shadow:none!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--Black, #101828)!important;font-size:16px!important;font-weight:500!important}.card hr{width:-webkit-fill-available}.editablecontent{color:var(--Gray-700, #344054)!important;font-size:16px!important;font-weight:400!important;line-height:24px}.rotate{transform:rotate(180deg);transition:1s}.question-left{color:var(--Gray-700, #344054)!important;font-size:16px;font-weight:400;line-height:24px}.view-all{padding:12px!important;border-radius:6px!important;background:var(--Primary-50, #EAF8FF)!important;color:var(--Primary-500, #33B5FF)!important;font-size:16px!important;font-weight:600!important;line-height:24px;text-decoration-line:underline!important}.view-questions{padding:12px!important;border-radius:6px!important;color:var(--Primary-500, #33B5FF)!important;font-size:16px!important;font-weight:600!important;line-height:24px;text-decoration-line:underline!important}.iconsize{width:110px;height:110px}.margin-left-side{margin-left:-14px}.margin-top-side{margin-top:-15px}input[type=checkbox]{width:16px!important;height:16px!important;margin:0;border-radius:4px!important;-webkit-appearance:none;-moz-appearance:none;-o-appearance:none;appearance:none;outline:1px solid var(--gray-300, #D0D5DD);box-shadow:none;font-size:.8em;text-align:center;line-height:1em;background:#fff}input[type=checkbox]:checked{outline:1px solid var(--primary-600, #00A3FF);background-color:var(--primary-50, #EAF8FF)}input[type=checkbox]:checked:after{content:\"\";transform:rotate(45deg);border-bottom:2px solid #00A3FF;border-right:2px solid #00A3FF;display:inline-block;width:.5em;padding-left:0!important;padding-top:8px;padding-right:5px}.uni-title{color:#000!important;font-size:17px!important;font-weight:600!important;line-height:30px;white-space:nowrap}.uni-subtitle{color:#000!important;font-size:17px!important;font-weight:400!important;line-height:28px}.qa-heading{color:var(--Black, #101828)!important;font-size:18px!important;font-weight:700!important;line-height:28px;list-style:none}.qa-bodrer{padding:16px!important;border-radius:8px!important;border:1px solid var(--Gray-200, #EAECF0)!important;background:var(--text-primary, #FFF)!important;box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280f!important}.title-ref{color:var(--Gray-900, #101828)!important;font-size:16px!important;font-weight:400!important;line-height:24px}.btn-outline-primary{border-radius:8px!important;border:1px solid var(--Primary-500, #33B5FF)!important;background:var(--Primary-50, #EAF8FF)!important;box-shadow:0 1px 2px #1018280d!important;padding:calc(.7rem + 0px) calc(1.5rem + 1px)!important}.Partially{color:#000;font-size:18px!important;font-style:italic!important;font-weight:500;line-height:28px}.task-remarks{color:#000!important;font-size:18px!important;font-weight:400!important;line-height:28px}.backButtonright{border-radius:1000px!important;background:var(--text-primary, #FFF)!important;padding:12px!important;box-shadow:0 12px 16px -4px #10182814,0 4px 6px -2px #10182808!important;box-shadow:0 8.727px 11.636px -2.909px #10182814,0 2.909px 4.364px -1.455px #10182808!important;position:absolute;top:30px;right:-10px;z-index:0}.backButtonleft{border-radius:1000px!important;background:#fff;padding:14px!important;border:var(--Gray-300, #D0D5DD);box-shadow:0 8.727px 11.636px -2.909px #10182814,0 2.909px 4.364px -1.455px #10182808;position:absolute;top:30px;left:-20px;z-index:5}img.img-logo{width:100%;height:400px!important}.recap-img{width:100%;height:400px;object-fit:cover!important}.img-src{width:30%!important;height:20%!important}.dropdownselect{padding:20px 10px}.dropdownbg{width:Fill(372px) px;height:Hug(40px) px;padding:8px 16px;gap:0px;border-radius:6px 0 0;justify-content:space-between;opacity:0px;background:#eaf8ff}.detectionright{color:var(--Primary-700, #009BF3)!important;text-align:center;font-size:14px!important;font-weight:500;line-height:14px;float:right!important;mix-blend-mode:multiply}.backgroundBorder{background:#eaf8ff!important;color:#00a3ff!important;padding:12px;border-radius:8px;font-weight:500;line-height:10px}.withoutbackground{padding:8px;font-weight:500;line-height:10px}.snapcard{display:flex;padding:12px;flex-direction:column;align-items:flex-start;gap:12px;align-self:stretch;border-radius:8px;border:1px solid var(--Gray-200, #EAECF0);background:var(--White, #FFF);box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280f}.snapheader{color:var(--Black, #101828);font-size:16px;font-style:normal;font-weight:600;line-height:24px}.snaptext{color:var(--Gray-900, #101828);font-size:16px!important;font-style:normal;font-weight:600!important;line-height:24px}.snaptime{color:var(--Gray-900, #101828);font-size:12px!important;font-style:normal;font-weight:500!important;line-height:22px}.snapbadge{text-align:center;font-size:14px!important;font-style:normal;font-weight:500!important;line-height:20px}.btn-resize{font-size:13px!important;height:29px!important;line-height:11px!important;padding:1px!important}.preview{position:absolute;top:30%;left:14%}.w-25{width:17%!important}.w-40{width:40%!important}.usage-detection{color:var(--Primary-700, #009BF3);text-overflow:ellipsis!important;font-size:16px!important;font-style:normal;font-weight:400;line-height:16px;width:220Px}.usage-text{color:var(--Gray-700, #344054);text-overflow:ellipsis;font-size:16px;font-style:normal;font-weight:400;line-height:17px}.h-450px{object-fit:contain!important}.store-title{color:var(--Black, #101828)!important;font-size:18px;font-weight:700;line-height:28px}.img-opc{width:100%!important;height:300px!important;border-radius:12px!important}.h-900px{min-height:auto!important;max-height:2800px!important}.select-wrapper{position:relative;display:inline-block;width:100%}.placeholder-overlay{position:absolute;color:var(--Gray-500, #667085);font-family:Inter;font-size:16px!important;font-style:normal;font-weight:400;top:10px;left:15px;pointer-events:none;font-size:1.1rem;z-index:1}.flagclour{color:red}.remarksTxt{margin-top:10px;font-family:Inter;font-size:18px;font-weight:400;line-height:28px;text-align:left;white-space:pre-line}.no-text-transform{text-transform:none!important}.border-val1{padding:8px 14px!important;border-radius:8px!important;border:1px solid var(--Primary-500, #33B5FF)!important;background:var(--Primary-50, #EAF8FF)!important;box-shadow:0 1px 2px #1018280d!important}.font-task{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.border-default{padding:8px 14px!important;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important}.font-defult-task{color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.nav-item .nav-link.active{border:none;border-radius:6px;background:var(--Primary-50, #EAF8FF);padding:8px 12px}.nav-item .nav-link:hover{border:none}.badge-num-primary{border-radius:16px!important;background:var(--Primary-50, #EAF8FF)!important;color:var(--Primary-700, #009BF3)!important;text-align:center;font-size:14px!important;font-style:normal;font-weight:500;line-height:20px;padding:2px 10px!important;mix-blend-mode:multiply!important}.badge-num-muted{border-radius:16px!important;background:var(--Primary-50, #F2F4F7)!important;color:var(--Gray-700, #344054)!important;text-align:center;font-size:14px;font-style:normal;font-weight:500;line-height:20px;padding:2px 10px!important;mix-blend-mode:multiply!important}.text-title{font-size:16px!important;font-weight:600!important;color:#101828!important;line-height:24px}.title-description{font-size:14px!important;font-weight:400;color:#101828!important;line-height:24px!important}.border-primary1{border-radius:8px!important;border:1px solid var(--Primary-600, #00A3FF)!important;background:var(--Primary-600, #00A3FF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--White, #FFF)!important;font-size:16px!important;font-weight:600;line-height:24px;text-transform:capitalize}.scroll-y{overflow-x:hidden;overflow-y:auto}.totalsize{width:18%}.view-detail{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.left-sidebar{position:sticky;top:0;width:33%;overflow:visible}.main-container{display:flex;align-items:flex-start}.right-content{flex-grow:1;width:67%}.bordercolor{border:1px solid var(--Gray-300, #D0D5DD)!important}.toastcard{border-radius:8px;background:var(--Primary-50, #EAF8FF);padding:8px 16px}.toasttext{overflow:hidden;color:var(--Primary-700, #009BF3);text-overflow:ellipsis;font-size:16px;font-style:normal;font-weight:500;line-height:24px}.btn-outline{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF);box-shadow:0 1px 2px #1018280d}.refreshtext{color:var(--Gray-700, #344054);font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}.collage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;height:450px;overflow-y:auto;grid-auto-rows:auto}.collage-tile{width:100%;height:100%}.collage-tile img{width:100%;height:100%!important;border-radius:6px}::ng-deep .my-own-styles .modal-dialog{max-width:600px!important}.bgDanger{color:var(--Error-700, #B42318);text-align:center;font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px;border-radius:16px;background:var(--Error-50, #FEF3F2)}.bgSuccess{color:var(--Success-700, #027A48);text-align:center;font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px;border-radius:16px;background:var(--Success-50, #ECFDF3)}.openclosesnapIMG{width:100%!important;height:205px!important;border-radius:30px!important}.openclosesnapLiveIMG{width:100%!important;height:400px!important;border-radius:30px!important}.backgroundGray{background:#f2f4f7!important}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;cursor:pointer;transition:all .7s ease;overflow:hidden}.icon-btn .btn-text{max-width:0;opacity:0;white-space:nowrap;overflow:hidden;transition:all .7s ease;color:#344054;font-size:14px}.icon-btn:hover .btn-text{max-width:120px;opacity:1;margin-left:6px}.video-wrapper{width:100%;height:450px;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.video-wrapper video{width:100%;height:100%;object-fit:contain;transition:all 20s ease}.video-wrapper.fullscreen-active{width:100vw!important;height:100vh!important;background:#000!important;overflow:hidden}.video-wrapper.fullscreen-active video{width:100vw!important;height:100vh!important;object-fit:contain!important;transform:none!important;background:#000!important}.video-wrapper:not(.fullscreen-active){width:100%;height:450px}.video-wrapper:not(.fullscreen-active) video{width:100%;height:100%}.badge.scoreBadge{background:#eaecf5;color:#363f72}.heightImage{height:218px!important}.occ-body{font-family:Inter,system-ui,sans-serif}.occ-body .col-4{display:flex}.occ-body .occ-card{background:#fff;border:1px solid #EAECF0;border-radius:12px;box-shadow:0 1px 3px #10182814;overflow:hidden;width:100%;display:flex;flex-direction:column}.occ-body .occ-card-head{margin:12px 12px 0;padding:10px 14px;background:#f2f4f7;border-radius:8px;font-size:15px;font-weight:500;color:#101828}.occ-body .occ-card-img-wrap{padding:12px}.occ-body .occ-card-img{width:100%;height:230px;object-fit:cover;border-radius:8px;display:block;background:#f2f4f7}.occ-body .occ-card-offline{width:100%;height:230px;border-radius:8px;background:#f2f4f7;display:flex;align-items:center;justify-content:center}.occ-body .occ-card-body{padding:0 14px 16px;flex:1 1 auto;display:flex;flex-direction:column;align-items:flex-start}.occ-body .occ-card-time{font-size:14px;font-weight:500;color:#101828;margin-bottom:12px}.occ-body .occ-card-seats{font-size:14px;color:#475467;margin-bottom:12px}.occ-body .occ-card-seats strong{color:#101828}.occ-body .occ-status-badge{margin-top:auto;display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:16px;font-size:13px;font-weight:500}.occ-body .occ-status-badge.occ-badge-breached,.occ-body .occ-status-badge.occ-badge-offline{background:#fef3f2;color:#b42318}.occ-body .occ-status-badge.occ-badge-default{background:#f2f4f7;color:#475467}.occ-body .occ-status-badge .occ-badge-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;font-size:13px;cursor:pointer}.occ-body .occ-status-badge .occ-badge-icon svg{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PaginationComponent, selector: "lib-pagination", inputs: ["collection", "itemsPerPage", "currentPage", "totalItems", "directionLinks", "pageSize", "paginationSizes"], outputs: ["pageChange", "pageSizeChange"] }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i8.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i8$1.DaterangepickerDirective, selector: "input[ngxDaterangepickerMd]", inputs: ["minDate", "maxDate", "autoApply", "alwaysShowCalendars", "showCustomRangeLabel", "linkedCalendars", "dateLimit", "singleDatePicker", "showWeekNumbers", "showISOWeekNumbers", "showDropdowns", "isInvalidDate", "isCustomDate", "isTooltipDate", "showClearButton", "customRangeDirection", "ranges", "opens", "drops", "firstMonthDayClass", "lastMonthDayClass", "emptyWeekRowClass", "emptyWeekColumnClass", "firstDayOfNextMonthClass", "lastDayOfPreviousMonthClass", "keepCalendarOpeningWithRange", "showRangeLabelOnInput", "showCancel", "lockStartDate", "timePicker", "timePicker24Hour", "timePickerIncrement", "timePickerSeconds", "closeOnAutoApply", "endKeyHolder", "startKey", "locale", "endKey"], outputs: ["change", "rangeClicked", "datesUpdated", "startDateChanged", "endDateChanged", "clearClicked"] }, { kind: "directive", type: i1.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "component", type: GalleryQaViewComponent, selector: "lib-gallery-qa-view", inputs: ["data", "galleryForm", "clientData", "environment", "userAccess", "showsingle", "showmulti", "showfilter", "selectedSection", "answerFilter", "select", "checklistName", "selectedStores", "selectedUsers"], outputs: ["taskTabChange", "selectMultiTask", "viewInDetails", "openProofEvent", "addTaskEvent", "taskRedirect"] }, { kind: "component", type: ReactiveSelectComponent$1, selector: "lib-reactive-select", inputs: ["isDisabled", "idField", "nameField", "label", "data"], outputs: ["itemChange"] }, { kind: "component", type: CustomSelectComponent$1, selector: "lib-stores-select", inputs: ["items", "searchField", "multi", "idField", "selectedValues", "disabled", "label"], outputs: ["selected"] }, { kind: "component", type: GroupSelectComponent$1, selector: "lib-group-select", inputs: ["items", "searchField", "multi", "idField", "selectedValues", "disabled", "label"], outputs: ["selected"] }, { kind: "component", type: CustomsingleSelectComponent, selector: "lib-single-select", inputs: ["items", "searchField", "multi", "idField", "selectedValues", "disabled", "label"], outputs: ["selected"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.DatePipe, name: "date" }] });
18162
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: GalleryComponent, selector: "lib-gallery", host: { listeners: { "document:click": "onClick($event)", "document:fullscreenchange": "onFullscreenChange()" } }, viewQueries: [{ propertyName: "zoomPopup", first: true, predicate: ["zoomPopup"], descendants: true }, { propertyName: "proofPopup", first: true, predicate: ["proofPopup"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"notifyCount>0\" class=\"h-xl-100 flex-row flex-stack flex-wrap p-2\">\r\n <!-- toast card starts -->\r\n <div class=\"toastcard col-md-12 mb-4\">\r\n <div class=\"d-flex align-items-center justify-content-between w-100\">\r\n <span class=\"align-items-start\">\r\n <span class=\"toasttext d-block\"><span class=\"me-5\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"20\" viewBox=\"0 0 16 20\" fill=\"none\">\r\n <path\r\n d=\"M9.14234 2.4V1.6875C9.14234 1.03178 8.63166 0.5 7.99955 0.5C7.36744 0.5 6.85675 1.03178 6.85675 1.6875V2.4C4.21761 2.95033 2.28558 5.34649 2.28558 8.21875V8.91641C2.28558 10.6643 1.66918 12.3453 0.553532 13.6516L0.28869 13.9596C-0.0103044 14.3121 -0.0840396 14.8094 0.100307 15.2361C0.284654 15.6629 0.69281 15.9375 1.14279 15.9375H14.8563C15.3063 15.9375 15.7134 15.6629 15.8991 15.2361C16.0848 14.8094 16.0098 14.3121 15.7098 13.9596L15.4456 13.6516C14.3313 12.3453 13.7135 10.6643 13.7135 8.91641V8.21875C13.7135 7.94125 13.6952 7.66819 13.6597 7.40081C13.2676 7.54576 12.8432 7.625 12.4 7.625C10.4118 7.625 8.8 6.03001 8.8 4.0625C8.8 3.46778 8.88193 2.89289 9.14234 2.4C9.16417 2.40461 9.12061 2.39514 9.14234 2.4Z\"\r\n fill=\"#00A3FF\" />\r\n <path\r\n d=\"M6.38178 18.8061C6.81033 19.2514 7.39244 19.5 7.99955 19.5C8.57452 19.5 9.18877 19.2514 9.61732 18.8061C10.0459 18.3607 10.2851 17.7225 10.2851 17.125H5.71396C5.71396 17.7225 5.95323 18.3607 6.38178 18.8061Z\"\r\n fill=\"#00A3FF\" />\r\n <circle cx=\"13\" cy=\"3.5\" r=\"3\" fill=\"#F04438\" />\r\n </svg>\r\n </span>New Detection Found! Refresh Now to view new detection</span>\r\n </span>\r\n <button (click)=\"refreshnow()\" type=\"button\"\r\n class=\"btn-outline btn align-items-end text-nowrap ms-4 cursor-pointer\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_12165_62781)\">\r\n <path\r\n d=\"M19.1672 3.33172V8.33172M19.1672 8.33172H14.1672M19.1672 8.33172L15.3089 4.69838C14.1594 3.54817 12.6672 2.80271 11.0572 2.57434C9.44716 2.34597 7.80653 2.64706 6.38251 3.43225C4.9585 4.21744 3.82826 5.44418 3.1621 6.92761C2.49595 8.41104 2.32997 10.0708 2.68919 11.6568C3.0484 13.2427 3.91335 14.669 5.15368 15.7206C6.39401 16.7722 7.94254 17.3922 9.5659 17.4872C11.1893 17.5822 12.7995 17.147 14.154 16.2471C15.5085 15.3473 16.5339 14.0316 17.0756 12.4984\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_12165_62781\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg><span class=\"refreshtext ms-2\"></span> Refresh Now </button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"gallery-card po\">\r\n <div class=\"header mb-4\">Gallery</div>\r\n\r\n <form [formGroup]=\"galleryForm\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <div class=\"col-md-3 mb-3\">\r\n <div class=\"position-relative\">\r\n <span style=\"top: 20%;\" class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path\r\n d=\"M13.3333 1.66663V4.99996M6.66667 1.66663V4.99996M2.5 8.33329H17.5M4.16667 3.33329H15.8333C16.7538 3.33329 17.5 4.07948 17.5 4.99996V16.6666C17.5 17.5871 16.7538 18.3333 15.8333 18.3333H4.16667C3.24619 18.3333 2.5 17.5871 2.5 16.6666V4.99996C2.5 4.07948 3.24619 3.33329 4.16667 3.33329Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <input class=\"fx-date-range form-control ps-14 z-2\" style=\"min-width: 260px !important;\"\r\n type=\"text\" matInput ngxDaterangepickerMd [drops]=\"'down'\" [opens]=\"'right'\"\r\n placeholder=\"Select date range\"\r\n [alwaysShowCalendars]=\"false\" [keepCalendarOpeningWithRange]=\"true\" [showCancel]=\"false\"\r\n autocomplete=\"off\" [(ngModel)]=\"selectedDateRange\" [ngModelOptions]=\"{standalone: true}\"\r\n (datesUpdated)=\"datechange($event)\" (click)=\"resetValidation()\"\r\n (startDateChanged)=\"onStartDateChange($event)\" [isCustomDate]=\"isCustomDate\"\r\n [autoApply]=\"true\"\r\n [locale]=\"{ format: 'DD-MM-YYYY', firstDay: 1, monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] }\"\r\n name=\"daterange\" [readonly]=\"true\" />\r\n </div>\r\n </div>\r\n <div class=\"col-md-2 mb-4\">\r\n <lib-reactive-select formControlName=\"type\" [idField]=\"'value'\" [nameField]=\"'label'\"\r\n [data]=\"type\" (itemChange)=\"typeChange($event)\"></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-4 mb-4\">\r\n <lib-single-select [items]=\"checklists\" [multi]=\"false\" [searchField]=\"'checkListName'\"\r\n label=\"Select checklist\"\r\n [idField]=\"'_id'\" (selected)=\"checklistNamechange($event,false)\"\r\n [selectedValues]=\"[{checkListName:galleryForm.get('checklistName')?.value}]\"></lib-single-select>\r\n </div>\r\n <div class=\"col-md-3 mb-4\">\r\n <lib-reactive-select formControlName=\"answerType\" [isDisabled]=\"!showflag\" [idField]=\"'value'\"\r\n [nameField]=\"'label'\" [data]=\"answerType\"></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-2 mb-4\">\r\n\r\n <lib-reactive-select formControlName=\"filtertype\" [idField]=\"'value'\" [nameField]=\"'label'\"\r\n [data]=\"filtertype\" (itemChange)=\"filterChange($event)\"></lib-reactive-select>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Clusters'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('ClusterList')?.value?.length)\">\r\n Select cluster\r\n </div>\r\n <lib-group-select [items]=\"ClusterList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'groupName'\" [idField]=\"'groupName'\" (selected)=\"ongroupSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('ClusterList')?.value\">\r\n </lib-group-select>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Teams'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('TeamsList')?.value?.length)\">\r\n Select Teams\r\n </div>\r\n <lib-group-select [items]=\"TeamsList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'teamName'\" [idField]=\"'teamName'\" (selected)=\"onTeamsSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('TeamsList')?.value\">\r\n </lib-group-select>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Clusters'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('storeList')?.value?.length)\">\r\n Select Stores\r\n </div>\r\n <lib-stores-select [items]=\"storeList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'storeName'\" [idField]=\"'storeId'\" (selected)=\"onStoreSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('storeList')?.value\"></lib-stores-select>\r\n </div>\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Teams'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('userList')?.value?.length)\">\r\n Select users\r\n </div>\r\n <lib-stores-select [items]=\"userList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'userName'\" [idField]=\"'userName'\" (selected)=\"onUserSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('userList')?.value\"></lib-stores-select>\r\n </div>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <div class=\"d-flex justify-content-end\">\r\n <div class=\"me-5 w-100\" *ngIf=\"select === 'eyetest'\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"adults\">Adults</option>\r\n <option value=\"kids\">Kids</option>\r\n </select>\r\n </div>\r\n\r\n <div class=\"me-5 w-100\"\r\n *ngIf=\"breachFilterSelectTypes.includes(select)\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Breached\" *ngIf=\"!['activitymonitoring'].includes(select)\">Breached</option>\r\n <option value=\"Not Breached\" *ngIf=\"!['uniformdetection','mobileusagedetection','storehygienemonitoring','unattendeddetection','activitymonitoring'].includes(select)\">Not Breached</option>\r\n <option value=\"Offline\">Offline</option>\r\n </select>\r\n </div>\r\n <div class=\"me-5 w-100\"\r\n *ngIf=\"['staffgrouping','storehygienemonitoring','halfshutter','tvcompliance','customerunattended'].includes(galleryForm.value.sourceCheckList_id)\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\" (change)=\"onfilterChange($event)\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Breached\">Breached</option>\r\n <option value=\"Not Breached\">Not Breached</option>\r\n <option value=\"Offline\">Offline</option> \r\n </select>\r\n </div>\r\n <div class=\"me-5 w-100\" *ngIf=\"select === 'outsidebusinesshoursqueuetracking'\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Detected\">Detected</option>\r\n <option value=\"Not Detected\">Not Detected</option>\r\n <option value=\"Offline\">Offline</option>\r\n </select>\r\n </div>\r\n <!-- <div class=\"me-5 w-100 text-start\" *ngIf=\"select === 'queuealert'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\"\r\n *ngIf=\"!(galleryForm.get('zoneList')?.value?.length)\">\r\n Select Zone\r\n </div>\r\n <lib-stores-select [items]=\"zoneList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'value'\" [idField]=\"'key'\" (selected)=\"onzoneSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('zoneList')?.value\"></lib-stores-select>\r\n </div>\r\n </div> -->\r\n <div class=\"me-5 w-50\" *ngIf=\"showflag\">\r\n <select class=\"form-select\" (change)=\"approveFilterChange($event)\"\r\n [(ngModel)]=\"approveFilter\" [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Approved\">Approved</option>\r\n <option value=\"notapproved\">Not-Approved</option>\r\n </select>\r\n </div>\r\n <span class=\"me-4 mt-3\" *ngIf=\"showflag\">\r\n <input formControlName=\"viewRedo\" change type=\"checkbox\" (click)=\"redoChanged($event)\"\r\n class=\"form-check-input cursor-pointer mt-1 me-2\" id=\"viewRedo\">\r\n <label class=\"checkbox-label\" for=\"viewRedo\">Re-do</label>\r\n </span>\r\n <span class=\"me-3 mt-3\" *ngIf=\"showflag&&galleryForm.value.type==='checklist'\">\r\n <input formControlName=\"viewFlag\" change type=\"checkbox\" (click)=\"flagChanged($event)\"\r\n class=\"form-check-input cursor-pointer mt-1 me-2\" id=\"viewFlag\">\r\n <label class=\"checkbox-label\" for=\"viewFlag\">Flag</label>\r\n </span>\r\n\r\n <a (click)=\"onSubmit()\" type=\"submit\" class=\"btn btn-primary px-4 \"><span>Apply</span></a>\r\n <!-- <a (click)=\"notify([])\" type=\"submit\" class=\"btn btn-primary px-4 \"><span>test</span></a> -->\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n </div>\r\n </form>\r\n</div>\r\n<div class=\"card my-2\">\r\n <div class=\"row main-container my-5 \">\r\n\r\n <div [ngClass]=\"showsidenav ? 'col-md-4 left-sidebar':'d-none'\" class=\"h-650px position-relative\">\r\n <div class=\"h-650px scroll-y\">\r\n <div class=\"card-body p-5\">\r\n <div class=\"checklist-left\">\r\n <div class=\"checklist-title\">{{checklistName}}</div>\r\n <div class=\"checklist-text\">{{checkListDescription}}</div>\r\n </div>\r\n <div *ngIf=\"loading\" class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"noData&&select === 'custom' || noData&&select === 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"w-75 h-300px\" src=\"./assets/tango/Icons/Nodata1.svg\" alt=\"\">\r\n <div class=\"nodata-title mt-0\">No data found</div>\r\n <div class=\"nodata-sub\">There is no result for this checklist</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"noData&&select !== 'custom'&&select !== 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata2.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No Detections found</div>\r\n <div class=\"nodata-sub\">There is no breaches for the selected period</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <section *ngIf=\"!noData && !loading\">\r\n\r\n <div *ngIf=\"select === 'custom'||select === 'task'\">\r\n <div class=\"text-end mt-10\">\r\n <!-- <button class=\"btn btn-outline w-25 me-3 btn-resize\" (click)=\"viewChecklists()\"> Reset </button> -->\r\n <button class=\"btn btn-outline w-25 me-3 btn-resize\"\r\n *ngIf=\"selectedSection.length>0||tempselectedSection.length>0\"\r\n (click)=\"onchecklistreset()\"> Reset </button>\r\n <button *ngIf=\"selectedSection.length>0||tempselectedSection.length>0\"\r\n class=\"btn btn-primary w-25 btn-resize\"\r\n (click)=\"selectsinglequestion()\">Apply</button>\r\n </div>\r\n <div class=\"my-6\" [ngClass]=\"selectedSection.length===0 ? 'view-all':'view-questions'\"\r\n style=\"cursor: pointer;\" (click)=\"onchecklistreset()\">\r\n View All Answers\r\n </div>\r\n <div class=\"mx-2\" *ngFor=\"let section of checklistData; let i=index;\">\r\n <div class=\"d-flex align-items-center justify-content-between mt-4\"\r\n style=\"cursor: pointer;\" (click)=\"accordian(i)\">\r\n <div class=\"fs-4 fw-bold section\" *ngIf=\"galleryForm.value.type==='checklist'\">\r\n {{section.sectionName}} {{getSectionCompliance(section.sectionName)}}</div>\r\n <hr class=\"mx-2\">\r\n <svg class=\"cursor-pointer\" [ngClass]=\"{'rotate' : show !== i}\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"25\" height=\"25\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path d=\"M5 7.5L10 12.5L15 7.5\" stroke=\"#667085\" stroke-width=\"1.67\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n <div *ngIf=\"show===i\" class=\"question-left\">\r\n <div cdkDropList [cdkDropListData]=\"section.questions\">\r\n <div *ngFor=\"let question of section.questions;let j=index;\"\r\n class=\"d-flex my-2 q-btn\" cdkDrag>\r\n <input id=\"label\" [(ngModel)]=\"question.checked\"\r\n (click)=\"selectedQuestion($event,section,question)\"\r\n class=\"form-check-input cursor-pointer mt-2 me-4\" type=\"checkbox\">\r\n <div class=\"editablecontent\" [ngClass]=\"question?.checked ? 'view-all':''\"\r\n style=\"cursor: pointer;\">\r\n {{question.qno}} . {{question.qname}}\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n <div *ngIf=\"combinedChecklist.includes(select)\">\r\n <div class=\"text-end mt-10\">\r\n <button class=\"btn btn-outline w-25 me-3 btn-resize\" (click)=\"onreset()\"> Reset\r\n </button>\r\n <button class=\"btn btn-primary w-25 btn-resize\" (click)=\"onview()\">Apply</button>\r\n </div>\r\n <div class=\"dropdownselect h-900px scroll-y\">\r\n <div class=\"d-flex justify-content-left \"\r\n [ngClass]=\"selectAll ? 'backgroundBorder':'withoutbackground'\">\r\n <input class=\"form-check-input cursor-pointer me-4\" type=\"checkbox\"\r\n [(ngModel)]=\"selectAll\" (click)=\"selectAllStore($event)\"> <span\r\n [ngClass]=\"selectAll ? 'usage-detection':'usage-text'\">Select All</span>\r\n </div>\r\n <!-- dropdownbg -->\r\n <div class=\"my-4\" *ngFor=\"let list of mobileusageDataList;let i=index\">\r\n <div (change)=\"updateCheck($event,list)\" class=\"d-flex align-items-center\"\r\n [ngClass]=\"list.checked ? 'backgroundBorder':'withoutbackground'\">\r\n <input id=\"label{{i}}\" class=\"form-check-input cursor-pointer me-4 flex-shrink-0\"\r\n type=\"checkbox\" [(ngModel)]=\"list.checked\">\r\n <label for=\"label{{i}}\" class=\"text-truncate mb-0\"\r\n [ngClass]=\"list.checked ? 'usage-detection':'usage-text'\">{{list?.storeName}}</label>\r\n <span class=\"badge badge-light-primary detectionright ms-auto flex-shrink-0 text-nowrap\"\r\n *ngIf=\"list.detection\">{{list.detection}} Detections</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n </div>\r\n\r\n\r\n\r\n\r\n\r\n </div>\r\n <div *ngIf=\"showsidenav\" (click)=\"sidenav()\" class=\"backButtonright text-center pt-1 cursor-pointer\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path d=\"M11 17L6 12L11 7M18 17L13 12L18 7\" stroke=\"#101828\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n </div>\r\n <div class=\"position-relative\"\r\n [ngClass]=\"showsidenav ? 'col-md-8 border border-bottom-0 border-top-0 border-left border-5 right-sidebar':'col-md-12'\">\r\n <div class=\"h-1000px scroll-y\">\r\n <!-- (select === 'custom' || select === 'task'||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo') -->\r\n <div class=\"card-header border-0 px-0 my-0\"\r\n *ngIf=\"!viewloading && !viewnoData\">\r\n <h3 *ngIf=\"!showsingle || (gs.userAccess | async)?.userType === 'tango'||!allapprovalStatus\"></h3>\r\n\r\n <div class=\" m-3\"\r\n *ngIf=\"canSelectAllTask(gs.userAccess | async)\">\r\n <div class=\"form-check\">\r\n <input [(ngModel)]=\"selectAllTask\"\r\n (click)=\"selectedAllTask($event,viewChecklistsData?.checklistAnswers[0],viewChecklistsData?.checklistAnswers[0].questionAnswer[0].questions[0],viewChecklistsData?.checklistAnswers[0]?.checklistInfo,viewChecklistsData?.checklistAnswers[0].questionAnswer[0])\"\r\n class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"flexCheckDefault\">\r\n <label class=\"ms-2\" for=\"flexCheckDefault\">\r\n Select All <span *ngIf=\"selectedRecordCount\">({{selectedRecordCount}} Records\r\n Selected)</span>\r\n </label>\r\n </div>\r\n\r\n\r\n\r\n </div>\r\n <div class=\"card-toolbar\">\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowCreateTaskToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\" class=\"icon-btn\"\r\n (click)=\"createMultipleTask('task')\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path\r\n d=\"M11.6654 1.66797H4.9987C4.55667 1.66797 4.13275 1.84356 3.82019 2.15612C3.50763 2.46868 3.33203 2.89261 3.33203 3.33464V16.668C3.33203 17.11 3.50763 17.5339 3.82019 17.8465C4.13275 18.159 4.55667 18.3346 4.9987 18.3346H14.9987C15.4407 18.3346 15.8646 18.159 16.1772 17.8465C16.4898 17.5339 16.6654 17.11 16.6654 16.668V6.66797M11.6654 1.66797L16.6654 6.66797M11.6654 1.66797V6.66797H16.6654M9.9987 15.0013V10.0013M7.4987 12.5013H12.4987\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n \r\n <span class=\"btn-text\">Create Task</span>\r\n </span>\r\n\r\n </div>\r\n\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowRedoExportToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\"\r\n (click)=\"createMultipleTask('redo')\" class=\"icon-btn\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"18\" viewBox=\"0 0 20 18\"\r\n fill=\"none\">\r\n <path\r\n d=\"M19.1654 2.33527V7.33527M19.1654 7.33527H14.1654M19.1654 7.33527L15.2987 3.70193C14.4031 2.80586 13.2951 2.15127 12.078 1.79925C10.861 1.44722 9.57462 1.40923 8.33894 1.68882C7.10325 1.96841 5.95853 2.55646 5.01159 3.39812C4.06464 4.23977 3.34634 5.30759 2.9237 6.50193M0.832031 15.6686V10.6686M0.832031 10.6686H5.83203M0.832031 10.6686L4.6987 14.3019C5.59432 15.198 6.70234 15.8526 7.91937 16.2046C9.1364 16.5567 10.4228 16.5946 11.6585 16.3151C12.8941 16.0355 14.0389 15.4474 14.9858 14.6058C15.9328 13.7641 16.6511 12.6963 17.0737 11.5019\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"btn-text\">Redo</span>\r\n </span>\r\n </div>\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowRedoExportToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\"\r\n (click)=\"exportDet($event)\" class=\"icon-btn\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n<path d=\"M8.125 13.125H16.3562L14.7438 14.7438L15.625 15.625L18.75 12.5L15.625 9.375L14.7438 10.2562L16.3562 11.875H8.125V13.125Z\" fill=\"black\"/>\r\n<path d=\"M13.75 8.75001V6.25001C13.7505 6.16776 13.7347 6.08622 13.7036 6.01007C13.6725 5.93392 13.6267 5.86466 13.5688 5.80626L9.19375 1.43126C9.13535 1.37333 9.06609 1.32751 8.98994 1.2964C8.91379 1.2653 8.83225 1.24953 8.75 1.25001H2.5C2.16848 1.25001 1.85054 1.38171 1.61612 1.61613C1.3817 1.85055 1.25 2.16849 1.25 2.50001V17.5C1.25 17.8315 1.3817 18.1495 1.61612 18.3839C1.85054 18.6183 2.16848 18.75 2.5 18.75H12.5C12.8315 18.75 13.1495 18.6183 13.3839 18.3839C13.6183 18.1495 13.75 17.8315 13.75 17.5V16.25H12.5V17.5H2.5V2.50001H7.5V6.25001C7.5 6.58153 7.6317 6.89947 7.86612 7.13389C8.10054 7.36831 8.41848 7.50001 8.75 7.50001H12.5V8.75001H13.75ZM8.75 6.25001V2.75626L12.2438 6.25001H8.75Z\" fill=\"black\"/>\r\n</svg>\r\n <span class=\"btn-text\">Export</span>\r\n </span>\r\n <div *ngIf=\"exportShow\"\r\n class=\"card py-2 position-absolute productdrop top-10 w-150px end-0 z-1\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li class=\"cursor-pointer py-4 checkbox-label mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li class=\" cursor-pointer checkbox-label py-4 mx-2\"\r\n *ngIf=\"csvExportTypes.includes(select)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div class=\"position-relative cursor-pointer me-10\" *ngIf=\"!galleryForm.value.viewRedo&&selectedUsers.length===0&&selectedStores.length===0\">\r\n <div *ngIf=\"!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\"\r\n class=\" btn btn-primary form-control no-text-transform\" (click)=\"exportDet($event)\">\r\n {{ exportLabel }}\r\n </div>\r\n <div *ngIf=\"exportConfig?.enabled &&exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\"\r\n class=\" btn btn-primary form-control no-text-transform\" (click)=\"exportDet($event)\">\r\n {{ exportLabel }} <!-- Bind label text here -->\r\n </div>\r\n <div *ngIf=\"exportShow\"\r\n class=\"card py-2 position-absolute productdrop top-10 w-150px end-0 z-1\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li class=\"cursor-pointer py-4 checkbox-label mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select) &&!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li class=\" cursor-pointer checkbox-label py-4 mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select) &&!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('PDF') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\"cursor-pointer py-4 checkbox-label mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('CSV') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('PPT') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <li *ngIf=\"galleryForm.value.sourceCheckList_id === 'halfshutter' && exportConfig?.enabled && exportConfig?.format?.includes('ZIP')\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body p-0\">\r\n <div>\r\n <div *ngIf=\"viewloading\" class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"viewnoData&&select !== 'custom'&&select !== 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div\r\n class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata2.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No Detections found</div>\r\n <div class=\"nodata-sub\">There is no breaches for the selected period</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"viewnoData&&select === 'custom' || viewnoData&&select === 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div\r\n class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata1.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No data found</div>\r\n <div class=\"nodata-sub\">There is no result for this checklist</div>\r\n </div>\r\n </div>\r\n </div>\r\n <section *ngIf=\"!viewloading && !viewnoData\">\r\n <lib-gallery-qa-view\r\n *ngIf=\"select==='custom'||select==='task'\"\r\n [data]=\"viewChecklistsData\"\r\n [galleryForm]=\"galleryForm\"\r\n [clientData]=\"clientData\"\r\n [environment]=\"environment\"\r\n [userAccess]=\"gs.userAccess | async\"\r\n [showsingle]=\"showsingle\"\r\n [showmulti]=\"showmulti\"\r\n [showfilter]=\"showfilter\"\r\n [selectedSection]=\"selectedSection\"\r\n [answerFilter]=\"answerFilter\"\r\n [select]=\"select\"\r\n [checklistName]=\"checklistName\"\r\n [selectedStores]=\"selectedStores\"\r\n [selectedUsers]=\"selectedUsers\"\r\n (taskTabChange)=\"taskTab($event)\"\r\n (selectMultiTask)=\"onQaSelectMultiTask($event)\"\r\n (viewInDetails)=\"onQaViewInDetails($event)\"\r\n (openProofEvent)=\"openProof($event)\"\r\n (addTaskEvent)=\"onQaAddTask($event)\"\r\n (taskRedirect)=\"onQaTaskRedirect($event)\">\r\n </lib-gallery-qa-view>\r\n\r\n <div class=\"px-4 my-5\" *ngIf=\"imageChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <!-- <div> <h2>Checklist Name : {{this.checklistName}}</h2> </div> -->\r\n <div *ngIf=\"!['outsidebusinesshoursqueuetracking', 'halfshutter','tvcompliance','cameratampering','staffgrouping','employeeCount','unattendeddetection','customerunattended'].includes(galleryForm.value.sourceCheckList_id)\">\r\n @if(['Store Hygiene Monitoring','Mobile usage detection','Uniform detection','staffgrouping','employeeCount','Unattended Detection','Customer Unattended','Employee Monitoring','Activity Monitoring'].includes(this.checklistName)) {\r\n <div class=\"row\">\r\n <div class=\"col-md-3\" >\r\n <h3 class=\"uni-title\">Checklist Name:</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">{{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n }\r\n <div class=\" my-3 mt-5\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{this.checklistName}} </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{item.storeName}}</p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.down_time && !mediaFirstChecklistNames.includes(this.checklistName)\" >\r\n <h3 class=\"uni-title\">Average Downtime</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.down_time && !mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{item.down_time}} Mins</p>\r\n </div>\r\n </div>\r\n <ul class=\"row w-100 ps-2\">\r\n <!-- <li class=\"qa-heading\"> {{item.storeName}} </li> -->\r\n <div class=\"row\">\r\n <div class=\"row qa-bodrer mb-4\" *ngFor=\"let detection of item?.imageUrl\">\r\n <div class=\"my-2\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'col-md-6' : 'col-md-12'\"\r\n *ngIf=\"!(['Unattended Detection','Store Hygiene Monitoring'].includes(this.checklistName) && ['Offline','File Not Received','Files Not Received','Offline \u2013 No data Received from store'].includes(detection?.detectionStatus))\">\r\n @if(['Mobile usage detection','Uniform detection'].includes(this.checklistName)) {\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.imageurl}}\"\r\n alt=\"\" *ngIf=\"detection?.imageurl\" (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.imageurl, this.checklistName)\">\r\n }@else if(['Store Hygiene Monitoring','Unattended Detection','Employee Monitoring','Activity Monitoring'].includes(this.checklistName)) {\r\n <div *ngIf=\"detection?.detectionStatus_afterTaskSubmission\" class=\"mb-3 uni-title\">\r\n Breached Image\r\n </div>\r\n <div>\r\n @if(['Activity Monitoring','Unattended Detection'].includes(this.checklistName) && detection?.videourl) {\r\n <video controls preload=\"metadata\"\r\n [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\"\r\n [src]=\"environment.TraxAIchecklistCDN + detection.videourl\">\r\n </video>\r\n }@else if(detection.imageurl) {\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.imageurl, this.checklistName)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.imageurl}}\"\r\n alt=\"\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\" *ngIf=\"detection.imageurl\" />\r\n }@else {\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection, this.checklistName)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection}}\"\r\n alt=\"\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\" *ngIf=\"!fileNotReceivedStatuses.includes(detection?.detectionStatus)\" />\r\n }\r\n </div>\r\n } @else{\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection, this.checklistName)\" class=\"w-100 h-500px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection}}\"\r\n alt=\"\" >\r\n }\r\n <!-- <div class=\"text-center mt-3\"> {{this.checklistName}}</div> -->\r\n </div>\r\n <div class=\"my-2 col-md-6\" *ngIf=\"detection?.detectionStatus_afterTaskSubmission\">\r\n <div class=\"d-flex justify-content-between mb-3\" >\r\n <div class=\"uni-title\">\r\n Detection after Task Submission\r\n </div>\r\n <div>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus_afterTaskSubmission === 'Clean'\">Clean</span>\r\n <span class=\"ms-3 mt-1 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus_afterTaskSubmission !== 'Clean'\">{{detection.detectionStatus_afterTaskSubmission}}</span>\r\n </div>\r\n </div>\r\n <div >\r\n <img class=\"w-100 heightImage rounded\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.new_image_url}}\" alt=\"\" *ngIf=\"detection.new_image_url\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"389\" height=\"218\" viewBox=\"0 0 389 218\" fill=\"none\" *ngIf=\"!detection.new_image_url\">\r\n <rect width=\"389\" height=\"218\" rx=\"8\" fill=\"black\"/>\r\n </svg>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <div class=\"col-md-3\" *ngIf=\"item.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.storeName\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.temp_id\">\r\n <h3 class=\"uni-title\">Cust Id</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.temp_id\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.temp_id}}</span></p>\r\n </div>\r\n\r\n @if(this.checklistName === 'Unattended Detection' && (detection?.detectionStatus === 'Offline' )) {\r\n <div class=\"col-md-3\" *ngIf=\"detection?.store_timestamp\">\r\n <h3 class=\"uni-title\">Detection Date</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.store_timestamp\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.store_timestamp?.split(' - ')[1] || detection.store_timestamp}}</span></p>\r\n </div>\r\n }@else {\r\n <div class=\"col-md-3\" *ngIf=\"detection.detectionTime\">\r\n <h3 class=\"uni-title\">Detection Time</h3>\r\n </div>\r\n <div [class]=\"detection?.detectionType ? 'col-md-3' : 'col-md-9'\" *ngIf=\"detection.detectionTime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}</span></p>\r\n </div>\r\n }\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionType && !(['Unattended Detection',].includes(this.checklistName) && (detection?.detectionStatus === 'Offline' )) && this.checklistName != 'Activity Monitoring'\">\r\n <h3 class=\"uni-title\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionType && !(['Unattended Detection'].includes(this.checklistName) && (detection?.detectionStatus === 'Offline' )) && this.checklistName != 'Activity Monitoring'\">\r\n <p class=\"uni-subtitle text-nowrap\"> : <span class=\"ms-3 badge badge-light-warning\">{{detection.detectionType}}</span></p>\r\n </div>\r\n\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionStatus && (this.checklistName != 'Activity Monitoring' || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n \r\n <div [class]=\"(detection?.downtime != null && detection?.downtime != undefined) ? ['Offline'].includes(detection?.detectionStatus) ? 'col-md-5' : 'col-md-3' : 'col-md-9'\"\r\n *ngIf=\"detection?.detectionStatus && (this.checklistName != 'Activity Monitoring' || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!detection?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Clutter'\">Clutter</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Clean'\">Clean</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline' \">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div [class]=\"['Offline'].includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection.ProductType\">\r\n <h3 class=\"uni-title\">Activity Type</h3>\r\n </div>\r\n <div [class]=\"['Offline'].includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection.ProductType\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.ProductType}}</span></p>\r\n </div>\r\n <div class='col-md-3' *ngIf=\"this.checklistName == 'Activity Monitoring'\">\r\n <h3 class=\"uni-title\">Detection</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"this.checklistName == 'Activity Monitoring'\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.timestamp | date:'dd MMM, YYYY'}}</span></p>\r\n </div>\r\n <div [class]=\"fileNotReceivedStatuses.includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined && (!['Unattended Detection','Activity Monitoring'].includes(this.checklistName) || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div [class]=\"fileNotReceivedStatuses.includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined && (!['Unattended Detection','Activity Monitoring'].includes(this.checklistName) || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downtime}} Mins </span></p>\r\n </div>\r\n \r\n <div class=\"col-md-6\" *ngIf=\"detection.detectionTime_afterTaskSubmission\">\r\n <h3 class=\"uni-title\">Detection Time (After Task Submission)</h3>\r\n </div>\r\n <div class=\"col-md-6\" *ngIf=\"detection.detectionTime_afterTaskSubmission\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime_afterTaskSubmission}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.detectionOn\">\r\n <h3 class=\"uni-title\">Detection On</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection.detectionOn\">\r\n <p class=\"uni-subtitle\">:<span class=\"ms-3\">{{detection.detectionOn}}</span></p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='inventorycount'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}} </span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\" *ngIf=\"detection?.car_count\">No of\r\n cars :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.car_count}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='numberplateinfo'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_license_id\">Number Plate :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.car_license_id}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Entry Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='carsattended'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.interacted_person_count\">Number of\r\n People Interacted :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.interacted_person_count}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-6 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_reg_number\">Number Plate :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection?.car_reg_number}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_reg_number\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection?.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-6 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.interacted_duration_in_secs\">Time\r\n spent :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.interacted_duration_in_secs}}\r\n Mins</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='vehicle_check_in'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Slot :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.slot_id}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='outsidebusinesshoursqueuetracking'\">\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatus\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!detection?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <ng-template #noDetectionStatus>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\"> :\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"!detection?.Flag\">Not\r\n Breached</span>\r\n </p>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.Date|date:'dd-MM-yyyy'\r\n }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection Count</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.detections.length}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection at</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mt-2\"\r\n *ngIf=\"detection.path && detection.path !== null && detection.path !== undefined && detection.path !== ''\">\r\n <img class=\"w-100 h-500px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n alt=\"\">\r\n <div *ngIf=\"galleryForm.value.sourceCheckList_id !== 'employeemonitoring'\" class=\"text-center mt-3\"> {{this.checklistName}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n <div\r\n *ngIf=\"galleryForm.value.sourceCheckList_id === 'outsidebusinesshoursqueuetracking'\">\r\n <div class=\" my-3 mt-5\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <ul class=\"row ps-2\">\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='outsidebusinesshoursqueuetracking'\">\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\"\r\n *ngIf=\"detection?.detectionStatus\"> :\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Detected'\">Detected</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Detected'\">Not\r\n Detected</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title text-end\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.Date}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection Count</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.detections.length}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection at</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">:\r\n <span\r\n *ngFor=\"let detectionAt of detection.detections; let i=index\">\r\n <span class=\"ms-3 badge backgroundGray\"\r\n *ngIf=\"i < 5\">\r\n {{detectionAt}}\r\n </span>\r\n </span>\r\n <span *ngIf=\"detection.detections.length > 5\"\r\n class=\"ms-3 badge backgroundGray\">\r\n +{{ detection.detections.length - 5 }}\r\n </span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"mediaGridChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <div class=\" my-3 mt-5\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-1\">:</div>\r\n <div class=\"col-md-8\">\r\n <p class=\"uni-subtitle\"> {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <ul class=\"row ps-2\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"mediaGridChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <div class=\"snapcard\">\r\n <!-- Giva (107) Employee Count Detection: media-first design -->\r\n <div *ngIf=\"isGivaEmpCount\" class=\"row w-100\">\r\n <div class=\"col-md-12 my-2 mb-4\" *ngIf=\"detection?.path\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\" alt=\"\">\r\n </div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.storeName}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{['Offline','Files Not Received'].includes(detection?.detectionStatus) ? 'Offline \u2013 No data Received from store' : detection?.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.downtime}} mins</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.employee_count != null && !['Offline','Files Not Received'].includes(detection?.detectionStatus)\"><h3 class=\"uni-title\">Staff Present</h3></div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.employee_count != null && !['Offline','Files Not Received'].includes(detection?.detectionStatus)\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.employee_count}}</span></p></div>\r\n </div>\r\n <div *ngIf=\"!isGivaEmpCount\" class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-12 my-2\" *ngIf=\"detection?.path && galleryForm.value.sourceCheckList_id == 'employeeCount'\">\r\n <div class=\"\" *ngIf=\"detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n <div class=\"\" *ngIf=\"!detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Store Name</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-7\">{{ detection.storeName }}</span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection.detectionTime\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Detection Time</span> <span class=\"col-1\">:</span>\r\n <span class=\"col-md-7\">\r\n\r\n <span class=\"badge badge-light-primary\">{{detection.detectionTime}}</span>\r\n </span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\">\r\n \r\n <h3 class=\"uni-title row\" >\r\n <ng-container *ngIf=\"(detection?.detectionStatus&&galleryForm.value.sourceCheckList_id != 'employeeCount') ||(galleryForm.value.sourceCheckList_id === 'employeeCount' && detection.detectionStatus === 'File Not Received')\">\r\n\r\n <span class=\"label col-md-4\">Detection Status</span><span class=\"col-1\">:</span>\r\n <span [class]=\"galleryForm.value.sourceCheckList_id === 'employeeCount' && detection.detectionStatus === 'File Not Received' ? 'col-md-7' : 'col-md-2'\">\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not Breached</span>\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'angle changed'\">Angle Changed</span>\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"['Offline','Files Not Received','File Not Received'].includes(detection.detectionStatus)\">Offline - Files Not Received</span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"galleryForm.value.sourceCheckList_id === 'employeeCount'\">\r\n\r\n <span class=\"label col-md-4\">Employee Count</span><span class=\"col-1\">:</span>\r\n <span class=\"col-md-2\">\r\n <span class=\"badge badge-light-primary\">{{detection?.employee_count ?? 0}}</span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"select!=='staffgrouping'&&detection?.downtime != null && detection?.downtime != undefined\">\r\n\r\n <span class=\"label col-md-2\">Downtime</span> <span class=\"col-1\">:</span>\r\n <span\r\n class=\"col-md-2\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span>\r\n </ng-container>\r\n \r\n </h3>\r\n </div>\r\n \r\n <div class=\"col-md-12\" *ngIf=\"detection?.configuredStoreTime\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Configured Store Time</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-3\"><span class=\"badge badge-num-muted\">{{detection.configuredStoreTime}}</span></span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection.streamId\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Camera Name & Stream ID</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"cursor-pointer col-md-5\" (click)=\"cameraView(detection.StoreID)\"><span class=\"badge badge-num-muted\">{{detection.cameraName}}{{detection.streamId}}<span class=\"ms-2\" ><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n<path d=\"M12 8.66667V12.6667C12 13.0203 11.8595 13.3594 11.6095 13.6095C11.3594 13.8595 11.0203 14 10.6667 14H3.33333C2.97971 14 2.64057 13.8595 2.39052 13.6095C2.14048 13.3594 2 13.0203 2 12.6667V5.33333C2 4.97971 2.14048 4.64057 2.39052 4.39052C2.64057 4.14048 2.97971 4 3.33333 4H7.33333M10 2H14M14 2V6M14 2L6.66667 9.33333\" stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg></span></span></span></h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"galleryForm.value.sourceCheckList_id === 'halfshutter' && headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Scheduled Employee</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-7\">\r\n @if(detection.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted\" *ngFor=\"let emp of detection.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted\">NA</span>\r\n }\r\n </span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12 my-2\" *ngIf=\"detection?.path && galleryForm.value.sourceCheckList_id != 'employeeCount'\">\r\n <div class=\"\" *ngIf=\"detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n <div class=\"\" *ngIf=\"!detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"px-4 my-5\" *ngIf=\"videoChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n\r\n <div class=\"my-3 mt-5\" *ngFor=\"let item of customerunattendedData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{this.checklistName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"!isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum && select!=='customerunattended'\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum && select!=='customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n </div>\r\n <ul class=\"row w-100 ps-2\" [ngClass]=\"(isGivaScrum || isGivaCustomerUnattended ) ? '' : 'margin-top-side'\">\r\n <li class=\"qa-heading\"> </li>\r\n <div class=\"row\">\r\n <div class=\"col-md-12\" [ngClass]=\"(select === 'customerunattended' || isStoreMopping) ? 'card my-3' : ''\" *ngFor=\"let detection of item.imagesData\">\r\n <!-- Store Mopping: media first, then details below (matches Mobile Usage design) -->\r\n <div class=\"mt-5 mb-4\" *ngIf=\"isStoreMopping || select === 'customerunattended'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection?.video_path?.trim()\">\r\n </video>\r\n </div>\r\n <!-- Store Mopping: dedicated details block below the media (matches target design) -->\r\n <div class=\"row px-4 mt-5 margin-left-side\" *ngIf=\"isStoreMopping\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Configured Time</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.configTime}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.date\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.date\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection?.date | date:\"dd MMM YYYY\"}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"detection.detectionStatus == 'Offline' ? 'col-md-4' : 'col-md-3'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus == 'Offline' ? 'Offline - No data received from store' : detection.detectionStatus}}</span></p>\r\n </div>\r\n <div [class]=\"detection.detectionStatus == 'Offline' ? 'col-md-2' : 'col-md-3'\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p>\r\n </div>\r\n </div>\r\n <!-- Activity Monitoring: media-first layout (matches target design) -->\r\n <!-- <ng-container *ngIf=\"isActivityMonitoring\">\r\n <div class=\"snapcard mb-4\">\r\n \r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\"></video>\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Cust ID</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\" *ngIf=\"detection?.customer_id\">{{detection.customer_id}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Activity Type</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.activityType}}</span></p></div>\r\n </div>\r\n </ng-container>\r\n \r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Detection</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container> -->\r\n <!-- Giva (107) Customer unattended: media-first design -->\r\n <ng-container *ngIf=\"isGivaCustomerUnattended\">\r\n <div class=\"snapcard mb-4\">\r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\" *ngIf=\"detection?.video_path\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\"></video>\r\n </div>\r\n <div class=\"w-100 mb-4\" *ngIf=\"!detection?.video_path && detection?.path\">\r\n <img class=\"w-100 h-450px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\" alt=\"\">\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Cust ID</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\" *ngIf=\"detection?.customer_id\">{{detection.customer_id}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Date</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Entry Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-num-muted\">{{detection.customer_entry_time || detection.entry_time}}</span></p></div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Date</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <!-- Giva (107) Store Huddle Adherence (scrum): video-first design -->\r\n <ng-container *ngIf=\"isGivaScrum\">\r\n <div class=\"snapcard mb-4\">\r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\"></video>\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Configured Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{formatTimeRange12h(detection.configTime)}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div [class]=\"detection?.duration ? 'col-md-3' : 'col-md-9'\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\"><h3 class=\"uni-title\">Duration</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.duration}} Mins</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div [class]=\"(detection?.downTime != null && detection?.downTime != undefined) ? 'col-md-3' : 'col-md-9'\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime != null && detection?.downTime != undefined\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime != null && detection?.downTime != undefined\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Configured Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{formatTimeRange12h(detection.configTime)}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{formatDetectionDate(detection.date)}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <div class=\"row px-4 mt-5 margin-left-side\"\r\n *ngIf=\"select!=='suspiciousactivity' && !isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum\">\r\n <div class=\"col-md-3\" *ngIf=\"select === 'customerunattended'\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"select === 'customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatusCard\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <ng-template #noDetectionStatusCard>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.Answer\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatus\">\r\n <p class=\"uni-subtitle\">:\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Answer==='rejected'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"detection?.Answer==='approved'\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <ng-template #noDetectionStatus>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.Answer\">\r\n <p class=\"uni-subtitle\">:\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.Answer==='rejected'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.Answer==='approved'\">Not\r\n Breached</span>\r\n </p>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.date|date:'dd-MM-yyyy' }}\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.zoneName && select!=='customerunattended'\">\r\n <h3 class=\"uni-title\">Zone Name</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.zoneName && select!=='customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.zoneName }}\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.configTime\">\r\n <h3 class=\"uni-title\">Configured Time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.configTime\">\r\n <p class=\"uni-subtitle \">: <span\r\n class=\"ms-3\">{{detection.configTime }}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\">\r\n <h3 class=\"uni-title\">Duration</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.duration }} Mins </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downTime }} Mins </span>\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_id\">\r\n <h3 class=\"uni-title\">Cust ID</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_id\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-primary\">{{detection.customer_id }}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_entry_time\">\r\n <h3 class=\"uni-title\">Entry time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_entry_time\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-default\">{{detection.customer_entry_time }}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_exit_time && headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title\">Exit time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_exit_time && headerFilters?.client =='11'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-default\">{{detection.customer_exit_time }}</span>\r\n </p>\r\n </div>\r\n </div>\r\n <div class=\"card-header border-0 min-h-45px px-0 my-0\" *ngIf=\"!isGivaCustomerUnattended && !isGivaScrum\">\r\n <h3 class=\"card-title\">\r\n <!-- <span class=\"me-3 store-title\">{{item.storeName}}</span> -->\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_id && select!=='customerunattended'\">Cust ID : <span\r\n class=\"ms-3\">{{detection.customer_id}}</span></span>\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.queue_id\">Queue ID : <span\r\n class=\"ms-3\">{{detection.queue_id}}</span></span>\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.optum_id\">Optom ID : <span\r\n class=\"ms-3\">{{detection.optum_id}}</span></span>\r\n <!-- <span class=\"ms-2 badge badge-light-default\" *ngIf=\"detection?.date\">Date : {{detection.date|date:'dd-MM-yyyy' }}</span> -->\r\n <!-- <span class=\"ms-3 badge badge-light-default\" *ngIf=\"detection?.configTime\">Inspection time : {{detection.configTime}}</span> -->\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.temp_id\">TempId : <span\r\n class=\"ms-3\">{{detection.temp_id}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.time_spend\">Timespend : <span\r\n class=\"ms-3\">{{detection.time_spend}}Mins</span></span>\r\n </h3>\r\n\r\n <!-- Switch toggle -->\r\n <div class=\"card-toolbar\">\r\n <div class=\"col-md-12 text-end\">\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.entry_time\">Entry time : <span\r\n class=\"ms-3\">{{detection.entry_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.exit_time\">Exit time : <span\r\n class=\"ms-3\">{{detection.exit_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.adherence_rate\">Adherence Rate : <span\r\n class=\"ms-3\">{{detection.adherence_rate}}</span></span>\r\n <span class=\"ms-3 badge badge-light-primary text-capitalize\"\r\n *ngIf=\"detection?.category\"> <span\r\n class=\"ms-3\">{{detection.category}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_entry_time && select!=='customerunattended'\">Entry time :\r\n <span\r\n class=\"ms-3\">{{detection.customer_entry_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_exit_time && select!=='customerunattended'\">Exit time : <span\r\n class=\"ms-3\">{{detection.customer_exit_time}}</span></span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"my-0\" *ngIf=\"select !=='eyetest' && !isStoreMopping && !isGivaScrum && !isGivaCustomerUnattended && select!=='customerunattended'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\"\r\n alt=\"\" *ngIf=\"detection.video_path\">\r\n </video>\r\n </div>\r\n <div class=\"my-0\" *ngIf=\"select ==='eyetest'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.EyeTestCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\">\r\n </video>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"select ==='storeopenandclose'\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name : </h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\"> {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 margin-top-side\" *ngFor=\"let store of storeOpencloseView\">\r\n <div class=\"mx-8 my-8\" *ngFor=\"let item of store.imagesData\">\r\n @if(item?.process_type == 'live') {\r\n <div class=\"snapcard\">\r\n <div class=\"row m-0 w-100\">\r\n <div class=\"col-12\">\r\n <div class=\"img mt-4 px-3 position-relative\" *ngIf=\"!item.openTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.openTime && item.type == 'open'\">\r\n <img class=\"mx-1 openclosesnapLiveIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/open.jpeg\"\r\n alt=\"open close snap\" *ngIf=\"item.s3_path != ''\"\r\n (click)=\"openSnapPopup(item, 'open')\">\r\n <!-- <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Opening Snap</div>\r\n <div class=\"snaptime\">{{item.openTime}} -\r\n {{item.date}} </div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.onopenTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.lateopenTimeFlag\">Late Open</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n <div class=\"col-12\">\r\n <div class=\"img mt-4 px-3 position-relative\"\r\n *ngIf=\"!item.closeTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.closeTime && item.type == 'close'&& item.s3_path != ''\">\r\n <img class=\"mx-1 openclosesnapLiveIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/close.jpeg\"\r\n alt=\"Checklist Video Player\" *ngIf=\"item.s3_path != ''\"\r\n (click)=\"openSnapPopup(item, 'close')\">\r\n <!-- <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Closing Snap</div>\r\n <div class=\"snaptime\">{{item.closeTime}} -\r\n {{item.date}}</div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.oncloseTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">Early Close</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"item?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_open\">\r\n <h3 class=\"uni-title\">Buffer for Open Time </h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_open\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.buffer_open }}\r\n mins</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_close\">\r\n <h3 class=\"uni-title\">Buffer for Close Time </h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_close\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.buffer_close }}\r\n mins</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span\r\n class=\"ms-1 badge badge-light-warning snapbadge\">{{item.type =='open' ? 'Store Open' : 'Store Close'}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"(item.reason == 'File Not Received' || item?.detectionStatus === 'Offline') ? 'col-md-9' : item?.detectionStatus === 'Not Breached' ? 'col-md-8':'col-md-4'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Breached' && item.reason != 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"(item?.detectionStatus === 'Breached' && item.reason == 'File Not Received') || item.detectionStatus == 'Offline'\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.detectionStatus && item?.detectionStatus !== 'Not Breached' && item.reason !== 'File Not Received'\">\r\n <h3 class=\"uni-title\">Breached Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.detectionStatus && item?.detectionStatus !== 'Not Breached' && item.reason !== 'File Not Received'\">\r\n <p class=\"uni-subtitle text-nowrap\" *ngIf=\"item.type == 'open'\">:\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.detectionStatus != 'Breached' && !item.Flag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.detectionStatus == 'Breached' && item.Flag\">Late Open</span>\r\n <!-- <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span> -->\r\n </p>\r\n <p class=\"uni-subtitle text-nowrap\" *ngIf=\"item.type == 'close'\">:\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.detectionStatus != 'Breached' && !item.Flag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.detectionStatus == 'Breached' && item.Flag\">Early Close</span>\r\n <!-- <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span> -->\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.detection_time\">\r\n <h3 class=\"uni-title\">Detection Time</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item?.detection_time\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{item.detection_time}} - {{item.date}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.downtime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{item.downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-3\">Scheduled Employee</span>\r\n <span class=\"value col-md-7\">\r\n <p class=\"uni-subtitle text-nowrap\">: \r\n @if(item.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted ms-3\" *ngFor=\"let emp of item.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted ms-3\">NA</span>\r\n }\r\n </p>\r\n </span>\r\n </h3>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n }\r\n @else {\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"store?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"store?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{store.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title ms-15\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-1 badge badge-light-warning\">{{item.type =='open' ? 'Store Open' : 'Store Close'}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"item.reason === 'File Not Received' ? 'col-md-5' : item.detectionStatus === 'Not Breached' ? 'col-md-4': 'col-md-3'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Breached' && item.reason !== 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Offline' || (item?.detectionStatus === 'Breached' && item.reason == 'File Not Received')\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason !== 'File Not Received'\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason !== 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date|date:'dd-MM-yyyy' }} </span></p>\r\n </div>\r\n <div class=\"col-md-12\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-3\">Scheduled Employee</span>\r\n <span class=\"value col-md-7\">\r\n <p class=\"uni-subtitle text-nowrap\">: \r\n @if(item.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted ms-3\" *ngFor=\"let emp of item.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted ms-3\">NA</span>\r\n }\r\n </p>\r\n </span>\r\n </h3>\r\n </div>\r\n <!-- <div class=\"col-md-4\" *ngIf=\"item?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.downtime\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div> -->\r\n </div>\r\n <div class=\"row m-0 w-100\">\r\n <!-- @for (item of store.imagesData; track item) { -->\r\n <div class=\"col-6\">\r\n <div class=\"img mt-4 px-3 position-relative\" *ngIf=\"!item.openTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.openTime && item.reason !== 'File Not Received'\">\r\n <img class=\"mx-1 openclosesnapIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/open.jpeg\"\r\n alt=\"open close snap\"\r\n (click)=\"openSnapPopup(item, 'open')\">\r\n <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Opening Snap</div>\r\n <div class=\"snaptime\">{{item.openTime}} -\r\n {{item.date}} <span class=\"ms-5 badge badge-light-danger\"\r\n *ngIf=\"item?.lateopenTimeFlag\">{{item.lateOpen}} mins Delay</span></div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.onopenTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.lateopenTimeFlag\">Late Open</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"img mt-4 px-3 position-relative\"\r\n *ngIf=\"!item.closeTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.closeTime && item.reason !== 'File Not Received'\">\r\n <img class=\"mx-1 openclosesnapIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/close.jpeg\"\r\n alt=\"Checklist Video Player\"\r\n (click)=\"openSnapPopup(item, 'close')\">\r\n <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Closing Snap</div>\r\n <div class=\"snaptime\">{{item.closeTime}} -\r\n {{item.date}} <span class=\"ms-2 badge badge-light-danger\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">{{item.earlyClose}} mins Early</span></div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.oncloseTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">Early Close</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- } -->\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n \r\n </div>\r\n </div>\r\n \r\n <div *ngIf=\"boximageChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"col-md-12\" *ngFor=\"let store of queueAlertView\">\r\n @if(select==='queuealert' && store.process_type == 'live') {\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{checklistName}}</p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <h3 class=\"uni-title\">Description:</h3>\r\n </div>\r\n <div class=\"col-md-9\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <p class=\"uni-subtitle\">{{checkListDescription}}</p>\r\n </div>\r\n </div>\r\n <div class=\"row m-0 w-100 \">\r\n <div class=\"col-12 mt-2\" *ngFor=\"let item of store.imagesData\">\r\n <div class=\"card bordercolor bg-secondary mt-8\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"item?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.date_timestamp\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.date_timestamp\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{item.date_timestamp }}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"(item.reason == 'File Not Received' || item?.detectionStatus === 'Offline') ? 'col-md-9' : item?.detectionStatus === 'Not Breached' ? 'col-md-8':'col-md-4'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.status === 'Breached' && item.reason != 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.status === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"(item?.status === 'Breached' && item.reason == 'File Not Received') || item.status == 'Offline'\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.Downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.Downtime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{item.Downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n <!-- <div class=\"text-start ms-5 mt-2 mb-5\">\r\n <div *ngIf=\"item.zone\">\r\n <span\r\n class=\"btn btn-secondary rounded-lg p-2\">{{item.zone}}</span>\r\n </div>\r\n\r\n <div class=\"mt-3 fw-semibold\">{{ item.date_timestamp }}</div>\r\n <div *ngIf=\"select==='boxalert'\" class=\"mt-3 fw-semibold\">Empty shelves : {{ item.emptyBoxCount }}</div>\r\n </div> -->\r\n <img class=\"openclosesnapLiveIMG\" (click)=\"openModel(item)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{item.path}}\" alt=\"\">\r\n\r\n </div>\r\n </div>\r\n </div>\r\n }@else {\r\n <div class=\"row px-4 mt-5\" *ngIf=\"showmulti\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{store?.storeName}} |\r\n {{store?.city}},{{store?.state}},{{store?.country}} </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n \r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{checklistName}}</p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <h3 class=\"uni-title\">Description:</h3>\r\n </div>\r\n <div class=\"col-md-9\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <p class=\"uni-subtitle\">{{checkListDescription}}</p>\r\n </div>\r\n \r\n </div>\r\n <div class=\"row m-0 w-100 \">\r\n <div class=\"col-4 mt-2\" *ngFor=\"let item of store.imagesData\">\r\n <div class=\"card bordercolor bg-secondary mt-8\">\r\n <div class=\"text-start ms-5 mt-2 mb-5\">\r\n <!-- <div *ngIf=\"item.zone\">\r\n <span\r\n class=\"btn btn-secondary rounded-lg p-2\">{{item.zone}}</span>\r\n </div> -->\r\n \r\n <div class=\"mt-3 fw-semibold\">{{ item.date_timestamp }}</div>\r\n <div *ngIf=\"select==='boxalert'\" class=\"mt-3 fw-semibold\">Empty shelves : {{ item.emptyBoxCount }}</div>\r\n </div>\r\n <img class=\"w-100 h-250px rounded-bottom\" (click)=\"openModel(item)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{item.path}}\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n\r\n <!-- ===== Occupancy Detection body (static cards; reuses existing left/right panels) ===== -->\r\n <div *ngIf=\"select === 'occupancyDetection'\" class=\"occ-body\">\r\n <div class=\"text-center\" *ngIf=\"clientData?.logo && clientData?.logo !== ''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{ checklistName }}</p>\r\n </div>\r\n </div>\r\n <div class=\"row m-0 w-100\">\r\n <div class=\"col-4 mt-2\" *ngFor=\"let card of occupancyData.cards\">\r\n <div class=\"occ-card mt-8\">\r\n <div class=\"occ-card-head\">{{ card.storeCode }}</div>\r\n <div class=\"occ-card-img-wrap\">\r\n <!-- Offline: gray placeholder with camera-slash icon -->\r\n <div class=\"occ-card-offline\" *ngIf=\"card.status === 'Offline'\">\r\n <svg width=\"64\" height=\"64\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <circle cx=\"12\" cy=\"12\" r=\"10.25\" stroke=\"#B42318\" stroke-width=\"1.5\" />\r\n <path d=\"M4.5 4.5L19.5 19.5\" stroke=\"#B42318\" stroke-width=\"1.5\"\r\n stroke-linecap=\"round\" />\r\n <path\r\n d=\"M9.5 8.25H10.2L11 7H13L13.8 8.25H14.5C15.33 8.25 16 8.92 16 9.75V13.5M16 16C16 16 15.33 16 14.5 16H8.5C7.67 16 7 15.33 7 14.5V9.75C7 9.2 7.3 8.72 7.74 8.46\"\r\n stroke=\"#B42318\" stroke-width=\"1.5\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <circle cx=\"11.5\" cy=\"12\" r=\"2\" stroke=\"#B42318\" stroke-width=\"1.5\" />\r\n </svg>\r\n </div>\r\n <img class=\"occ-card-img\" *ngIf=\"card.status !== 'Offline'\"\r\n src=\"{{ card.image }}\" alt=\"{{ card.storeCode }}\">\r\n </div>\r\n <div class=\"occ-card-body\">\r\n <div class=\"occ-card-time\">{{ card.capturedAt }}</div>\r\n <div class=\"occ-card-seats\" *ngIf=\"card.status !== 'Offline'\">Empty Seats : <strong>{{ card.emptySeats }}</strong></div>\r\n <span class=\"occ-status-badge\" [ngClass]=\"occupancyStatusClass(card.status)\">\r\n {{ card.status }}\r\n <span class=\"occ-badge-icon\"\r\n *ngIf=\"card.status === 'Offline'\"\r\n [ngbTooltip]=\"offlineTip\"\r\n placement=\"top\" container=\"body\" triggers=\"hover focus\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M6 8V6M6 4H6.005M11 6C11 8.76142 8.76142 11 6 11C3.23858 11 1 8.76142 1 6C1 3.23858 3.23858 1 6 1C8.76142 1 11 3.23858 11 6Z\"\r\n stroke=\"#B42318\" stroke-width=\"1.5\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <ng-template #offlineTip>Offline \u2013 No data Received from store</ng-template>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <lib-pagination *ngIf=\"!viewloading && !viewnoData && select !== 'occupancyDetection'\" [itemsPerPage]=\"limit\"\r\n [currentPage]=\"offset\" [totalItems]=\"totalCount\" [paginationSizes]='paginationSizes'\r\n [pageSize]=\"limit\" (pageChange)=\"onPageChangeview($event)\"\r\n (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n\r\n <lib-pagination *ngIf=\"select === 'occupancyDetection'\" [itemsPerPage]=\"1\"\r\n [currentPage]=\"occupancyCurrentPage\" [totalItems]=\"occupancyData.totalItems\"\r\n [paginationSizes]=\"[1]\" [pageSize]=\"1\"\r\n (pageChange)=\"goToOccupancyPage($event)\"></lib-pagination>\r\n </section>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!showsidenav\" (click)=\"sidenav()\" class=\"backButtonleft text-center pt-1 cursor-pointer\">\r\n <svg class=\"mt-2 ms-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path\r\n d=\"M9.72714 12.6365L13.3635 9.00013L9.72714 5.36377M4.63623 12.6365L8.27259 9.00013L4.63623 5.36377\"\r\n stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"row card mx-0 p-3\" *ngIf=\"galleryForm.get('type')?.value != 'aiChecklist'\">\r\n <div class=\"col-md-12 text-end\">\r\n <button\r\n class=\"btn btn-sm border-primary1\"\r\n [disabled]=\"!approvalStatus\"\r\n (click)=\"onApproveChecklistClick()\">\r\n Approve\r\n </button>\r\n </div>\r\n</div>\r\n<ng-template #zoomPopup let-model>\r\n <div class=\"p-8\">\r\n <div class=\"modal-header pt-0 ps-1 pe-0\">\r\n <div>\r\n <div class=\"text-start mt-2\">\r\n <div *ngIf=\"viewImage.zone\">\r\n <span class=\"btn btn-secondary rounded-lg p-2\">{{viewImage.zone}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.emptyBoxCount\">\r\n <span>Empty shelves : {{viewImage.emptyBoxCount}}</span>\r\n </div>\r\n\r\n <div *ngIf=\"viewImage.entry_time\">\r\n <span>Entry Time : {{viewImage.entry_time}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.exit_time\">\r\n <span>Exit Time : {{viewImage.exit_time}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.temp_id\">\r\n <span>Temp Id : {{viewImage.temp_id}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.time_spend\">\r\n <span>Time Spend : {{viewImage.time_spend}} Mins</span>\r\n </div>\r\n\r\n <div class=\"mt-2\" *ngIf=\"viewImage.threshold&&viewImage.Dwelltime\">\r\n <p>If the queue exceeds {{viewImage.threshold}} people and wait time surpasses\r\n {{viewImage.Dwelltime}} minutes, an alert will be triggered</p>\r\n </div>\r\n <div class=\"mt-3 fw-semibold\">{{ viewImage.date_timestamp }}</div>\r\n </div>\r\n\r\n </div>\r\n <div data-bs-dismiss=\"modal\">\r\n <!-- <span class=\"stream fw-semibold text-nowrap me-5\" *ngIf=\"camera.height && camera.width\"> Resolution: {{camera.height}} X {{camera.width}}</span> -->\r\n <span class=\"btn btn-sm btn-icon btn-active-color-primary me-0\" (click)=\"model.dismiss()\"><svg\r\n width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"viewImage.path\" class=\"mt-2 overflow-auto\">\r\n <img class=\"rounded-4 mt-5 img-popup-src w-100\" src=\"{{environment.TraxAIchecklistCDN}}{{viewImage.path}}\">\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #proofPopup let-modal>\r\n <div class=\"modal-header border-0 align-items-center pb-2\">\r\n <h4 class=\"modal-title fw-bold mb-0\">Verification Details</h4>\r\n <span class=\"btn btn-sm btn-icon btn-active-color-primary me-0 cursor-pointer\" (click)=\"modal.dismiss()\">\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"modal-body pt-0\">\r\n <div *ngIf=\"proofData?.userImage\">\r\n <div class=\"title-ref my-3\">Captured Photo</div>\r\n <img class=\"w-100 h-350px rounded cursor-pointer\" [src]=\"environment.TraxAnswerCDN + proofData.userImage\" alt=\"Captured Photo\" style=\"object-fit:contain\">\r\n </div>\r\n <div class=\"row mt-5\" *ngIf=\"proofData?.userSignature\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Name :</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">{{proofData?.userSignature}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [".gallery-card{padding:24px;border-radius:12px;background:#fff}.gallery-card .header{color:#101828;font-size:18px;font-weight:500;line-height:28px}.img{border-radius:10px;border:1px solid var(--Gray-500, #667085);background:var(--Gray-100, #F2F4F7);width:100%;height:230px}.prvtxt{color:var(--Gray-500, #667085);font-family:Inter;font-size:20px;font-style:normal;font-weight:700;line-height:20px;letter-spacing:-.4px}.refreshtxt{color:var(--Gray-400, #98A2B3);font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px}::ng-deep .applyBtn{display:none!important}::ng-deep .custom-height-modal .modal-dialog{max-height:80vh;height:80vh}::ng-deep .custom-height-modal .modal-content{overflow:auto;max-height:100%}:host::ng-deep .md-drppicker .btn{line-height:10px!important}:host::ng-deep .md-drppicker.shown.drops-down-right{transform-origin:0 0;width:560px!important}:host::ng-deep .daterangepicker-input+.ngx-daterangepicker-material .applyBtn{display:none}:host::ng-deep .md-drppicker.drops-down-right.ltr.show-ranges.shown{top:65px!important}:host::ng-deep .md-drppicker.drops-down-right.ltr.double.show-ranges.shown{top:65px!important;right:-475px!important;left:unset!important;height:400px!important}:host::ng-deep .md-drppicker .btn{border-radius:8px!important;border:1px solid var(--Primary-600, #00A3FF)!important;background:var(--Primary-600, #00A3FF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--White, #FFF)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}:host::ng-deep .md-drppicker .ranges ul li button{padding:12px 16px;width:160px;color:var(--Gray-700, #344054);font-size:14px;font-weight:400;line-height:20px;background:none;border:none;text-align:left;cursor:pointer}:host::ng-deep .md-drppicker td.active,:host::ng-deep .md-drppicker td.active:hover{background-color:#029cf4!important;border-radius:20px!important;color:var(--White, #FFF)!important;text-align:center!important;font-size:14px!important;font-weight:500!important;line-height:20px}:host::ng-deep .md-drppicker.ltr .ranges{float:left;margin-top:10px!important}:host::ng-deep .md-drppicker td.in-range{background:var(--Primary-50, #EAF8FF)}:host::ng-deep .md-drppicker .ranges ul li button.active{background:var(--Primary-50, #EAF8FF)!important;border-radius:8px!important;color:var(--Primary-700, #009BF3);font-size:14px!important;font-weight:500!important;line-height:20px!important}:host::ng-deep table th,:host::ng-deep table td{width:40px!important;height:40px!important;padding:10px 8px!important}:host::ng-deep .md-drppicker td.available.prev,:host::ng-deep .md-drppicker th.available.prev{background-image:url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMy43IDYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDMuNyA2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxwYXRoIGQ9Ik0zLjcsMC43TDEuNCwzbDIuMywyLjNMMyw2TDAsM2wzLTNMMy43LDAuN3oiLz4NCjwvZz4NCjwvc3ZnPg0K)!important;background-repeat:no-repeat!important;background-size:.5em!important;background-position:center!important}:host::ng-deep .md-drppicker td.available.next,:host::ng-deep .md-drppicker th.available.next{background-image:url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMy43IDYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDMuNyA2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxwYXRoIGQ9Ik0zLjcsMC43TDEuNCwzbDIuMywyLjNMMyw2TDAsM2wzLTNMMy43LDAuN3oiLz4NCjwvZz4NCjwvc3ZnPg0K)!important;background-repeat:no-repeat!important;background-size:.5em!important;background-position:center!important}:host::ng-deep table th{border-bottom:0px solid var(--Gray-200, #EAECF0)!important;background:transparent!important;color:var(--Gray-700, #344054)!important;text-align:center;font-size:16px!important;font-weight:500!important;line-height:24px}:host::ng-deep .md-drppicker .btn.btn-default{border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize;margin-right:10px!important}:host::ng-deep .md-drppicker td.available.invalid-date{text-decoration:line-through;pointer-events:none;color:#a9a9a9}:host::ng-deep .md-drppicker td.available.today:not(.invalid-date){text-decoration:unset;pointer-events:unset;color:unset}.btn-primary{line-height:18px!important}.checkbox-label{color:#344054;font-size:14px;font-weight:500;line-height:20px;cursor:pointer}.checklist-left .checklist-title{overflow:hidden;color:var(--Black, #101828)!important;text-overflow:ellipsis;font-size:18px!important;font-weight:500;line-height:28px}.checklist-left .checklist-text{overflow:hidden;color:var(--Black, #101828)!important;text-overflow:ellipsis;font-size:12px!important;font-weight:400!important;line-height:18px}.section{display:inline-block;width:600px;white-space:nowrap;outline:none!important;border:none!important;box-shadow:none!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--Black, #101828)!important;font-size:16px!important;font-weight:500!important}.card hr{width:-webkit-fill-available}.editablecontent{color:var(--Gray-700, #344054)!important;font-size:16px!important;font-weight:400!important;line-height:24px}.rotate{transform:rotate(180deg);transition:1s}.question-left{color:var(--Gray-700, #344054)!important;font-size:16px;font-weight:400;line-height:24px}.view-all{padding:12px!important;border-radius:6px!important;background:var(--Primary-50, #EAF8FF)!important;color:var(--Primary-500, #33B5FF)!important;font-size:16px!important;font-weight:600!important;line-height:24px;text-decoration-line:underline!important}.view-questions{padding:12px!important;border-radius:6px!important;color:var(--Primary-500, #33B5FF)!important;font-size:16px!important;font-weight:600!important;line-height:24px;text-decoration-line:underline!important}.iconsize{width:110px;height:110px}.margin-left-side{margin-left:-14px}.margin-top-side{margin-top:-15px}input[type=checkbox]{width:16px!important;height:16px!important;margin:0;border-radius:4px!important;-webkit-appearance:none;-moz-appearance:none;-o-appearance:none;appearance:none;outline:1px solid var(--gray-300, #D0D5DD);box-shadow:none;font-size:.8em;text-align:center;line-height:1em;background:#fff}input[type=checkbox]:checked{outline:1px solid var(--primary-600, #00A3FF);background-color:var(--primary-50, #EAF8FF)}input[type=checkbox]:checked:after{content:\"\";transform:rotate(45deg);border-bottom:2px solid #00A3FF;border-right:2px solid #00A3FF;display:inline-block;width:.5em;padding-left:0!important;padding-top:8px;padding-right:5px}.uni-title{color:#000!important;font-size:17px!important;font-weight:600!important;line-height:30px;white-space:nowrap}.uni-subtitle{color:#000!important;font-size:17px!important;font-weight:400!important;line-height:28px}.qa-heading{color:var(--Black, #101828)!important;font-size:18px!important;font-weight:700!important;line-height:28px;list-style:none}.qa-bodrer{padding:16px!important;border-radius:8px!important;border:1px solid var(--Gray-200, #EAECF0)!important;background:var(--text-primary, #FFF)!important;box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280f!important}.title-ref{color:var(--Gray-900, #101828)!important;font-size:16px!important;font-weight:400!important;line-height:24px}.btn-outline-primary{border-radius:8px!important;border:1px solid var(--Primary-500, #33B5FF)!important;background:var(--Primary-50, #EAF8FF)!important;box-shadow:0 1px 2px #1018280d!important;padding:calc(.7rem + 0px) calc(1.5rem + 1px)!important}.Partially{color:#000;font-size:18px!important;font-style:italic!important;font-weight:500;line-height:28px}.task-remarks{color:#000!important;font-size:18px!important;font-weight:400!important;line-height:28px}.backButtonright{border-radius:1000px!important;background:var(--text-primary, #FFF)!important;padding:12px!important;box-shadow:0 12px 16px -4px #10182814,0 4px 6px -2px #10182808!important;box-shadow:0 8.727px 11.636px -2.909px #10182814,0 2.909px 4.364px -1.455px #10182808!important;position:absolute;top:30px;right:-10px;z-index:0}.backButtonleft{border-radius:1000px!important;background:#fff;padding:14px!important;border:var(--Gray-300, #D0D5DD);box-shadow:0 8.727px 11.636px -2.909px #10182814,0 2.909px 4.364px -1.455px #10182808;position:absolute;top:30px;left:-20px;z-index:5}img.img-logo{width:100%;height:400px!important}.recap-img{width:100%;height:400px;object-fit:cover!important}.img-src{width:30%!important;height:20%!important}.dropdownselect{padding:20px 10px}.dropdownbg{width:Fill(372px) px;height:Hug(40px) px;padding:8px 16px;gap:0px;border-radius:6px 0 0;justify-content:space-between;opacity:0px;background:#eaf8ff}.detectionright{color:var(--Primary-700, #009BF3)!important;text-align:center;font-size:14px!important;font-weight:500;line-height:14px;float:right!important;mix-blend-mode:multiply}.backgroundBorder{background:#eaf8ff!important;color:#00a3ff!important;padding:12px;border-radius:8px;font-weight:500;line-height:10px}.withoutbackground{padding:8px;font-weight:500;line-height:10px}.snapcard{display:flex;padding:12px;flex-direction:column;align-items:flex-start;gap:12px;align-self:stretch;border-radius:8px;border:1px solid var(--Gray-200, #EAECF0);background:var(--White, #FFF);box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280f}.snapheader{color:var(--Black, #101828);font-size:16px;font-style:normal;font-weight:600;line-height:24px}.snaptext{color:var(--Gray-900, #101828);font-size:16px!important;font-style:normal;font-weight:600!important;line-height:24px}.snaptime{color:var(--Gray-900, #101828);font-size:12px!important;font-style:normal;font-weight:500!important;line-height:22px}.snapbadge{text-align:center;font-size:14px!important;font-style:normal;font-weight:500!important;line-height:20px}.btn-resize{font-size:13px!important;height:29px!important;line-height:11px!important;padding:1px!important}.preview{position:absolute;top:30%;left:14%}.w-25{width:17%!important}.w-40{width:40%!important}.usage-detection{color:var(--Primary-700, #009BF3);text-overflow:ellipsis!important;font-size:16px!important;font-style:normal;font-weight:400;line-height:16px;width:220Px}.usage-text{color:var(--Gray-700, #344054);text-overflow:ellipsis;font-size:16px;font-style:normal;font-weight:400;line-height:17px}.h-450px{object-fit:contain!important}.store-title{color:var(--Black, #101828)!important;font-size:18px;font-weight:700;line-height:28px}.img-opc{width:100%!important;height:300px!important;border-radius:12px!important}.h-900px{min-height:auto!important;max-height:2800px!important}.select-wrapper{position:relative;display:inline-block;width:100%}.placeholder-overlay{position:absolute;color:var(--Gray-500, #667085);font-family:Inter;font-size:16px!important;font-style:normal;font-weight:400;top:10px;left:15px;pointer-events:none;font-size:1.1rem;z-index:1}.flagclour{color:red}.remarksTxt{margin-top:10px;font-family:Inter;font-size:18px;font-weight:400;line-height:28px;text-align:left;white-space:pre-line}.no-text-transform{text-transform:none!important}.border-val1{padding:8px 14px!important;border-radius:8px!important;border:1px solid var(--Primary-500, #33B5FF)!important;background:var(--Primary-50, #EAF8FF)!important;box-shadow:0 1px 2px #1018280d!important}.font-task{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.border-default{padding:8px 14px!important;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important}.font-defult-task{color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.nav-item .nav-link.active{border:none;border-radius:6px;background:var(--Primary-50, #EAF8FF);padding:8px 12px}.nav-item .nav-link:hover{border:none}.badge-num-primary{border-radius:16px!important;background:var(--Primary-50, #EAF8FF)!important;color:var(--Primary-700, #009BF3)!important;text-align:center;font-size:14px!important;font-style:normal;font-weight:500;line-height:20px;padding:2px 10px!important;mix-blend-mode:multiply!important}.badge-num-muted{border-radius:16px!important;background:var(--Primary-50, #F2F4F7)!important;color:var(--Gray-700, #344054)!important;text-align:center;font-size:14px;font-style:normal;font-weight:500;line-height:20px;padding:2px 10px!important;mix-blend-mode:multiply!important}.text-title{font-size:16px!important;font-weight:600!important;color:#101828!important;line-height:24px}.title-description{font-size:14px!important;font-weight:400;color:#101828!important;line-height:24px!important}.border-primary1{border-radius:8px!important;border:1px solid var(--Primary-600, #00A3FF)!important;background:var(--Primary-600, #00A3FF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--White, #FFF)!important;font-size:16px!important;font-weight:600;line-height:24px;text-transform:capitalize}.scroll-y{overflow-x:hidden;overflow-y:auto}.totalsize{width:18%}.view-detail{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.left-sidebar{position:sticky;top:0;width:33%;overflow:visible}.main-container{display:flex;align-items:flex-start}.right-content{flex-grow:1;width:67%}.bordercolor{border:1px solid var(--Gray-300, #D0D5DD)!important}.toastcard{border-radius:8px;background:var(--Primary-50, #EAF8FF);padding:8px 16px}.toasttext{overflow:hidden;color:var(--Primary-700, #009BF3);text-overflow:ellipsis;font-size:16px;font-style:normal;font-weight:500;line-height:24px}.btn-outline{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF);box-shadow:0 1px 2px #1018280d}.refreshtext{color:var(--Gray-700, #344054);font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}.collage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;height:450px;overflow-y:auto;grid-auto-rows:auto}.collage-tile{width:100%;height:100%}.collage-tile img{width:100%;height:100%!important;border-radius:6px}::ng-deep .my-own-styles .modal-dialog{max-width:600px!important}.bgDanger{color:var(--Error-700, #B42318);text-align:center;font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px;border-radius:16px;background:var(--Error-50, #FEF3F2)}.bgSuccess{color:var(--Success-700, #027A48);text-align:center;font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px;border-radius:16px;background:var(--Success-50, #ECFDF3)}.openclosesnapIMG{width:100%!important;height:205px!important;border-radius:30px!important}.openclosesnapLiveIMG{width:100%!important;height:400px!important;border-radius:30px!important}.backgroundGray{background:#f2f4f7!important}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;cursor:pointer;transition:all .7s ease;overflow:hidden}.icon-btn .btn-text{max-width:0;opacity:0;white-space:nowrap;overflow:hidden;transition:all .7s ease;color:#344054;font-size:14px}.icon-btn:hover .btn-text{max-width:120px;opacity:1;margin-left:6px}.video-wrapper{width:100%;height:450px;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.video-wrapper video{width:100%;height:100%;object-fit:contain;transition:all 20s ease}.video-wrapper.fullscreen-active{width:100vw!important;height:100vh!important;background:#000!important;overflow:hidden}.video-wrapper.fullscreen-active video{width:100vw!important;height:100vh!important;object-fit:contain!important;transform:none!important;background:#000!important}.video-wrapper:not(.fullscreen-active){width:100%;height:450px}.video-wrapper:not(.fullscreen-active) video{width:100%;height:100%}.badge.scoreBadge{background:#eaecf5;color:#363f72}.heightImage{height:218px!important}.occ-body{font-family:Inter,system-ui,sans-serif}.occ-body .col-4{display:flex}.occ-body .occ-card{background:#fff;border:1px solid #EAECF0;border-radius:12px;box-shadow:0 1px 3px #10182814;overflow:hidden;width:100%;display:flex;flex-direction:column}.occ-body .occ-card-head{margin:12px 12px 0;padding:10px 14px;background:#f2f4f7;border-radius:8px;font-size:15px;font-weight:500;color:#101828}.occ-body .occ-card-img-wrap{padding:12px}.occ-body .occ-card-img{width:100%;height:230px;object-fit:cover;border-radius:8px;display:block;background:#f2f4f7}.occ-body .occ-card-offline{width:100%;height:230px;border-radius:8px;background:#f2f4f7;display:flex;align-items:center;justify-content:center}.occ-body .occ-card-body{padding:0 14px 16px;flex:1 1 auto;display:flex;flex-direction:column;align-items:flex-start}.occ-body .occ-card-time{font-size:14px;font-weight:500;color:#101828;margin-bottom:12px}.occ-body .occ-card-seats{font-size:14px;color:#475467;margin-bottom:12px}.occ-body .occ-card-seats strong{color:#101828}.occ-body .occ-status-badge{margin-top:auto;display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:16px;font-size:13px;font-weight:500}.occ-body .occ-status-badge.occ-badge-breached,.occ-body .occ-status-badge.occ-badge-offline{background:#fef3f2;color:#b42318}.occ-body .occ-status-badge.occ-badge-default{background:#f2f4f7;color:#475467}.occ-body .occ-status-badge .occ-badge-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;font-size:13px;cursor:pointer}.occ-body .occ-status-badge .occ-badge-icon svg{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PaginationComponent, selector: "lib-pagination", inputs: ["collection", "itemsPerPage", "currentPage", "totalItems", "directionLinks", "pageSize", "paginationSizes"], outputs: ["pageChange", "pageSizeChange"] }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i8.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i8$1.DaterangepickerDirective, selector: "input[ngxDaterangepickerMd]", inputs: ["minDate", "maxDate", "autoApply", "alwaysShowCalendars", "showCustomRangeLabel", "linkedCalendars", "dateLimit", "singleDatePicker", "showWeekNumbers", "showISOWeekNumbers", "showDropdowns", "isInvalidDate", "isCustomDate", "isTooltipDate", "showClearButton", "customRangeDirection", "ranges", "opens", "drops", "firstMonthDayClass", "lastMonthDayClass", "emptyWeekRowClass", "emptyWeekColumnClass", "firstDayOfNextMonthClass", "lastDayOfPreviousMonthClass", "keepCalendarOpeningWithRange", "showRangeLabelOnInput", "showCancel", "lockStartDate", "timePicker", "timePicker24Hour", "timePickerIncrement", "timePickerSeconds", "closeOnAutoApply", "endKeyHolder", "startKey", "locale", "endKey"], outputs: ["change", "rangeClicked", "datesUpdated", "startDateChanged", "endDateChanged", "clearClicked"] }, { kind: "directive", type: i1.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "component", type: GalleryQaViewComponent, selector: "lib-gallery-qa-view", inputs: ["data", "galleryForm", "clientData", "environment", "userAccess", "showsingle", "showmulti", "showfilter", "selectedSection", "answerFilter", "select", "checklistName", "selectedStores", "selectedUsers"], outputs: ["taskTabChange", "selectMultiTask", "viewInDetails", "openProofEvent", "addTaskEvent", "taskRedirect"] }, { kind: "component", type: ReactiveSelectComponent$1, selector: "lib-reactive-select", inputs: ["isDisabled", "idField", "nameField", "label", "data"], outputs: ["itemChange"] }, { kind: "component", type: CustomSelectComponent$1, selector: "lib-stores-select", inputs: ["items", "searchField", "multi", "idField", "selectedValues", "disabled", "label"], outputs: ["selected"] }, { kind: "component", type: GroupSelectComponent$1, selector: "lib-group-select", inputs: ["items", "searchField", "multi", "idField", "selectedValues", "disabled", "label"], outputs: ["selected"] }, { kind: "component", type: CustomsingleSelectComponent, selector: "lib-single-select", inputs: ["items", "searchField", "multi", "idField", "selectedValues", "disabled", "label"], outputs: ["selected"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.DatePipe, name: "date" }] });
18163
18163
  }
18164
18164
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GalleryComponent, decorators: [{
18165
18165
  type: Component,
18166
- args: [{ selector: 'lib-gallery', template: "<div *ngIf=\"notifyCount>0\" class=\"h-xl-100 flex-row flex-stack flex-wrap p-2\">\r\n <!-- toast card starts -->\r\n <div class=\"toastcard col-md-12 mb-4\">\r\n <div class=\"d-flex align-items-center justify-content-between w-100\">\r\n <span class=\"align-items-start\">\r\n <span class=\"toasttext d-block\"><span class=\"me-5\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"20\" viewBox=\"0 0 16 20\" fill=\"none\">\r\n <path\r\n d=\"M9.14234 2.4V1.6875C9.14234 1.03178 8.63166 0.5 7.99955 0.5C7.36744 0.5 6.85675 1.03178 6.85675 1.6875V2.4C4.21761 2.95033 2.28558 5.34649 2.28558 8.21875V8.91641C2.28558 10.6643 1.66918 12.3453 0.553532 13.6516L0.28869 13.9596C-0.0103044 14.3121 -0.0840396 14.8094 0.100307 15.2361C0.284654 15.6629 0.69281 15.9375 1.14279 15.9375H14.8563C15.3063 15.9375 15.7134 15.6629 15.8991 15.2361C16.0848 14.8094 16.0098 14.3121 15.7098 13.9596L15.4456 13.6516C14.3313 12.3453 13.7135 10.6643 13.7135 8.91641V8.21875C13.7135 7.94125 13.6952 7.66819 13.6597 7.40081C13.2676 7.54576 12.8432 7.625 12.4 7.625C10.4118 7.625 8.8 6.03001 8.8 4.0625C8.8 3.46778 8.88193 2.89289 9.14234 2.4C9.16417 2.40461 9.12061 2.39514 9.14234 2.4Z\"\r\n fill=\"#00A3FF\" />\r\n <path\r\n d=\"M6.38178 18.8061C6.81033 19.2514 7.39244 19.5 7.99955 19.5C8.57452 19.5 9.18877 19.2514 9.61732 18.8061C10.0459 18.3607 10.2851 17.7225 10.2851 17.125H5.71396C5.71396 17.7225 5.95323 18.3607 6.38178 18.8061Z\"\r\n fill=\"#00A3FF\" />\r\n <circle cx=\"13\" cy=\"3.5\" r=\"3\" fill=\"#F04438\" />\r\n </svg>\r\n </span>New Detection Found! Refresh Now to view new detection</span>\r\n </span>\r\n <button (click)=\"refreshnow()\" type=\"button\"\r\n class=\"btn-outline btn align-items-end text-nowrap ms-4 cursor-pointer\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_12165_62781)\">\r\n <path\r\n d=\"M19.1672 3.33172V8.33172M19.1672 8.33172H14.1672M19.1672 8.33172L15.3089 4.69838C14.1594 3.54817 12.6672 2.80271 11.0572 2.57434C9.44716 2.34597 7.80653 2.64706 6.38251 3.43225C4.9585 4.21744 3.82826 5.44418 3.1621 6.92761C2.49595 8.41104 2.32997 10.0708 2.68919 11.6568C3.0484 13.2427 3.91335 14.669 5.15368 15.7206C6.39401 16.7722 7.94254 17.3922 9.5659 17.4872C11.1893 17.5822 12.7995 17.147 14.154 16.2471C15.5085 15.3473 16.5339 14.0316 17.0756 12.4984\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_12165_62781\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg><span class=\"refreshtext ms-2\"></span> Refresh Now </button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"gallery-card po\">\r\n <div class=\"header mb-4\">Gallery</div>\r\n\r\n <form [formGroup]=\"galleryForm\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <div class=\"col-md-3 mb-3\">\r\n <div class=\"position-relative\">\r\n <span style=\"top: 20%;\" class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path\r\n d=\"M13.3333 1.66663V4.99996M6.66667 1.66663V4.99996M2.5 8.33329H17.5M4.16667 3.33329H15.8333C16.7538 3.33329 17.5 4.07948 17.5 4.99996V16.6666C17.5 17.5871 16.7538 18.3333 15.8333 18.3333H4.16667C3.24619 18.3333 2.5 17.5871 2.5 16.6666V4.99996C2.5 4.07948 3.24619 3.33329 4.16667 3.33329Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <input class=\"fx-date-range form-control ps-14 z-2\" style=\"min-width: 260px !important;\"\r\n type=\"text\" matInput ngxDaterangepickerMd [drops]=\"'down'\" [opens]=\"'right'\"\r\n placeholder=\"Select date range\"\r\n [alwaysShowCalendars]=\"false\" [keepCalendarOpeningWithRange]=\"true\" [showCancel]=\"false\"\r\n autocomplete=\"off\" [(ngModel)]=\"selectedDateRange\" [ngModelOptions]=\"{standalone: true}\"\r\n (datesUpdated)=\"datechange($event)\" (click)=\"resetValidation()\"\r\n (startDateChanged)=\"onStartDateChange($event)\" [isCustomDate]=\"isCustomDate\"\r\n [autoApply]=\"true\"\r\n [locale]=\"{ format: 'DD-MM-YYYY', firstDay: 1, monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] }\"\r\n name=\"daterange\" [readonly]=\"true\" />\r\n </div>\r\n </div>\r\n <div class=\"col-md-2 mb-4\">\r\n <lib-reactive-select formControlName=\"type\" [idField]=\"'value'\" [nameField]=\"'label'\"\r\n [data]=\"type\" (itemChange)=\"typeChange($event)\"></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-4 mb-4\">\r\n <lib-single-select [items]=\"checklists\" [multi]=\"false\" [searchField]=\"'checkListName'\"\r\n label=\"Select checklist\"\r\n [idField]=\"'_id'\" (selected)=\"checklistNamechange($event,false)\"\r\n [selectedValues]=\"[{checkListName:galleryForm.get('checklistName')?.value}]\"></lib-single-select>\r\n </div>\r\n <div class=\"col-md-3 mb-4\">\r\n <lib-reactive-select formControlName=\"answerType\" [isDisabled]=\"!showflag\" [idField]=\"'value'\"\r\n [nameField]=\"'label'\" [data]=\"answerType\"></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-2 mb-4\">\r\n\r\n <lib-reactive-select formControlName=\"filtertype\" [idField]=\"'value'\" [nameField]=\"'label'\"\r\n [data]=\"filtertype\" (itemChange)=\"filterChange($event)\"></lib-reactive-select>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Clusters'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('ClusterList')?.value?.length)\">\r\n Select cluster\r\n </div>\r\n <lib-group-select [items]=\"ClusterList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'groupName'\" [idField]=\"'groupName'\" (selected)=\"ongroupSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('ClusterList')?.value\">\r\n </lib-group-select>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Teams'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('TeamsList')?.value?.length)\">\r\n Select Teams\r\n </div>\r\n <lib-group-select [items]=\"TeamsList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'teamName'\" [idField]=\"'teamName'\" (selected)=\"onTeamsSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('TeamsList')?.value\">\r\n </lib-group-select>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Clusters'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('storeList')?.value?.length)\">\r\n Select Stores\r\n </div>\r\n <lib-stores-select [items]=\"storeList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'storeName'\" [idField]=\"'storeId'\" (selected)=\"onStoreSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('storeList')?.value\"></lib-stores-select>\r\n </div>\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Teams'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('userList')?.value?.length)\">\r\n Select users\r\n </div>\r\n <lib-stores-select [items]=\"userList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'userName'\" [idField]=\"'userName'\" (selected)=\"onUserSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('userList')?.value\"></lib-stores-select>\r\n </div>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <div class=\"d-flex justify-content-end\">\r\n <div class=\"me-5 w-100\" *ngIf=\"select === 'eyetest'\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"adults\">Adults</option>\r\n <option value=\"kids\">Kids</option>\r\n </select>\r\n </div>\r\n\r\n <div class=\"me-5 w-100\"\r\n *ngIf=\"breachFilterSelectTypes.includes(select)\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Breached\" *ngIf=\"!['activitymonitoring'].includes(select)\">Breached</option>\r\n <option value=\"Not Breached\" *ngIf=\"!['uniformdetection','mobileusagedetection','storehygienemonitoring','unattendeddetection','activitymonitoring'].includes(select)\">Not Breached</option>\r\n <option value=\"Offline\">Offline</option>\r\n </select>\r\n </div>\r\n <div class=\"me-5 w-100\"\r\n *ngIf=\"['staffgrouping','storehygienemonitoring','halfshutter','tvcompliance','customerunattended'].includes(galleryForm.value.sourceCheckList_id)\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\" (change)=\"onfilterChange($event)\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Breached\">Breached</option>\r\n <option value=\"Not Breached\">Not Breached</option>\r\n <option value=\"Offline\">Offline</option> \r\n </select>\r\n </div>\r\n <div class=\"me-5 w-100\" *ngIf=\"select === 'outsidebusinesshoursqueuetracking'\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Detected\">Detected</option>\r\n <option value=\"Not Detected\">Not Detected</option>\r\n <option value=\"Offline\">Offline</option>\r\n </select>\r\n </div>\r\n <!-- <div class=\"me-5 w-100 text-start\" *ngIf=\"select === 'queuealert'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\"\r\n *ngIf=\"!(galleryForm.get('zoneList')?.value?.length)\">\r\n Select Zone\r\n </div>\r\n <lib-stores-select [items]=\"zoneList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'value'\" [idField]=\"'key'\" (selected)=\"onzoneSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('zoneList')?.value\"></lib-stores-select>\r\n </div>\r\n </div> -->\r\n <div class=\"me-5 w-50\" *ngIf=\"showflag\">\r\n <select class=\"form-select\" (change)=\"approveFilterChange($event)\"\r\n [(ngModel)]=\"approveFilter\" [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Approved\">Approved</option>\r\n <option value=\"notapproved\">Not-Approved</option>\r\n </select>\r\n </div>\r\n <span class=\"me-4 mt-3\" *ngIf=\"showflag\">\r\n <input formControlName=\"viewRedo\" change type=\"checkbox\" (click)=\"redoChanged($event)\"\r\n class=\"form-check-input cursor-pointer mt-1 me-2\" id=\"viewRedo\">\r\n <label class=\"checkbox-label\" for=\"viewRedo\">Re-do</label>\r\n </span>\r\n <span class=\"me-3 mt-3\" *ngIf=\"showflag&&galleryForm.value.type==='checklist'\">\r\n <input formControlName=\"viewFlag\" change type=\"checkbox\" (click)=\"flagChanged($event)\"\r\n class=\"form-check-input cursor-pointer mt-1 me-2\" id=\"viewFlag\">\r\n <label class=\"checkbox-label\" for=\"viewFlag\">Flag</label>\r\n </span>\r\n\r\n <a (click)=\"onSubmit()\" type=\"submit\" class=\"btn btn-primary px-4 \"><span>Apply</span></a>\r\n <!-- <a (click)=\"notify([])\" type=\"submit\" class=\"btn btn-primary px-4 \"><span>test</span></a> -->\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n </div>\r\n </form>\r\n</div>\r\n<div class=\"card my-2\">\r\n <div class=\"row main-container my-5 \">\r\n\r\n <div [ngClass]=\"showsidenav ? 'col-md-4 left-sidebar':'d-none'\" class=\"h-650px position-relative\">\r\n <div class=\"h-650px scroll-y\">\r\n <div class=\"card-body p-5\">\r\n <div class=\"checklist-left\">\r\n <div class=\"checklist-title\">{{checklistName}}</div>\r\n <div class=\"checklist-text\">{{checkListDescription}}</div>\r\n </div>\r\n <div *ngIf=\"loading\" class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"noData&&select === 'custom' || noData&&select === 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"w-75 h-300px\" src=\"./assets/tango/Icons/Nodata1.svg\" alt=\"\">\r\n <div class=\"nodata-title mt-0\">No data found</div>\r\n <div class=\"nodata-sub\">There is no result for this checklist</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"noData&&select !== 'custom'&&select !== 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata2.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No Detections found</div>\r\n <div class=\"nodata-sub\">There is no breaches for the selected period</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <section *ngIf=\"!noData && !loading\">\r\n\r\n <div *ngIf=\"select === 'custom'||select === 'task'\">\r\n <div class=\"text-end mt-10\">\r\n <!-- <button class=\"btn btn-outline w-25 me-3 btn-resize\" (click)=\"viewChecklists()\"> Reset </button> -->\r\n <button class=\"btn btn-outline w-25 me-3 btn-resize\"\r\n *ngIf=\"selectedSection.length>0||tempselectedSection.length>0\"\r\n (click)=\"onchecklistreset()\"> Reset </button>\r\n <button *ngIf=\"selectedSection.length>0||tempselectedSection.length>0\"\r\n class=\"btn btn-primary w-25 btn-resize\"\r\n (click)=\"selectsinglequestion()\">Apply</button>\r\n </div>\r\n <div class=\"my-6\" [ngClass]=\"selectedSection.length===0 ? 'view-all':'view-questions'\"\r\n style=\"cursor: pointer;\" (click)=\"onchecklistreset()\">\r\n View All Answers\r\n </div>\r\n <div class=\"mx-2\" *ngFor=\"let section of checklistData; let i=index;\">\r\n <div class=\"d-flex align-items-center justify-content-between mt-4\"\r\n style=\"cursor: pointer;\" (click)=\"accordian(i)\">\r\n <div class=\"fs-4 fw-bold section\" *ngIf=\"galleryForm.value.type==='checklist'\">\r\n {{section.sectionName}} {{getSectionCompliance(section.sectionName)}}</div>\r\n <hr class=\"mx-2\">\r\n <svg class=\"cursor-pointer\" [ngClass]=\"{'rotate' : show !== i}\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"25\" height=\"25\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path d=\"M5 7.5L10 12.5L15 7.5\" stroke=\"#667085\" stroke-width=\"1.67\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n <div *ngIf=\"show===i\" class=\"question-left\">\r\n <div cdkDropList [cdkDropListData]=\"section.questions\">\r\n <div *ngFor=\"let question of section.questions;let j=index;\"\r\n class=\"d-flex my-2 q-btn\" cdkDrag>\r\n <input id=\"label\" [(ngModel)]=\"question.checked\"\r\n (click)=\"selectedQuestion($event,section,question)\"\r\n class=\"form-check-input cursor-pointer mt-2 me-4\" type=\"checkbox\">\r\n <div class=\"editablecontent\" [ngClass]=\"question?.checked ? 'view-all':''\"\r\n style=\"cursor: pointer;\">\r\n {{question.qno}} . {{question.qname}}\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n <div *ngIf=\"combinedChecklist.includes(select)\">\r\n <div class=\"text-end mt-10\">\r\n <button class=\"btn btn-outline w-25 me-3 btn-resize\" (click)=\"onreset()\"> Reset\r\n </button>\r\n <button class=\"btn btn-primary w-25 btn-resize\" (click)=\"onview()\">Apply</button>\r\n </div>\r\n <div class=\"dropdownselect h-900px scroll-y\">\r\n <div class=\"d-flex justify-content-left \"\r\n [ngClass]=\"selectAll ? 'backgroundBorder':'withoutbackground'\">\r\n <input class=\"form-check-input cursor-pointer me-4\" type=\"checkbox\"\r\n [(ngModel)]=\"selectAll\" (click)=\"selectAllStore($event)\"> <span\r\n [ngClass]=\"selectAll ? 'usage-detection':'usage-text'\">Select All</span>\r\n </div>\r\n <!-- dropdownbg -->\r\n <div class=\"my-4\" *ngFor=\"let list of mobileusageDataList;let i=index\">\r\n <div (change)=\"updateCheck($event,list)\" class=\"d-flex align-items-center\"\r\n [ngClass]=\"list.checked ? 'backgroundBorder':'withoutbackground'\">\r\n <input id=\"label{{i}}\" class=\"form-check-input cursor-pointer me-4 flex-shrink-0\"\r\n type=\"checkbox\" [(ngModel)]=\"list.checked\">\r\n <label for=\"label{{i}}\" class=\"text-truncate mb-0\"\r\n [ngClass]=\"list.checked ? 'usage-detection':'usage-text'\">{{list?.storeName}}</label>\r\n <span class=\"badge badge-light-primary detectionright ms-auto flex-shrink-0 text-nowrap\"\r\n *ngIf=\"list.detection\">{{list.detection}} Detections</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n </div>\r\n\r\n\r\n\r\n\r\n\r\n </div>\r\n <div *ngIf=\"showsidenav\" (click)=\"sidenav()\" class=\"backButtonright text-center pt-1 cursor-pointer\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path d=\"M11 17L6 12L11 7M18 17L13 12L18 7\" stroke=\"#101828\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n </div>\r\n <div class=\"position-relative\"\r\n [ngClass]=\"showsidenav ? 'col-md-8 border border-bottom-0 border-top-0 border-left border-5 right-sidebar':'col-md-12'\">\r\n <div class=\"h-1000px scroll-y\">\r\n <!-- (select === 'custom' || select === 'task'||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo') -->\r\n <div class=\"card-header border-0 px-0 my-0\"\r\n *ngIf=\"!viewloading && !viewnoData\">\r\n <h3 *ngIf=\"!showsingle || (gs.userAccess | async)?.userType === 'tango'||!allapprovalStatus\"></h3>\r\n\r\n <div class=\" m-3\"\r\n *ngIf=\"canSelectAllTask(gs.userAccess | async)\">\r\n <div class=\"form-check\">\r\n <input [(ngModel)]=\"selectAllTask\"\r\n (click)=\"selectedAllTask($event,viewChecklistsData?.checklistAnswers[0],viewChecklistsData?.checklistAnswers[0].questionAnswer[0].questions[0],viewChecklistsData?.checklistAnswers[0]?.checklistInfo,viewChecklistsData?.checklistAnswers[0].questionAnswer[0])\"\r\n class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"flexCheckDefault\">\r\n <label class=\"ms-2\" for=\"flexCheckDefault\">\r\n Select All <span *ngIf=\"selectedRecordCount\">({{selectedRecordCount}} Records\r\n Selected)</span>\r\n </label>\r\n </div>\r\n\r\n\r\n\r\n </div>\r\n <div class=\"card-toolbar\">\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowCreateTaskToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\" class=\"icon-btn\"\r\n (click)=\"createMultipleTask('task')\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path\r\n d=\"M11.6654 1.66797H4.9987C4.55667 1.66797 4.13275 1.84356 3.82019 2.15612C3.50763 2.46868 3.33203 2.89261 3.33203 3.33464V16.668C3.33203 17.11 3.50763 17.5339 3.82019 17.8465C4.13275 18.159 4.55667 18.3346 4.9987 18.3346H14.9987C15.4407 18.3346 15.8646 18.159 16.1772 17.8465C16.4898 17.5339 16.6654 17.11 16.6654 16.668V6.66797M11.6654 1.66797L16.6654 6.66797M11.6654 1.66797V6.66797H16.6654M9.9987 15.0013V10.0013M7.4987 12.5013H12.4987\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n \r\n <span class=\"btn-text\">Create Task</span>\r\n </span>\r\n\r\n </div>\r\n\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowRedoExportToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\"\r\n (click)=\"createMultipleTask('redo')\" class=\"icon-btn\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"18\" viewBox=\"0 0 20 18\"\r\n fill=\"none\">\r\n <path\r\n d=\"M19.1654 2.33527V7.33527M19.1654 7.33527H14.1654M19.1654 7.33527L15.2987 3.70193C14.4031 2.80586 13.2951 2.15127 12.078 1.79925C10.861 1.44722 9.57462 1.40923 8.33894 1.68882C7.10325 1.96841 5.95853 2.55646 5.01159 3.39812C4.06464 4.23977 3.34634 5.30759 2.9237 6.50193M0.832031 15.6686V10.6686M0.832031 10.6686H5.83203M0.832031 10.6686L4.6987 14.3019C5.59432 15.198 6.70234 15.8526 7.91937 16.2046C9.1364 16.5567 10.4228 16.5946 11.6585 16.3151C12.8941 16.0355 14.0389 15.4474 14.9858 14.6058C15.9328 13.7641 16.6511 12.6963 17.0737 11.5019\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"btn-text\">Redo</span>\r\n </span>\r\n </div>\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowRedoExportToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\"\r\n (click)=\"exportDet($event)\" class=\"icon-btn\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n<path d=\"M8.125 13.125H16.3562L14.7438 14.7438L15.625 15.625L18.75 12.5L15.625 9.375L14.7438 10.2562L16.3562 11.875H8.125V13.125Z\" fill=\"black\"/>\r\n<path d=\"M13.75 8.75001V6.25001C13.7505 6.16776 13.7347 6.08622 13.7036 6.01007C13.6725 5.93392 13.6267 5.86466 13.5688 5.80626L9.19375 1.43126C9.13535 1.37333 9.06609 1.32751 8.98994 1.2964C8.91379 1.2653 8.83225 1.24953 8.75 1.25001H2.5C2.16848 1.25001 1.85054 1.38171 1.61612 1.61613C1.3817 1.85055 1.25 2.16849 1.25 2.50001V17.5C1.25 17.8315 1.3817 18.1495 1.61612 18.3839C1.85054 18.6183 2.16848 18.75 2.5 18.75H12.5C12.8315 18.75 13.1495 18.6183 13.3839 18.3839C13.6183 18.1495 13.75 17.8315 13.75 17.5V16.25H12.5V17.5H2.5V2.50001H7.5V6.25001C7.5 6.58153 7.6317 6.89947 7.86612 7.13389C8.10054 7.36831 8.41848 7.50001 8.75 7.50001H12.5V8.75001H13.75ZM8.75 6.25001V2.75626L12.2438 6.25001H8.75Z\" fill=\"black\"/>\r\n</svg>\r\n <span class=\"btn-text\">Export</span>\r\n </span>\r\n <div *ngIf=\"exportShow\"\r\n class=\"card py-2 position-absolute productdrop top-10 w-150px end-0 z-1\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li class=\"cursor-pointer py-4 checkbox-label mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li class=\" cursor-pointer checkbox-label py-4 mx-2\"\r\n *ngIf=\"csvExportTypes.includes(select)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div class=\"position-relative cursor-pointer me-10\" *ngIf=\"!galleryForm.value.viewRedo&&selectedUsers.length===0&&selectedStores.length===0\">\r\n <div *ngIf=\"!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\"\r\n class=\" btn btn-primary form-control no-text-transform\" (click)=\"exportDet($event)\">\r\n {{ exportLabel }}\r\n </div>\r\n <div *ngIf=\"exportConfig?.enabled &&exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\"\r\n class=\" btn btn-primary form-control no-text-transform\" (click)=\"exportDet($event)\">\r\n {{ exportLabel }} <!-- Bind label text here -->\r\n </div>\r\n <div *ngIf=\"exportShow\"\r\n class=\"card py-2 position-absolute productdrop top-10 w-150px end-0 z-1\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li class=\"cursor-pointer py-4 checkbox-label mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select) &&!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li class=\" cursor-pointer checkbox-label py-4 mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select) &&!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('PDF') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\"cursor-pointer py-4 checkbox-label mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('CSV') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('PPT') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <li *ngIf=\"galleryForm.value.sourceCheckList_id === 'halfshutter' && exportConfig?.enabled && exportConfig?.format?.includes('ZIP')\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body p-0\">\r\n <div>\r\n <div *ngIf=\"viewloading\" class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"viewnoData&&select !== 'custom'&&select !== 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div\r\n class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata2.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No Detections found</div>\r\n <div class=\"nodata-sub\">There is no breaches for the selected period</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"viewnoData&&select === 'custom' || viewnoData&&select === 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div\r\n class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata1.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No data found</div>\r\n <div class=\"nodata-sub\">There is no result for this checklist</div>\r\n </div>\r\n </div>\r\n </div>\r\n <section *ngIf=\"!viewloading && !viewnoData\">\r\n <lib-gallery-qa-view\r\n *ngIf=\"select==='custom'||select==='task'\"\r\n [data]=\"viewChecklistsData\"\r\n [galleryForm]=\"galleryForm\"\r\n [clientData]=\"clientData\"\r\n [environment]=\"environment\"\r\n [userAccess]=\"gs.userAccess | async\"\r\n [showsingle]=\"showsingle\"\r\n [showmulti]=\"showmulti\"\r\n [showfilter]=\"showfilter\"\r\n [selectedSection]=\"selectedSection\"\r\n [answerFilter]=\"answerFilter\"\r\n [select]=\"select\"\r\n [checklistName]=\"checklistName\"\r\n [selectedStores]=\"selectedStores\"\r\n [selectedUsers]=\"selectedUsers\"\r\n (taskTabChange)=\"taskTab($event)\"\r\n (selectMultiTask)=\"onQaSelectMultiTask($event)\"\r\n (viewInDetails)=\"onQaViewInDetails($event)\"\r\n (openProofEvent)=\"openProof($event)\"\r\n (addTaskEvent)=\"onQaAddTask($event)\"\r\n (taskRedirect)=\"onQaTaskRedirect($event)\">\r\n </lib-gallery-qa-view>\r\n\r\n <div class=\"px-4 my-5\" *ngIf=\"imageChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <!-- <div> <h2>Checklist Name : {{this.checklistName}}</h2> </div> -->\r\n <div *ngIf=\"!['outsidebusinesshoursqueuetracking', 'halfshutter','tvcompliance','cameratampering','staffgrouping','employeeCount','unattendeddetection','customerunattended'].includes(galleryForm.value.sourceCheckList_id)\">\r\n @if(['Store Hygiene Monitoring','Mobile usage detection','Uniform detection','staffgrouping','employeeCount','Unattended Detection','Customer Unattended','Employee Monitoring','Activity Monitoring'].includes(this.checklistName)) {\r\n <div class=\"row\">\r\n <div class=\"col-md-3\" >\r\n <h3 class=\"uni-title\">Checklist Name:</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">{{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n }\r\n <div class=\" my-3 mt-5\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{this.checklistName}} </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{item.storeName}}</p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.down_time && !mediaFirstChecklistNames.includes(this.checklistName)\" >\r\n <h3 class=\"uni-title\">Average Downtime</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.down_time && !mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{item.down_time}} Mins</p>\r\n </div>\r\n </div>\r\n <ul class=\"row w-100 ps-2\">\r\n <!-- <li class=\"qa-heading\"> {{item.storeName}} </li> -->\r\n <div class=\"row\">\r\n <div class=\"row qa-bodrer mb-4\" *ngFor=\"let detection of item?.imageUrl\">\r\n <div class=\"my-2\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'col-md-6' : 'col-md-12'\"\r\n *ngIf=\"!(['Unattended Detection','Store Hygiene Monitoring'].includes(this.checklistName) && ['Offline','File Not Received','Files Not Received','Offline \u2013 No data Received from store'].includes(detection?.detectionStatus))\">\r\n @if(['Mobile usage detection','Uniform detection'].includes(this.checklistName)) {\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.imageurl}}\"\r\n alt=\"\" *ngIf=\"detection?.imageurl\" (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.imageurl, this.checklistName)\">\r\n }@else if(['Store Hygiene Monitoring','Unattended Detection','Employee Monitoring','Activity Monitoring'].includes(this.checklistName)) {\r\n <div *ngIf=\"detection?.detectionStatus_afterTaskSubmission\" class=\"mb-3 uni-title\">\r\n Breached Image\r\n </div>\r\n <div>\r\n @if(['Activity Monitoring','Unattended Detection'].includes(this.checklistName) && detection?.videourl) {\r\n <video controls preload=\"metadata\"\r\n [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\"\r\n [src]=\"environment.TraxAIchecklistCDN + detection.videourl\">\r\n </video>\r\n }@else if(detection.imageurl) {\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.imageurl, this.checklistName)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.imageurl}}\"\r\n alt=\"\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\" *ngIf=\"detection.imageurl\" />\r\n }@else {\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection, this.checklistName)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection}}\"\r\n alt=\"\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\" *ngIf=\"!fileNotReceivedStatuses.includes(detection?.detectionStatus)\" />\r\n }\r\n </div>\r\n } @else{\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection, this.checklistName)\" class=\"w-100 h-500px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection}}\"\r\n alt=\"\" >\r\n }\r\n <!-- <div class=\"text-center mt-3\"> {{this.checklistName}}</div> -->\r\n </div>\r\n <div class=\"my-2 col-md-6\" *ngIf=\"detection?.detectionStatus_afterTaskSubmission\">\r\n <div class=\"d-flex justify-content-between mb-3\" >\r\n <div class=\"uni-title\">\r\n Detection after Task Submission\r\n </div>\r\n <div>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus_afterTaskSubmission === 'Clean'\">Clean</span>\r\n <span class=\"ms-3 mt-1 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus_afterTaskSubmission !== 'Clean'\">{{detection.detectionStatus_afterTaskSubmission}}</span>\r\n </div>\r\n </div>\r\n <div >\r\n <img class=\"w-100 heightImage rounded\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.new_image_url}}\" alt=\"\" *ngIf=\"detection.new_image_url\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"389\" height=\"218\" viewBox=\"0 0 389 218\" fill=\"none\" *ngIf=\"!detection.new_image_url\">\r\n <rect width=\"389\" height=\"218\" rx=\"8\" fill=\"black\"/>\r\n </svg>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <div class=\"col-md-3\" *ngIf=\"item.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.storeName\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.temp_id\">\r\n <h3 class=\"uni-title\">Cust Id</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.temp_id\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.temp_id}}</span></p>\r\n </div>\r\n\r\n @if(this.checklistName === 'Unattended Detection' && (detection?.detectionStatus === 'Offline' )) {\r\n <div class=\"col-md-3\" *ngIf=\"detection?.store_timestamp\">\r\n <h3 class=\"uni-title\">Detection Date</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.store_timestamp\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.store_timestamp?.split(' - ')[1] || detection.store_timestamp}}</span></p>\r\n </div>\r\n }@else {\r\n <div class=\"col-md-3\" *ngIf=\"detection.detectionTime\">\r\n <h3 class=\"uni-title\">Detection Time</h3>\r\n </div>\r\n <div [class]=\"detection?.detectionType ? 'col-md-3' : 'col-md-9'\" *ngIf=\"detection.detectionTime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}</span></p>\r\n </div>\r\n }\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionType && !(['Unattended Detection',].includes(this.checklistName) && (detection?.detectionStatus === 'Offline' )) && this.checklistName != 'Activity Monitoring'\">\r\n <h3 class=\"uni-title\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionType && !(['Unattended Detection'].includes(this.checklistName) && (detection?.detectionStatus === 'Offline' )) && this.checklistName != 'Activity Monitoring'\">\r\n <p class=\"uni-subtitle text-nowrap\"> : <span class=\"ms-3 badge badge-light-warning\">{{detection.detectionType}}</span></p>\r\n </div>\r\n\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionStatus && (this.checklistName != 'Activity Monitoring' || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n \r\n <div [class]=\"(detection?.downtime != null && detection?.downtime != undefined) ? ['Offline'].includes(detection?.detectionStatus) ? 'col-md-5' : 'col-md-3' : 'col-md-9'\"\r\n *ngIf=\"detection?.detectionStatus && (this.checklistName != 'Activity Monitoring' || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!detection?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Clutter'\">Clutter</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Clean'\">Clean</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline' \">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div [class]=\"['Offline'].includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection.ProductType\">\r\n <h3 class=\"uni-title\">Activity Type</h3>\r\n </div>\r\n <div [class]=\"['Offline'].includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection.ProductType\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.ProductType}}</span></p>\r\n </div>\r\n <div class='col-md-3' *ngIf=\"this.checklistName == 'Activity Monitoring'\">\r\n <h3 class=\"uni-title\">Detection</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"this.checklistName == 'Activity Monitoring'\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.timestamp | date:'dd MMM, YYYY'}}</span></p>\r\n </div>\r\n <div [class]=\"fileNotReceivedStatuses.includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined && (!['Unattended Detection','Activity Monitoring'].includes(this.checklistName) || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div [class]=\"fileNotReceivedStatuses.includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined && (!['Unattended Detection','Activity Monitoring'].includes(this.checklistName) || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downtime}} Mins </span></p>\r\n </div>\r\n \r\n <div class=\"col-md-6\" *ngIf=\"detection.detectionTime_afterTaskSubmission\">\r\n <h3 class=\"uni-title\">Detection Time (After Task Submission)</h3>\r\n </div>\r\n <div class=\"col-md-6\" *ngIf=\"detection.detectionTime_afterTaskSubmission\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime_afterTaskSubmission}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.detectionOn\">\r\n <h3 class=\"uni-title\">Detection On</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection.detectionOn\">\r\n <p class=\"uni-subtitle\">:<span class=\"ms-3\">{{detection.detectionOn}}</span></p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='inventorycount'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}} </span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\" *ngIf=\"detection?.car_count\">No of\r\n cars :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.car_count}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='numberplateinfo'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_license_id\">Number Plate :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.car_license_id}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Entry Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='carsattended'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.interacted_person_count\">Number of\r\n People Interacted :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.interacted_person_count}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-6 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_reg_number\">Number Plate :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection?.car_reg_number}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_reg_number\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection?.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-6 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.interacted_duration_in_secs\">Time\r\n spent :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.interacted_duration_in_secs}}\r\n Mins</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='vehicle_check_in'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Slot :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.slot_id}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='outsidebusinesshoursqueuetracking'\">\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatus\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!detection?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <ng-template #noDetectionStatus>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\"> :\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"!detection?.Flag\">Not\r\n Breached</span>\r\n </p>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.Date|date:'dd-MM-yyyy'\r\n }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection Count</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.detections.length}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection at</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mt-2\"\r\n *ngIf=\"detection.path && detection.path !== null && detection.path !== undefined && detection.path !== ''\">\r\n <img class=\"w-100 h-500px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n alt=\"\">\r\n <div *ngIf=\"galleryForm.value.sourceCheckList_id !== 'employeemonitoring'\" class=\"text-center mt-3\"> {{this.checklistName}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n <div\r\n *ngIf=\"galleryForm.value.sourceCheckList_id === 'outsidebusinesshoursqueuetracking'\">\r\n <div class=\" my-3 mt-5\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <ul class=\"row ps-2\">\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='outsidebusinesshoursqueuetracking'\">\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\"\r\n *ngIf=\"detection?.detectionStatus\"> :\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Detected'\">Detected</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Detected'\">Not\r\n Detected</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title text-end\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.Date}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection Count</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.detections.length}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection at</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">:\r\n <span\r\n *ngFor=\"let detectionAt of detection.detections; let i=index\">\r\n <span class=\"ms-3 badge backgroundGray\"\r\n *ngIf=\"i < 5\">\r\n {{detectionAt}}\r\n </span>\r\n </span>\r\n <span *ngIf=\"detection.detections.length > 5\"\r\n class=\"ms-3 badge backgroundGray\">\r\n +{{ detection.detections.length - 5 }}\r\n </span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"mediaGridChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <div class=\" my-3 mt-5\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-1\">:</div>\r\n <div class=\"col-md-8\">\r\n <p class=\"uni-subtitle\"> {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <ul class=\"row ps-2\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"mediaGridChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <div class=\"snapcard\">\r\n <!-- Giva (107) Employee Count Detection: media-first design -->\r\n <div *ngIf=\"isGivaEmpCount\" class=\"row w-100\">\r\n <div class=\"col-md-12 my-2 mb-4\" *ngIf=\"detection?.path\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\" alt=\"\">\r\n </div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.storeName}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{['Offline','Files Not Received'].includes(detection?.detectionStatus) ? 'Offline \u2013 No data Received from store' : detection?.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.downtime}} mins</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.employee_count != null && !['Offline','Files Not Received'].includes(detection?.detectionStatus)\"><h3 class=\"uni-title\">Staff Present</h3></div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.employee_count != null && !['Offline','Files Not Received'].includes(detection?.detectionStatus)\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.employee_count}}</span></p></div>\r\n </div>\r\n <div *ngIf=\"!isGivaEmpCount\" class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-12 my-2\" *ngIf=\"detection?.path && galleryForm.value.sourceCheckList_id == 'employeeCount'\">\r\n <div class=\"\" *ngIf=\"detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n <div class=\"\" *ngIf=\"!detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Store Name</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-7\">{{ detection.storeName }}</span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection.detectionTime\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Detection Time</span> <span class=\"col-1\">:</span>\r\n <span class=\"col-md-7\">\r\n\r\n <span class=\"badge badge-light-primary\">{{detection.detectionTime}}</span>\r\n </span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\">\r\n \r\n <h3 class=\"uni-title row\" >\r\n <ng-container *ngIf=\"detection?.detectionStatus&&galleryForm.value.sourceCheckList_id != 'employeeCount'\">\r\n\r\n <span class=\"label col-md-4\">Detection Status</span><span class=\"col-1\">:</span>\r\n <span class=\"col-md-2\">\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not Breached</span>\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'angle changed'\">Angle Changed</span>\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"['Offline','Files Not Received'].includes(detection.detectionStatus)\">Files Not Received</span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"galleryForm.value.sourceCheckList_id === 'employeeCount'\">\r\n\r\n <span class=\"label col-md-4\">Employee Count</span><span class=\"col-1\">:</span>\r\n <span class=\"col-md-2\">\r\n <span class=\"badge badge-light-primary\" *ngIf=\"detection.employee_count\">{{detection.employee_count}}</span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"select!=='staffgrouping'&&detection?.downtime != null && detection?.downtime != undefined\">\r\n\r\n <span class=\"label col-md-2\">Downtime</span> <span class=\"col-1\">:</span>\r\n <span\r\n class=\"col-md-2\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span>\r\n </ng-container>\r\n \r\n </h3>\r\n </div>\r\n \r\n <div class=\"col-md-12\" *ngIf=\"detection?.configuredStoreTime\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Configured Store Time</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-3\"><span class=\"badge badge-num-muted\">{{detection.configuredStoreTime}}</span></span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection.streamId\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Camera Name & Stream ID</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"cursor-pointer col-md-5\" (click)=\"cameraView(detection.StoreID)\"><span class=\"badge badge-num-muted\">{{detection.cameraName}}{{detection.streamId}}<span class=\"ms-2\" ><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n<path d=\"M12 8.66667V12.6667C12 13.0203 11.8595 13.3594 11.6095 13.6095C11.3594 13.8595 11.0203 14 10.6667 14H3.33333C2.97971 14 2.64057 13.8595 2.39052 13.6095C2.14048 13.3594 2 13.0203 2 12.6667V5.33333C2 4.97971 2.14048 4.64057 2.39052 4.39052C2.64057 4.14048 2.97971 4 3.33333 4H7.33333M10 2H14M14 2V6M14 2L6.66667 9.33333\" stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg></span></span></span></h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"galleryForm.value.sourceCheckList_id === 'halfshutter' && headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Scheduled Employee</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-7\">\r\n @if(detection.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted\" *ngFor=\"let emp of detection.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted\">NA</span>\r\n }\r\n </span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12 my-2\" *ngIf=\"detection?.path && galleryForm.value.sourceCheckList_id != 'employeeCount'\">\r\n <div class=\"\" *ngIf=\"detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n <div class=\"\" *ngIf=\"!detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"px-4 my-5\" *ngIf=\"videoChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n\r\n <div class=\"my-3 mt-5\" *ngFor=\"let item of customerunattendedData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{this.checklistName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"!isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum && select!=='customerunattended'\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum && select!=='customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n </div>\r\n <ul class=\"row w-100 ps-2\" [ngClass]=\"(isGivaScrum || isGivaCustomerUnattended ) ? '' : 'margin-top-side'\">\r\n <li class=\"qa-heading\"> </li>\r\n <div class=\"row\">\r\n <div class=\"col-md-12\" [ngClass]=\"(select === 'customerunattended' || isStoreMopping) ? 'card my-3' : ''\" *ngFor=\"let detection of item.imagesData\">\r\n <!-- Store Mopping: media first, then details below (matches Mobile Usage design) -->\r\n <div class=\"mt-5 mb-4\" *ngIf=\"isStoreMopping || select === 'customerunattended'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection?.video_path?.trim()\">\r\n </video>\r\n </div>\r\n <!-- Store Mopping: dedicated details block below the media (matches target design) -->\r\n <div class=\"row px-4 mt-5 margin-left-side\" *ngIf=\"isStoreMopping\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Configured Time</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.configTime}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.date\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.date\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection?.date | date:\"dd MMM YYYY\"}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"detection.detectionStatus == 'Offline' ? 'col-md-4' : 'col-md-3'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus == 'Offline' ? 'Offline - No data received from store' : detection.detectionStatus}}</span></p>\r\n </div>\r\n <div [class]=\"detection.detectionStatus == 'Offline' ? 'col-md-2' : 'col-md-3'\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p>\r\n </div>\r\n </div>\r\n <!-- Activity Monitoring: media-first layout (matches target design) -->\r\n <!-- <ng-container *ngIf=\"isActivityMonitoring\">\r\n <div class=\"snapcard mb-4\">\r\n \r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\"></video>\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Cust ID</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\" *ngIf=\"detection?.customer_id\">{{detection.customer_id}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Activity Type</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.activityType}}</span></p></div>\r\n </div>\r\n </ng-container>\r\n \r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Detection</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container> -->\r\n <!-- Giva (107) Customer unattended: media-first design -->\r\n <ng-container *ngIf=\"isGivaCustomerUnattended\">\r\n <div class=\"snapcard mb-4\">\r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\" *ngIf=\"detection?.video_path\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\"></video>\r\n </div>\r\n <div class=\"w-100 mb-4\" *ngIf=\"!detection?.video_path && detection?.path\">\r\n <img class=\"w-100 h-450px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\" alt=\"\">\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Cust ID</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\" *ngIf=\"detection?.customer_id\">{{detection.customer_id}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Date</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Entry Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-num-muted\">{{detection.customer_entry_time || detection.entry_time}}</span></p></div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Date</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <!-- Giva (107) Store Huddle Adherence (scrum): video-first design -->\r\n <ng-container *ngIf=\"isGivaScrum\">\r\n <div class=\"snapcard mb-4\">\r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\"></video>\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Configured Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{formatTimeRange12h(detection.configTime)}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div [class]=\"detection?.duration ? 'col-md-3' : 'col-md-9'\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\"><h3 class=\"uni-title\">Duration</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.duration}} Mins</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div [class]=\"(detection?.downTime != null && detection?.downTime != undefined) ? 'col-md-3' : 'col-md-9'\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime != null && detection?.downTime != undefined\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime != null && detection?.downTime != undefined\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Configured Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{formatTimeRange12h(detection.configTime)}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{formatDetectionDate(detection.date)}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <div class=\"row px-4 mt-5 margin-left-side\"\r\n *ngIf=\"select!=='suspiciousactivity' && !isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum\">\r\n <div class=\"col-md-3\" *ngIf=\"select === 'customerunattended'\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"select === 'customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatusCard\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <ng-template #noDetectionStatusCard>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.Answer\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatus\">\r\n <p class=\"uni-subtitle\">:\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Answer==='rejected'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"detection?.Answer==='approved'\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <ng-template #noDetectionStatus>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.Answer\">\r\n <p class=\"uni-subtitle\">:\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.Answer==='rejected'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.Answer==='approved'\">Not\r\n Breached</span>\r\n </p>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.date|date:'dd-MM-yyyy' }}\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.zoneName && select!=='customerunattended'\">\r\n <h3 class=\"uni-title\">Zone Name</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.zoneName && select!=='customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.zoneName }}\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.configTime\">\r\n <h3 class=\"uni-title\">Configured Time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.configTime\">\r\n <p class=\"uni-subtitle \">: <span\r\n class=\"ms-3\">{{detection.configTime }}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\">\r\n <h3 class=\"uni-title\">Duration</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.duration }} Mins </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downTime }} Mins </span>\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_id\">\r\n <h3 class=\"uni-title\">Cust ID</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_id\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-primary\">{{detection.customer_id }}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_entry_time\">\r\n <h3 class=\"uni-title\">Entry time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_entry_time\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-default\">{{detection.customer_entry_time }}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_exit_time && headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title\">Exit time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_exit_time && headerFilters?.client =='11'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-default\">{{detection.customer_exit_time }}</span>\r\n </p>\r\n </div>\r\n </div>\r\n <div class=\"card-header border-0 min-h-45px px-0 my-0\" *ngIf=\"!isGivaCustomerUnattended && !isGivaScrum\">\r\n <h3 class=\"card-title\">\r\n <!-- <span class=\"me-3 store-title\">{{item.storeName}}</span> -->\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_id && select!=='customerunattended'\">Cust ID : <span\r\n class=\"ms-3\">{{detection.customer_id}}</span></span>\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.queue_id\">Queue ID : <span\r\n class=\"ms-3\">{{detection.queue_id}}</span></span>\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.optum_id\">Optom ID : <span\r\n class=\"ms-3\">{{detection.optum_id}}</span></span>\r\n <!-- <span class=\"ms-2 badge badge-light-default\" *ngIf=\"detection?.date\">Date : {{detection.date|date:'dd-MM-yyyy' }}</span> -->\r\n <!-- <span class=\"ms-3 badge badge-light-default\" *ngIf=\"detection?.configTime\">Inspection time : {{detection.configTime}}</span> -->\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.temp_id\">TempId : <span\r\n class=\"ms-3\">{{detection.temp_id}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.time_spend\">Timespend : <span\r\n class=\"ms-3\">{{detection.time_spend}}Mins</span></span>\r\n </h3>\r\n\r\n <!-- Switch toggle -->\r\n <div class=\"card-toolbar\">\r\n <div class=\"col-md-12 text-end\">\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.entry_time\">Entry time : <span\r\n class=\"ms-3\">{{detection.entry_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.exit_time\">Exit time : <span\r\n class=\"ms-3\">{{detection.exit_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.adherence_rate\">Adherence Rate : <span\r\n class=\"ms-3\">{{detection.adherence_rate}}</span></span>\r\n <span class=\"ms-3 badge badge-light-primary text-capitalize\"\r\n *ngIf=\"detection?.category\"> <span\r\n class=\"ms-3\">{{detection.category}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_entry_time && select!=='customerunattended'\">Entry time :\r\n <span\r\n class=\"ms-3\">{{detection.customer_entry_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_exit_time && select!=='customerunattended'\">Exit time : <span\r\n class=\"ms-3\">{{detection.customer_exit_time}}</span></span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"my-0\" *ngIf=\"select !=='eyetest' && !isStoreMopping && !isGivaScrum && !isGivaCustomerUnattended && select!=='customerunattended'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\"\r\n alt=\"\" *ngIf=\"detection.video_path\">\r\n </video>\r\n </div>\r\n <div class=\"my-0\" *ngIf=\"select ==='eyetest'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.EyeTestCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\">\r\n </video>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"select ==='storeopenandclose'\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name : </h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\"> {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 margin-top-side\" *ngFor=\"let store of storeOpencloseView\">\r\n <div class=\"mx-8 my-8\" *ngFor=\"let item of store.imagesData\">\r\n @if(item?.process_type == 'live') {\r\n <div class=\"snapcard\">\r\n <div class=\"row m-0 w-100\">\r\n <div class=\"col-12\">\r\n <div class=\"img mt-4 px-3 position-relative\" *ngIf=\"!item.openTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.openTime && item.type == 'open'\">\r\n <img class=\"mx-1 openclosesnapLiveIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/open.jpeg\"\r\n alt=\"open close snap\" *ngIf=\"item.s3_path != ''\"\r\n (click)=\"openSnapPopup(item, 'open')\">\r\n <!-- <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Opening Snap</div>\r\n <div class=\"snaptime\">{{item.openTime}} -\r\n {{item.date}} </div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.onopenTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.lateopenTimeFlag\">Late Open</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n <div class=\"col-12\">\r\n <div class=\"img mt-4 px-3 position-relative\"\r\n *ngIf=\"!item.closeTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.closeTime && item.type == 'close'&& item.s3_path != ''\">\r\n <img class=\"mx-1 openclosesnapLiveIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/close.jpeg\"\r\n alt=\"Checklist Video Player\" *ngIf=\"item.s3_path != ''\"\r\n (click)=\"openSnapPopup(item, 'close')\">\r\n <!-- <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Closing Snap</div>\r\n <div class=\"snaptime\">{{item.closeTime}} -\r\n {{item.date}}</div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.oncloseTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">Early Close</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"item?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_open\">\r\n <h3 class=\"uni-title\">Buffer for Open Time </h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_open\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.buffer_open }}\r\n mins</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_close\">\r\n <h3 class=\"uni-title\">Buffer for Close Time </h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_close\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.buffer_close }}\r\n mins</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span\r\n class=\"ms-1 badge badge-light-warning snapbadge\">{{item.type =='open' ? 'Store Open' : 'Store Close'}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"(item.reason == 'File Not Received' || item?.detectionStatus === 'Offline') ? 'col-md-9' : item?.detectionStatus === 'Not Breached' ? 'col-md-8':'col-md-4'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Breached' && item.reason != 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"(item?.detectionStatus === 'Breached' && item.reason == 'File Not Received') || item.detectionStatus == 'Offline'\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.detectionStatus && item?.detectionStatus !== 'Not Breached' && item.reason !== 'File Not Received'\">\r\n <h3 class=\"uni-title\">Breached Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.detectionStatus && item?.detectionStatus !== 'Not Breached' && item.reason !== 'File Not Received'\">\r\n <p class=\"uni-subtitle text-nowrap\" *ngIf=\"item.type == 'open'\">:\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.detectionStatus != 'Breached' && !item.Flag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.detectionStatus == 'Breached' && item.Flag\">Late Open</span>\r\n <!-- <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span> -->\r\n </p>\r\n <p class=\"uni-subtitle text-nowrap\" *ngIf=\"item.type == 'close'\">:\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.detectionStatus != 'Breached' && !item.Flag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.detectionStatus == 'Breached' && item.Flag\">Early Close</span>\r\n <!-- <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span> -->\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.detection_time\">\r\n <h3 class=\"uni-title\">Detection Time</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item?.detection_time\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{item.detection_time}} - {{item.date}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.downtime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{item.downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-3\">Scheduled Employee</span>\r\n <span class=\"value col-md-7\">\r\n <p class=\"uni-subtitle text-nowrap\">: \r\n @if(item.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted ms-3\" *ngFor=\"let emp of item.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted ms-3\">NA</span>\r\n }\r\n </p>\r\n </span>\r\n </h3>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n }\r\n @else {\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"store?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"store?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{store.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title ms-15\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-1 badge badge-light-warning\">{{item.type =='open' ? 'Store Open' : 'Store Close'}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"item.reason === 'File Not Received' ? 'col-md-5' : item.detectionStatus === 'Not Breached' ? 'col-md-4': 'col-md-3'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Breached' && item.reason !== 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Offline' || (item?.detectionStatus === 'Breached' && item.reason == 'File Not Received')\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason !== 'File Not Received'\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason !== 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date|date:'dd-MM-yyyy' }} </span></p>\r\n </div>\r\n <div class=\"col-md-12\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-3\">Scheduled Employee</span>\r\n <span class=\"value col-md-7\">\r\n <p class=\"uni-subtitle text-nowrap\">: \r\n @if(item.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted ms-3\" *ngFor=\"let emp of item.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted ms-3\">NA</span>\r\n }\r\n </p>\r\n </span>\r\n </h3>\r\n </div>\r\n <!-- <div class=\"col-md-4\" *ngIf=\"item?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.downtime\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div> -->\r\n </div>\r\n <div class=\"row m-0 w-100\">\r\n <!-- @for (item of store.imagesData; track item) { -->\r\n <div class=\"col-6\">\r\n <div class=\"img mt-4 px-3 position-relative\" *ngIf=\"!item.openTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.openTime && item.reason !== 'File Not Received'\">\r\n <img class=\"mx-1 openclosesnapIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/open.jpeg\"\r\n alt=\"open close snap\"\r\n (click)=\"openSnapPopup(item, 'open')\">\r\n <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Opening Snap</div>\r\n <div class=\"snaptime\">{{item.openTime}} -\r\n {{item.date}} <span class=\"ms-5 badge badge-light-danger\"\r\n *ngIf=\"item?.lateopenTimeFlag\">{{item.lateOpen}} mins Delay</span></div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.onopenTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.lateopenTimeFlag\">Late Open</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"img mt-4 px-3 position-relative\"\r\n *ngIf=\"!item.closeTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.closeTime && item.reason !== 'File Not Received'\">\r\n <img class=\"mx-1 openclosesnapIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/close.jpeg\"\r\n alt=\"Checklist Video Player\"\r\n (click)=\"openSnapPopup(item, 'close')\">\r\n <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Closing Snap</div>\r\n <div class=\"snaptime\">{{item.closeTime}} -\r\n {{item.date}} <span class=\"ms-2 badge badge-light-danger\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">{{item.earlyClose}} mins Early</span></div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.oncloseTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">Early Close</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- } -->\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n \r\n </div>\r\n </div>\r\n \r\n <div *ngIf=\"boximageChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"col-md-12\" *ngFor=\"let store of queueAlertView\">\r\n @if(select==='queuealert' && store.process_type == 'live') {\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{checklistName}}</p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <h3 class=\"uni-title\">Description:</h3>\r\n </div>\r\n <div class=\"col-md-9\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <p class=\"uni-subtitle\">{{checkListDescription}}</p>\r\n </div>\r\n </div>\r\n <div class=\"row m-0 w-100 \">\r\n <div class=\"col-12 mt-2\" *ngFor=\"let item of store.imagesData\">\r\n <div class=\"card bordercolor bg-secondary mt-8\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"item?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.date_timestamp\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.date_timestamp\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{item.date_timestamp }}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"(item.reason == 'File Not Received' || item?.detectionStatus === 'Offline') ? 'col-md-9' : item?.detectionStatus === 'Not Breached' ? 'col-md-8':'col-md-4'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.status === 'Breached' && item.reason != 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.status === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"(item?.status === 'Breached' && item.reason == 'File Not Received') || item.status == 'Offline'\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.Downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.Downtime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{item.Downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n <!-- <div class=\"text-start ms-5 mt-2 mb-5\">\r\n <div *ngIf=\"item.zone\">\r\n <span\r\n class=\"btn btn-secondary rounded-lg p-2\">{{item.zone}}</span>\r\n </div>\r\n\r\n <div class=\"mt-3 fw-semibold\">{{ item.date_timestamp }}</div>\r\n <div *ngIf=\"select==='boxalert'\" class=\"mt-3 fw-semibold\">Empty shelves : {{ item.emptyBoxCount }}</div>\r\n </div> -->\r\n <img class=\"openclosesnapLiveIMG\" (click)=\"openModel(item)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{item.path}}\" alt=\"\">\r\n\r\n </div>\r\n </div>\r\n </div>\r\n }@else {\r\n <div class=\"row px-4 mt-5\" *ngIf=\"showmulti\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{store?.storeName}} |\r\n {{store?.city}},{{store?.state}},{{store?.country}} </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n \r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{checklistName}}</p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <h3 class=\"uni-title\">Description:</h3>\r\n </div>\r\n <div class=\"col-md-9\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <p class=\"uni-subtitle\">{{checkListDescription}}</p>\r\n </div>\r\n \r\n </div>\r\n <div class=\"row m-0 w-100 \">\r\n <div class=\"col-4 mt-2\" *ngFor=\"let item of store.imagesData\">\r\n <div class=\"card bordercolor bg-secondary mt-8\">\r\n <div class=\"text-start ms-5 mt-2 mb-5\">\r\n <!-- <div *ngIf=\"item.zone\">\r\n <span\r\n class=\"btn btn-secondary rounded-lg p-2\">{{item.zone}}</span>\r\n </div> -->\r\n \r\n <div class=\"mt-3 fw-semibold\">{{ item.date_timestamp }}</div>\r\n <div *ngIf=\"select==='boxalert'\" class=\"mt-3 fw-semibold\">Empty shelves : {{ item.emptyBoxCount }}</div>\r\n </div>\r\n <img class=\"w-100 h-250px rounded-bottom\" (click)=\"openModel(item)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{item.path}}\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n\r\n <!-- ===== Occupancy Detection body (static cards; reuses existing left/right panels) ===== -->\r\n <div *ngIf=\"select === 'occupancyDetection'\" class=\"occ-body\">\r\n <div class=\"text-center\" *ngIf=\"clientData?.logo && clientData?.logo !== ''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{ checklistName }}</p>\r\n </div>\r\n </div>\r\n <div class=\"row m-0 w-100\">\r\n <div class=\"col-4 mt-2\" *ngFor=\"let card of occupancyData.cards\">\r\n <div class=\"occ-card mt-8\">\r\n <div class=\"occ-card-head\">{{ card.storeCode }}</div>\r\n <div class=\"occ-card-img-wrap\">\r\n <!-- Offline: gray placeholder with camera-slash icon -->\r\n <div class=\"occ-card-offline\" *ngIf=\"card.status === 'Offline'\">\r\n <svg width=\"64\" height=\"64\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <circle cx=\"12\" cy=\"12\" r=\"10.25\" stroke=\"#B42318\" stroke-width=\"1.5\" />\r\n <path d=\"M4.5 4.5L19.5 19.5\" stroke=\"#B42318\" stroke-width=\"1.5\"\r\n stroke-linecap=\"round\" />\r\n <path\r\n d=\"M9.5 8.25H10.2L11 7H13L13.8 8.25H14.5C15.33 8.25 16 8.92 16 9.75V13.5M16 16C16 16 15.33 16 14.5 16H8.5C7.67 16 7 15.33 7 14.5V9.75C7 9.2 7.3 8.72 7.74 8.46\"\r\n stroke=\"#B42318\" stroke-width=\"1.5\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <circle cx=\"11.5\" cy=\"12\" r=\"2\" stroke=\"#B42318\" stroke-width=\"1.5\" />\r\n </svg>\r\n </div>\r\n <img class=\"occ-card-img\" *ngIf=\"card.status !== 'Offline'\"\r\n src=\"{{ card.image }}\" alt=\"{{ card.storeCode }}\">\r\n </div>\r\n <div class=\"occ-card-body\">\r\n <div class=\"occ-card-time\">{{ card.capturedAt }}</div>\r\n <div class=\"occ-card-seats\" *ngIf=\"card.status !== 'Offline'\">Empty Seats : <strong>{{ card.emptySeats }}</strong></div>\r\n <span class=\"occ-status-badge\" [ngClass]=\"occupancyStatusClass(card.status)\">\r\n {{ card.status }}\r\n <span class=\"occ-badge-icon\"\r\n *ngIf=\"card.status === 'Offline'\"\r\n [ngbTooltip]=\"offlineTip\"\r\n placement=\"top\" container=\"body\" triggers=\"hover focus\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M6 8V6M6 4H6.005M11 6C11 8.76142 8.76142 11 6 11C3.23858 11 1 8.76142 1 6C1 3.23858 3.23858 1 6 1C8.76142 1 11 3.23858 11 6Z\"\r\n stroke=\"#B42318\" stroke-width=\"1.5\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <ng-template #offlineTip>Offline \u2013 No data Received from store</ng-template>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <lib-pagination *ngIf=\"!viewloading && !viewnoData && select !== 'occupancyDetection'\" [itemsPerPage]=\"limit\"\r\n [currentPage]=\"offset\" [totalItems]=\"totalCount\" [paginationSizes]='paginationSizes'\r\n [pageSize]=\"limit\" (pageChange)=\"onPageChangeview($event)\"\r\n (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n\r\n <lib-pagination *ngIf=\"select === 'occupancyDetection'\" [itemsPerPage]=\"1\"\r\n [currentPage]=\"occupancyCurrentPage\" [totalItems]=\"occupancyData.totalItems\"\r\n [paginationSizes]=\"[1]\" [pageSize]=\"1\"\r\n (pageChange)=\"goToOccupancyPage($event)\"></lib-pagination>\r\n </section>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!showsidenav\" (click)=\"sidenav()\" class=\"backButtonleft text-center pt-1 cursor-pointer\">\r\n <svg class=\"mt-2 ms-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path\r\n d=\"M9.72714 12.6365L13.3635 9.00013L9.72714 5.36377M4.63623 12.6365L8.27259 9.00013L4.63623 5.36377\"\r\n stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"row card mx-0 p-3\" *ngIf=\"galleryForm.get('type')?.value != 'aiChecklist'\">\r\n <div class=\"col-md-12 text-end\">\r\n <button\r\n class=\"btn btn-sm border-primary1\"\r\n [disabled]=\"!approvalStatus\"\r\n (click)=\"onApproveChecklistClick()\">\r\n Approve\r\n </button>\r\n </div>\r\n</div>\r\n<ng-template #zoomPopup let-model>\r\n <div class=\"p-8\">\r\n <div class=\"modal-header pt-0 ps-1 pe-0\">\r\n <div>\r\n <div class=\"text-start mt-2\">\r\n <div *ngIf=\"viewImage.zone\">\r\n <span class=\"btn btn-secondary rounded-lg p-2\">{{viewImage.zone}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.emptyBoxCount\">\r\n <span>Empty shelves : {{viewImage.emptyBoxCount}}</span>\r\n </div>\r\n\r\n <div *ngIf=\"viewImage.entry_time\">\r\n <span>Entry Time : {{viewImage.entry_time}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.exit_time\">\r\n <span>Exit Time : {{viewImage.exit_time}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.temp_id\">\r\n <span>Temp Id : {{viewImage.temp_id}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.time_spend\">\r\n <span>Time Spend : {{viewImage.time_spend}} Mins</span>\r\n </div>\r\n\r\n <div class=\"mt-2\" *ngIf=\"viewImage.threshold&&viewImage.Dwelltime\">\r\n <p>If the queue exceeds {{viewImage.threshold}} people and wait time surpasses\r\n {{viewImage.Dwelltime}} minutes, an alert will be triggered</p>\r\n </div>\r\n <div class=\"mt-3 fw-semibold\">{{ viewImage.date_timestamp }}</div>\r\n </div>\r\n\r\n </div>\r\n <div data-bs-dismiss=\"modal\">\r\n <!-- <span class=\"stream fw-semibold text-nowrap me-5\" *ngIf=\"camera.height && camera.width\"> Resolution: {{camera.height}} X {{camera.width}}</span> -->\r\n <span class=\"btn btn-sm btn-icon btn-active-color-primary me-0\" (click)=\"model.dismiss()\"><svg\r\n width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"viewImage.path\" class=\"mt-2 overflow-auto\">\r\n <img class=\"rounded-4 mt-5 img-popup-src w-100\" src=\"{{environment.TraxAIchecklistCDN}}{{viewImage.path}}\">\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #proofPopup let-modal>\r\n <div class=\"modal-header border-0 align-items-center pb-2\">\r\n <h4 class=\"modal-title fw-bold mb-0\">Verification Details</h4>\r\n <span class=\"btn btn-sm btn-icon btn-active-color-primary me-0 cursor-pointer\" (click)=\"modal.dismiss()\">\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"modal-body pt-0\">\r\n <div *ngIf=\"proofData?.userImage\">\r\n <div class=\"title-ref my-3\">Captured Photo</div>\r\n <img class=\"w-100 h-350px rounded cursor-pointer\" [src]=\"environment.TraxAnswerCDN + proofData.userImage\" alt=\"Captured Photo\" style=\"object-fit:contain\">\r\n </div>\r\n <div class=\"row mt-5\" *ngIf=\"proofData?.userSignature\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Name :</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">{{proofData?.userSignature}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [".gallery-card{padding:24px;border-radius:12px;background:#fff}.gallery-card .header{color:#101828;font-size:18px;font-weight:500;line-height:28px}.img{border-radius:10px;border:1px solid var(--Gray-500, #667085);background:var(--Gray-100, #F2F4F7);width:100%;height:230px}.prvtxt{color:var(--Gray-500, #667085);font-family:Inter;font-size:20px;font-style:normal;font-weight:700;line-height:20px;letter-spacing:-.4px}.refreshtxt{color:var(--Gray-400, #98A2B3);font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px}::ng-deep .applyBtn{display:none!important}::ng-deep .custom-height-modal .modal-dialog{max-height:80vh;height:80vh}::ng-deep .custom-height-modal .modal-content{overflow:auto;max-height:100%}:host::ng-deep .md-drppicker .btn{line-height:10px!important}:host::ng-deep .md-drppicker.shown.drops-down-right{transform-origin:0 0;width:560px!important}:host::ng-deep .daterangepicker-input+.ngx-daterangepicker-material .applyBtn{display:none}:host::ng-deep .md-drppicker.drops-down-right.ltr.show-ranges.shown{top:65px!important}:host::ng-deep .md-drppicker.drops-down-right.ltr.double.show-ranges.shown{top:65px!important;right:-475px!important;left:unset!important;height:400px!important}:host::ng-deep .md-drppicker .btn{border-radius:8px!important;border:1px solid var(--Primary-600, #00A3FF)!important;background:var(--Primary-600, #00A3FF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--White, #FFF)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}:host::ng-deep .md-drppicker .ranges ul li button{padding:12px 16px;width:160px;color:var(--Gray-700, #344054);font-size:14px;font-weight:400;line-height:20px;background:none;border:none;text-align:left;cursor:pointer}:host::ng-deep .md-drppicker td.active,:host::ng-deep .md-drppicker td.active:hover{background-color:#029cf4!important;border-radius:20px!important;color:var(--White, #FFF)!important;text-align:center!important;font-size:14px!important;font-weight:500!important;line-height:20px}:host::ng-deep .md-drppicker.ltr .ranges{float:left;margin-top:10px!important}:host::ng-deep .md-drppicker td.in-range{background:var(--Primary-50, #EAF8FF)}:host::ng-deep .md-drppicker .ranges ul li button.active{background:var(--Primary-50, #EAF8FF)!important;border-radius:8px!important;color:var(--Primary-700, #009BF3);font-size:14px!important;font-weight:500!important;line-height:20px!important}:host::ng-deep table th,:host::ng-deep table td{width:40px!important;height:40px!important;padding:10px 8px!important}:host::ng-deep .md-drppicker td.available.prev,:host::ng-deep .md-drppicker th.available.prev{background-image:url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMy43IDYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDMuNyA2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxwYXRoIGQ9Ik0zLjcsMC43TDEuNCwzbDIuMywyLjNMMyw2TDAsM2wzLTNMMy43LDAuN3oiLz4NCjwvZz4NCjwvc3ZnPg0K)!important;background-repeat:no-repeat!important;background-size:.5em!important;background-position:center!important}:host::ng-deep .md-drppicker td.available.next,:host::ng-deep .md-drppicker th.available.next{background-image:url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMy43IDYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDMuNyA2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxwYXRoIGQ9Ik0zLjcsMC43TDEuNCwzbDIuMywyLjNMMyw2TDAsM2wzLTNMMy43LDAuN3oiLz4NCjwvZz4NCjwvc3ZnPg0K)!important;background-repeat:no-repeat!important;background-size:.5em!important;background-position:center!important}:host::ng-deep table th{border-bottom:0px solid var(--Gray-200, #EAECF0)!important;background:transparent!important;color:var(--Gray-700, #344054)!important;text-align:center;font-size:16px!important;font-weight:500!important;line-height:24px}:host::ng-deep .md-drppicker .btn.btn-default{border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize;margin-right:10px!important}:host::ng-deep .md-drppicker td.available.invalid-date{text-decoration:line-through;pointer-events:none;color:#a9a9a9}:host::ng-deep .md-drppicker td.available.today:not(.invalid-date){text-decoration:unset;pointer-events:unset;color:unset}.btn-primary{line-height:18px!important}.checkbox-label{color:#344054;font-size:14px;font-weight:500;line-height:20px;cursor:pointer}.checklist-left .checklist-title{overflow:hidden;color:var(--Black, #101828)!important;text-overflow:ellipsis;font-size:18px!important;font-weight:500;line-height:28px}.checklist-left .checklist-text{overflow:hidden;color:var(--Black, #101828)!important;text-overflow:ellipsis;font-size:12px!important;font-weight:400!important;line-height:18px}.section{display:inline-block;width:600px;white-space:nowrap;outline:none!important;border:none!important;box-shadow:none!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--Black, #101828)!important;font-size:16px!important;font-weight:500!important}.card hr{width:-webkit-fill-available}.editablecontent{color:var(--Gray-700, #344054)!important;font-size:16px!important;font-weight:400!important;line-height:24px}.rotate{transform:rotate(180deg);transition:1s}.question-left{color:var(--Gray-700, #344054)!important;font-size:16px;font-weight:400;line-height:24px}.view-all{padding:12px!important;border-radius:6px!important;background:var(--Primary-50, #EAF8FF)!important;color:var(--Primary-500, #33B5FF)!important;font-size:16px!important;font-weight:600!important;line-height:24px;text-decoration-line:underline!important}.view-questions{padding:12px!important;border-radius:6px!important;color:var(--Primary-500, #33B5FF)!important;font-size:16px!important;font-weight:600!important;line-height:24px;text-decoration-line:underline!important}.iconsize{width:110px;height:110px}.margin-left-side{margin-left:-14px}.margin-top-side{margin-top:-15px}input[type=checkbox]{width:16px!important;height:16px!important;margin:0;border-radius:4px!important;-webkit-appearance:none;-moz-appearance:none;-o-appearance:none;appearance:none;outline:1px solid var(--gray-300, #D0D5DD);box-shadow:none;font-size:.8em;text-align:center;line-height:1em;background:#fff}input[type=checkbox]:checked{outline:1px solid var(--primary-600, #00A3FF);background-color:var(--primary-50, #EAF8FF)}input[type=checkbox]:checked:after{content:\"\";transform:rotate(45deg);border-bottom:2px solid #00A3FF;border-right:2px solid #00A3FF;display:inline-block;width:.5em;padding-left:0!important;padding-top:8px;padding-right:5px}.uni-title{color:#000!important;font-size:17px!important;font-weight:600!important;line-height:30px;white-space:nowrap}.uni-subtitle{color:#000!important;font-size:17px!important;font-weight:400!important;line-height:28px}.qa-heading{color:var(--Black, #101828)!important;font-size:18px!important;font-weight:700!important;line-height:28px;list-style:none}.qa-bodrer{padding:16px!important;border-radius:8px!important;border:1px solid var(--Gray-200, #EAECF0)!important;background:var(--text-primary, #FFF)!important;box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280f!important}.title-ref{color:var(--Gray-900, #101828)!important;font-size:16px!important;font-weight:400!important;line-height:24px}.btn-outline-primary{border-radius:8px!important;border:1px solid var(--Primary-500, #33B5FF)!important;background:var(--Primary-50, #EAF8FF)!important;box-shadow:0 1px 2px #1018280d!important;padding:calc(.7rem + 0px) calc(1.5rem + 1px)!important}.Partially{color:#000;font-size:18px!important;font-style:italic!important;font-weight:500;line-height:28px}.task-remarks{color:#000!important;font-size:18px!important;font-weight:400!important;line-height:28px}.backButtonright{border-radius:1000px!important;background:var(--text-primary, #FFF)!important;padding:12px!important;box-shadow:0 12px 16px -4px #10182814,0 4px 6px -2px #10182808!important;box-shadow:0 8.727px 11.636px -2.909px #10182814,0 2.909px 4.364px -1.455px #10182808!important;position:absolute;top:30px;right:-10px;z-index:0}.backButtonleft{border-radius:1000px!important;background:#fff;padding:14px!important;border:var(--Gray-300, #D0D5DD);box-shadow:0 8.727px 11.636px -2.909px #10182814,0 2.909px 4.364px -1.455px #10182808;position:absolute;top:30px;left:-20px;z-index:5}img.img-logo{width:100%;height:400px!important}.recap-img{width:100%;height:400px;object-fit:cover!important}.img-src{width:30%!important;height:20%!important}.dropdownselect{padding:20px 10px}.dropdownbg{width:Fill(372px) px;height:Hug(40px) px;padding:8px 16px;gap:0px;border-radius:6px 0 0;justify-content:space-between;opacity:0px;background:#eaf8ff}.detectionright{color:var(--Primary-700, #009BF3)!important;text-align:center;font-size:14px!important;font-weight:500;line-height:14px;float:right!important;mix-blend-mode:multiply}.backgroundBorder{background:#eaf8ff!important;color:#00a3ff!important;padding:12px;border-radius:8px;font-weight:500;line-height:10px}.withoutbackground{padding:8px;font-weight:500;line-height:10px}.snapcard{display:flex;padding:12px;flex-direction:column;align-items:flex-start;gap:12px;align-self:stretch;border-radius:8px;border:1px solid var(--Gray-200, #EAECF0);background:var(--White, #FFF);box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280f}.snapheader{color:var(--Black, #101828);font-size:16px;font-style:normal;font-weight:600;line-height:24px}.snaptext{color:var(--Gray-900, #101828);font-size:16px!important;font-style:normal;font-weight:600!important;line-height:24px}.snaptime{color:var(--Gray-900, #101828);font-size:12px!important;font-style:normal;font-weight:500!important;line-height:22px}.snapbadge{text-align:center;font-size:14px!important;font-style:normal;font-weight:500!important;line-height:20px}.btn-resize{font-size:13px!important;height:29px!important;line-height:11px!important;padding:1px!important}.preview{position:absolute;top:30%;left:14%}.w-25{width:17%!important}.w-40{width:40%!important}.usage-detection{color:var(--Primary-700, #009BF3);text-overflow:ellipsis!important;font-size:16px!important;font-style:normal;font-weight:400;line-height:16px;width:220Px}.usage-text{color:var(--Gray-700, #344054);text-overflow:ellipsis;font-size:16px;font-style:normal;font-weight:400;line-height:17px}.h-450px{object-fit:contain!important}.store-title{color:var(--Black, #101828)!important;font-size:18px;font-weight:700;line-height:28px}.img-opc{width:100%!important;height:300px!important;border-radius:12px!important}.h-900px{min-height:auto!important;max-height:2800px!important}.select-wrapper{position:relative;display:inline-block;width:100%}.placeholder-overlay{position:absolute;color:var(--Gray-500, #667085);font-family:Inter;font-size:16px!important;font-style:normal;font-weight:400;top:10px;left:15px;pointer-events:none;font-size:1.1rem;z-index:1}.flagclour{color:red}.remarksTxt{margin-top:10px;font-family:Inter;font-size:18px;font-weight:400;line-height:28px;text-align:left;white-space:pre-line}.no-text-transform{text-transform:none!important}.border-val1{padding:8px 14px!important;border-radius:8px!important;border:1px solid var(--Primary-500, #33B5FF)!important;background:var(--Primary-50, #EAF8FF)!important;box-shadow:0 1px 2px #1018280d!important}.font-task{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.border-default{padding:8px 14px!important;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important}.font-defult-task{color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.nav-item .nav-link.active{border:none;border-radius:6px;background:var(--Primary-50, #EAF8FF);padding:8px 12px}.nav-item .nav-link:hover{border:none}.badge-num-primary{border-radius:16px!important;background:var(--Primary-50, #EAF8FF)!important;color:var(--Primary-700, #009BF3)!important;text-align:center;font-size:14px!important;font-style:normal;font-weight:500;line-height:20px;padding:2px 10px!important;mix-blend-mode:multiply!important}.badge-num-muted{border-radius:16px!important;background:var(--Primary-50, #F2F4F7)!important;color:var(--Gray-700, #344054)!important;text-align:center;font-size:14px;font-style:normal;font-weight:500;line-height:20px;padding:2px 10px!important;mix-blend-mode:multiply!important}.text-title{font-size:16px!important;font-weight:600!important;color:#101828!important;line-height:24px}.title-description{font-size:14px!important;font-weight:400;color:#101828!important;line-height:24px!important}.border-primary1{border-radius:8px!important;border:1px solid var(--Primary-600, #00A3FF)!important;background:var(--Primary-600, #00A3FF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--White, #FFF)!important;font-size:16px!important;font-weight:600;line-height:24px;text-transform:capitalize}.scroll-y{overflow-x:hidden;overflow-y:auto}.totalsize{width:18%}.view-detail{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.left-sidebar{position:sticky;top:0;width:33%;overflow:visible}.main-container{display:flex;align-items:flex-start}.right-content{flex-grow:1;width:67%}.bordercolor{border:1px solid var(--Gray-300, #D0D5DD)!important}.toastcard{border-radius:8px;background:var(--Primary-50, #EAF8FF);padding:8px 16px}.toasttext{overflow:hidden;color:var(--Primary-700, #009BF3);text-overflow:ellipsis;font-size:16px;font-style:normal;font-weight:500;line-height:24px}.btn-outline{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF);box-shadow:0 1px 2px #1018280d}.refreshtext{color:var(--Gray-700, #344054);font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}.collage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;height:450px;overflow-y:auto;grid-auto-rows:auto}.collage-tile{width:100%;height:100%}.collage-tile img{width:100%;height:100%!important;border-radius:6px}::ng-deep .my-own-styles .modal-dialog{max-width:600px!important}.bgDanger{color:var(--Error-700, #B42318);text-align:center;font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px;border-radius:16px;background:var(--Error-50, #FEF3F2)}.bgSuccess{color:var(--Success-700, #027A48);text-align:center;font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px;border-radius:16px;background:var(--Success-50, #ECFDF3)}.openclosesnapIMG{width:100%!important;height:205px!important;border-radius:30px!important}.openclosesnapLiveIMG{width:100%!important;height:400px!important;border-radius:30px!important}.backgroundGray{background:#f2f4f7!important}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;cursor:pointer;transition:all .7s ease;overflow:hidden}.icon-btn .btn-text{max-width:0;opacity:0;white-space:nowrap;overflow:hidden;transition:all .7s ease;color:#344054;font-size:14px}.icon-btn:hover .btn-text{max-width:120px;opacity:1;margin-left:6px}.video-wrapper{width:100%;height:450px;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.video-wrapper video{width:100%;height:100%;object-fit:contain;transition:all 20s ease}.video-wrapper.fullscreen-active{width:100vw!important;height:100vh!important;background:#000!important;overflow:hidden}.video-wrapper.fullscreen-active video{width:100vw!important;height:100vh!important;object-fit:contain!important;transform:none!important;background:#000!important}.video-wrapper:not(.fullscreen-active){width:100%;height:450px}.video-wrapper:not(.fullscreen-active) video{width:100%;height:100%}.badge.scoreBadge{background:#eaecf5;color:#363f72}.heightImage{height:218px!important}.occ-body{font-family:Inter,system-ui,sans-serif}.occ-body .col-4{display:flex}.occ-body .occ-card{background:#fff;border:1px solid #EAECF0;border-radius:12px;box-shadow:0 1px 3px #10182814;overflow:hidden;width:100%;display:flex;flex-direction:column}.occ-body .occ-card-head{margin:12px 12px 0;padding:10px 14px;background:#f2f4f7;border-radius:8px;font-size:15px;font-weight:500;color:#101828}.occ-body .occ-card-img-wrap{padding:12px}.occ-body .occ-card-img{width:100%;height:230px;object-fit:cover;border-radius:8px;display:block;background:#f2f4f7}.occ-body .occ-card-offline{width:100%;height:230px;border-radius:8px;background:#f2f4f7;display:flex;align-items:center;justify-content:center}.occ-body .occ-card-body{padding:0 14px 16px;flex:1 1 auto;display:flex;flex-direction:column;align-items:flex-start}.occ-body .occ-card-time{font-size:14px;font-weight:500;color:#101828;margin-bottom:12px}.occ-body .occ-card-seats{font-size:14px;color:#475467;margin-bottom:12px}.occ-body .occ-card-seats strong{color:#101828}.occ-body .occ-status-badge{margin-top:auto;display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:16px;font-size:13px;font-weight:500}.occ-body .occ-status-badge.occ-badge-breached,.occ-body .occ-status-badge.occ-badge-offline{background:#fef3f2;color:#b42318}.occ-body .occ-status-badge.occ-badge-default{background:#f2f4f7;color:#475467}.occ-body .occ-status-badge .occ-badge-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;font-size:13px;cursor:pointer}.occ-body .occ-status-badge .occ-badge-icon svg{pointer-events:none}\n"] }]
18166
+ args: [{ selector: 'lib-gallery', template: "<div *ngIf=\"notifyCount>0\" class=\"h-xl-100 flex-row flex-stack flex-wrap p-2\">\r\n <!-- toast card starts -->\r\n <div class=\"toastcard col-md-12 mb-4\">\r\n <div class=\"d-flex align-items-center justify-content-between w-100\">\r\n <span class=\"align-items-start\">\r\n <span class=\"toasttext d-block\"><span class=\"me-5\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"20\" viewBox=\"0 0 16 20\" fill=\"none\">\r\n <path\r\n d=\"M9.14234 2.4V1.6875C9.14234 1.03178 8.63166 0.5 7.99955 0.5C7.36744 0.5 6.85675 1.03178 6.85675 1.6875V2.4C4.21761 2.95033 2.28558 5.34649 2.28558 8.21875V8.91641C2.28558 10.6643 1.66918 12.3453 0.553532 13.6516L0.28869 13.9596C-0.0103044 14.3121 -0.0840396 14.8094 0.100307 15.2361C0.284654 15.6629 0.69281 15.9375 1.14279 15.9375H14.8563C15.3063 15.9375 15.7134 15.6629 15.8991 15.2361C16.0848 14.8094 16.0098 14.3121 15.7098 13.9596L15.4456 13.6516C14.3313 12.3453 13.7135 10.6643 13.7135 8.91641V8.21875C13.7135 7.94125 13.6952 7.66819 13.6597 7.40081C13.2676 7.54576 12.8432 7.625 12.4 7.625C10.4118 7.625 8.8 6.03001 8.8 4.0625C8.8 3.46778 8.88193 2.89289 9.14234 2.4C9.16417 2.40461 9.12061 2.39514 9.14234 2.4Z\"\r\n fill=\"#00A3FF\" />\r\n <path\r\n d=\"M6.38178 18.8061C6.81033 19.2514 7.39244 19.5 7.99955 19.5C8.57452 19.5 9.18877 19.2514 9.61732 18.8061C10.0459 18.3607 10.2851 17.7225 10.2851 17.125H5.71396C5.71396 17.7225 5.95323 18.3607 6.38178 18.8061Z\"\r\n fill=\"#00A3FF\" />\r\n <circle cx=\"13\" cy=\"3.5\" r=\"3\" fill=\"#F04438\" />\r\n </svg>\r\n </span>New Detection Found! Refresh Now to view new detection</span>\r\n </span>\r\n <button (click)=\"refreshnow()\" type=\"button\"\r\n class=\"btn-outline btn align-items-end text-nowrap ms-4 cursor-pointer\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_12165_62781)\">\r\n <path\r\n d=\"M19.1672 3.33172V8.33172M19.1672 8.33172H14.1672M19.1672 8.33172L15.3089 4.69838C14.1594 3.54817 12.6672 2.80271 11.0572 2.57434C9.44716 2.34597 7.80653 2.64706 6.38251 3.43225C4.9585 4.21744 3.82826 5.44418 3.1621 6.92761C2.49595 8.41104 2.32997 10.0708 2.68919 11.6568C3.0484 13.2427 3.91335 14.669 5.15368 15.7206C6.39401 16.7722 7.94254 17.3922 9.5659 17.4872C11.1893 17.5822 12.7995 17.147 14.154 16.2471C15.5085 15.3473 16.5339 14.0316 17.0756 12.4984\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_12165_62781\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg><span class=\"refreshtext ms-2\"></span> Refresh Now </button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"gallery-card po\">\r\n <div class=\"header mb-4\">Gallery</div>\r\n\r\n <form [formGroup]=\"galleryForm\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <div class=\"col-md-3 mb-3\">\r\n <div class=\"position-relative\">\r\n <span style=\"top: 20%;\" class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path\r\n d=\"M13.3333 1.66663V4.99996M6.66667 1.66663V4.99996M2.5 8.33329H17.5M4.16667 3.33329H15.8333C16.7538 3.33329 17.5 4.07948 17.5 4.99996V16.6666C17.5 17.5871 16.7538 18.3333 15.8333 18.3333H4.16667C3.24619 18.3333 2.5 17.5871 2.5 16.6666V4.99996C2.5 4.07948 3.24619 3.33329 4.16667 3.33329Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <input class=\"fx-date-range form-control ps-14 z-2\" style=\"min-width: 260px !important;\"\r\n type=\"text\" matInput ngxDaterangepickerMd [drops]=\"'down'\" [opens]=\"'right'\"\r\n placeholder=\"Select date range\"\r\n [alwaysShowCalendars]=\"false\" [keepCalendarOpeningWithRange]=\"true\" [showCancel]=\"false\"\r\n autocomplete=\"off\" [(ngModel)]=\"selectedDateRange\" [ngModelOptions]=\"{standalone: true}\"\r\n (datesUpdated)=\"datechange($event)\" (click)=\"resetValidation()\"\r\n (startDateChanged)=\"onStartDateChange($event)\" [isCustomDate]=\"isCustomDate\"\r\n [autoApply]=\"true\"\r\n [locale]=\"{ format: 'DD-MM-YYYY', firstDay: 1, monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] }\"\r\n name=\"daterange\" [readonly]=\"true\" />\r\n </div>\r\n </div>\r\n <div class=\"col-md-2 mb-4\">\r\n <lib-reactive-select formControlName=\"type\" [idField]=\"'value'\" [nameField]=\"'label'\"\r\n [data]=\"type\" (itemChange)=\"typeChange($event)\"></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-4 mb-4\">\r\n <lib-single-select [items]=\"checklists\" [multi]=\"false\" [searchField]=\"'checkListName'\"\r\n label=\"Select checklist\"\r\n [idField]=\"'_id'\" (selected)=\"checklistNamechange($event,false)\"\r\n [selectedValues]=\"[{checkListName:galleryForm.get('checklistName')?.value}]\"></lib-single-select>\r\n </div>\r\n <div class=\"col-md-3 mb-4\">\r\n <lib-reactive-select formControlName=\"answerType\" [isDisabled]=\"!showflag\" [idField]=\"'value'\"\r\n [nameField]=\"'label'\" [data]=\"answerType\"></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-2 mb-4\">\r\n\r\n <lib-reactive-select formControlName=\"filtertype\" [idField]=\"'value'\" [nameField]=\"'label'\"\r\n [data]=\"filtertype\" (itemChange)=\"filterChange($event)\"></lib-reactive-select>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Clusters'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('ClusterList')?.value?.length)\">\r\n Select cluster\r\n </div>\r\n <lib-group-select [items]=\"ClusterList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'groupName'\" [idField]=\"'groupName'\" (selected)=\"ongroupSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('ClusterList')?.value\">\r\n </lib-group-select>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Teams'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('TeamsList')?.value?.length)\">\r\n Select Teams\r\n </div>\r\n <lib-group-select [items]=\"TeamsList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'teamName'\" [idField]=\"'teamName'\" (selected)=\"onTeamsSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('TeamsList')?.value\">\r\n </lib-group-select>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Clusters'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('storeList')?.value?.length)\">\r\n Select Stores\r\n </div>\r\n <lib-stores-select [items]=\"storeList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'storeName'\" [idField]=\"'storeId'\" (selected)=\"onStoreSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('storeList')?.value\"></lib-stores-select>\r\n </div>\r\n </div>\r\n <div class=\"col-md-3 mb-4\" *ngIf=\"galleryForm.get('filtertype')?.value ==='Teams'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(galleryForm.get('userList')?.value?.length)\">\r\n Select users\r\n </div>\r\n <lib-stores-select [items]=\"userList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'userName'\" [idField]=\"'userName'\" (selected)=\"onUserSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('userList')?.value\"></lib-stores-select>\r\n </div>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <div class=\"d-flex justify-content-end\">\r\n <div class=\"me-5 w-100\" *ngIf=\"select === 'eyetest'\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"adults\">Adults</option>\r\n <option value=\"kids\">Kids</option>\r\n </select>\r\n </div>\r\n\r\n <div class=\"me-5 w-100\"\r\n *ngIf=\"breachFilterSelectTypes.includes(select)\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Breached\" *ngIf=\"!['activitymonitoring'].includes(select)\">Breached</option>\r\n <option value=\"Not Breached\" *ngIf=\"!['uniformdetection','mobileusagedetection','storehygienemonitoring','unattendeddetection','activitymonitoring'].includes(select)\">Not Breached</option>\r\n <option value=\"Offline\">Offline</option>\r\n </select>\r\n </div>\r\n <div class=\"me-5 w-100\"\r\n *ngIf=\"['staffgrouping','storehygienemonitoring','halfshutter','tvcompliance','customerunattended'].includes(galleryForm.value.sourceCheckList_id)\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\" (change)=\"onfilterChange($event)\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Breached\">Breached</option>\r\n <option value=\"Not Breached\">Not Breached</option>\r\n <option value=\"Offline\">Offline</option> \r\n </select>\r\n </div>\r\n <div class=\"me-5 w-100\" *ngIf=\"select === 'outsidebusinesshoursqueuetracking'\">\r\n <select class=\"form-select\" [(ngModel)]=\"category\"\r\n [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Detected\">Detected</option>\r\n <option value=\"Not Detected\">Not Detected</option>\r\n <option value=\"Offline\">Offline</option>\r\n </select>\r\n </div>\r\n <!-- <div class=\"me-5 w-100 text-start\" *ngIf=\"select === 'queuealert'\">\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\"\r\n *ngIf=\"!(galleryForm.get('zoneList')?.value?.length)\">\r\n Select Zone\r\n </div>\r\n <lib-stores-select [items]=\"zoneList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'value'\" [idField]=\"'key'\" (selected)=\"onzoneSelect($event)\"\r\n [selectedValues]=\"galleryForm.get('zoneList')?.value\"></lib-stores-select>\r\n </div>\r\n </div> -->\r\n <div class=\"me-5 w-50\" *ngIf=\"showflag\">\r\n <select class=\"form-select\" (change)=\"approveFilterChange($event)\"\r\n [(ngModel)]=\"approveFilter\" [ngModelOptions]=\"{standalone: true}\">\r\n <option value=\"all\">All</option>\r\n <option value=\"Approved\">Approved</option>\r\n <option value=\"notapproved\">Not-Approved</option>\r\n </select>\r\n </div>\r\n <span class=\"me-4 mt-3\" *ngIf=\"showflag\">\r\n <input formControlName=\"viewRedo\" change type=\"checkbox\" (click)=\"redoChanged($event)\"\r\n class=\"form-check-input cursor-pointer mt-1 me-2\" id=\"viewRedo\">\r\n <label class=\"checkbox-label\" for=\"viewRedo\">Re-do</label>\r\n </span>\r\n <span class=\"me-3 mt-3\" *ngIf=\"showflag&&galleryForm.value.type==='checklist'\">\r\n <input formControlName=\"viewFlag\" change type=\"checkbox\" (click)=\"flagChanged($event)\"\r\n class=\"form-check-input cursor-pointer mt-1 me-2\" id=\"viewFlag\">\r\n <label class=\"checkbox-label\" for=\"viewFlag\">Flag</label>\r\n </span>\r\n\r\n <a (click)=\"onSubmit()\" type=\"submit\" class=\"btn btn-primary px-4 \"><span>Apply</span></a>\r\n <!-- <a (click)=\"notify([])\" type=\"submit\" class=\"btn btn-primary px-4 \"><span>test</span></a> -->\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n </div>\r\n </form>\r\n</div>\r\n<div class=\"card my-2\">\r\n <div class=\"row main-container my-5 \">\r\n\r\n <div [ngClass]=\"showsidenav ? 'col-md-4 left-sidebar':'d-none'\" class=\"h-650px position-relative\">\r\n <div class=\"h-650px scroll-y\">\r\n <div class=\"card-body p-5\">\r\n <div class=\"checklist-left\">\r\n <div class=\"checklist-title\">{{checklistName}}</div>\r\n <div class=\"checklist-text\">{{checkListDescription}}</div>\r\n </div>\r\n <div *ngIf=\"loading\" class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"noData&&select === 'custom' || noData&&select === 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"w-75 h-300px\" src=\"./assets/tango/Icons/Nodata1.svg\" alt=\"\">\r\n <div class=\"nodata-title mt-0\">No data found</div>\r\n <div class=\"nodata-sub\">There is no result for this checklist</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"noData&&select !== 'custom'&&select !== 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata2.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No Detections found</div>\r\n <div class=\"nodata-sub\">There is no breaches for the selected period</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <section *ngIf=\"!noData && !loading\">\r\n\r\n <div *ngIf=\"select === 'custom'||select === 'task'\">\r\n <div class=\"text-end mt-10\">\r\n <!-- <button class=\"btn btn-outline w-25 me-3 btn-resize\" (click)=\"viewChecklists()\"> Reset </button> -->\r\n <button class=\"btn btn-outline w-25 me-3 btn-resize\"\r\n *ngIf=\"selectedSection.length>0||tempselectedSection.length>0\"\r\n (click)=\"onchecklistreset()\"> Reset </button>\r\n <button *ngIf=\"selectedSection.length>0||tempselectedSection.length>0\"\r\n class=\"btn btn-primary w-25 btn-resize\"\r\n (click)=\"selectsinglequestion()\">Apply</button>\r\n </div>\r\n <div class=\"my-6\" [ngClass]=\"selectedSection.length===0 ? 'view-all':'view-questions'\"\r\n style=\"cursor: pointer;\" (click)=\"onchecklistreset()\">\r\n View All Answers\r\n </div>\r\n <div class=\"mx-2\" *ngFor=\"let section of checklistData; let i=index;\">\r\n <div class=\"d-flex align-items-center justify-content-between mt-4\"\r\n style=\"cursor: pointer;\" (click)=\"accordian(i)\">\r\n <div class=\"fs-4 fw-bold section\" *ngIf=\"galleryForm.value.type==='checklist'\">\r\n {{section.sectionName}} {{getSectionCompliance(section.sectionName)}}</div>\r\n <hr class=\"mx-2\">\r\n <svg class=\"cursor-pointer\" [ngClass]=\"{'rotate' : show !== i}\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"25\" height=\"25\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path d=\"M5 7.5L10 12.5L15 7.5\" stroke=\"#667085\" stroke-width=\"1.67\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n <div *ngIf=\"show===i\" class=\"question-left\">\r\n <div cdkDropList [cdkDropListData]=\"section.questions\">\r\n <div *ngFor=\"let question of section.questions;let j=index;\"\r\n class=\"d-flex my-2 q-btn\" cdkDrag>\r\n <input id=\"label\" [(ngModel)]=\"question.checked\"\r\n (click)=\"selectedQuestion($event,section,question)\"\r\n class=\"form-check-input cursor-pointer mt-2 me-4\" type=\"checkbox\">\r\n <div class=\"editablecontent\" [ngClass]=\"question?.checked ? 'view-all':''\"\r\n style=\"cursor: pointer;\">\r\n {{question.qno}} . {{question.qname}}\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n <div *ngIf=\"combinedChecklist.includes(select)\">\r\n <div class=\"text-end mt-10\">\r\n <button class=\"btn btn-outline w-25 me-3 btn-resize\" (click)=\"onreset()\"> Reset\r\n </button>\r\n <button class=\"btn btn-primary w-25 btn-resize\" (click)=\"onview()\">Apply</button>\r\n </div>\r\n <div class=\"dropdownselect h-900px scroll-y\">\r\n <div class=\"d-flex justify-content-left \"\r\n [ngClass]=\"selectAll ? 'backgroundBorder':'withoutbackground'\">\r\n <input class=\"form-check-input cursor-pointer me-4\" type=\"checkbox\"\r\n [(ngModel)]=\"selectAll\" (click)=\"selectAllStore($event)\"> <span\r\n [ngClass]=\"selectAll ? 'usage-detection':'usage-text'\">Select All</span>\r\n </div>\r\n <!-- dropdownbg -->\r\n <div class=\"my-4\" *ngFor=\"let list of mobileusageDataList;let i=index\">\r\n <div (change)=\"updateCheck($event,list)\" class=\"d-flex align-items-center\"\r\n [ngClass]=\"list.checked ? 'backgroundBorder':'withoutbackground'\">\r\n <input id=\"label{{i}}\" class=\"form-check-input cursor-pointer me-4 flex-shrink-0\"\r\n type=\"checkbox\" [(ngModel)]=\"list.checked\">\r\n <label for=\"label{{i}}\" class=\"text-truncate mb-0\"\r\n [ngClass]=\"list.checked ? 'usage-detection':'usage-text'\">{{list?.storeName}}</label>\r\n <span class=\"badge badge-light-primary detectionright ms-auto flex-shrink-0 text-nowrap\"\r\n *ngIf=\"list.detection\">{{list.detection}} Detections</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n </div>\r\n\r\n\r\n\r\n\r\n\r\n </div>\r\n <div *ngIf=\"showsidenav\" (click)=\"sidenav()\" class=\"backButtonright text-center pt-1 cursor-pointer\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path d=\"M11 17L6 12L11 7M18 17L13 12L18 7\" stroke=\"#101828\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n </div>\r\n <div class=\"position-relative\"\r\n [ngClass]=\"showsidenav ? 'col-md-8 border border-bottom-0 border-top-0 border-left border-5 right-sidebar':'col-md-12'\">\r\n <div class=\"h-1000px scroll-y\">\r\n <!-- (select === 'custom' || select === 'task'||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo') -->\r\n <div class=\"card-header border-0 px-0 my-0\"\r\n *ngIf=\"!viewloading && !viewnoData\">\r\n <h3 *ngIf=\"!showsingle || (gs.userAccess | async)?.userType === 'tango'||!allapprovalStatus\"></h3>\r\n\r\n <div class=\" m-3\"\r\n *ngIf=\"canSelectAllTask(gs.userAccess | async)\">\r\n <div class=\"form-check\">\r\n <input [(ngModel)]=\"selectAllTask\"\r\n (click)=\"selectedAllTask($event,viewChecklistsData?.checklistAnswers[0],viewChecklistsData?.checklistAnswers[0].questionAnswer[0].questions[0],viewChecklistsData?.checklistAnswers[0]?.checklistInfo,viewChecklistsData?.checklistAnswers[0].questionAnswer[0])\"\r\n class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"flexCheckDefault\">\r\n <label class=\"ms-2\" for=\"flexCheckDefault\">\r\n Select All <span *ngIf=\"selectedRecordCount\">({{selectedRecordCount}} Records\r\n Selected)</span>\r\n </label>\r\n </div>\r\n\r\n\r\n\r\n </div>\r\n <div class=\"card-toolbar\">\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowCreateTaskToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\" class=\"icon-btn\"\r\n (click)=\"createMultipleTask('task')\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"\r\n fill=\"none\">\r\n <path\r\n d=\"M11.6654 1.66797H4.9987C4.55667 1.66797 4.13275 1.84356 3.82019 2.15612C3.50763 2.46868 3.33203 2.89261 3.33203 3.33464V16.668C3.33203 17.11 3.50763 17.5339 3.82019 17.8465C4.13275 18.159 4.55667 18.3346 4.9987 18.3346H14.9987C15.4407 18.3346 15.8646 18.159 16.1772 17.8465C16.4898 17.5339 16.6654 17.11 16.6654 16.668V6.66797M11.6654 1.66797L16.6654 6.66797M11.6654 1.66797V6.66797H16.6654M9.9987 15.0013V10.0013M7.4987 12.5013H12.4987\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n \r\n <span class=\"btn-text\">Create Task</span>\r\n </span>\r\n\r\n </div>\r\n\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowRedoExportToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\"\r\n (click)=\"createMultipleTask('redo')\" class=\"icon-btn\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"18\" viewBox=\"0 0 20 18\"\r\n fill=\"none\">\r\n <path\r\n d=\"M19.1654 2.33527V7.33527M19.1654 7.33527H14.1654M19.1654 7.33527L15.2987 3.70193C14.4031 2.80586 13.2951 2.15127 12.078 1.79925C10.861 1.44722 9.57462 1.40923 8.33894 1.68882C7.10325 1.96841 5.95853 2.55646 5.01159 3.39812C4.06464 4.23977 3.34634 5.30759 2.9237 6.50193M0.832031 15.6686V10.6686M0.832031 10.6686H5.83203M0.832031 10.6686L4.6987 14.3019C5.59432 15.198 6.70234 15.8526 7.91937 16.2046C9.1364 16.5567 10.4228 16.5946 11.6585 16.3151C12.8941 16.0355 14.0389 15.4474 14.9858 14.6058C15.9328 13.7641 16.6511 12.6963 17.0737 11.5019\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"btn-text\">Redo</span>\r\n </span>\r\n </div>\r\n <div class=\"me-4\"\r\n *ngIf=\"canShowRedoExportToolbar(gs.userAccess | async)\">\r\n <span *ngIf=\"selectedUsers.length>0||selectedStores.length>0\"\r\n (click)=\"exportDet($event)\" class=\"icon-btn\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n<path d=\"M8.125 13.125H16.3562L14.7438 14.7438L15.625 15.625L18.75 12.5L15.625 9.375L14.7438 10.2562L16.3562 11.875H8.125V13.125Z\" fill=\"black\"/>\r\n<path d=\"M13.75 8.75001V6.25001C13.7505 6.16776 13.7347 6.08622 13.7036 6.01007C13.6725 5.93392 13.6267 5.86466 13.5688 5.80626L9.19375 1.43126C9.13535 1.37333 9.06609 1.32751 8.98994 1.2964C8.91379 1.2653 8.83225 1.24953 8.75 1.25001H2.5C2.16848 1.25001 1.85054 1.38171 1.61612 1.61613C1.3817 1.85055 1.25 2.16849 1.25 2.50001V17.5C1.25 17.8315 1.3817 18.1495 1.61612 18.3839C1.85054 18.6183 2.16848 18.75 2.5 18.75H12.5C12.8315 18.75 13.1495 18.6183 13.3839 18.3839C13.6183 18.1495 13.75 17.8315 13.75 17.5V16.25H12.5V17.5H2.5V2.50001H7.5V6.25001C7.5 6.58153 7.6317 6.89947 7.86612 7.13389C8.10054 7.36831 8.41848 7.50001 8.75 7.50001H12.5V8.75001H13.75ZM8.75 6.25001V2.75626L12.2438 6.25001H8.75Z\" fill=\"black\"/>\r\n</svg>\r\n <span class=\"btn-text\">Export</span>\r\n </span>\r\n <div *ngIf=\"exportShow\"\r\n class=\"card py-2 position-absolute productdrop top-10 w-150px end-0 z-1\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li class=\"cursor-pointer py-4 checkbox-label mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li class=\" cursor-pointer checkbox-label py-4 mx-2\"\r\n *ngIf=\"csvExportTypes.includes(select)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div class=\"position-relative cursor-pointer me-10\" *ngIf=\"!galleryForm.value.viewRedo&&selectedUsers.length===0&&selectedStores.length===0\">\r\n <div *ngIf=\"!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\"\r\n class=\" btn btn-primary form-control no-text-transform\" (click)=\"exportDet($event)\">\r\n {{ exportLabel }}\r\n </div>\r\n <div *ngIf=\"exportConfig?.enabled &&exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\"\r\n class=\" btn btn-primary form-control no-text-transform\" (click)=\"exportDet($event)\">\r\n {{ exportLabel }} <!-- Bind label text here -->\r\n </div>\r\n <div *ngIf=\"exportShow\"\r\n class=\"card py-2 position-absolute productdrop top-10 w-150px end-0 z-1\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li class=\"cursor-pointer py-4 checkbox-label mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select) &&!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li class=\" cursor-pointer checkbox-label py-4 mx-2\"\r\n *ngIf=\"pdfExportTypes.includes(select) &&!exportMediaChecklists.includes(galleryForm.value.sourceCheckList_id)\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose'||select ==='inventorycount'||select ==='carsattended'||select ==='numberplateinfo' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <!-- ||select === 'cleaning'||select ==='scrum'||select ==='storeopenandclose' -->\r\n <li *ngIf=\"selectedSection.length >0\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('PDF') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\"cursor-pointer py-4 checkbox-label mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PDF','pdf')\">\r\n Export as PDF\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('CSV') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as CSV','csv')\">\r\n Export as CSV\r\n </li>\r\n <li *ngIf=\"exportConfig?.enabled &&exportConfig?.format?.includes('PPT') && exportMediaChecklists.includes(galleryForm?.value?.sourceCheckList_id)\"\r\n class=\" cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as PPT','ppt')\">\r\n Export as PPT\r\n </li>\r\n <li *ngIf=\"galleryForm.value.sourceCheckList_id === 'halfshutter' && exportConfig?.enabled && exportConfig?.format?.includes('ZIP')\"\r\n class=\"cursor-pointer checkbox-label py-4 mx-2\" type=\"button\"\r\n (click)=\"setExportAsPPT('Export as ZIP','zipfiles')\">\r\n Export as ZIP\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body p-0\">\r\n <div>\r\n <div *ngIf=\"viewloading\" class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"viewnoData&&select !== 'custom'&&select !== 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div\r\n class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata2.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No Detections found</div>\r\n <div class=\"nodata-sub\">There is no breaches for the selected period</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"viewnoData&&select === 'custom' || viewnoData&&select === 'task'\" class=\"row mt-20\">\r\n <div class=\"col-lg-12 mt-20 mb-3\">\r\n <div\r\n class=\"card-body mt-20 d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src mt-5 w-40\" src=\"./assets/tango/Icons/Nodata1.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No data found</div>\r\n <div class=\"nodata-sub\">There is no result for this checklist</div>\r\n </div>\r\n </div>\r\n </div>\r\n <section *ngIf=\"!viewloading && !viewnoData\">\r\n <lib-gallery-qa-view\r\n *ngIf=\"select==='custom'||select==='task'\"\r\n [data]=\"viewChecklistsData\"\r\n [galleryForm]=\"galleryForm\"\r\n [clientData]=\"clientData\"\r\n [environment]=\"environment\"\r\n [userAccess]=\"gs.userAccess | async\"\r\n [showsingle]=\"showsingle\"\r\n [showmulti]=\"showmulti\"\r\n [showfilter]=\"showfilter\"\r\n [selectedSection]=\"selectedSection\"\r\n [answerFilter]=\"answerFilter\"\r\n [select]=\"select\"\r\n [checklistName]=\"checklistName\"\r\n [selectedStores]=\"selectedStores\"\r\n [selectedUsers]=\"selectedUsers\"\r\n (taskTabChange)=\"taskTab($event)\"\r\n (selectMultiTask)=\"onQaSelectMultiTask($event)\"\r\n (viewInDetails)=\"onQaViewInDetails($event)\"\r\n (openProofEvent)=\"openProof($event)\"\r\n (addTaskEvent)=\"onQaAddTask($event)\"\r\n (taskRedirect)=\"onQaTaskRedirect($event)\">\r\n </lib-gallery-qa-view>\r\n\r\n <div class=\"px-4 my-5\" *ngIf=\"imageChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <!-- <div> <h2>Checklist Name : {{this.checklistName}}</h2> </div> -->\r\n <div *ngIf=\"!['outsidebusinesshoursqueuetracking', 'halfshutter','tvcompliance','cameratampering','staffgrouping','employeeCount','unattendeddetection','customerunattended'].includes(galleryForm.value.sourceCheckList_id)\">\r\n @if(['Store Hygiene Monitoring','Mobile usage detection','Uniform detection','staffgrouping','employeeCount','Unattended Detection','Customer Unattended','Employee Monitoring','Activity Monitoring'].includes(this.checklistName)) {\r\n <div class=\"row\">\r\n <div class=\"col-md-3\" >\r\n <h3 class=\"uni-title\">Checklist Name:</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">{{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n }\r\n <div class=\" my-3 mt-5\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{this.checklistName}} </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{item.storeName}}</p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.down_time && !mediaFirstChecklistNames.includes(this.checklistName)\" >\r\n <h3 class=\"uni-title\">Average Downtime</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.down_time && !mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <p class=\"uni-subtitle\">: {{item.down_time}} Mins</p>\r\n </div>\r\n </div>\r\n <ul class=\"row w-100 ps-2\">\r\n <!-- <li class=\"qa-heading\"> {{item.storeName}} </li> -->\r\n <div class=\"row\">\r\n <div class=\"row qa-bodrer mb-4\" *ngFor=\"let detection of item?.imageUrl\">\r\n <div class=\"my-2\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'col-md-6' : 'col-md-12'\"\r\n *ngIf=\"!(['Unattended Detection','Store Hygiene Monitoring'].includes(this.checklistName) && ['Offline','File Not Received','Files Not Received','Offline \u2013 No data Received from store'].includes(detection?.detectionStatus))\">\r\n @if(['Mobile usage detection','Uniform detection'].includes(this.checklistName)) {\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.imageurl}}\"\r\n alt=\"\" *ngIf=\"detection?.imageurl\" (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.imageurl, this.checklistName)\">\r\n }@else if(['Store Hygiene Monitoring','Unattended Detection','Employee Monitoring','Activity Monitoring'].includes(this.checklistName)) {\r\n <div *ngIf=\"detection?.detectionStatus_afterTaskSubmission\" class=\"mb-3 uni-title\">\r\n Breached Image\r\n </div>\r\n <div>\r\n @if(['Activity Monitoring','Unattended Detection'].includes(this.checklistName) && detection?.videourl) {\r\n <video controls preload=\"metadata\"\r\n [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\"\r\n [src]=\"environment.TraxAIchecklistCDN + detection.videourl\">\r\n </video>\r\n }@else if(detection.imageurl) {\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.imageurl, this.checklistName)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.imageurl}}\"\r\n alt=\"\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\" *ngIf=\"detection.imageurl\" />\r\n }@else {\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection, this.checklistName)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection}}\"\r\n alt=\"\" [ngClass]=\"detection?.detectionStatus_afterTaskSubmission ? 'w-100 heightImage rounded' : 'rounded-top w-100 h-500px'\" *ngIf=\"!fileNotReceivedStatuses.includes(detection?.detectionStatus)\" />\r\n }\r\n </div>\r\n } @else{\r\n <img (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection, this.checklistName)\" class=\"w-100 h-500px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection}}\"\r\n alt=\"\" >\r\n }\r\n <!-- <div class=\"text-center mt-3\"> {{this.checklistName}}</div> -->\r\n </div>\r\n <div class=\"my-2 col-md-6\" *ngIf=\"detection?.detectionStatus_afterTaskSubmission\">\r\n <div class=\"d-flex justify-content-between mb-3\" >\r\n <div class=\"uni-title\">\r\n Detection after Task Submission\r\n </div>\r\n <div>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus_afterTaskSubmission === 'Clean'\">Clean</span>\r\n <span class=\"ms-3 mt-1 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus_afterTaskSubmission !== 'Clean'\">{{detection.detectionStatus_afterTaskSubmission}}</span>\r\n </div>\r\n </div>\r\n <div >\r\n <img class=\"w-100 heightImage rounded\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.new_image_url}}\" alt=\"\" *ngIf=\"detection.new_image_url\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"389\" height=\"218\" viewBox=\"0 0 389 218\" fill=\"none\" *ngIf=\"!detection.new_image_url\">\r\n <rect width=\"389\" height=\"218\" rx=\"8\" fill=\"black\"/>\r\n </svg>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"mediaFirstChecklistNames.includes(this.checklistName)\">\r\n <div class=\"col-md-3\" *ngIf=\"item.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.storeName\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.temp_id\">\r\n <h3 class=\"uni-title\">Cust Id</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.temp_id\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.temp_id}}</span></p>\r\n </div>\r\n\r\n @if(this.checklistName === 'Unattended Detection' && (detection?.detectionStatus === 'Offline' )) {\r\n <div class=\"col-md-3\" *ngIf=\"detection?.store_timestamp\">\r\n <h3 class=\"uni-title\">Detection Date</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.store_timestamp\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.store_timestamp?.split(' - ')[1] || detection.store_timestamp}}</span></p>\r\n </div>\r\n }@else {\r\n <div class=\"col-md-3\" *ngIf=\"detection.detectionTime\">\r\n <h3 class=\"uni-title\">Detection Time</h3>\r\n </div>\r\n <div [class]=\"detection?.detectionType ? 'col-md-3' : 'col-md-9'\" *ngIf=\"detection.detectionTime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}</span></p>\r\n </div>\r\n }\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionType && !(['Unattended Detection',].includes(this.checklistName) && (detection?.detectionStatus === 'Offline' )) && this.checklistName != 'Activity Monitoring'\">\r\n <h3 class=\"uni-title\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionType && !(['Unattended Detection'].includes(this.checklistName) && (detection?.detectionStatus === 'Offline' )) && this.checklistName != 'Activity Monitoring'\">\r\n <p class=\"uni-subtitle text-nowrap\"> : <span class=\"ms-3 badge badge-light-warning\">{{detection.detectionType}}</span></p>\r\n </div>\r\n\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionStatus && (this.checklistName != 'Activity Monitoring' || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n \r\n <div [class]=\"(detection?.downtime != null && detection?.downtime != undefined) ? ['Offline'].includes(detection?.detectionStatus) ? 'col-md-5' : 'col-md-3' : 'col-md-9'\"\r\n *ngIf=\"detection?.detectionStatus && (this.checklistName != 'Activity Monitoring' || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!detection?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Clutter'\">Clutter</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Clean'\">Clean</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline' \">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div [class]=\"['Offline'].includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection.ProductType\">\r\n <h3 class=\"uni-title\">Activity Type</h3>\r\n </div>\r\n <div [class]=\"['Offline'].includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection.ProductType\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.ProductType}}</span></p>\r\n </div>\r\n <div class='col-md-3' *ngIf=\"this.checklistName == 'Activity Monitoring'\">\r\n <h3 class=\"uni-title\">Detection</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"this.checklistName == 'Activity Monitoring'\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.timestamp | date:'dd MMM, YYYY'}}</span></p>\r\n </div>\r\n <div [class]=\"fileNotReceivedStatuses.includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined && (!['Unattended Detection','Activity Monitoring'].includes(this.checklistName) || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div [class]=\"fileNotReceivedStatuses.includes(detection?.detectionStatus) ? 'col-md-2' : 'col-md-3'\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined && (!['Unattended Detection','Activity Monitoring'].includes(this.checklistName) || (this.checklistName == 'Activity Monitoring' && detection.detectionStatus == 'Offline'))\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downtime}} Mins </span></p>\r\n </div>\r\n \r\n <div class=\"col-md-6\" *ngIf=\"detection.detectionTime_afterTaskSubmission\">\r\n <h3 class=\"uni-title\">Detection Time (After Task Submission)</h3>\r\n </div>\r\n <div class=\"col-md-6\" *ngIf=\"detection.detectionTime_afterTaskSubmission\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime_afterTaskSubmission}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.detectionOn\">\r\n <h3 class=\"uni-title\">Detection On</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection.detectionOn\">\r\n <p class=\"uni-subtitle\">:<span class=\"ms-3\">{{detection.detectionOn}}</span></p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='inventorycount'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}} </span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\" *ngIf=\"detection?.car_count\">No of\r\n cars :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.car_count}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='numberplateinfo'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_license_id\">Number Plate :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.car_license_id}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Entry Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='carsattended'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.interacted_person_count\">Number of\r\n People Interacted :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.interacted_person_count}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-6 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_reg_number\">Number Plate :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection?.car_reg_number}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.car_reg_number\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection?.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-6 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.interacted_duration_in_secs\">Time\r\n spent :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.interacted_duration_in_secs}}\r\n Mins</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='vehicle_check_in'\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Detection Time :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.date_timestamp}}</span>\r\n </span>\r\n </div>\r\n <div class=\"col-md-4 text-end\">\r\n <span class=\"ms-3\"\r\n *ngIf=\"detection?.date_timestamp\">Slot :\r\n <span class=\"badge badge-light-primary\">\r\n {{detection.slot_id}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='outsidebusinesshoursqueuetracking'\">\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatus\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!detection?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <ng-template #noDetectionStatus>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\"> :\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"!detection?.Flag\">Not\r\n Breached</span>\r\n </p>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.Date|date:'dd-MM-yyyy'\r\n }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection Count</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.detections.length}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection at</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mt-2\"\r\n *ngIf=\"detection.path && detection.path !== null && detection.path !== undefined && detection.path !== ''\">\r\n <img class=\"w-100 h-500px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n alt=\"\">\r\n <div *ngIf=\"galleryForm.value.sourceCheckList_id !== 'employeemonitoring'\" class=\"text-center mt-3\"> {{this.checklistName}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n <div\r\n *ngIf=\"galleryForm.value.sourceCheckList_id === 'outsidebusinesshoursqueuetracking'\">\r\n <div class=\" my-3 mt-5\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <ul class=\"row ps-2\">\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"galleryForm.value.sourceCheckList_id==='outsidebusinesshoursqueuetracking'\">\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\"\r\n *ngIf=\"detection?.detectionStatus\"> :\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Detected'\">Detected</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Detected'\">Not\r\n Detected</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title text-end\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.Date}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection Count</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.detections.length}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detections\">\r\n <h3 class=\"uni-title\">Detection at</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">:\r\n <span\r\n *ngFor=\"let detectionAt of detection.detections; let i=index\">\r\n <span class=\"ms-3 badge backgroundGray\"\r\n *ngIf=\"i < 5\">\r\n {{detectionAt}}\r\n </span>\r\n </span>\r\n <span *ngIf=\"detection.detections.length > 5\"\r\n class=\"ms-3 badge backgroundGray\">\r\n +{{ detection.detections.length - 5 }}\r\n </span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"mediaGridChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <div class=\" my-3 mt-5\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-1\">:</div>\r\n <div class=\"col-md-8\">\r\n <p class=\"uni-subtitle\"> {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <ul class=\"row ps-2\" *ngFor=\"let item of mobileusageData\">\r\n <div class=\"col-md-12 my-2\" *ngFor=\"let detection of item?.imagesData\">\r\n <div class=\"card-toolbar\"\r\n *ngIf=\"mediaGridChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <div class=\"snapcard\">\r\n <!-- Giva (107) Employee Count Detection: media-first design -->\r\n <div *ngIf=\"isGivaEmpCount\" class=\"row w-100\">\r\n <div class=\"col-md-12 my-2 mb-4\" *ngIf=\"detection?.path\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\" alt=\"\">\r\n </div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.storeName}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{['Offline','Files Not Received'].includes(detection?.detectionStatus) ? 'Offline \u2013 No data Received from store' : detection?.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downtime != null && detection?.downtime != undefined\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.downtime}} mins</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.employee_count != null && !['Offline','Files Not Received'].includes(detection?.detectionStatus)\"><h3 class=\"uni-title\">Staff Present</h3></div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.employee_count != null && !['Offline','Files Not Received'].includes(detection?.detectionStatus)\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.employee_count}}</span></p></div>\r\n </div>\r\n <div *ngIf=\"!isGivaEmpCount\" class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-12 my-2\" *ngIf=\"detection?.path && galleryForm.value.sourceCheckList_id == 'employeeCount'\">\r\n <div class=\"\" *ngIf=\"detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n <div class=\"\" *ngIf=\"!detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection?.storeName\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Store Name</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-7\">{{ detection.storeName }}</span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection.detectionTime\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Detection Time</span> <span class=\"col-1\">:</span>\r\n <span class=\"col-md-7\">\r\n\r\n <span class=\"badge badge-light-primary\">{{detection.detectionTime}}</span>\r\n </span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\">\r\n \r\n <h3 class=\"uni-title row\" >\r\n <ng-container *ngIf=\"(detection?.detectionStatus&&galleryForm.value.sourceCheckList_id != 'employeeCount') ||(galleryForm.value.sourceCheckList_id === 'employeeCount' && detection.detectionStatus === 'File Not Received')\">\r\n\r\n <span class=\"label col-md-4\">Detection Status</span><span class=\"col-1\">:</span>\r\n <span [class]=\"galleryForm.value.sourceCheckList_id === 'employeeCount' && detection.detectionStatus === 'File Not Received' ? 'col-md-7' : 'col-md-2'\">\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not Breached</span>\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'angle changed'\">Angle Changed</span>\r\n <span class=\"badge badge-light-danger\"\r\n *ngIf=\"['Offline','Files Not Received','File Not Received'].includes(detection.detectionStatus)\">Offline - Files Not Received</span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"galleryForm.value.sourceCheckList_id === 'employeeCount'\">\r\n\r\n <span class=\"label col-md-4\">Employee Count</span><span class=\"col-1\">:</span>\r\n <span class=\"col-md-2\">\r\n <span class=\"badge badge-light-primary\">{{detection?.employee_count ?? 0}}</span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"select!=='staffgrouping'&&detection?.downtime != null && detection?.downtime != undefined\">\r\n\r\n <span class=\"label col-md-2\">Downtime</span> <span class=\"col-1\">:</span>\r\n <span\r\n class=\"col-md-2\">{{detection.downtime}} mins\r\n <span\r\n ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"15\" height=\"16\"\r\n viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span>\r\n </ng-container>\r\n \r\n </h3>\r\n </div>\r\n \r\n <div class=\"col-md-12\" *ngIf=\"detection?.configuredStoreTime\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Configured Store Time</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-3\"><span class=\"badge badge-num-muted\">{{detection.configuredStoreTime}}</span></span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"detection.streamId\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Camera Name & Stream ID</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"cursor-pointer col-md-5\" (click)=\"cameraView(detection.StoreID)\"><span class=\"badge badge-num-muted\">{{detection.cameraName}}{{detection.streamId}}<span class=\"ms-2\" ><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n<path d=\"M12 8.66667V12.6667C12 13.0203 11.8595 13.3594 11.6095 13.6095C11.3594 13.8595 11.0203 14 10.6667 14H3.33333C2.97971 14 2.64057 13.8595 2.39052 13.6095C2.14048 13.3594 2 13.0203 2 12.6667V5.33333C2 4.97971 2.14048 4.64057 2.39052 4.39052C2.64057 4.14048 2.97971 4 3.33333 4H7.33333M10 2H14M14 2V6M14 2L6.66667 9.33333\" stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg></span></span></span></h3>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"galleryForm.value.sourceCheckList_id === 'halfshutter' && headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-4\">Scheduled Employee</span>\r\n <span class=\"col-1\">:</span>\r\n <span class=\"value col-md-7\">\r\n @if(detection.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted\" *ngFor=\"let emp of detection.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted\">NA</span>\r\n }\r\n </span>\r\n </h3>\r\n </div>\r\n <div class=\"col-md-12 my-2\" *ngIf=\"detection?.path && galleryForm.value.sourceCheckList_id != 'employeeCount'\">\r\n <div class=\"\" *ngIf=\"detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n <div class=\"\" *ngIf=\"!detectionGroupChecklists.includes(galleryForm.value.sourceCheckList_id)\">\r\n\r\n <img class=\"w-100 h-500px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\"\r\n alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"px-4 my-5\" *ngIf=\"videoChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n\r\n <div class=\"my-3 mt-5\" *ngFor=\"let item of customerunattendedData\">\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{this.checklistName}}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"!isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum && select!=='customerunattended'\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"!isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum && select!=='customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n </div>\r\n <ul class=\"row w-100 ps-2\" [ngClass]=\"(isGivaScrum || isGivaCustomerUnattended ) ? '' : 'margin-top-side'\">\r\n <li class=\"qa-heading\"> </li>\r\n <div class=\"row\">\r\n <div class=\"col-md-12\" [ngClass]=\"(select === 'customerunattended' || isStoreMopping) ? 'card my-3' : ''\" *ngFor=\"let detection of item.imagesData\">\r\n <!-- Store Mopping: media first, then details below (matches Mobile Usage design) -->\r\n <div class=\"mt-5 mb-4\" *ngIf=\"isStoreMopping || select === 'customerunattended'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection?.video_path?.trim()\">\r\n </video>\r\n </div>\r\n <!-- Store Mopping: dedicated details block below the media (matches target design) -->\r\n <div class=\"row px-4 mt-5 margin-left-side\" *ngIf=\"isStoreMopping\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Configured Time</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.configTime}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.date\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"detection?.date\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection?.date | date:\"dd MMM YYYY\"}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"detection.detectionStatus == 'Offline' ? 'col-md-4' : 'col-md-3'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus == 'Offline' ? 'Offline - No data received from store' : detection.detectionStatus}}</span></p>\r\n </div>\r\n <div [class]=\"detection.detectionStatus == 'Offline' ? 'col-md-2' : 'col-md-3'\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p>\r\n </div>\r\n </div>\r\n <!-- Activity Monitoring: media-first layout (matches target design) -->\r\n <!-- <ng-container *ngIf=\"isActivityMonitoring\">\r\n <div class=\"snapcard mb-4\">\r\n \r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\"></video>\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Cust ID</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\" *ngIf=\"detection?.customer_id\">{{detection.customer_id}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Activity Type</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.activityType}}</span></p></div>\r\n </div>\r\n </ng-container>\r\n \r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Detection</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-10\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container> -->\r\n <!-- Giva (107) Customer unattended: media-first design -->\r\n <ng-container *ngIf=\"isGivaCustomerUnattended\">\r\n <div class=\"snapcard mb-4\">\r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\" *ngIf=\"detection?.video_path\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\"></video>\r\n </div>\r\n <div class=\"w-100 mb-4\" *ngIf=\"!detection?.video_path && detection?.path\">\r\n <img class=\"w-100 h-450px rounded-top cursor-pointer\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.path}}\"\r\n (click)=\"openImagePreview(environment.TraxAIchecklistCDN + detection.path, this.checklistName)\" alt=\"\">\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Cust ID</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\" *ngIf=\"detection?.customer_id\">{{detection.customer_id}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Date</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Entry Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-num-muted\">{{detection.customer_entry_time || detection.entry_time}}</span></p></div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Date</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.date}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <!-- Giva (107) Store Huddle Adherence (scrum): video-first design -->\r\n <ng-container *ngIf=\"isGivaScrum\">\r\n <div class=\"snapcard mb-4\">\r\n <ng-container *ngIf=\"detection?.detectionStatus !== 'Offline'\">\r\n <div class=\"w-100 mb-4\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\"></video>\r\n </div>\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Configured Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{formatTimeRange12h(detection.configTime)}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.detectionTime\"><h3 class=\"uni-title\">Detection Time</h3></div>\r\n <div [class]=\"detection?.duration ? 'col-md-3' : 'col-md-9'\" *ngIf=\"detection?.detectionTime\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{detection.detectionTime}}<ng-container *ngIf=\"detection?.date\"> \u2022 {{formatDetectionDate(detection.date)}}</ng-container></span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\"><h3 class=\"uni-title\">Duration</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.duration}} Mins</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div [class]=\"(detection?.downTime != null && detection?.downTime != undefined) ? 'col-md-3' : 'col-md-9'\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge\" [ngClass]=\"detection?.detectionStatus === 'Not Breached' ? 'badge-light-success' : 'badge-light-danger'\">{{detection.detectionStatus}}</span></p></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime != null && detection?.downTime != undefined\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime != null && detection?.downTime != undefined\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"detection?.detectionStatus === 'Offline'\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-md-2\"><h3 class=\"uni-title\">Store Name</h3></div>\r\n <div class=\"col-md-4\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Configured Time</h3></div>\r\n <div class=\"col-md-3\"><p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{formatTimeRange12h(detection.configTime)}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{formatDetectionDate(detection.date)}}</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Detection Status</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-danger\">Offline \u2013 No data Received from store</span></p></div>\r\n <div class=\"col-md-3\"><h3 class=\"uni-title\">Downtime</h3></div>\r\n <div class=\"col-md-9\"><p class=\"uni-subtitle\">: <span class=\"ms-3\">{{detection.downTime}} mins</span></p></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <div class=\"row px-4 mt-5 margin-left-side\"\r\n *ngIf=\"select!=='suspiciousactivity' && !isStoreMopping && !isGivaCustomerUnattended && !isGivaScrum\">\r\n <div class=\"col-md-3\" *ngIf=\"select === 'customerunattended'\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"select === 'customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatusCard\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <ng-template #noDetectionStatusCard>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.Answer\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"detection?.detectionStatus; else noDetectionStatus\">\r\n <p class=\"uni-subtitle\">:\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"detection?.Answer==='rejected'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"detection?.Answer==='approved'\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Breached'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.detectionStatus === 'Offline'\">Offline</span>\r\n </p>\r\n </div>\r\n <ng-template #noDetectionStatus>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.Answer\">\r\n <p class=\"uni-subtitle\">:\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"detection?.Answer==='rejected'\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.Answer==='approved'\">Not\r\n Breached</span>\r\n </p>\r\n </div>\r\n </ng-template>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.date|date:'dd-MM-yyyy' }}\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.zoneName && select!=='customerunattended'\">\r\n <h3 class=\"uni-title\">Zone Name</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.zoneName && select!=='customerunattended'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.zoneName }}\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.configTime\">\r\n <h3 class=\"uni-title\">Configured Time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.configTime\">\r\n <p class=\"uni-subtitle \">: <span\r\n class=\"ms-3\">{{detection.configTime }}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\">\r\n <h3 class=\"uni-title\">Duration</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.duration\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.duration }} Mins </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection?.downTime\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{detection.downTime }} Mins </span>\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_id\">\r\n <h3 class=\"uni-title\">Cust ID</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_id\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-primary\">{{detection.customer_id }}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_entry_time\">\r\n <h3 class=\"uni-title\">Entry time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_entry_time\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-default\">{{detection.customer_entry_time }}</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_exit_time && headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title\">Exit time</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"detection.customer_exit_time && headerFilters?.client =='11'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3 badge badge-light-default\">{{detection.customer_exit_time }}</span>\r\n </p>\r\n </div>\r\n </div>\r\n <div class=\"card-header border-0 min-h-45px px-0 my-0\" *ngIf=\"!isGivaCustomerUnattended && !isGivaScrum\">\r\n <h3 class=\"card-title\">\r\n <!-- <span class=\"me-3 store-title\">{{item.storeName}}</span> -->\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_id && select!=='customerunattended'\">Cust ID : <span\r\n class=\"ms-3\">{{detection.customer_id}}</span></span>\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.queue_id\">Queue ID : <span\r\n class=\"ms-3\">{{detection.queue_id}}</span></span>\r\n <span class=\"ms-2 badge badge-light-default\"\r\n *ngIf=\"detection?.optum_id\">Optom ID : <span\r\n class=\"ms-3\">{{detection.optum_id}}</span></span>\r\n <!-- <span class=\"ms-2 badge badge-light-default\" *ngIf=\"detection?.date\">Date : {{detection.date|date:'dd-MM-yyyy' }}</span> -->\r\n <!-- <span class=\"ms-3 badge badge-light-default\" *ngIf=\"detection?.configTime\">Inspection time : {{detection.configTime}}</span> -->\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.temp_id\">TempId : <span\r\n class=\"ms-3\">{{detection.temp_id}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.time_spend\">Timespend : <span\r\n class=\"ms-3\">{{detection.time_spend}}Mins</span></span>\r\n </h3>\r\n\r\n <!-- Switch toggle -->\r\n <div class=\"card-toolbar\">\r\n <div class=\"col-md-12 text-end\">\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.entry_time\">Entry time : <span\r\n class=\"ms-3\">{{detection.entry_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.exit_time\">Exit time : <span\r\n class=\"ms-3\">{{detection.exit_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"detection?.adherence_rate\">Adherence Rate : <span\r\n class=\"ms-3\">{{detection.adherence_rate}}</span></span>\r\n <span class=\"ms-3 badge badge-light-primary text-capitalize\"\r\n *ngIf=\"detection?.category\"> <span\r\n class=\"ms-3\">{{detection.category}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_entry_time && select!=='customerunattended'\">Entry time :\r\n <span\r\n class=\"ms-3\">{{detection.customer_entry_time}}</span></span>\r\n <span class=\"ms-3 badge badge-light-default\"\r\n *ngIf=\"detection?.customer_exit_time && select!=='customerunattended'\">Exit time : <span\r\n class=\"ms-3\">{{detection.customer_exit_time}}</span></span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"my-0\" *ngIf=\"select !=='eyetest' && !isStoreMopping && !isGivaScrum && !isGivaCustomerUnattended && select!=='customerunattended'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{detection.video_path}}\"\r\n alt=\"\" *ngIf=\"detection.video_path\">\r\n </video>\r\n </div>\r\n <div class=\"my-0\" *ngIf=\"select ==='eyetest'\">\r\n <video controls class=\"w-100 h-450px rounded-top\"\r\n src=\"{{environment.EyeTestCDN}}{{detection.video_path}}\" alt=\"\" *ngIf=\"detection.video_path\">\r\n </video>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"select ==='storeopenandclose'\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name : </h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\"> {{this.checklistName}} </p>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 margin-top-side\" *ngFor=\"let store of storeOpencloseView\">\r\n <div class=\"mx-8 my-8\" *ngFor=\"let item of store.imagesData\">\r\n @if(item?.process_type == 'live') {\r\n <div class=\"snapcard\">\r\n <div class=\"row m-0 w-100\">\r\n <div class=\"col-12\">\r\n <div class=\"img mt-4 px-3 position-relative\" *ngIf=\"!item.openTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.openTime && item.type == 'open'\">\r\n <img class=\"mx-1 openclosesnapLiveIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/open.jpeg\"\r\n alt=\"open close snap\" *ngIf=\"item.s3_path != ''\"\r\n (click)=\"openSnapPopup(item, 'open')\">\r\n <!-- <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Opening Snap</div>\r\n <div class=\"snaptime\">{{item.openTime}} -\r\n {{item.date}} </div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.onopenTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.lateopenTimeFlag\">Late Open</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n <div class=\"col-12\">\r\n <div class=\"img mt-4 px-3 position-relative\"\r\n *ngIf=\"!item.closeTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.closeTime && item.type == 'close'&& item.s3_path != ''\">\r\n <img class=\"mx-1 openclosesnapLiveIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/close.jpeg\"\r\n alt=\"Checklist Video Player\" *ngIf=\"item.s3_path != ''\"\r\n (click)=\"openSnapPopup(item, 'close')\">\r\n <!-- <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Closing Snap</div>\r\n <div class=\"snaptime\">{{item.closeTime}} -\r\n {{item.date}}</div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.oncloseTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">Early Close</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"item?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_open\">\r\n <h3 class=\"uni-title\">Buffer for Open Time </h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_open\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.buffer_open }}\r\n mins</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_close\">\r\n <h3 class=\"uni-title\">Buffer for Close Time </h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.buffer_close\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.buffer_close }}\r\n mins</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span\r\n class=\"ms-1 badge badge-light-warning snapbadge\">{{item.type =='open' ? 'Store Open' : 'Store Close'}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"(item.reason == 'File Not Received' || item?.detectionStatus === 'Offline') ? 'col-md-9' : item?.detectionStatus === 'Not Breached' ? 'col-md-8':'col-md-4'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Breached' && item.reason != 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"(item?.detectionStatus === 'Breached' && item.reason == 'File Not Received') || item.detectionStatus == 'Offline'\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.detectionStatus && item?.detectionStatus !== 'Not Breached' && item.reason !== 'File Not Received'\">\r\n <h3 class=\"uni-title\">Breached Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.detectionStatus && item?.detectionStatus !== 'Not Breached' && item.reason !== 'File Not Received'\">\r\n <p class=\"uni-subtitle text-nowrap\" *ngIf=\"item.type == 'open'\">:\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.detectionStatus != 'Breached' && !item.Flag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.detectionStatus == 'Breached' && item.Flag\">Late Open</span>\r\n <!-- <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span> -->\r\n </p>\r\n <p class=\"uni-subtitle text-nowrap\" *ngIf=\"item.type == 'close'\">:\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.detectionStatus != 'Breached' && !item.Flag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.detectionStatus == 'Breached' && item.Flag\">Early Close</span>\r\n <!-- <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span> -->\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.detection_time\">\r\n <h3 class=\"uni-title\">Detection Time</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item?.detection_time\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3 badge badge-light-primary\">{{item.detection_time}} - {{item.date}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.downtime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{item.downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n <div class=\"col-md-12\" *ngIf=\"headerFilters?.client =='11'\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-3\">Scheduled Employee</span>\r\n <span class=\"value col-md-7\">\r\n <p class=\"uni-subtitle text-nowrap\">: \r\n @if(item.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted ms-3\" *ngFor=\"let emp of item.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted ms-3\">NA</span>\r\n }\r\n </p>\r\n </span>\r\n </h3>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n }\r\n @else {\r\n <div class=\"snapcard\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"store?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"store?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{store.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-4\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date }} </span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <h3 class=\"uni-title ms-15\">Detection Type</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason == 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-1 badge badge-light-warning\">{{item.type =='open' ? 'Store Open' : 'Store Close'}} </span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"item.reason === 'File Not Received' ? 'col-md-5' : item.detectionStatus === 'Not Breached' ? 'col-md-4': 'col-md-3'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Breached' && item.reason !== 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.detectionStatus === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.detectionStatus === 'Offline' || (item?.detectionStatus === 'Breached' && item.reason == 'File Not Received')\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item.reason !== 'File Not Received'\">\r\n <h3 class=\"uni-title\">Date</h3>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.reason !== 'File Not Received'\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.date|date:'dd-MM-yyyy' }} </span></p>\r\n </div>\r\n <div class=\"col-md-12\">\r\n <h3 class=\"uni-title row\">\r\n <span class=\"label col-md-3\">Scheduled Employee</span>\r\n <span class=\"value col-md-7\">\r\n <p class=\"uni-subtitle text-nowrap\">: \r\n @if(item.scheduleEmp.length) {\r\n <span class=\"badge badge-num-muted ms-3\" *ngFor=\"let emp of item.scheduleEmp\">{{emp}}</span>\r\n }@else {\r\n <span class=\"badge badge-num-muted ms-3\">NA</span>\r\n }\r\n </p>\r\n </span>\r\n </h3>\r\n </div>\r\n <!-- <div class=\"col-md-4\" *ngIf=\"item?.downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.downtime\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3\">{{item.downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div> -->\r\n </div>\r\n <div class=\"row m-0 w-100\">\r\n <!-- @for (item of store.imagesData; track item) { -->\r\n <div class=\"col-6\">\r\n <div class=\"img mt-4 px-3 position-relative\" *ngIf=\"!item.openTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.openTime && item.reason !== 'File Not Received'\">\r\n <img class=\"mx-1 openclosesnapIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/open.jpeg\"\r\n alt=\"open close snap\"\r\n (click)=\"openSnapPopup(item, 'open')\">\r\n <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Opening Snap</div>\r\n <div class=\"snaptime\">{{item.openTime}} -\r\n {{item.date}} <span class=\"ms-5 badge badge-light-danger\"\r\n *ngIf=\"item?.lateopenTimeFlag\">{{item.lateOpen}} mins Delay</span></div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.onopenTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.lateopenTimeFlag\">Late Open</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.earlyopenTimeFlag\">Early Open</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"img mt-4 px-3 position-relative\"\r\n *ngIf=\"!item.closeTime\">\r\n <div\r\n class=\"preview align-items-center justify-content-center d-flex flex-column\">\r\n <span>\r\n <svg width=\"23\" height=\"20\" viewBox=\"0 0 23 20\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g id=\"Group\">\r\n <path id=\"Vector\"\r\n d=\"M6.5 6.32227H6.51M16.25 9.32227H21.5L18 16.3223L14.91 12.0023\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" /> \\\r\n <path id=\"Vector_2\"\r\n d=\"M1.5 16.3229H5.26C5.63273 16.3255 5.99877 16.2239 6.31682 16.0295C6.63487 15.8352 6.89228 15.5558 7.06 15.2229L8.5 12.3229M1.5 18.3229V14.3229M17.5 6.82291L13.5 14.8229L3.11 9.62291C2.42033 9.27553 1.89635 8.6691 1.65272 7.93632C1.40909 7.20354 1.46564 6.4041 1.81 5.71291L3.19 2.92291C3.362 2.58014 3.59984 2.2746 3.88994 2.02375C4.18003 1.7729 4.5167 1.58165 4.88072 1.46093C5.24474 1.34021 5.62897 1.29239 6.01147 1.32018C6.39398 1.34797 6.76726 1.45084 7.11 1.62291L17.5 6.82291Z\"\r\n stroke=\"#667085\" stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n <span class=\"prvtxt mt-5 textclr\">Preview not\r\n available</span>\r\n <span class=\"refreshtxt mt-2 textclr\">The selected camera is\r\n not available at the moment.</span>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"item.closeTime && item.reason !== 'File Not Received'\">\r\n <img class=\"mx-1 openclosesnapIMG cursor-pointer\"\r\n src=\"{{environment.TraxOpenclosechecklistCDN}}{{item.storeId}}/{{item.dateString|date:'dd-MM-yyyy'}}/operation_snaps/close.jpeg\"\r\n alt=\"Checklist Video Player\"\r\n (click)=\"openSnapPopup(item, 'close')\">\r\n <div class=\"col-12\">\r\n <div class=\"d-flex flex-stack mx-1 mt-2\">\r\n <div>\r\n <div class=\"snaptext\">Closing Snap</div>\r\n <div class=\"snaptime\">{{item.closeTime}} -\r\n {{item.date}} <span class=\"ms-2 badge badge-light-danger\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">{{item.earlyClose}} mins Early</span></div>\r\n </div>\r\n <span class=\"badge badge-light-primary snapbadge\"\r\n *ngIf=\"item?.oncloseTimeFlag\">On Time</span>\r\n <span class=\"badge badge-light-danger snapbadge\"\r\n *ngIf=\"item?.earlycloseTimeFlag\">Early Close</span>\r\n <span class=\"badge badge-light-warning snapbadge\"\r\n *ngIf=\"item?.latecloseTimeFlag\">Late Close</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- } -->\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n \r\n </div>\r\n </div>\r\n \r\n <div *ngIf=\"boximageChecklist.includes(select)\">\r\n <div class=\"text-center\" *ngIf=\"clientData.logo&&clientData.logo!==''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"col-md-12\" *ngFor=\"let store of queueAlertView\">\r\n @if(select==='queuealert' && store.process_type == 'live') {\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{checklistName}}</p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <h3 class=\"uni-title\">Description:</h3>\r\n </div>\r\n <div class=\"col-md-9\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <p class=\"uni-subtitle\">{{checkListDescription}}</p>\r\n </div>\r\n </div>\r\n <div class=\"row m-0 w-100 \">\r\n <div class=\"col-12 mt-2\" *ngFor=\"let item of store.imagesData\">\r\n <div class=\"card bordercolor bg-secondary mt-8\">\r\n <div class=\"row px-4 mt-5 margin-left-side \">\r\n <div class=\"col-md-3\" *ngIf=\"item?.storeName\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item?.storeName\">\r\n <p class=\"uni-subtitle\">: <span\r\n class=\"ms-3\">{{item.storeName}}</span></p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item.date_timestamp\">\r\n <h3 class=\"uni-title\">Detected At</h3>\r\n </div>\r\n <div class=\"col-md-9\" *ngIf=\"item.date_timestamp\">\r\n <p class=\"uni-subtitle\">: <span class=\"ms-3 badge badge-light-primary\">{{item.date_timestamp }}</span></p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Detection Status</h3>\r\n </div>\r\n <div [class]=\"(item.reason == 'File Not Received' || item?.detectionStatus === 'Offline') ? 'col-md-9' : item?.detectionStatus === 'Not Breached' ? 'col-md-8':'col-md-4'\">\r\n <p class=\"uni-subtitle\"> :\r\n <!-- <span class=\"ms-3 badge badge-light-danger\" *ngIf=\"item?.Flag\">Breached</span>\r\n <span class=\"ms-3 badge badge-light-success\" *ngIf=\"!item?.Flag\">Not Breached</span> -->\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"item?.status === 'Breached' && item.reason != 'File Not Received'\">Breached</span>\r\n <span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.status === 'Not Breached'\">Not\r\n Breached</span><span class=\"ms-3 badge badge-light-success\"\r\n *ngIf=\"item?.reason === 'On Time'\">On Time</span></span>\r\n <span class=\"ms-3 badge badge-light-danger\"\r\n *ngIf=\"(item?.status === 'Breached' && item.reason == 'File Not Received') || item.status == 'Offline'\">Offline \u2013 No data Received from store</span>\r\n </p>\r\n </div>\r\n <div class=\"col-md-3\" *ngIf=\"item?.Downtime\">\r\n <h3 class=\"uni-title\">Downtime</h3>\r\n </div>\r\n <div class=\"col-md-2\" *ngIf=\"item?.Downtime\">\r\n <p class=\"uni-subtitle text-nowrap\">: <span class=\"ms-3\">{{item.Downtime}} mins\r\n <span ngbTooltip=\"Downtime may result in inaccurate data\"\r\n placement=\"top\" container=\"body\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\"\r\n height=\"16\" viewBox=\"0 0 15 16\" fill=\"none\">\r\n <path\r\n d=\"M7.66667 5.33203V7.9987M7.66667 10.6654H7.67333M14.3333 7.9987C14.3333 11.6806 11.3486 14.6654 7.66667 14.6654C3.98477 14.6654 1 11.6806 1 7.9987C1 4.3168 3.98477 1.33203 7.66667 1.33203C11.3486 1.33203 14.3333 4.3168 14.3333 7.9987Z\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span></p>\r\n </div>\r\n </div>\r\n <!-- <div class=\"text-start ms-5 mt-2 mb-5\">\r\n <div *ngIf=\"item.zone\">\r\n <span\r\n class=\"btn btn-secondary rounded-lg p-2\">{{item.zone}}</span>\r\n </div>\r\n\r\n <div class=\"mt-3 fw-semibold\">{{ item.date_timestamp }}</div>\r\n <div *ngIf=\"select==='boxalert'\" class=\"mt-3 fw-semibold\">Empty shelves : {{ item.emptyBoxCount }}</div>\r\n </div> -->\r\n <img class=\"openclosesnapLiveIMG\" (click)=\"openModel(item)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{item.path}}\" alt=\"\">\r\n\r\n </div>\r\n </div>\r\n </div>\r\n }@else {\r\n <div class=\"row px-4 mt-5\" *ngIf=\"showmulti\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Store Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{store?.storeName}} |\r\n {{store?.city}},{{store?.state}},{{store?.country}} </p>\r\n </div>\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n \r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{checklistName}}</p>\r\n </div>\r\n <div class=\"col-md-3\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <h3 class=\"uni-title\">Description:</h3>\r\n </div>\r\n <div class=\"col-md-9\"\r\n *ngIf=\"boxAlertSelectTypes.includes(select)\">\r\n <p class=\"uni-subtitle\">{{checkListDescription}}</p>\r\n </div>\r\n \r\n </div>\r\n <div class=\"row m-0 w-100 \">\r\n <div class=\"col-4 mt-2\" *ngFor=\"let item of store.imagesData\">\r\n <div class=\"card bordercolor bg-secondary mt-8\">\r\n <div class=\"text-start ms-5 mt-2 mb-5\">\r\n <!-- <div *ngIf=\"item.zone\">\r\n <span\r\n class=\"btn btn-secondary rounded-lg p-2\">{{item.zone}}</span>\r\n </div> -->\r\n \r\n <div class=\"mt-3 fw-semibold\">{{ item.date_timestamp }}</div>\r\n <div *ngIf=\"select==='boxalert'\" class=\"mt-3 fw-semibold\">Empty shelves : {{ item.emptyBoxCount }}</div>\r\n </div>\r\n <img class=\"w-100 h-250px rounded-bottom\" (click)=\"openModel(item)\"\r\n src=\"{{environment.TraxAIchecklistCDN}}{{item.path}}\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n\r\n <!-- ===== Occupancy Detection body (static cards; reuses existing left/right panels) ===== -->\r\n <div *ngIf=\"select === 'occupancyDetection'\" class=\"occ-body\">\r\n <div class=\"text-center\" *ngIf=\"clientData?.logo && clientData?.logo !== ''\">\r\n <img class=\"mt-5 mb-3 text-center iconsize\" src=\"{{clientData.logo}}\">\r\n </div>\r\n <div class=\"row px-4 mt-5\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Checklist Name</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">: {{ checklistName }}</p>\r\n </div>\r\n </div>\r\n <div class=\"row m-0 w-100\">\r\n <div class=\"col-4 mt-2\" *ngFor=\"let card of occupancyData.cards\">\r\n <div class=\"occ-card mt-8\">\r\n <div class=\"occ-card-head\">{{ card.storeCode }}</div>\r\n <div class=\"occ-card-img-wrap\">\r\n <!-- Offline: gray placeholder with camera-slash icon -->\r\n <div class=\"occ-card-offline\" *ngIf=\"card.status === 'Offline'\">\r\n <svg width=\"64\" height=\"64\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <circle cx=\"12\" cy=\"12\" r=\"10.25\" stroke=\"#B42318\" stroke-width=\"1.5\" />\r\n <path d=\"M4.5 4.5L19.5 19.5\" stroke=\"#B42318\" stroke-width=\"1.5\"\r\n stroke-linecap=\"round\" />\r\n <path\r\n d=\"M9.5 8.25H10.2L11 7H13L13.8 8.25H14.5C15.33 8.25 16 8.92 16 9.75V13.5M16 16C16 16 15.33 16 14.5 16H8.5C7.67 16 7 15.33 7 14.5V9.75C7 9.2 7.3 8.72 7.74 8.46\"\r\n stroke=\"#B42318\" stroke-width=\"1.5\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <circle cx=\"11.5\" cy=\"12\" r=\"2\" stroke=\"#B42318\" stroke-width=\"1.5\" />\r\n </svg>\r\n </div>\r\n <img class=\"occ-card-img\" *ngIf=\"card.status !== 'Offline'\"\r\n src=\"{{ card.image }}\" alt=\"{{ card.storeCode }}\">\r\n </div>\r\n <div class=\"occ-card-body\">\r\n <div class=\"occ-card-time\">{{ card.capturedAt }}</div>\r\n <div class=\"occ-card-seats\" *ngIf=\"card.status !== 'Offline'\">Empty Seats : <strong>{{ card.emptySeats }}</strong></div>\r\n <span class=\"occ-status-badge\" [ngClass]=\"occupancyStatusClass(card.status)\">\r\n {{ card.status }}\r\n <span class=\"occ-badge-icon\"\r\n *ngIf=\"card.status === 'Offline'\"\r\n [ngbTooltip]=\"offlineTip\"\r\n placement=\"top\" container=\"body\" triggers=\"hover focus\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M6 8V6M6 4H6.005M11 6C11 8.76142 8.76142 11 6 11C3.23858 11 1 8.76142 1 6C1 3.23858 3.23858 1 6 1C8.76142 1 11 3.23858 11 6Z\"\r\n stroke=\"#B42318\" stroke-width=\"1.5\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <ng-template #offlineTip>Offline \u2013 No data Received from store</ng-template>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <lib-pagination *ngIf=\"!viewloading && !viewnoData && select !== 'occupancyDetection'\" [itemsPerPage]=\"limit\"\r\n [currentPage]=\"offset\" [totalItems]=\"totalCount\" [paginationSizes]='paginationSizes'\r\n [pageSize]=\"limit\" (pageChange)=\"onPageChangeview($event)\"\r\n (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n\r\n <lib-pagination *ngIf=\"select === 'occupancyDetection'\" [itemsPerPage]=\"1\"\r\n [currentPage]=\"occupancyCurrentPage\" [totalItems]=\"occupancyData.totalItems\"\r\n [paginationSizes]=\"[1]\" [pageSize]=\"1\"\r\n (pageChange)=\"goToOccupancyPage($event)\"></lib-pagination>\r\n </section>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!showsidenav\" (click)=\"sidenav()\" class=\"backButtonleft text-center pt-1 cursor-pointer\">\r\n <svg class=\"mt-2 ms-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path\r\n d=\"M9.72714 12.6365L13.3635 9.00013L9.72714 5.36377M4.63623 12.6365L8.27259 9.00013L4.63623 5.36377\"\r\n stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"row card mx-0 p-3\" *ngIf=\"galleryForm.get('type')?.value != 'aiChecklist'\">\r\n <div class=\"col-md-12 text-end\">\r\n <button\r\n class=\"btn btn-sm border-primary1\"\r\n [disabled]=\"!approvalStatus\"\r\n (click)=\"onApproveChecklistClick()\">\r\n Approve\r\n </button>\r\n </div>\r\n</div>\r\n<ng-template #zoomPopup let-model>\r\n <div class=\"p-8\">\r\n <div class=\"modal-header pt-0 ps-1 pe-0\">\r\n <div>\r\n <div class=\"text-start mt-2\">\r\n <div *ngIf=\"viewImage.zone\">\r\n <span class=\"btn btn-secondary rounded-lg p-2\">{{viewImage.zone}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.emptyBoxCount\">\r\n <span>Empty shelves : {{viewImage.emptyBoxCount}}</span>\r\n </div>\r\n\r\n <div *ngIf=\"viewImage.entry_time\">\r\n <span>Entry Time : {{viewImage.entry_time}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.exit_time\">\r\n <span>Exit Time : {{viewImage.exit_time}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.temp_id\">\r\n <span>Temp Id : {{viewImage.temp_id}}</span>\r\n </div>\r\n <div *ngIf=\"viewImage.time_spend\">\r\n <span>Time Spend : {{viewImage.time_spend}} Mins</span>\r\n </div>\r\n\r\n <div class=\"mt-2\" *ngIf=\"viewImage.threshold&&viewImage.Dwelltime\">\r\n <p>If the queue exceeds {{viewImage.threshold}} people and wait time surpasses\r\n {{viewImage.Dwelltime}} minutes, an alert will be triggered</p>\r\n </div>\r\n <div class=\"mt-3 fw-semibold\">{{ viewImage.date_timestamp }}</div>\r\n </div>\r\n\r\n </div>\r\n <div data-bs-dismiss=\"modal\">\r\n <!-- <span class=\"stream fw-semibold text-nowrap me-5\" *ngIf=\"camera.height && camera.width\"> Resolution: {{camera.height}} X {{camera.width}}</span> -->\r\n <span class=\"btn btn-sm btn-icon btn-active-color-primary me-0\" (click)=\"model.dismiss()\"><svg\r\n width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"viewImage.path\" class=\"mt-2 overflow-auto\">\r\n <img class=\"rounded-4 mt-5 img-popup-src w-100\" src=\"{{environment.TraxAIchecklistCDN}}{{viewImage.path}}\">\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #proofPopup let-modal>\r\n <div class=\"modal-header border-0 align-items-center pb-2\">\r\n <h4 class=\"modal-title fw-bold mb-0\">Verification Details</h4>\r\n <span class=\"btn btn-sm btn-icon btn-active-color-primary me-0 cursor-pointer\" (click)=\"modal.dismiss()\">\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"modal-body pt-0\">\r\n <div *ngIf=\"proofData?.userImage\">\r\n <div class=\"title-ref my-3\">Captured Photo</div>\r\n <img class=\"w-100 h-350px rounded cursor-pointer\" [src]=\"environment.TraxAnswerCDN + proofData.userImage\" alt=\"Captured Photo\" style=\"object-fit:contain\">\r\n </div>\r\n <div class=\"row mt-5\" *ngIf=\"proofData?.userSignature\">\r\n <div class=\"col-md-3\">\r\n <h3 class=\"uni-title\">Name :</h3>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <p class=\"uni-subtitle\">{{proofData?.userSignature}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [".gallery-card{padding:24px;border-radius:12px;background:#fff}.gallery-card .header{color:#101828;font-size:18px;font-weight:500;line-height:28px}.img{border-radius:10px;border:1px solid var(--Gray-500, #667085);background:var(--Gray-100, #F2F4F7);width:100%;height:230px}.prvtxt{color:var(--Gray-500, #667085);font-family:Inter;font-size:20px;font-style:normal;font-weight:700;line-height:20px;letter-spacing:-.4px}.refreshtxt{color:var(--Gray-400, #98A2B3);font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px}::ng-deep .applyBtn{display:none!important}::ng-deep .custom-height-modal .modal-dialog{max-height:80vh;height:80vh}::ng-deep .custom-height-modal .modal-content{overflow:auto;max-height:100%}:host::ng-deep .md-drppicker .btn{line-height:10px!important}:host::ng-deep .md-drppicker.shown.drops-down-right{transform-origin:0 0;width:560px!important}:host::ng-deep .daterangepicker-input+.ngx-daterangepicker-material .applyBtn{display:none}:host::ng-deep .md-drppicker.drops-down-right.ltr.show-ranges.shown{top:65px!important}:host::ng-deep .md-drppicker.drops-down-right.ltr.double.show-ranges.shown{top:65px!important;right:-475px!important;left:unset!important;height:400px!important}:host::ng-deep .md-drppicker .btn{border-radius:8px!important;border:1px solid var(--Primary-600, #00A3FF)!important;background:var(--Primary-600, #00A3FF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--White, #FFF)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}:host::ng-deep .md-drppicker .ranges ul li button{padding:12px 16px;width:160px;color:var(--Gray-700, #344054);font-size:14px;font-weight:400;line-height:20px;background:none;border:none;text-align:left;cursor:pointer}:host::ng-deep .md-drppicker td.active,:host::ng-deep .md-drppicker td.active:hover{background-color:#029cf4!important;border-radius:20px!important;color:var(--White, #FFF)!important;text-align:center!important;font-size:14px!important;font-weight:500!important;line-height:20px}:host::ng-deep .md-drppicker.ltr .ranges{float:left;margin-top:10px!important}:host::ng-deep .md-drppicker td.in-range{background:var(--Primary-50, #EAF8FF)}:host::ng-deep .md-drppicker .ranges ul li button.active{background:var(--Primary-50, #EAF8FF)!important;border-radius:8px!important;color:var(--Primary-700, #009BF3);font-size:14px!important;font-weight:500!important;line-height:20px!important}:host::ng-deep table th,:host::ng-deep table td{width:40px!important;height:40px!important;padding:10px 8px!important}:host::ng-deep .md-drppicker td.available.prev,:host::ng-deep .md-drppicker th.available.prev{background-image:url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMy43IDYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDMuNyA2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxwYXRoIGQ9Ik0zLjcsMC43TDEuNCwzbDIuMywyLjNMMyw2TDAsM2wzLTNMMy43LDAuN3oiLz4NCjwvZz4NCjwvc3ZnPg0K)!important;background-repeat:no-repeat!important;background-size:.5em!important;background-position:center!important}:host::ng-deep .md-drppicker td.available.next,:host::ng-deep .md-drppicker th.available.next{background-image:url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMy43IDYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDMuNyA2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxwYXRoIGQ9Ik0zLjcsMC43TDEuNCwzbDIuMywyLjNMMyw2TDAsM2wzLTNMMy43LDAuN3oiLz4NCjwvZz4NCjwvc3ZnPg0K)!important;background-repeat:no-repeat!important;background-size:.5em!important;background-position:center!important}:host::ng-deep table th{border-bottom:0px solid var(--Gray-200, #EAECF0)!important;background:transparent!important;color:var(--Gray-700, #344054)!important;text-align:center;font-size:16px!important;font-weight:500!important;line-height:24px}:host::ng-deep .md-drppicker .btn.btn-default{border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize;margin-right:10px!important}:host::ng-deep .md-drppicker td.available.invalid-date{text-decoration:line-through;pointer-events:none;color:#a9a9a9}:host::ng-deep .md-drppicker td.available.today:not(.invalid-date){text-decoration:unset;pointer-events:unset;color:unset}.btn-primary{line-height:18px!important}.checkbox-label{color:#344054;font-size:14px;font-weight:500;line-height:20px;cursor:pointer}.checklist-left .checklist-title{overflow:hidden;color:var(--Black, #101828)!important;text-overflow:ellipsis;font-size:18px!important;font-weight:500;line-height:28px}.checklist-left .checklist-text{overflow:hidden;color:var(--Black, #101828)!important;text-overflow:ellipsis;font-size:12px!important;font-weight:400!important;line-height:18px}.section{display:inline-block;width:600px;white-space:nowrap;outline:none!important;border:none!important;box-shadow:none!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--Black, #101828)!important;font-size:16px!important;font-weight:500!important}.card hr{width:-webkit-fill-available}.editablecontent{color:var(--Gray-700, #344054)!important;font-size:16px!important;font-weight:400!important;line-height:24px}.rotate{transform:rotate(180deg);transition:1s}.question-left{color:var(--Gray-700, #344054)!important;font-size:16px;font-weight:400;line-height:24px}.view-all{padding:12px!important;border-radius:6px!important;background:var(--Primary-50, #EAF8FF)!important;color:var(--Primary-500, #33B5FF)!important;font-size:16px!important;font-weight:600!important;line-height:24px;text-decoration-line:underline!important}.view-questions{padding:12px!important;border-radius:6px!important;color:var(--Primary-500, #33B5FF)!important;font-size:16px!important;font-weight:600!important;line-height:24px;text-decoration-line:underline!important}.iconsize{width:110px;height:110px}.margin-left-side{margin-left:-14px}.margin-top-side{margin-top:-15px}input[type=checkbox]{width:16px!important;height:16px!important;margin:0;border-radius:4px!important;-webkit-appearance:none;-moz-appearance:none;-o-appearance:none;appearance:none;outline:1px solid var(--gray-300, #D0D5DD);box-shadow:none;font-size:.8em;text-align:center;line-height:1em;background:#fff}input[type=checkbox]:checked{outline:1px solid var(--primary-600, #00A3FF);background-color:var(--primary-50, #EAF8FF)}input[type=checkbox]:checked:after{content:\"\";transform:rotate(45deg);border-bottom:2px solid #00A3FF;border-right:2px solid #00A3FF;display:inline-block;width:.5em;padding-left:0!important;padding-top:8px;padding-right:5px}.uni-title{color:#000!important;font-size:17px!important;font-weight:600!important;line-height:30px;white-space:nowrap}.uni-subtitle{color:#000!important;font-size:17px!important;font-weight:400!important;line-height:28px}.qa-heading{color:var(--Black, #101828)!important;font-size:18px!important;font-weight:700!important;line-height:28px;list-style:none}.qa-bodrer{padding:16px!important;border-radius:8px!important;border:1px solid var(--Gray-200, #EAECF0)!important;background:var(--text-primary, #FFF)!important;box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280f!important}.title-ref{color:var(--Gray-900, #101828)!important;font-size:16px!important;font-weight:400!important;line-height:24px}.btn-outline-primary{border-radius:8px!important;border:1px solid var(--Primary-500, #33B5FF)!important;background:var(--Primary-50, #EAF8FF)!important;box-shadow:0 1px 2px #1018280d!important;padding:calc(.7rem + 0px) calc(1.5rem + 1px)!important}.Partially{color:#000;font-size:18px!important;font-style:italic!important;font-weight:500;line-height:28px}.task-remarks{color:#000!important;font-size:18px!important;font-weight:400!important;line-height:28px}.backButtonright{border-radius:1000px!important;background:var(--text-primary, #FFF)!important;padding:12px!important;box-shadow:0 12px 16px -4px #10182814,0 4px 6px -2px #10182808!important;box-shadow:0 8.727px 11.636px -2.909px #10182814,0 2.909px 4.364px -1.455px #10182808!important;position:absolute;top:30px;right:-10px;z-index:0}.backButtonleft{border-radius:1000px!important;background:#fff;padding:14px!important;border:var(--Gray-300, #D0D5DD);box-shadow:0 8.727px 11.636px -2.909px #10182814,0 2.909px 4.364px -1.455px #10182808;position:absolute;top:30px;left:-20px;z-index:5}img.img-logo{width:100%;height:400px!important}.recap-img{width:100%;height:400px;object-fit:cover!important}.img-src{width:30%!important;height:20%!important}.dropdownselect{padding:20px 10px}.dropdownbg{width:Fill(372px) px;height:Hug(40px) px;padding:8px 16px;gap:0px;border-radius:6px 0 0;justify-content:space-between;opacity:0px;background:#eaf8ff}.detectionright{color:var(--Primary-700, #009BF3)!important;text-align:center;font-size:14px!important;font-weight:500;line-height:14px;float:right!important;mix-blend-mode:multiply}.backgroundBorder{background:#eaf8ff!important;color:#00a3ff!important;padding:12px;border-radius:8px;font-weight:500;line-height:10px}.withoutbackground{padding:8px;font-weight:500;line-height:10px}.snapcard{display:flex;padding:12px;flex-direction:column;align-items:flex-start;gap:12px;align-self:stretch;border-radius:8px;border:1px solid var(--Gray-200, #EAECF0);background:var(--White, #FFF);box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280f}.snapheader{color:var(--Black, #101828);font-size:16px;font-style:normal;font-weight:600;line-height:24px}.snaptext{color:var(--Gray-900, #101828);font-size:16px!important;font-style:normal;font-weight:600!important;line-height:24px}.snaptime{color:var(--Gray-900, #101828);font-size:12px!important;font-style:normal;font-weight:500!important;line-height:22px}.snapbadge{text-align:center;font-size:14px!important;font-style:normal;font-weight:500!important;line-height:20px}.btn-resize{font-size:13px!important;height:29px!important;line-height:11px!important;padding:1px!important}.preview{position:absolute;top:30%;left:14%}.w-25{width:17%!important}.w-40{width:40%!important}.usage-detection{color:var(--Primary-700, #009BF3);text-overflow:ellipsis!important;font-size:16px!important;font-style:normal;font-weight:400;line-height:16px;width:220Px}.usage-text{color:var(--Gray-700, #344054);text-overflow:ellipsis;font-size:16px;font-style:normal;font-weight:400;line-height:17px}.h-450px{object-fit:contain!important}.store-title{color:var(--Black, #101828)!important;font-size:18px;font-weight:700;line-height:28px}.img-opc{width:100%!important;height:300px!important;border-radius:12px!important}.h-900px{min-height:auto!important;max-height:2800px!important}.select-wrapper{position:relative;display:inline-block;width:100%}.placeholder-overlay{position:absolute;color:var(--Gray-500, #667085);font-family:Inter;font-size:16px!important;font-style:normal;font-weight:400;top:10px;left:15px;pointer-events:none;font-size:1.1rem;z-index:1}.flagclour{color:red}.remarksTxt{margin-top:10px;font-family:Inter;font-size:18px;font-weight:400;line-height:28px;text-align:left;white-space:pre-line}.no-text-transform{text-transform:none!important}.border-val1{padding:8px 14px!important;border-radius:8px!important;border:1px solid var(--Primary-500, #33B5FF)!important;background:var(--Primary-50, #EAF8FF)!important;box-shadow:0 1px 2px #1018280d!important}.font-task{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.border-default{padding:8px 14px!important;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important}.font-defult-task{color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.nav-item .nav-link.active{border:none;border-radius:6px;background:var(--Primary-50, #EAF8FF);padding:8px 12px}.nav-item .nav-link:hover{border:none}.badge-num-primary{border-radius:16px!important;background:var(--Primary-50, #EAF8FF)!important;color:var(--Primary-700, #009BF3)!important;text-align:center;font-size:14px!important;font-style:normal;font-weight:500;line-height:20px;padding:2px 10px!important;mix-blend-mode:multiply!important}.badge-num-muted{border-radius:16px!important;background:var(--Primary-50, #F2F4F7)!important;color:var(--Gray-700, #344054)!important;text-align:center;font-size:14px;font-style:normal;font-weight:500;line-height:20px;padding:2px 10px!important;mix-blend-mode:multiply!important}.text-title{font-size:16px!important;font-weight:600!important;color:#101828!important;line-height:24px}.title-description{font-size:14px!important;font-weight:400;color:#101828!important;line-height:24px!important}.border-primary1{border-radius:8px!important;border:1px solid var(--Primary-600, #00A3FF)!important;background:var(--Primary-600, #00A3FF)!important;box-shadow:0 1px 2px #1018280d!important;color:var(--White, #FFF)!important;font-size:16px!important;font-weight:600;line-height:24px;text-transform:capitalize}.scroll-y{overflow-x:hidden;overflow-y:auto}.totalsize{width:18%}.view-detail{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:600!important;line-height:20px;text-transform:capitalize}.left-sidebar{position:sticky;top:0;width:33%;overflow:visible}.main-container{display:flex;align-items:flex-start}.right-content{flex-grow:1;width:67%}.bordercolor{border:1px solid var(--Gray-300, #D0D5DD)!important}.toastcard{border-radius:8px;background:var(--Primary-50, #EAF8FF);padding:8px 16px}.toasttext{overflow:hidden;color:var(--Primary-700, #009BF3);text-overflow:ellipsis;font-size:16px;font-style:normal;font-weight:500;line-height:24px}.btn-outline{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF);box-shadow:0 1px 2px #1018280d}.refreshtext{color:var(--Gray-700, #344054);font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}.collage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;height:450px;overflow-y:auto;grid-auto-rows:auto}.collage-tile{width:100%;height:100%}.collage-tile img{width:100%;height:100%!important;border-radius:6px}::ng-deep .my-own-styles .modal-dialog{max-width:600px!important}.bgDanger{color:var(--Error-700, #B42318);text-align:center;font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px;border-radius:16px;background:var(--Error-50, #FEF3F2)}.bgSuccess{color:var(--Success-700, #027A48);text-align:center;font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:18px;border-radius:16px;background:var(--Success-50, #ECFDF3)}.openclosesnapIMG{width:100%!important;height:205px!important;border-radius:30px!important}.openclosesnapLiveIMG{width:100%!important;height:400px!important;border-radius:30px!important}.backgroundGray{background:#f2f4f7!important}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;cursor:pointer;transition:all .7s ease;overflow:hidden}.icon-btn .btn-text{max-width:0;opacity:0;white-space:nowrap;overflow:hidden;transition:all .7s ease;color:#344054;font-size:14px}.icon-btn:hover .btn-text{max-width:120px;opacity:1;margin-left:6px}.video-wrapper{width:100%;height:450px;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.video-wrapper video{width:100%;height:100%;object-fit:contain;transition:all 20s ease}.video-wrapper.fullscreen-active{width:100vw!important;height:100vh!important;background:#000!important;overflow:hidden}.video-wrapper.fullscreen-active video{width:100vw!important;height:100vh!important;object-fit:contain!important;transform:none!important;background:#000!important}.video-wrapper:not(.fullscreen-active){width:100%;height:450px}.video-wrapper:not(.fullscreen-active) video{width:100%;height:100%}.badge.scoreBadge{background:#eaecf5;color:#363f72}.heightImage{height:218px!important}.occ-body{font-family:Inter,system-ui,sans-serif}.occ-body .col-4{display:flex}.occ-body .occ-card{background:#fff;border:1px solid #EAECF0;border-radius:12px;box-shadow:0 1px 3px #10182814;overflow:hidden;width:100%;display:flex;flex-direction:column}.occ-body .occ-card-head{margin:12px 12px 0;padding:10px 14px;background:#f2f4f7;border-radius:8px;font-size:15px;font-weight:500;color:#101828}.occ-body .occ-card-img-wrap{padding:12px}.occ-body .occ-card-img{width:100%;height:230px;object-fit:cover;border-radius:8px;display:block;background:#f2f4f7}.occ-body .occ-card-offline{width:100%;height:230px;border-radius:8px;background:#f2f4f7;display:flex;align-items:center;justify-content:center}.occ-body .occ-card-body{padding:0 14px 16px;flex:1 1 auto;display:flex;flex-direction:column;align-items:flex-start}.occ-body .occ-card-time{font-size:14px;font-weight:500;color:#101828;margin-bottom:12px}.occ-body .occ-card-seats{font-size:14px;color:#475467;margin-bottom:12px}.occ-body .occ-card-seats strong{color:#101828}.occ-body .occ-status-badge{margin-top:auto;display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:16px;font-size:13px;font-weight:500}.occ-body .occ-status-badge.occ-badge-breached,.occ-body .occ-status-badge.occ-badge-offline{background:#fef3f2;color:#b42318}.occ-body .occ-status-badge.occ-badge-default{background:#f2f4f7;color:#475467}.occ-body .occ-status-badge .occ-badge-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;font-size:13px;cursor:pointer}.occ-body .occ-status-badge .occ-badge-icon svg{pointer-events:none}\n"] }]
18167
18167
  }], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: i2$1.GlobalStateService }, { type: TraxService }, { type: i0.ChangeDetectorRef }, { type: i1.NgbModal }, { type: i1$3.ActivatedRoute }, { type: i1$3.Router }, { type: i3.ToastService }, { type: i6.Location }, { type: i2$1.PageInfoService }, { type: i2.DomSanitizer }], propDecorators: { onClick: [{
18168
18168
  type: HostListener,
18169
18169
  args: ['document:click', ['$event']]