1"use strict";(self.webpackChunksrc=self.webpackChunksrc||[]).push([[9343],{19343:function(Te,T,s){s.r(T),s.d(T,{ReviewModule:function(){return Ce}});var h=s(43144),_=s(15671),v=s(69808),k=s(62866),m=s(93075),E=s(41174),S=s(22161),x=s(34390),M=s(495),q=s(60136),N=s(29388),Z=s(633),e=s(5e3),F=s(40520),b=function(){var o=function(l){(0,q.Z)(t,l);var i=(0,N.Z)(t);function t(r,n){var a;return(0,_.Z)(this,t),(a=i.call(this,r,n)).url="api/reviews",a.entityTitle="Reviews",a}return(0,h.Z)(t,[{key:"getReviews",value:function(n){return this.handleRequest(this.http.post("".concat(this.url,"/page"),n),this.handlersFactory.getDefault())}},{key:"approveEmployeeReview",value:function(n,a){return this.handleRequest(this.http.post("".concat(this.url,"/employee-review/").concat(n,"/").concat(a,"/approve"),{}),this.handlersFactory.getDefault())}},{key:"rejectEmployeeReview",value:function(n){return this.handleRequest(this.http.post("".concat(this.url,"/employee-review/").concat(n,"/reject"),{}),this.handlersFactory.getDefault())}},{key:"getEmployeesForSelection",value:function(){return this.handleRequest(this.http.get("".concat(this.url,"/employees")),this.handlersFactory.getDefault())}},{key:"addEmployeeToReview",value:function(n,a,c,w){return this.handleRequest(this.http.post("".concat(this.url,"/").concat(n,"/employee"),{employeeId:a,amount:c,employeeUser:w}),this.handlersFactory.getDefault())}},{key:"searchContacts",value:function(n){return this.handleRequest(this.http.get("".concat(this.url,"/contacts"),{params:{search:n}}),this.handlersFactory.getDefault())}},{key:"linkContact",value:function(n,a){return this.handleRequest(this.http.post("".concat(this.url,"/").concat(n,"/contact"),{contactId:a}),this.handlersFactory.getDefault())}},{key:"unlinkContact",value:function(n){return this.handleRequest(this.http.post("".concat(this.url,"/").concat(n,"/contact/remove"),{}),this.handlersFactory.getDefault())}}]),t}(Z.Bn);return o.\u0275fac=function(i){return new(i||o)(e.LFG(F.eN),e.LFG(Z.K7))},o.\u0275prov=e.Yz7({token:o,factory:o.\u0275fac}),o}(),O=s(87757),p=s.n(O),g=s(12176),f=s(99160),P=s(23948),J=s(38828),R=s(53787),D=s(59783),I=s(40845),U=s(98952),Q=s(84132),L=s(15315),$=s(14036),Y=s(7010),B=s(12145),u=function(o,l,i,t){return new(i||(i=Promise))(function(n,a){function c(d){try{y(t.next(d))}catch(C){a(C)}}function w(d){try{y(t.throw(d))}catch(C){a(C)}}function y(d){d.done?n(d.value):function r(n){return n instanceof i?n:new i(function(a){a(n)})}(d.value).then(c,w)}y((t=t.apply(o,l||[])).next())})},z=["filter"];function j(o,l){1&o&&(e.TgZ(0,"div",19),e._UZ(1,"i",20),e.qZA())}function H(o,l){if(1&o&&(e.TgZ(0,"div",46),e.TgZ(1,"div",47),e._uU(2),e.qZA(),e.qZA()),2&o){var i=e.oxw(2).$implicit,t=e.oxw(2);e.xp6(2),e.Oqu(t.getReviewStatus(i))}}function G(o,l){1&o&&e._UZ(0,"i",48)}function V(o,l){if(1&o&&e._UZ(0,"i",49),2&o){var i=e.oxw(2).$implicit,t=e.oxw(2);e.Udp("color",t.getStarColor(i.stars))}}function K(o,l){if(1&o){var i=e.EpF();e.TgZ(0,"div",34),e.TgZ(1,"div",35),e.TgZ(2,"div",36),e.TgZ(3,"strong"),e._uU(4),e.qZA(),e.qZA(),e.TgZ(5,"div",37),e._uU(6),e.qZA(),e.TgZ(7,"div",37),e._uU(8),e.ALo(9,"date"),e.qZA(),e.qZA(),e.YNc(10,H,3,1,"div",38),e.TgZ(11,"div",39),e.TgZ(12,"div",40),e.TgZ(13,"div",41),e.YNc(14,G,1,0,"i",42),e.YNc(15,V,1,2,"i",43),e.TgZ(16,"span",44),e._uU(17),e.qZA(),e.qZA(),e.TgZ(18,"div",45),e.NdJ("click",function(){e.CHM(i);var a=e.oxw().$implicit;return e.oxw(2).openReviewLink(a.link)}),e._uU(19," Open Review "),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&o){var t=e.oxw().$implicit,r=e.oxw(2);e.xp6(4),e.Oqu(t.title),e.xp6(2),e.Oqu(t.name),e.xp6(2),e.Oqu(e.xi3(9,7,t.dateCreated,"dd/MM/yyyy HH:mm")),e.xp6(2),e.Q6J("ngIf",r.getReviewStatus(t)),e.xp6(4),e.Q6J("ngForOf",r.getEmptyStarsArray(t.stars)),e.xp6(1),e.Q6J("ngForOf",r.getStarsArray(t.stars)),e.xp6(2),e.hij("(",t.stars,")")}}function X(o,l){if(1&o&&(e.TgZ(0,"span",55),e._uU(1),e.qZA()),2&o){var i=e.oxw(2).$implicit;e.xp6(1),e.hij("(",i.contactEmail,")")}}function W(o,l){if(1&o){var i=e.EpF();e.TgZ(0,"span",50),e._UZ(1,"i",51),e.TgZ(2,"strong"),e._uU(3),e.qZA(),e.YNc(4,X,2,1,"span",52),e.TgZ(5,"button",53),e.NdJ("click",function(){e.CHM(i);var n=e.oxw().$implicit;return e.oxw(2).openLinkContactDialog(n)}),e.qZA(),e.TgZ(6,"button",54),e.NdJ("click",function(){e.CHM(i);var n=e.oxw().$implicit;return e.oxw(2).unlinkContact(n)}),e.qZA(),e.qZA()}if(2&o){var t=e.oxw().$implicit;e.xp6(3),e.Oqu(t.contactName),e.xp6(1),e.Q6J("ngIf",t.contactEmail)}}function ee(o,l){if(1&o){var i=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"button",56),e.NdJ("click",function(){e.CHM(i);var r=e.oxw().$implicit;return e.oxw(2).openLinkContactDialog(r)}),e.qZA(),e.qZA()}}function te(o,l){if(1&o){var i=e.EpF();e.TgZ(0,"button",57),e.NdJ("click",function(){e.CHM(i);var r=e.oxw().$implicit;return e.oxw(2).openAddEmployeeDialog(r.id_original)}),e.qZA()}}function ne(o,l){1&o&&(e.TgZ(0,"th"),e._uU(1,"Actions"),e.qZA())}function ie(o,l){if(1&o&&(e.TgZ(0,"tr"),e.TgZ(1,"th"),e._uU(2,"Employee Name"),e.qZA(),e.TgZ(3,"th"),e._uU(4,"Amount"),e.qZA(),e.TgZ(5,"th"),e._uU(6,"Status"),e.qZA(),e.YNc(7,ne,2,0,"th",4),e.qZA()),2&o){var i=e.oxw().$implicit,t=e.oxw(2);e.xp6(7),e.Q6J("ngIf",t.isSuperAdmin&&t.hasPendingEmployees(i))}}function oe(o,l){if(1&o){var i=e.EpF();e.TgZ(0,"div",59),e.TgZ(1,"button",60),e.NdJ("click",function(){e.CHM(i);var r=e.oxw(2).$implicit;return e.oxw(3).approveEmployee(r)}),e.qZA(),e.TgZ(2,"button",61),e.NdJ("click",function(){e.CHM(i);var r=e.oxw(2).$implicit;return e.oxw(3).rejectEmployee(r)}),e.qZA(),e.qZA()}}function ae(o,l){1&o&&(e.TgZ(0,"span"),e._uU(1,"-"),e.qZA())}function re(o,l){if(1&o&&(e.TgZ(0,"td"),e.YNc(1,oe,3,0,"div",58),e.YNc(2,ae,2,0,"span",4),e.qZA()),2&o){var i=e.oxw().$implicit,t=e.oxw(3);e.xp6(1),e.Q6J("ngIf",t.isPending(i)),e.xp6(1),e.Q6J("ngIf",!t.isPending(i))}}function le(o,l){if(1&o&&(e.TgZ(0,"tr"),e.TgZ(1,"td"),e._uU(2),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.ALo(5,"currency"),e.qZA(),e.TgZ(6,"td"),e.TgZ(7,"span"),e._uU(8),e.qZA(),e.qZA(),e.YNc(9,re,3,2,"td",4),e.qZA()),2&o){var i=l.$implicit,t=e.oxw().$implicit,r=e.oxw(2);e.xp6(2),e.Oqu(i.employeeName),e.xp6(2),e.Oqu(e.xi3(5,6,i.amount,"GBP")),e.xp6(3),e.Tol("status-badge status-"+r.getEmployeeStatus(i).toLowerCase().replace(" ","-")),e.xp6(1),e.hij(" ",r.getEmployeeStatus(i)," "),e.xp6(1),e.Q6J("ngIf",r.isSuperAdmin&&r.hasPendingEmployees(t))}}function se(o,l){if(1&o&&(e.TgZ(0,"p-accordionTab"),e.YNc(1,K,20,10,"ng-template",22),e.TgZ(2,"div",23),e.TgZ(3,"div",24),e.TgZ(4,"p",25),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"div",26),e.TgZ(7,"h3",27),e._uU(8,"Customer"),e.qZA(),e.YNc(9,W,7,2,"span",28),e.YNc(10,ee,2,0,"span",4),e.qZA(),e.TgZ(11,"div",29),e.TgZ(12,"div",30),e.TgZ(13,"h3",27),e._uU(14,"Mentioned Employees"),e.qZA(),e.YNc(15,te,1,0,"button",31),e.qZA(),e.TgZ(16,"p-table",32),e.YNc(17,ie,8,1,"ng-template",22),e.YNc(18,le,10,9,"ng-template",33),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&o){var i=l.$implicit,t=e.oxw(2);e.xp6(5),e.Oqu(i.body),e.xp6(4),e.Q6J("ngIf",i.contactId),e.xp6(1),e.Q6J("ngIf",!i.contactId),e.xp6(
15),e.Q6J("ngIf",t.isSuperAdmin),e.xp6(1),e.Q6J("value",i.employees)}}function ce(o,l){if(1&o&&(e.TgZ(0,"p-accordion"),e.YNc(1,se,19,5,"p-accordionTab",21),e.qZA()),2&o){var i=e.oxw();e.xp6(1),e.Q6J("ngForOf",i.reviews)}}function pe(o,l){1&o&&(e.TgZ(0,"div",62),e.TgZ(1,"p"),e._uU(2,"No reviews found."),e.qZA(),e.qZA())}var ue=function(){return[10,25,50,100]};function de(o,l){if(1&o){var i=e.EpF();e.TgZ(0,"p-paginator",63),e.NdJ("onPageChange",function(n){return e.CHM(i),e.oxw().onPageChange(n)}),e.qZA()}if(2&o){var t=e.oxw();e.Q6J("rows",t.rows)("totalRecords",t.totalRecords)("first",t.first)("rowsPerPageOptions",e.DdM(4,ue))}}function ve(o,l){if(1&o){var i=e.EpF();e.TgZ(0,"button",64),e.NdJ("click",function(){return e.CHM(i),e.oxw().closeAddEmployeeDialog()}),e.qZA(),e.TgZ(1,"button",65),e.NdJ("click",function(){return e.CHM(i),e.oxw().saveEmployeeToReview()}),e.qZA()}if(2&o){var t=e.oxw();e.xp6(1),e.Q6J("disabled",!t.selectedEmployee)}}function me(o,l){if(1&o&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&o){var i=e.oxw().$implicit;e.xp6(1),e.hij(" \xb7 ",i.accountNumbers,"")}}function ge(o,l){if(1&o&&(e.TgZ(0,"div",66),e.TgZ(1,"span"),e.TgZ(2,"strong"),e._uU(3),e.qZA(),e.qZA(),e.TgZ(4,"span",67),e._uU(5),e.YNc(6,me,2,1,"span",4),e.qZA(),e.qZA()),2&o){var i=l.$implicit;e.xp6(3),e.Oqu(i.name),e.xp6(2),e.hij(" ",i.email," "),e.xp6(1),e.Q6J("ngIf",i.accountNumbers)}}function fe(o,l){if(1&o){var i=e.EpF();e.TgZ(0,"button",64),e.NdJ("click",function(){return e.CHM(i),e.oxw().closeLinkContactDialog()}),e.qZA(),e.TgZ(1,"button",65),e.NdJ("click",function(){return e.CHM(i),e.oxw().saveContactLink()}),e.qZA()}if(2&o){var t=e.oxw();e.xp6(1),e.Q6J("disabled",!t.selectedContact||!t.selectedContact.id)}}var he=function(){return{width:"450px"}},A=function(){return{overflow:"visible"}},_e=function(){return{width:"500px"}},ye=[{path:"",component:function(){var o=function(){function l(i,t){(0,_.Z)(this,l),this.reviewsService=i,this.userService=t,this.reviews=[],this.loading=!1,this.totalRecords=0,this.rows=10,this.first=0,this.showAddEmployeeDialog=!1,this.employees=[],this.selectedEmployee=null,this.selectedReviewId=null,this.employeeAmount=10,this.showLinkContactDialog=!1,this.linkReviewId=null,this.contactSearchResults=[],this.selectedContact=null,this.filterSettings=[]}return(0,h.Z)(l,[{key:"ngOnInit",value:function(){this.initializeFilterSettings(),this.loadReviews(),this.loadEmployees()}},{key:"initializeFilterSettings",value:function(){var t,r=[{valueFieldName:"search",header:"Search",inputType:g.V.Text,filterType:f.vA.Text},{valueFieldName:"employeeId",header:"Employee",inputType:g.V.Dropdown,filterType:f.vA.Numeric,dropdownOptions:[],dropdownFilterEnabled:!0},{valueFieldName:"stars",header:"Star Rating",inputType:g.V.Dropdown,filterType:f.vA.Numeric,dropdownOptions:[{label:"1 Star",value:1},{label:"2 Stars",value:2},{label:"3 Stars",value:3},{label:"4 Stars",value:4},{label:"5 Stars",value:5}]}];(null===(t=this.userService.currentUser)||void 0===t?void 0:t.isSuperAdmin)&&r.push({valueFieldName:"pending",header:"Only Show Auto Approval Required",inputType:g.V.Checkbox,filterType:f.vA.Boolean}),this.filterSettings=r}},{key:"isSuperAdmin",get:function(){var t;return(null===(t=this.userService.currentUser)||void 0===t?void 0:t.isSuperAdmin)||!1}},{key:"loadEmployees",value:function(){return u(this,void 0,void 0,p().mark(function t(){var r;return p().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,a.next=3,this.reviewsService.getEmployeesForSelection();case 3:this.employees=a.sent,(r=this.filterSettings.find(function(c){return"employeeId"===c.valueFieldName}))&&(r.dropdownOptions=this.employees.map(function(c){return{label:c.name,value:c.id_original}})),a.next=11;break;case 8:a.prev=8,a.t0=a.catch(0),console.error("Error loading employees:",a.t0);case 11:case"end":return a.stop()}},t,this,[[0,8]])}))}},{key:"loadReviews",value:function(){return u(this,void 0,void 0,p().mark(function t(){var r,n;return p().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return this.loading=!0,c.prev=1,r=this.buildQueryCommand(),c.next=5,this.reviewsService.getReviews(r);case 5:this.reviews=(n=c.sent).items,this.totalRecords=n.total||0,c.next=13;break;
1case 10:c.prev=10,c.t0=c.catch(1),console.error("Error loading reviews:",c.t0);case 13:return c.prev=13,this.loading=!1,c.finish(13);case 16:case"end":return c.stop()}},t,this,[[1,10,13,16]])}))}},{key:"buildQueryCommand",value:function(){return{skip:this.first,take:this.rows,filters:this.filter?this.filter.getFilters():[]}}},{key:"onFilterChange",value:function(){this.first=0,this.loadReviews()}},{key:"onPageChange",value:function(t){this.first=t.first,this.rows=t.rows,this.loadReviews()}},{key:"getStarsArray",value:function(t){return Array(t).fill(0)}},{key:"getEmptyStarsArray",value:function(t){return Array(5-t).fill(0)}},{key:"getStarColor",value:function(t){switch(t){case 5:return"#2E7D32";case 4:return"#7CB342";case 3:return"#FBC02D";case 2:return"#F57C00";case 1:return"#D32F2F";default:return"#FFD700"}}},{key:"getReviewStatus",value:function(t){return t.employees.some(function(n){return!n.confirmedBy})?"Pending Review":t.employees.length>0?t.employees.map(function(n){return n.employeeName}).join(", "):""}},{key:"getEmployeeStatus",value:function(t){return t.confirmedBy?t.converted?"Converted":"Approved":"Pending Review"}},{key:"isPending",value:function(t){return!t.confirmedBy}},{key:"hasPendingEmployees",value:function(t){return t.employees.some(function(r){return!r.confirmedBy})}},{key:"approveEmployee",value:function(t){return u(this,void 0,void 0,p().mark(function r(){return p().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,a.next=3,this.reviewsService.approveEmployeeReview(t.id_original,this.userService.actualUserId);case 3:return a.next=5,this.loadReviews();case 5:a.next=10;break;case 7:a.prev=7,a.t0=a.catch(0),console.error("Error approving employee review:",a.t0);case 10:case"end":return a.stop()}},r,this,[[0,7]])}))}},{key:"rejectEmployee",value:function(t){return u(this,void 0,void 0,p().mark(function r(){return p().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,a.next=3,this.reviewsService.rejectEmployeeReview(t.id_original);case 3:return a.next=5,this.loadReviews();case 5:a.next=10;break;case 7:a.prev=7,a.t0=a.catch(0),console.error("Error rejecting employee review:",a.t0);case 10:case"end":return a.stop()}},r,this,[[0,7]])}))}},{key:"openReviewLink",value:function(t){window.open(t,"_blank")}},{key:"openAddEmployeeDialog",value:function(t){this.selectedReviewId=t,this.employeeAmount=10,this.selectedEmployee=null,this.showAddEmployeeDialog=!0}},{key:"closeAddEmployeeDialog",value:function(){this.showAddEmployeeDialog=!1,this.selectedEmployee=null,this.selectedReviewId=null,this.employeeAmount=10}},{key:"saveEmployeeToReview",value:function(){return u(this,void 0,void 0,p().mark(function t(){return p().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this.selectedEmployee&&this.selectedReviewId){n.next=2;break}return n.abrupt("return");case 2:return n.prev=2,n.next=5,this.reviewsService.addEmployeeToReview(this.selectedReviewId,this.selectedEmployee.id_original,this.employeeAmount,this.userService.actualUserId);case 5:return this.closeAddEmployeeDialog(),n.next=8,this.loadReviews();case 8:n.next=13;break;case 10:n.prev=10,n.t0=n.catch(2),console.error("Error adding employee to review:",n.t0);case 13:case"end":return n.stop()}},t,this,[[2,10]])}))}},{key:"openLinkContactDialog",value:function(t){this.linkReviewId=t.id_original,this.selectedContact=null,this.contactSearchResults=[],this.showLinkContactDialog=!0}},{key:"closeLinkContactDialog",value:function(){this.showLinkContactDialog=!1,this.linkReviewId=null,this.selectedContact=null,this.contactSearchResults=[]}},{key:"searchContacts",value:function(t){return u(this,void 0,void 0,p().mark(function r(){return p().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,a.next=3,this.reviewsService.searchContacts(t.query);case 3:this.contactSearchResults=a.sent,a.next=10;break;case 6:a.prev=6,a.t0=a.catch(0),console.error("Error searching contacts:",a.t0),this.contactSearchResults=[];case 10:case"end":return a.stop()}},r,this,[[0,6]])}))}},{key:"saveContactLink",value:function(){return u(this,void 0,void 0,p().mark(function t(){return p().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this.selectedContact&&this.linkReviewId){n.next=2;break}return n.abrupt("return");case 2:return n.prev=2,n.next=5,this.reviewsService.linkContact(this.linkReviewId,this.selectedContact.id);case 5:return this.closeLinkContactDialog(),n.next=8,this.loadReviews();case 8:n.next=13;break;case 10:n.prev=10,n.t0=n.catch(2),console.error("Error linking customer to review:",n.t0);case 13:case"end":return n.stop()}}
1,t,this,[[2,10]])}))}},{key:"unlinkContact",value:function(t){return u(this,void 0,void 0,p().mark(function r(){return p().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,a.next=3,this.reviewsService.unlinkContact(t.id_original);case 3:return a.next=5,this.loadReviews();case 5:a.next=10;break;case 7:a.prev=7,a.t0=a.catch(0),console.error("Error unlinking customer from review:",a.t0);case 10:case"end":return a.stop()}},r,this,[[0,7]])}))}}]),l}();return o.\u0275fac=function(i){return new(i||o)(e.Y36(b),e.Y36(P.KD))},o.\u0275cmp=e.Xpm({type:o,selectors:[["bbwt-reviews"]],viewQuery:function(i,t){var r;1&i&&e.Gf(z,5),2&i&&e.iGM(r=e.CRH())&&(t.filter=r.first)},decls:28,vars:34,consts:[[1,"card"],[3,"settings","filter"],["filter",""],["style","text-align: center; padding: 2rem;",4,"ngIf"],[4,"ngIf"],["class","no-reviews",4,"ngIf"],[3,"rows","totalRecords","first","rowsPerPageOptions","onPageChange",4,"ngIf"],["header","Add Employee to Review",3,"visible","modal","draggable","resizable","contentStyle","appendTo","visibleChange"],[1,"p-fluid"],[1,"p-field",2,"margin-bottom","1.5rem"],["for","employee"],["id","employee","optionLabel","name","placeholder","Select an employee","filterBy","name",3,"options","ngModel","filter","ngModelChange"],["for","amount"],["id","amount","mode","currency","currency","GBP","locale","en-GB",3,"ngModel","ngModelChange"],["pTemplate","footer"],["header","Link Customer to Review",3,"visible","modal","draggable","resizable","contentStyle","appendTo","visibleChange"],["for","contact"],["id","contact","field","name","placeholder","Start typing a customer name\u2026","appendTo","body",3,"ngModel","suggestions","delay","minLength","forceSelection","ngModelChange","completeMethod"],["pTemplate","item"],[2,"text-align","center","padding","2rem"],[1,"pi","pi-spin","pi-spinner",2,"font-size","2rem"],[4,"ngFor","ngForOf"],["pTemplate","header"],[1,"review-content"],[1,"review-body"],[1,"review-text"],[1,"customer-section",2,"display","flex","align-items","center","gap","1rem","margin-bottom","1rem"],[2,"margin","0"],["style","display: flex; align-items: center; gap: 0.5rem;",4,"ngIf"],[1,"employees-section"],[2,"display","flex","justify-content","space-between","align-items","center","margin-bottom","1rem"],["pButton","","type","button","label","Add Employee","icon","pi pi-plus","class","p-button-sm",3,"click",4,"ngIf"],["styleClass","p-datatable-sm",3,"value"],["pTemplate","body"],[1,"review-header"],[1,"review-title-section"],[1,"review-title"],[1,"reviewer-name"],["class","review-status-section",4,"ngIf"],[1,"review-meta"],[1,"stars-section"],[1,"stars"],["class","pi pi-star-fill","style","color: #d3d3d3;",4,"ngFor","ngForOf"],["class","pi pi-star-fill",3,"color",4,"ngFor","ngForOf"],[1,"star-count"],[1,"open-review-link",3,"click"],[1,"review-status-section"],[1,"review-status"],[1,"pi","pi-star-fill",2,"color","#d3d3d3"],[1,"pi","pi-star-fill"],[2,"display","flex","align-items","center","gap","0.5rem"],[1,"pi","pi-user"],["style","color: var(--text-color-secondary);",4,"ngIf"],["pButton","","type","button","label","Change","icon","pi pi-pencil",1,"p-button-sm","p-button-text",3,"click"],["pButton","","type","button","label","Unlink","icon","pi pi-times",1,"p-button-sm","p-button-text","p-button-danger",3,"click"],[2,"color","var(--text-color-secondary)"],["pButton","","type","button","label","Link Customer","icon","pi pi-link",1,"p-button-sm",3,"click"],["pButton","","type","button","label","Add Employee","icon","pi pi-plus",1,"p-button-sm",3,"click"],["class","action-buttons",4,"ngIf"],[1,"action-buttons"],["pButton","","type","button","label","Approve","icon","pi pi-check",1,"p-button-success","p-button-sm",3,"click"],["pButton","","type","button","label","Reject","icon","pi pi-times",1,"p-button-danger","p-button-sm",3,"click"],[1,"no-reviews"],[3,"rows","totalRecords","first","rowsPerPageOptions","onPageChange"],["pButton","","type","button","label","Cancel","icon","pi pi-times",1,"p-button-text",3,"click"],["pButton","","type","button","label","Save","icon","pi pi-check",3,"disabled","click"],[2,"display","flex","flex-direction","column"],[2,"font-size","0.8rem","color","var(--text-color-secondary)"]],template:function(i,t){1&i&&(e.TgZ(0,"div",0),e.TgZ(1,"h1"),e._uU(2,"Reviews"),e.qZA(),e.TgZ(3,"filter",1,2),e.NdJ("filter",function(){return t.onFilterChange()}),e.qZA(),e.YNc(5,j,2,0,"div",3),e.YNc(6,ce,2,1,"p-accordion",4),e.YNc(7,pe,3,0,"div",5),e.YNc(8,de,1,5,"p-paginator",6),e.qZA(),e.TgZ(9,"p-dialog",7),e.NdJ("visibleChange",function(n){return t.showAddEmployeeDialog=n}),e.TgZ(10,"div",8),e.TgZ(11,"div",9),e.TgZ(12,"label",10),e._uU(13,"Employee"),e.qZA(),e.TgZ(14,"p-dropdown",11),e.NdJ("ngModelChange",function(n){return t.selectedEmployee=n}),e.qZA(),e.qZA(),e.TgZ(15,"div",9),e.TgZ(16,"label",12),e._uU(17,"Amount"),e.qZA(),e.TgZ(18,"p-inputNumber",13),e.NdJ("ngModelChange",function(n){return t.employeeAmount=n}),e.qZA(),e.qZA(),e.qZA(),e.YNc(19,ve,2,1,"ng-template",14),e.qZA(),e.TgZ(20,"p-dialog",15),e.NdJ("visibleChange",function(n){return t.showLinkContactDialog=n}),e.TgZ(21,"div",8),e.TgZ(22,"div",9),e.TgZ(23,"label",16),e._uU(24,"Search by name or email"),e.qZA(),e.TgZ(25,"p-autoComplete",17),e.NdJ("ngModelChange",function(n){return t.selectedContact=n})("completeMethod",function(n){return t.searchContacts(n)}),e.YNc(26,ge,7,3,"ng-template",18),e.qZA(),e.qZA(),e.qZA(),e.YNc(27,fe,2,1,"ng-template",14),e.qZA()),2&i&&(e.xp6(3),e.Q6J("settings",t.filterSettings),e.xp6(2),e.Q6J("ngIf",t.loading),e.xp6(1),e.Q6J("ngIf",!t.loading),e.xp6(1),e.Q6J("ngIf",!t.loading&&0===t.reviews.length),e.xp6(1),e.Q6J("ngIf",!t.loading&&t.reviews.length>0),e.xp6(1),e.Akn(e.DdM(30,he)),e.Q6J("visible",t.showAddEmployeeDialog)("modal",!0)("draggable",!1)("resizable",!1)("contentStyle",e.Dd
1M(31,A))("appendTo","body"),e.xp6(5),e.Q6J("options",t.employees)("ngModel",t.selectedEmployee)("filter",!0),e.xp6(4),e.Q6J("ngModel",t.employeeAmount),e.xp6(2),e.Akn(e.DdM(32,_e)),e.Q6J("visible",t.showLinkContactDialog)("modal",!0)("draggable",!1)("resizable",!1)("contentStyle",e.DdM(33,A))("appendTo","body"),e.xp6(5),e.Q6J("ngModel",t.selectedContact)("suggestions",t.contactSearchResults)("delay",300)("minLength",2)("forceSelection",!0))},directives:[J.z,v.O5,R.UQ,v.sg,R.US,D.jx,I.Hq,U.iA,Q.D,L.V,$.Lt,m.JJ,m.On,Y.Rn,B.Qc],pipes:[v.uU,v.H9],styles:[".review-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;width:100%;gap:1rem}.review-title-section[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;gap:.5rem}.review-title[_ngcontent-%COMP%]{font-size:1.1rem}.reviewer-name[_ngcontent-%COMP%]{font-size:.9rem;color:#666}.review-status-section[_ngcontent-%COMP%]{flex:1;display:flex;justify-content:center;align-items:center}.review-status[_ngcontent-%COMP%]{font-size:.95rem;color:#555;font-style:italic;text-align:center}.review-meta[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-end}.stars-section[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.stars[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem;font-size:1rem}.star-count[_ngcontent-%COMP%]{margin-left:.25rem;color:#666;font-size:.9rem}.open-review-link[_ngcontent-%COMP%]{text-decoration:underline;color:#007bff;cursor:pointer;font-size:.9rem}.open-review-link[_ngcontent-%COMP%]:hover{color:#0056b3}.review-content[_ngcontent-%COMP%]{padding:1rem 0}.review-body[_ngcontent-%COMP%]{margin-bottom:2rem}.review-body[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin-bottom:0;line-height:1.6}.review-body[_ngcontent-%COMP%] .review-text[_ngcontent-%COMP%]{white-space:pre-wrap;word-wrap:break-word}.employees-section[_ngcontent-%COMP%]{margin-top:1.5rem}.employees-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin-bottom:1rem;font-size:1rem;font-weight:600}.action-buttons[_ngcontent-%COMP%]{display:flex;gap:.5rem}.status-badge[_ngcontent-%COMP%]{padding:.25rem .75rem;border-radius:4px;font-size:.85rem;font-weight:500}.status-badge.status-pending-review[_ngcontent-%COMP%]{background-color:#fff3cd;color:#856404}.status-badge.status-approved[_ngcontent-%COMP%]{background-color:#d4edda;color:#155724}.status-badge.status-converted[_ngcontent-%COMP%]{background-color:#d1ecf1;color:#0c5460}.no-reviews[_ngcontent-%COMP%]{text-align:center;padding:3rem;color:#666;font-size:1.1rem}"]}),o}(),data:{title:"Reviews"}}],Ce=function(){var o=(0,h.Z)(function l(){(0,_.Z)(this,l)});return o.\u0275fac=function(i){return new(i||o)},o.\u0275mod=e.oAB({type:o}),o.\u0275inj=e.cJS({providers:[b],imports:[[v.ez,m.u5,m.UX,E.g,S.zE,x.iL,M.f,k.Bz.forChild(ye)]]}),o}()}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.