1import{g as U,h as oe}from"./chunk-EWZD44OD.js";import{I as J,K as ie}from"./chunk-LR7MOASQ.js";import{a as Y,d as ne}from"./chunk-SMSOHL4F.js";import"./chunk-VRO7LARE.js";import{l as H,o as W,v as te}from"./chunk-TPMOPAJA.js";import{e as G,f as ee}from"./chunk-QZLCDTFI.js";import"./chunk-4SWY45Q4.js";import{D as j,K as B,x as $}from"./chunk-TX5W4VZ4.js";import{$c as q,Ac as r,Bc as i,Cc as f,Ga as O,Gc as P,Hb as o,Jc as h,K as V,Kc as p,Pb as x,Qa as g,Ra as C,Rd as F,Sa as M,Ta as S,Wb as N,Yc as a,Zc as u,_c as m,ac as v,ga as z,k as I,mc as w,nc as k,oc as b,ra as L,va as Q,vc as c,vd as A,wa as X,xd as T,yc as y,zb as D,zc as E}from"./chunk-RQ5WQXLP.js";import{f as K}from"./chunk-37EQZ6M3.js";function re(t,s){t&1&&(r(0,"div",2),f(1,"div",5),r(2,"div",6),a(3,"Loading approval request\u2026"),i()())}function ae(t,s){if(t&1){let e=P();r(0,"button",15),h("click",function(){g(e);let l=p(2);return C(l.goToSequence())}),a(1,"Go to sequence"),i()}}function le(t,s){if(t&1&&(r(0,"div",3)(1,"span",7),M(),r(2,"svg",8),f(3,"circle",9)(4,"path",10)(5,"path",11),i()(),S(),r(6,"div")(7,"div",12),a(8,"Something went wrong"),i(),r(9,"div",13),a(10),i(),v(11,ae,2,0,"button",14),i()()),t&2){let e=p();o(10),u(e.error()),o(),c(e.sequenceId()?11:-1)}}function pe(t,s){t&1&&(M(),r(0,"svg",17),f(1,"path",19),i())}function se(t,s){t&1&&(M(),r(0,"svg",17),f(1,"path",20)(2,"path",21),i())}function ce(t,s){if(t&1){let e=P();r(0,"button",15),h("click",function(){g(e);let l=p(2);return C(l.goToSequence())}),a(1,"View sequence"),i()}}function de(t,s){if(t&1&&(r(0,"div",4)(1,"span",16),v(2,pe,2,0,":svg:svg",17)(3,se,3,0,":svg:svg",17),i(),r(4,"h2"),a(5),i(),r(6,"p",18),a(7),i(),v(8,ce,2,0,"button",14),i()),t&2){let e=p();o(),b("ok",e.actionType()==="approved"),o(),c(e.actionType()==="approved"?2:3),o(3),u(e.actionType()==="approved"?"Approved":"Changes requested"),o(2),m(" ",e.actionType()==="approved"?"Thanks \u2014 the sequence owner has been notified.":"Your feedback has been sent to the sequence owner."," "),o(),c(e.sequenceId()?8:-1)}}function ve(t,s){if(t&1&&a(0),t&2){let e=p(2);q(" ",e.approvalRequest().sequence.recipient_count," ",e.approvalRequest().sequence.recipient_count===1?"contact":"contacts"," ")}}function _e(t,s){t&1&&a(0," Not set ")}function me(t,s){if(t&1&&(r(0,"div",6),a(1),i()),t&2){let e=p(2);o(),u(e.approvalRequest().sequence.recipient_summary)}}function ue(t,s){if(t&1&&(r(0,"div",37)(1,"div",33),a(2,"Message from the requester"),i(),r(3,"div",34),a(4),i()()),t&2){let e=p(2);o(4),u(e.approvalRequest().message_to_approvers)}}function xe(t,s){if(t&1&&a(0),t&2){let e=p().$implicit,n=p(3);m(" \xB7 ",n.getStepCategory(e.type)," ")}}function ge(t,s){if(t&1&&a(0),t&2){let e=p().$implicit;m(" \xB7 ",e.delay_label," ")}}function Ce(t,s){if(t&1){let e=P();r(0,"button",56),h("click",function(){g(e);let l=p().$implicit,_=p(3);return C(_.togglePreview(l.id))}),a(1),i()}if(t&2){let e=p().$implicit,n=p(3);o(),m(" ",n.expandedPreviews.has(e.id)?"Hide":"Show"," content ")}}function fe(t,s){if(t&1&&(r(0,"div",57)(1,"span",58),f(2,"i"),i(),r(3,"span",6),a(4),i()()),t&2){let e=p(2).$implicit;o(2),k("width",e.brand_score,"%"),b("warn",e.brand_score>=50&&e.brand_score<80)("bad",e.brand_score<50),o(2),m("Brand ",e.brand_score,"%")}}function he(t,s){if(t&1&&(r(0,"div",57)(1,"span",58),f(2,"i"),i(),r(3,"span",6),a(4),i()()),t&2){let e=p(2).$implicit;o(2),k("width",e.ai_score,"%"),b("warn",e.ai_score>=50&&e.ai_score<80)("bad",e.ai_score<50),o(2),m("AI score ",e.ai_score,"%")}}function be(t,s){if(t&1&&(r(0,"div",55),v(1,fe,5,7,"div",57)(2,he,5,7,"div",57),i()),t&2){let e=p().$implicit;o(),c(e.brand_score!==null?1:-1),o(),c(e.ai_score!==null?2:-1)}}function we(t,s){if(t&1){let e=P();r(0,"div",59)(1,"iframe",61),h("load",function(l){g(e);let _=p(5);return C(_.onPreviewLoad(l))}),i()()}if(t&2){let e=p(2).$implicit,n=p(3);o(),w("srcdoc",n.safeHtml(e.content),D)}}function Pe(t,s){if(t&1&&(r(0,"div",60),a(1),i()),t&2){let e=p(2).$implicit;o(),u(e.content)}}function Me(t,s){if(t&1&&v(0,we,2,1,"div",59)(1,Pe,2,1,"div",60),t&2){let e=p().$implicit,n=p(3);c(n.isHtmlStep(e.channel)?0:1)}}function Oe(t,s){if(t&1&&(r(0,"div",50)(1,"div",51)(2,"div",52)(3,"div",33),a(4),v(5,xe,1,1)(6,ge,1,1),i(),r(7,"div",53),a(8),i()(),v(9,Ce,2,1,"button",54),i(),v(10,be,3,2,"div",55)(11,Me,2,1),i()),t&2){let e=s.$implicit,n=p(3);o(4),q(" Step ",e.sequence_number+1," \xB7 ",n.getStepLabel(e.channel)," "),o(),c(n.getStepCategory(e.type)?5:-1),o(),c(e.delay_label?6:-1),o(2),m(" ",e.subject||(n.isHtmlStep(e.channel)?"\u2014 no subject set \u2014":n.getStepLabel(e.channel)+" message")," "),o(),c(e.content?9:-1),o(),c(e.brand_score!==null||e.ai_score!==null?10:-1),o(),c(n.expandedPreviews.has(e.id)&&e.content?11:-1)}}function Re(t,s){if(t&1&&(r(0,"section",35)(1,"div",28),a(2),i(),y(3,Oe,12,8,"div",50,Z),i()),t&2){let e=p(2);
1o(2),m("Steps for review (",e.approvalRequest().sequence.steps.length,")"),o(),E(e.approvalRequest().sequence.steps)}}function Se(t,s){t&1&&(r(0,"span",67),a(1,"you"),i())}function ke(t,s){if(t&1&&a(0),t&2){let e=p().$implicit;m(" ",e.approver_email," \xB7 ")}}function ye(t,s){if(t&1&&a(0),t&2){let e=p().$implicit;m(" #",e.sequence_order," in order \xB7 ")}}function Ee(t,s){if(t&1&&(r(0,"div",71),a(1),i()),t&2){let e=p().$implicit,n=p(2);b("appr",!n.isReviewerRow(e)&&e.approval_status==="APPROVED")("chg",!n.isReviewerRow(e)&&e.approval_status==="REJECTED"),o(),u(e.comments)}}function qe(t,s){if(t&1&&(r(0,"div",62)(1,"span",63),a(2),i(),r(3,"div",64)(4,"div",65)(5,"span",66),a(6),i(),v(7,Se,2,0,"span",67),i(),r(8,"div",68),v(9,ke,1,1)(10,ye,1,1),a(11),i()(),r(12,"span",69),a(13),i()(),v(14,Ee,2,5,"div",70)),t&2){let e=s.$implicit,n=p(2);b("me",e.approver_email===n.approverEmail()),o(2),u(e.approver_email.charAt(0).toUpperCase()),o(3),w("title",e.approver_email),o(),u(e.approver_name||e.approver_email),o(),c(e.approver_email===n.approverEmail()?7:-1),o(),w("title",e.approver_email),o(),c(e.approver_name?9:-1),o(),c(n.approvalRequest().approval_type==="sequential"&&e.sequence_order>0?10:-1),o(),m(" ",e.approver_role==="Reviewer"?"Reviewer \u2014 comment only":e.approver_role," "),o(),b("appr",!n.isReviewerRow(e)&&e.approval_status==="APPROVED")("chg",!n.isReviewerRow(e)&&e.approval_status==="REJECTED")("pend",n.isReviewerRow(e)||e.approval_status==="PENDING"),o(),m(" ",n.approverLabel(e)," "),o(),c(e.comments?14:-1)}}function Ae(t,s){if(t&1&&(r(0,"div",39),M(),r(1,"svg",72),f(2,"circle",9)(3,"path",73),i(),a(4),i()),t&2){let e=p(2);o(4),m(" ",e.sequenceMessage()," ")}}function Te(t,s){t&1&&(r(0,"div",40)(1,"div",74),a(2,"You are a reviewer on this request"),i(),r(3,"div",6),a(4,"Your feedback goes to the requester. Sign-off is handled by the designated approvers."),i()())}function Ie(t,s){t&1&&(r(0,"span",42),a(1,"required to request changes"),i())}function Ve(t,s){t&1&&(r(0,"div",6),a(1,"Waiting on the approvers ahead of you before you can sign off."),i())}function ze(t,s){if(t&1&&(r(0,"span",6),a(1),A(2,"date"),i()),t&2){let e=p(3);o(),u(T(2,1,e.currentApprover.approval_date,"medium"))}}function Le(t,s){if(t&1&&(r(0,"div",44),a(1),v(2,ze,3,4,"span",6),i()),t&2){let e=p(2);o(),m(" You already ",e.currentApprover.approval_status==="APPROVED"?"approved":"requested changes on"," this request. "),o(),c(e.currentApprover.approval_date?2:-1)}}function De(t,s){if(t&1){let e=P();r(0,"button",75),h("click",function(){g(e);let l=p(2);return C(l.rejectRequest())}),a(1),i()}if(t&2){let e=p(2);w("disabled",e.isSubmitting()),o(),m(" ",e.isSubmitting()?"Sending\u2026":"Send feedback"," ")}}function Ne(t,s){if(t&1){let e=P();r(0,"div",46)(1,"button",76),h("click",function(){g(e);let l=p(2);return C(l.rejectRequest())}),a(2),i(),r(3,"button",77),h("click",function(){g(e);let l=p(2);return C(l.approveRequest())}),M(),r(4,"svg",78),f(5,"path",19),i(),a(6),i()()}if(t&2){let e=p(2);o(),w("disabled",!e.canApprove||e.isSubmitting()),o(),m(" ",e.isSubmitting()?"Working\u2026":"Needs work"," "),o(),b("ready",e.canApprove&&!e.isSubmitting()),w("disabled",!e.canApprove||e.isSubmitting()),o(3),m(" ",e.isSubmitting()?"Working\u2026":"Approve"," ")}}function Fe(t,s){if(t&1&&(r(0,"div",48),a(1),i()),t&2){let e=p(2);o(),u(e.error())}}function $e(t,s){if(t&1){let e=P();r(0,"header",22)(1,"div",23),a(2,"Approval request"),i(),r(3,"h1"),a(4),i(),r(5,"div",18),a(6),i(),r(7,"span",24),a(8),i()(),r(9,"div",25)(10,"div",26)(11,"section",27)(12,"div",28),M(),r(13,"svg",29),f(14,"path",30)(15,"path",31),i(),a(16," Approving this authorizes the send "),i(),S(),r(17,"div",32)(18,"div")(19,"div",33),a(20,"Recipients"),i(),r(21,"div",34),v(22,ve,1,2)(23,_e,1,0),i(),v(24,me,2,1,"div",6),i(),r(25,"div")(26,"div",33),a(27,"Sends"),i(),r(28,"div",34),a(29),i()()()(),r(30,"section",35)(31,"div",36)(32,"div")(33,"div",33),a(34,"Requested by"),i(),r(35,"div",34),a(36),i()(),r(37,"div")(38,"div",33),a(39,"Your role"),i(),r(40,"div",34),a(41),i()(),r(42,"div")(43,"div",33),a(44,"Due"),i(),r(45,"div",34),a(46),A(47,"date"),i()(),r(48,"div")(49,"div",33),a(50,"Workflow"),i(),r(51,"div",34),a(52),i()()(),v(53,ue,5,
11,"div",37),i(),v(54,Re,5,1,"section",35),i(),r(55,"aside",38)(56,"section",35)(57,"div",28),a(58,"Reviewers"),i(),y(59,qe,15,18,null,null,Z),v(61,Ae,5,1,"div",39),i(),r(62,"section",35),v(63,Te,5,0,"div",40),r(64,"label",41)(65,"span",33),a(66,"Your comments "),v(67,Ie,2,0,"span",42),i(),r(68,"textarea",43),h("input",function(l){g(e);let _=p();return C(_.approvalComments.set(l.target.value))}),i()(),v(69,Ve,2,0,"div",6)(70,Le,3,2,"div",44)(71,De,2,2,"button",45)(72,Ne,7,6,"div",46),r(73,"button",47),h("click",function(){g(e);let l=p();return C(l.goToSequence())}),a(74,"Open full sequence"),i(),v(75,Fe,2,1,"div",48),i()()(),r(76,"div",49),a(77,"Marketing Titan \xB7 you received this from a signed review link"),i()}if(t&2){let e,n=p();o(4),u(n.approvalRequest().title),o(2),u(n.approvalRequest().sequence.name),o(),b("draft",n.approvalRequest().urgency_level==="Low"||n.approvalRequest().urgency_level==="Normal")("live",n.approvalRequest().urgency_level==="High")("bad",n.approvalRequest().urgency_level==="Critical"),o(),m(" ",n.approvalRequest().urgency_level," "),o(14),c(n.approvalRequest().sequence.recipient_count!==null&&n.approvalRequest().sequence.recipient_count!==void 0?22:23),o(2),c(n.approvalRequest().sequence.recipient_summary?24:-1),o(5),u(n.approvalRequest().sequence.send_timing||"No trigger set"),o(7),u(n.approvalRequest().requested_by_name),o(5),m(" ",(n.currentApprover==null?null:n.currentApprover.approver_role)==="Reviewer"?"Reviewer (comment only)":(n.currentApprover==null?null:n.currentApprover.approver_role)||"\u2014"," "),o(5),u(T(47,27,n.approvalRequest().due_date,"mediumDate")||"\u2014"),o(6),u(n.approvalRequest().approval_type==="sequential"?"Sequential":"Everyone at once"),o(),c(n.approvalRequest().message_to_approvers?53:-1),o(),c((e=n.approvalRequest().sequence.steps)!=null&&e.length?54:-1),o(5),E(n.approvalRequest().approvers),o(2),c(n.sequenceMessage()?61:-1),o(2),c(n.isReviewerOnly?63:-1),o(4),c(n.isReviewerOnly?-1:67),o(),w("value",n.approvalComments())("disabled",!n.isReviewerOnly&&!n.canApprove),o(),c(!n.canApprove&&!n.isReviewerOnly&&(n.currentApprover==null?null:n.currentApprover.approval_status)==="PENDING"?69:-1),o(),c((n.currentApprover==null?null:n.currentApprover.approval_status)!=="PENDING"&&n.currentApprover?70:-1),o(),c(n.isReviewerOnly?71:72),o(4),c(n.error()?75:-1)}}var Z,tt,je=K(()=>{F();B();ie();te();ee();ne();oe();Q();X();F();B();Z=(t,s)=>s.id;tt=(()=>{class t{constructor(){this.route=O(H),this.router=O(W),this.builderBase=Y()?"/lead-titan/sequences":"/sequences/builder",this.sequenceService=O(U),this.sanitizer=O(G),this.destroy$=new I,this.approvalId=x(null),this.sequenceId=x(null),this.approverEmail=x(null),this.approvalToken=x(null),this.approvalRequest=x(null),this.isLoading=x(!0),this.error=x(null),this.isSubmitting=x(!1),this.approvalComments=x(""),this.actionCompleted=x(!1),this.actionType=x(null),this.expandedPreviews=new Set}safeHtml(e){let n=e||"",l=this.safeHtmlCache??=new Map,_=l.get(n);if(_)return _;let d=this.sanitizer.bypassSecurityTrustHtml(n);return l.set(n,d),d}ngOnInit(){V([this.route.queryParams,this.route.params]).pipe(L(this.destroy$),z()).subscribe(([e,n])=>{let l=e.approval,_=e.approver,d=e.token,R=n.id;l&&R?(this.approvalId.set(parseInt(l,10)),this.sequenceId.set(parseInt(R,10)),this.approverEmail.set(_||null),this.approvalToken.set(d||null),this.loadApprovalRequest()):(this.error.set("Missing approval ID or sequence ID"),this.isLoading.set(!1))})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}loadApprovalRequest(){this.isLoading.set(!0),this.error.set(null),this.sequenceService.getSequenceApprovalRequest(this.approvalId(),this.approvalToken()).subscribe({next:e=>{if(e.success){this.approvalRequest.set(e.data);for(let n of e.data?.sequence?.steps??[])n?.content&&this.expandedPreviews.add(n.id)}else this.error.set(e.message||"Failed to load approval request");this.isLoading.set(!1)},error:()=>{this.error.set("An error occurred while loading the approval request"),this.isLoading.set(!1)}})}approveRequest(){if(!this.approvalId()||!this.approverEmail()&&!this.approvalToken()){this.error.set("This link is incomplete. Ask the requester to send it again.");return}this.isSubmitting.set(!0),this.error.set(null),this.sequenceService.approveSequenceApproval(this.approvalId(),this.approverEmail()||"",this.approvalComments(),this.approvalToken()).subscribe({next:e=>{e.success?(this.actionCompleted.set(!0),this.actionType.set("approved")):this.error.set(e.message||"Failed to approve request"),this.isSubmitting.set(!1)},error:e=>{this.error.set(e?.error?.message||"An error occurred while approving"),this.isSubmitting.set(!1)}})}
1rejectRequest(){if(!this.approvalId()||!this.approverEmail()&&!this.approvalToken()){this.error.set("This link is incomplete. Ask the requester to send it again.");return}if(!this.approvalComments().trim()){this.error.set("Please add a note so the requester knows what to change.");return}this.isSubmitting.set(!0),this.error.set(null),this.sequenceService.rejectSequenceApproval(this.approvalId(),this.approverEmail()||"",this.approvalComments(),this.approvalToken()).subscribe({next:e=>{e.success?(this.actionCompleted.set(!0),this.actionType.set("rejected")):this.error.set(e.message||"Failed to reject request"),this.isSubmitting.set(!1)},error:e=>{this.error.set(e?.error?.message||"An error occurred while rejecting"),this.isSubmitting.set(!1)}})}goToSequence(){this.sequenceId()&&this.router.navigate([this.builderBase,this.sequenceId(),"preview"])}onPreviewLoad(e){let n=e.target;try{let l=n.contentDocument;if(!l?.body)return;let _=Math.max(l.body.scrollHeight,l.documentElement?.scrollHeight??0);_>0&&(n.style.height=`${_}px`)}catch{}}get currentApprover(){let e=this.approvalRequest()?.approvers||[],n=(this.approverEmail()||"").trim().toLowerCase();if(n){let l=e.find(_=>(_.approver_email||"").trim().toLowerCase()===n);if(l)return l}if(this.approvalToken()){let l=e.filter(d=>d.approval_status==="PENDING"&&!this.isReviewerRow(d));if(l.length===1)return l[0];let _=e.filter(d=>d.approval_status==="PENDING"&&this.isReviewerRow(d));if(l.length===0&&_.length===1)return _[0]}}get isReviewerOnly(){let e=this.currentApprover;return!!e&&this.isReviewerRow(e)}get canApprove(){if(this.isReviewerOnly)return!1;let e=this.currentApprover;return!(!e||e.approval_status!=="PENDING"||this.approvalRequest()?.approval_type==="sequential"&&this.approvalRequest().approvers.filter(d=>d.sequence_order<e.sequence_order&&d.sequence_order>0&&!this.isReviewerRow(d)).some(d=>d.approval_status==="PENDING"))}sequenceMessage(){if(this.approvalRequest()?.approval_type!=="sequential")return null;let e=this.currentApprover;if(!e)return null;let _=this.approvalRequest().approvers.filter(d=>d.sequence_order<e.sequence_order&&d.sequence_order>0&&!this.isReviewerRow(d)).filter(d=>d.approval_status==="PENDING");return _.length>0?`Waiting for previous approvers to complete: ${_.map(R=>R.approver_email).join(", ")}`:null}getStatusLabel(e){return{PENDING:"Pending",APPROVED:"Approved",REJECTED:"Needs Work",CANCELED:"Canceled"}[e]||e}approverLabel(e){return e.is_approver===!1||e.approver_role==="Reviewer"?(e.comments||"").trim()?"Commented":"Reviewing":this.getStatusLabel(e.approval_status)}isReviewerRow(e){return e.is_approver===!1||e.approver_role==="Reviewer"}getStepLabel(e){return{email:"Email",sms:"SMS",linkedin:"LinkedIn",call:"AI Call"}[(e||"").toLowerCase()]||"Email"}getStepCategory(e){let n=(e||"").trim();return n?n.split("_").map(l=>l.charAt(0).toUpperCase()+l.slice(1).toLowerCase()).join(" "):""}isHtmlStep(e){let n=(e||"").toLowerCase();return n===""||n==="email"}togglePreview(e){this.expandedPreviews.has(e)?this.expandedPreviews.delete(e):this.expandedPreviews.add(e)}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275cmp=N({type:t,selectors:[["app-sequence-approval-review"]],decls:6,vars:4,consts:[[1,"page"],[1,"shell"],[1,"panel","center"],[1,"flag"],[1,"panel","center","done"],["aria-hidden","true",1,"spinner"],[1,"subtle"],["aria-hidden","true",1,"ic"],["width","14","height","14","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round"],["cx","12","cy","12","r","10"],["d","M12 8v5"],["d","M12 16h.01"],[1,"ft"],[1,"fs"],["type","button",1,"act","outline"],["type","button",1,"act","outline",3,"click"],["aria-hidden","true",1,"done-ic"],["width","26","height","26","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2.2","stroke-linecap","round","stroke-linejoin","round"],[1,"lead"],["d","M20 6L9 17l-5-5"],["d","M12 20h9"],["d","M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z"],[1,"head"],[1,"k"],[1,"pill"],[1,"canvas"],[1,"canvas-main"],[1,"panel","authorise"],[1,"sp-h"],["width","13","height","13","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round"],["d","M22 2 11 13"],["d","M22 2 15 22l-4-9-9-4Z"],[1,"kv2"],[1,"lb"],[1,"v"],[1,"panel"],[1,"kv"],[1,"note"],[1,"canvas-rail"],[1,"waiting"],[1,"rev-note"],[1,"fld"],[1,"optl"],["placeholder","What should the requester know?",1,"inp","ta",3,"input","value","disabled"],[1,"already"],["type","button",1,"act","blue",3,"disabled"],[1,"btnrow"],["type","button",1,"act","outline","wide",3,"click"],[1,"sendmsg","err"],[1,"foot","subtle"],[1,"tpl"],[1,"tpl-head"],[1,"tpl-meta"],[1,"tpl-subject"],["type","button",1,"chip-btn"],[1,"scores"],["type","button",1,"chip-btn",3,"click"],[1,"score"],[1,"bar"],[1,"tpl-preview"],[1,"tpl-text"],["sandbox","allow-same-origin","frameborder","0","scrolling","no",2,"height","1200px",3,"load","srcdoc"],[1,"arow"],[1,"ava"],[1,"arow-meta"],[1,"rn-line"],[1,"rn",3,"title"],[1,"you"],[1,"rr",3,"title"],[1,"apill"],[1,"arow-note",3,"appr","chg"],[1,"arow-note"],["width","13","height","13","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round"],["d","M12 6v6l4 2"],[1,"rev-t"],["type","button",1,"act","blue",3,"click","disabled"],["type","button",1,"save",3,"click","disabled"],["type","button",1,"send",3,"click","disabled"],["width","15","height","15","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2.2","stroke-linecap","round","stroke-linejoin","round"]],template:function(n,l){n&1&&(r(0,"div",0)(1,"div",1),v(2,re,4,0,"div",2)(3,le,12,2,"div",3)(4,de,9,6,"div",4)(5,$e,78,30),i()()),n&2&&(o(2),c(l.isLoading()?2:-1),o(),c(l.error()&&!l.isLoading()?3:-1),o(),c(l.actionCompleted()&&
1!l.error()?4:-1),o(),c(l.approvalRequest()&&!l.actionCompleted()&&!l.isLoading()?5:-1))},dependencies:[j,$,J],styles:['@charset "UTF-8";[_nghost-%COMP%]{--bg: #0a1626;--bg-2: #0c1b2f;--surface: #112742;--surface-2: #163050;--surface-3: #1b3a5e;--line: #24456f;--line-soft: #1a3355;--text: #e9f1fc;--text-2: #9db2ce;--text-3: #6b83a3;--blue: #3576ed;--blue-2: #4c8bff;--amber: #e8862c;--amber-soft: rgba(232, 134, 44, .14);--teal: #26c6dc;--green: #33c98a;--green-soft: rgba(51, 201, 138, .13);--coral: #ef6a5a;--coral-soft: rgba(239, 106, 90, .13);--purple: #8b5cf6;--mono: "JetBrains Mono", ui-monospace, monospace;display:block;min-height:100vh;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}*[_ngcontent-%COMP%]{box-sizing:border-box}button[_ngcontent-%COMP%]{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}[_ngcontent-%COMP%]:focus-visible{outline:2px solid var(--blue-2);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion: reduce){*[_ngcontent-%COMP%]{transition:none!important;animation:none!important}}.page[_ngcontent-%COMP%]{padding:28px 18px 60px}.shell[_ngcontent-%COMP%]{max-width:1180px;margin:0 auto}.canvas[_ngcontent-%COMP%]{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.canvas-main[_ngcontent-%COMP%]{min-width:0}.canvas-rail[_ngcontent-%COMP%]{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto;min-width:0}@media (max-width: 900px){.canvas[_ngcontent-%COMP%]{grid-template-columns:1fr}.canvas-rail[_ngcontent-%COMP%]{position:static;max-height:none;overflow:visible}}.head[_ngcontent-%COMP%]{margin-bottom:16px}.head[_ngcontent-%COMP%] .k[_ngcontent-%COMP%]{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-weight:700}.head[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:6px 0 3px;font-size:22px;font-weight:800;letter-spacing:-.01em}.head[_ngcontent-%COMP%] .lead[_ngcontent-%COMP%]{font-size:13px;color:var(--text-2)}.head[_ngcontent-%COMP%] .pill[_ngcontent-%COMP%]{margin-top:9px;display:inline-block}.panel[_ngcontent-%COMP%]{background:var(--surface);border:1px solid var(--line-soft);border-radius:12px;padding:14px 16px;margin-bottom:12px}.panel.center[_ngcontent-%COMP%]{text-align:center;padding:40px 24px}.authorise[_ngcontent-%COMP%]{background:var(--amber-soft);border-color:#5a3d1a}.authorise[_ngcontent-%COMP%] .sp-h[_ngcontent-%COMP%]{color:var(--amber)}.sp-h[_ngcontent-%COMP%]{font-size:11px;font-weight:700;color:var(--text-2);letter-spacing:.02em;display:flex;align-items:center;gap:7px;margin-bottom:10px}.kv[_ngcontent-%COMP%], .kv2[_ngcontent-%COMP%]{display:grid;gap:12px 16px}.kv[_ngcontent-%COMP%], .kv2[_ngcontent-%COMP%]{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 560px){.kv[_ngcontent-%COMP%], .kv2[_ngcontent-%COMP%]{grid-template-columns:1fr}}.lb[_ngcontent-%COMP%]{font-size:11px;font-weight:700;color:var(--text-2);letter-spacing:.02em;margin-bottom:4px;display:block}.v[_ngcontent-%COMP%]{font-size:13px;color:var(--text);overflow-wrap:anywhere}.subtle[_ngcontent-%COMP%]{font-size:11px;color:var(--text-3);margin-top:5px}.optl[_ngcontent-%COMP%]{color:var(--text-3);font-weight:500}.note[_ngcontent-%COMP%], .arow-note[_ngcontent-%COMP%]{margin-top:12px;padding:9px 11px;border-left:2px solid var(--blue);background:#3576ed14;border-radius:0 8px 8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.note[_ngcontent-%COMP%] .v[_ngcontent-%COMP%], .arow-note[_ngcontent-%COMP%] .v[_ngcontent-%COMP%]{color:var(--text-2)}.arow-note[_ngcontent-%COMP%]{margin:-2px 0 10px;font-size:12px;color:var(--text-2);border-left-color:var(--text-3);background:#ffffff08}.arow-note.appr[_ngcontent-%COMP%]{border-left-color:var(--green);background:var(--green-soft)}.arow-note.chg[_ngcontent-%COMP%]{border-left-color:var(--amber);background:var(--amber-soft)}.pill[_ngcontent-%COMP%]{font:600 11px Inter;letter-spacing:.03em;padding:3px 9px;border-radius:100px;text-transform:uppercase}.pill.draft[_ngcontent-%COMP%]{background:var(--surface-2);color:var(--text-2);border:1px solid var(--line)}.pill.live[_ngcontent-%COMP%]{background:var(--amber-soft);color:var(--amber);border:1px solid var(--amber)}.pill.bad[_ngcontent-%COMP%]{background:var(--coral-soft);color:var(--coral);border:1px solid var(--coral)}.arow[_ngcontent-%COMP%]{display:flex;align-items:center;gap:9px;padding:9px 2px;border-top:1px solid var(--line-soft)}.arow[_ngcontent-%COMP%]:first-of-type{border-top:none}.arow.me[_ngcontent-%COMP%] .rn[_ngcontent-%COMP%]{color:var(--text)}.arow-meta[_ngcontent-%COMP%]{min-width:0;flex:1}.ava[_ngcontent-%COMP%]{width:26px;height:26px;border-radius:50%;flex:none;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--teal));font:700 10px Inter;color:#fff}.rn[_ngcontent-%COMP%]{font-size:12.5px;font-weight:600;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.rn-line[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;min-width:0}.rr[_ngcontent-%COMP%]{font-size:10.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.you[_ngcontent-%COMP%]{margin-left:6px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:100px;background:#3576ed24;color:#a9c6ff;border:1px solid #2c5296}.apill[_ngcontent-%COMP%]{margin-left:auto;flex:none;font-size:10px;font-weight:700;padding:2px 9px;border-radius:100px}.apill.pend[_ngcontent-%COMP%]{background:var(--surface-2);color:var(--text-2)}.apill.appr[_ngcontent-%COMP%]{background:var(--green-soft);color:var(--green)}.apill.chg[_ngcontent-%COMP%]{background:var(--amber-soft);color:var(--amber)}.waiting[_ngcontent-%COMP%]{margin-top:11px;display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--amber)}.tpl[_ngcontent-%COMP%]{border:1px solid var(--line);border-radius:10px;background:var(--bg-2);overflow:hidden;margin-top:10px}.tpl-head[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:10px;padding:11px 12px}.tpl-meta[_ngcontent-%COMP%]{min-width:0;flex:1}.tpl-subject[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:var(--text);overflow-wrap:anywhere}.chip-btn[_ngcontent-%COMP%]{flex:none;font-size:12px;font-weight:600;padding:6px 11px;border-radius:8px;border:1px solid var(--line);color:var(--text-2);white-space:nowrap}.chip-btn[_ngcontent-%COMP%]:hover{background:var(--surface);color:var(--text)}.scores[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:14px;padding:0 12px 11px}.score[_ngcontent-%COMP%]{display:flex;align-items:center;gap:7px}.score[_ngcontent-%COMP%] .subtle[_ngcontent-%COMP%]{margin-top:0}.bar[_ngcontent-%COMP%]{width:74px;height:6px;border-radius:100px;background:var(--surface-2);overflow:hidden;display:block}.bar[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{display:block;height:100%;border-radius:100px;background:var(--green)}.bar[_ngcontent-%COMP%] i.warn[_ngcontent-%COMP%]{background:var(--amber)}.bar[_ngcontent-%COMP%] i.bad[_ngcontent-%COMP%]{background:var(--coral)}.tpl-preview[_ngcontent-%COMP%]{border-top:1px solid var(--line);max-height:620px;overflow-y:auto;background:#fff}.tpl-preview[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{display:block;width:100%;background:#fff;border:0}.tpl-text[_ngcontent-%COMP%]{border-top:1px solid var(--line);max-height:620px;overflow-y:auto;padding:12px;font-size:12.5px;color:var(--text-2);white-space:pre-wrap;overflow-wrap:anywhere}.rev-note[_ngcontent-%COMP%]{background:#8b5cf61a;border:1px solid #3a2f6a;border-radius:10px;padding:10px 12px;margin-bottom:12px}.rev-note[_ngcontent-%COMP%] .rev-t[_ngcontent-%COMP%]{font-size:12.5px;font-weight:700;color:#c4b5fd}.rev-note[_ngcontent-%COMP%] .subtle[_ngcontent-%COMP%]{color:#a99fd4}.already[_ngcontent-%COMP%]{margin-top:10px;font-size:12px;color:var(--text-2)}.already[_ngcontent-%COMP%] .subtle[_ngcontent-%COMP%]{display:block;margin-top:2px}.fld[_ngcontent-%COMP%]{display:block}.inp[_ngcontent-%COMP%]{width:100%;background:var(--bg-2);border:1px solid var(--line);border-radius:9px;color:var(--text);font:500 13px Inter;padding:9px 11px}.inp[_ngcontent-%COMP%]::placeholder{color:var(--text-3)}.inp[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--blue)}.inp[_ngcontent-%COMP%]:disabled{opacity:.55;cursor:not-allowed}.ta[_ngcontent-%COMP%]{min-height:84px;resize:vertical;font-family:Inter;line-height:1.5}.btnrow[_ngcontent-%COMP%]{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:14px}
1.save[_ngcontent-%COMP%]{padding:12px 14px;border-radius:10px;font-weight:700;font-size:13px;border:1px solid var(--line);color:var(--text-2)}.save[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--surface);color:var(--text)}.save[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.send[_ngcontent-%COMP%]{padding:12px 14px;border-radius:10px;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--surface-2);color:var(--text-3);border:1px solid var(--line);cursor:not-allowed}.send.ready[_ngcontent-%COMP%]{background:linear-gradient(180deg,#efa14a,var(--amber));color:#2a1400;border-color:transparent;cursor:pointer}.send.ready[_ngcontent-%COMP%]:hover{filter:brightness(1.06)}.act[_ngcontent-%COMP%]{margin-top:12px;padding:10px 14px;border-radius:9px;font-weight:700;font-size:13px}.act.blue[_ngcontent-%COMP%]{background:var(--blue);color:#fff;width:100%}.act.blue[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--blue-2)}.act.outline[_ngcontent-%COMP%]{background:transparent;border:1px solid var(--line);color:var(--text-2)}.act.outline[_ngcontent-%COMP%]:hover{background:var(--surface);color:var(--text)}.act.wide[_ngcontent-%COMP%]{width:100%}.act[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.sendmsg[_ngcontent-%COMP%]{margin-top:10px;font-size:12px}.sendmsg.err[_ngcontent-%COMP%]{color:var(--coral)}.flag[_ngcontent-%COMP%]{display:flex;gap:10px;background:var(--coral-soft);border:1px solid #5a2f2c;border-radius:10px;padding:12px 14px;margin-bottom:12px}.flag[_ngcontent-%COMP%] .ic[_ngcontent-%COMP%]{flex:none;width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:var(--coral);color:#2a0d0a}.flag[_ngcontent-%COMP%] .ft[_ngcontent-%COMP%]{font-size:13px;font-weight:700;color:var(--coral)}.flag[_ngcontent-%COMP%] .fs[_ngcontent-%COMP%]{font-size:12px;color:var(--text-2);margin-top:2px}.done[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:12px 0 4px;font-size:20px;font-weight:800}.done[_ngcontent-%COMP%] .lead[_ngcontent-%COMP%]{font-size:13px;color:var(--text-2)}.done-ic[_ngcontent-%COMP%]{width:52px;height:52px;border-radius:50%;display:inline-grid;place-items:center;background:var(--amber-soft);color:var(--amber)}.done-ic.ok[_ngcontent-%COMP%]{background:var(--green-soft);color:var(--green)}.spinner[_ngcontent-%COMP%]{width:30px;height:30px;margin:0 auto 12px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--blue);animation:_ngcontent-%COMP%_ar-spin .8s linear infinite}@keyframes _ngcontent-%COMP%_ar-spin{to{transform:rotate(360deg)}}.foot[_ngcontent-%COMP%]{text-align:center;margin-top:18px}']})}}return t})()});je();
1export{tt as ApprovalReviewComponent};
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.