1import{C as J,_ as z,f as Q,a as x,b as ee}from"./LWnLMIh4.js";import{_ as W}from"./D18o0BA8.js";import{C as Y}from"./CkKsc-38.js";import{_ as X}from"./BKbHgBkm.js";import{e as G,_ as K,o as l,c,a as s,i as A,f as F,k as te,n as N,t as r,h as u,F as $,g as k,l as se,T as oe,d as j,P as T,m as ie,b as h,j as m,v as g,p as M,w as U,q as re,r as D}from"./CF4bCUVF.js";import{R as ae,P as ne,a as le,b as R,c as B,d as de}from"./DvbvCL6g.js";import{c as pe,a as ce,e as me}from"./BQYWugWb.js";import{u as E}from"./DwPTMVTa.js";import"./C2oZgGdk.js";import"./Cm4a5MKn.js";import"./CGr11YrO.js";import"./1O1YW33u.js";const v=8,ue=8;let V=0;function H(e,t,i){return Math.min(Math.max(e,t),i)}const fe=G({name:"UiInfoTooltip",props:{title:{type:String,default:""},text:{type:String,default:""},items:{type:Array,default:()=>[]},ariaLabel:{type:String,default:"Info"},placement:{type:String,default:"bottom"},align:{type:String,default:"start"},width:{type:String,default:"20rem"},maxWidth:{type:String,default:"80vw"},panelClass:{type:[String,Array,Object],default:""},offset:{type:Number,default:ue}},data(){return V+=1,{open:!1,hover:!1,tooltipId:`ui-info-tooltip-${V}`,resolvedPlacement:this.placement,positioned:!1,top:0,left:0}},computed:{visible(){return this.open||this.hover},panelStyle(){return{"--ui-info-tooltip-width":this.width,"--ui-info-tooltip-max-width":this.maxWidth,top:`${this.top}px`,left:`${this.left}px`}}},watch:{visible(e){e?(this.positioned=!1,this.$nextTick(this.reposition),window.addEventListener("scroll",this.reposition,!0),window.addEventListener("resize",this.reposition)):(window.removeEventListener("scroll",this.reposition,!0),window.removeEventListener("resize",this.reposition))}},mounted(){document.addEventListener("click",this.closeOnOutsideClick),document.addEventListener("keydown",this.closeOnEscape)},beforeUnmount(){document.removeEventListener("click",this.closeOnOutsideClick),document.removeEventListener("keydown",this.closeOnEscape),window.removeEventListener("scroll",this.reposition,!0),window.removeEventListener("resize",this.reposition)},methods:{toggle(){this.open=!this.open},onHover(e){this.hover=e},closeOnOutsideClick(e){const t=e.target,i=this.$refs.panel;this.open&&!this.$el.contains(t)&&!i?.contains(t)&&(this.open=!1)},closeOnEscape(e){e.key==="Escape"&&(this.open=!1,this.hover=!1)},reposition(){const e=this.$refs.trigger,t=this.$refs.panel;if(!e||!t)return;const i=e.getBoundingClientRect(),a={width:t.offsetWidth,height:t.offsetHeight},n={width:window.innerWidth,height:window.innerHeight};this.resolvedPlacement=this.pickPlacement(i,a,n);const{top:p,left:d}=this.coordinatesFor(this.resolvedPlacement,i,a);this.top=H(p,v,Math.max(v,n.height-a.height-v)),this.left=H(d,v,Math.max(v,n.width-a.width-v)),this.positioned=!0},pickPlacement(e,t,i){const a={top:e.top-v,bottom:i.height-e.bottom-v,left:e.left-v,right:i.width-e.right-v},n={top:"bottom",bottom:"top",left:"right",right:"left"},p=this.placement==="top"||this.placement==="bottom"?t.height+this.offset:t.width+this.offset;if(a[this.placement]>=p)return this.placement;const d=n[this.placement];return a[d]>a[this.placement]?d:this.placement},coordinatesFor(e,t,i){const a=()=>this.align==="center"?t.left+t.width/2-i.width/2:this.align==="end"?t.right-i.width:t.left,n=()=>this.align==="center"?t.top+t.height/2-i.height/2:this.align==="end"?t.bottom-i.height:t.top;switch(e){case"top":return{top:t.top-i.height-this.offset,left:a()};case"left":return{top:n(),left:t.left-i.width-this.offset};case"right":return{top:n(),left:t.right+this.offset};default:return{top:t.bottom+this.offset,left:a()}}}}}),he=["aria-label","aria-expanded","aria-describedby"],ge=["id"],ve={key:0,class:"ui-info-tooltip__title","data-test":"info-tooltip-title"},ye={key:1,class:"ui-info-tooltip__text","data-test":"info-tooltip-text"},$e={key:2,class:"ui-info-tooltip__list"},be={class:"ui-info-tooltip__term","data-test":"info-tooltip-item-label"},Me={class:"ui-info-tooltip__desc","data-test":"info-tooltip-item-description"};function ke(e,t,i,a,n,p){return l(),c("span",{class:N(["ui-info-tooltip",{"ui-info-tooltip--open":e.open}]),"data-test":"info-tooltip",onMouseenter:t[3]||(t[3]=d=>e.onHover(!0)),onMouseleave:t[4]||(t[4]=d=>e.onHover(!1)),onFocusin:t[5]||(t[5]=d=>e.onHover(!0)),onFocusout:t[6]||(t[6]=d=>e.onHover(!1))},[s("button",{ref:"trigger",type:"button",class:"ui-info-tooltip__trigger","aria-label":e.ariaLabel,"aria-expanded":e.visible?"true":"false","aria-describedby":e.tooltipId,"data-test":"info-tooltip-trigger",onClick:t[0]||(t[0]=A((...d)=>e.toggle&&e.toggle(...d),["stop"]))},[...t[7]||(t[7]=[s("svg",{class:"ui-info-tooltip__icon",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","aria-hidden":"true"},[s("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"1.6",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)])],8,he),(l(),F(oe,{to:"body"},[e.visible?(l(),c("span",{key:0,id:e.tooltipId,ref:"panel",class:N(["ui-info-tooltip__panel",[`ui-info-tooltip__panel--${e.resolvedPlacement}`,e.panelClass?"":"ui-info-tooltip__panel--sized",e.positioned?"ui-info-tooltip__panel--visible":"",e.panelClass]]),style:te(e.panelStyle),role:"tooltip","data-test":"info-tooltip-panel",onMouseenter:t[1]||(t[1]=d=>e.onHover(!0)),onMouseleave:t[2]||(t[2]=d=>e.onHover(!1))}
1,[e.title?(l(),c("span",ve,r(e.title),1)):u("",!0),e.text?(l(),c("span",ye,r(e.text),1)):u("",!0),e.items.length>0?(l(),c("dl",$e,[(l(!0),c($,null,k(e.items,d=>(l(),c($,{key:d.key??d.label},[s("dt",be,[se(e.$slots,"label",{item:d},()=>[j(r(d.label),1)])]),s("dd",Me,r(d.description),1)],64))),128))])):u("",!0)],46,ge)):u("",!0)]))],34)}const Z=Object.assign(K(fe,[["render",ke]]),{__name:"UiInfoTooltip"}),we=e=>{const t=[e.status,e.statusCode,e.response?.status];for(const i of t)if(typeof i=="number"&&Number.isFinite(i))return i;return null},Pe=e=>{if(!e||typeof e!="object")return[];const t=e.errors;if(!t||typeof t!="object")return[];const i=[];for(const a of Object.values(t))if(Array.isArray(a))for(const n of a)typeof n=="string"&&n!==""&&i.push(n);else typeof a=="string"&&a!==""&&i.push(a);return i},Ie=e=>{const t=e.data;if(t&&typeof t=="object"){const i=t.message;if(typeof i=="string"&&i.trim()!=="")return i}return null};function Fe(e){const t=e&&typeof e=="object"?e:{},i=we(t),a=Ie(t),n=Pe(t.data);let p="unknown";if(i===null){const d=typeof t.message=="string"?t.message:"";p=/fetch|network|failed|ECONN|timeout/i.test(d)||e instanceof TypeError?"network":"unknown"}else i===422?p="validation":i===401?p="unauthorized":i===403?p="forbidden":i===404?p="notFound":i>=500&&(p="server");return{kind:p,status:i,message:a,details:n}}const Ce=/^\d{4}-\d{2}-\d{2}$/,w=e=>e==null?"":String(e).trim(),Te=e=>{const t=w(e).replace(",",".");if(t==="")return null;const i=Number(t);return Number.isFinite(i)?i:Number.NaN},_e=e=>w(e)==="";function Se(e){const t=[],i=(I,b,f={})=>{if(_e(I))return null;const o=Te(I);return o===null||Number.isNaN(o)?(t.push({key:"notANumber",params:{field:b}}),null):o<0?(t.push({key:"negative",params:{field:b}}),null):f.integer&&!Number.isInteger(o)?(t.push({key:"notInteger",params:{field:b}}),null):f.max!==void 0&&o>f.max?(t.push({key:"aboveMax",params:{field:b,max:f.max}}),null):o},a=i(e.priceMin,"priceMin"),n=i(e.priceMax,"priceMax");a!==null&&n!==null&&a>n&&t.push({key:"priceRange"});const p=i(e.creditsMin,"creditsMin",{integer:!0}),d=i(e.creditsMax,"creditsMax",{integer:!0});p!==null&&d!==null&&p>d&&t.push({key:"creditsRange"}),i(e.discountMin,"discountMin",{max:100});const P=(I,b)=>{const f=w(I);return f===""?null:!Ce.test(f)||Number.isNaN(new Date(`${f}T00:00:00`).getTime())?(t.push({key:"invalidDate",params:{field:b}}),null):f},_=P(e.createdFrom,"createdFrom"),S=P(e.createdTo,"createdTo");_!==null&&S!==null&&_>S&&t.push({key:"createdRange"});const y=P(e.sentFrom,"sentFrom"),C=P(e.sentTo,"sentTo");return y!==null&&C!==null&&y>C&&t.push({key:"sentRange"}),t}const Ue=25,De=["","7","15","30","past"],qe=["createdFrom","createdTo","sentFrom","sentTo","priceMin","priceMax","creditsMin","creditsMax","discountMin","paymentMethod","paymentInProgress","basePackCode"],q=()=>({search:"",status:"",createdByUserId:"",expiry:"",linked:"",createdFrom:"",createdTo:"",sentFrom:"",sentTo:"",priceMin:"",priceMax:"",creditsMin:"",creditsMax:"",discountMin:"",paymentMethod:"",paymentInProgress:"",basePackCode:"",sortBy:"created_at",sortDir:"desc"}),O=e=>e.toISOString().slice(0,10),Ee=G({name:"AdministrationCommercialProposalsPage",components:{AdministrationTabs:z,CommercialSubnav:J,ProposalModal:le,ProposalStatusBadge:ne,RejectProposalModal:ae,UiButton:X,UiFeedbackMessage:W,UiIconsChevronDownIcon:Y,UiInfoTooltip:Z},data(){return{session:ie(),statuses:B,paymentMethods:de,sortFields:R,expiryPresets:De,filters:q(),showAdvanced:!1,authors:[],packOptions:[],items:[],hasMore:!1,offset:0,loading:!1,errorMessage:"",pdfLoadingId:null,rejecting:null}},computed:{statusHelpItems(){return B.map(e=>({key:e,label:this.$t(`pages.administration.commercial.statuses.${e}`),description:this.$t(`pages.administration.commercial.list.statusHelp.items.${e}`)}))},authorOptions(){const e=this.session.state.value?.user?.id;return this.authors.map(t=>({id:t.id,label:t.id===e?`${t.name} (${this.$t("pages.administration.commercial.list.filters.me")})`:t.name}))},advancedCount(){return qe.filter(e=>w(this.filters[e])!=="").length},openProposalId(){const e=(this._.provides[T]||this.$route).query.proposal,t=Array.isArray(e)?e[0]:e;return typeof t=="string"&&t!==""?t:null}},async mounted(){this.readFiltersFromUrl(),this.loadFilterOptions(),await this.search()},methods:{async loadFilterOptions(){try{const e=await E().commercial.getFilterOptions();this.authors=e.authors,this.packOptions=e.packs}catch{}},readFiltersFromUrl(){const e=(this._.provides[T]||this.$route).query,t=n=>{const p=e[n],d=Array.isArray(p)?p[0]:p;
1return typeof d=="string"?d:""},i=q(),a={...i};for(const n of Object.keys(i)){const p=t(n);p!==""&&(a[n]=p)}R.includes(a.sortBy)||(a.sortBy=i.sortBy),a.sortDir=a.sortDir==="asc"?"asc":"desc",this.filters=a,this.showAdvanced=t("advanced")==="1"},writeFiltersToUrl(){const e=q(),t={};for(const[i,a]of Object.entries(this.filters)){const n=w(a);n!==""&&n!==e[i]&&(t[i]=n)}this.showAdvanced&&(t.advanced="1"),this.openProposalId&&(t.proposal=this.openProposalId),this.$router.replace({query:t})},expand(e){me(e)},clearHeight(e){ce(e)},collapse(e){pe(e)},toggleAdvanced(){this.showAdvanced=!this.showAdvanced,this.writeFiltersToUrl()},toRequest(e){const t=this.filters,i=p=>w(p)===""?void 0:Number(w(p).replace(",",".")),a=p=>{const d=i(p);return d===void 0?void 0:Math.round(d*100)},n=this.expiryRange(t.expiry);return{search:t.search,status:t.status,createdByUserId:t.createdByUserId||void 0,createdFrom:t.createdFrom||void 0,createdTo:t.createdTo||void 0,sentFrom:t.sentFrom||void 0,sentTo:t.sentTo||void 0,validUntilFrom:n.from,validUntilTo:n.to,linked:t.linked===""?void 0:t.linked==="1",priceMinCents:a(t.priceMin),priceMaxCents:a(t.priceMax),creditsMin:i(t.creditsMin),creditsMax:i(t.creditsMax),discountMinPct:i(t.discountMin),paymentMethod:t.paymentMethod||void 0,paymentInProgress:t.paymentInProgress==="1"?!0:void 0,basePackCode:t.basePackCode||void 0,sortBy:t.sortBy,sortDir:t.sortDir,limit:Ue,offset:e}},expiryRange(e){if(e==="")return{};const t=new Date;if(e==="past"){const a=new Date(t);return a.setDate(t.getDate()-1),{to:O(a)}}const i=new Date(t);return i.setDate(t.getDate()+Number(e)),{from:O(t),to:O(i)}},toggleSortDirection(){this.filters.sortDir=this.filters.sortDir==="desc"?"asc":"desc",this.search()},async search(e=!1){this.errorMessage="",e||this.writeFiltersToUrl();const t=this.filtersValidationMessage();if(t!==""){this.errorMessage=t,e||(this.showAdvanced=!0);return}this.loading=!0;try{const i=await E().commercial.listProposals(this.toRequest(e?this.offset:0));this.items=e?[...this.items,...i.items]:i.items,this.offset=i.offset+i.items.length,this.hasMore=i.hasMore}catch(i){this.errorMessage=this.loadErrorMessage(i)}finally{this.loading=!1}},filtersValidationMessage(){const e=Se(this.filters);if(e.length===0)return"";const t="pages.administration.commercial.list.filters",i=e.map(a=>{const n={...a.params??{}};return typeof n.field=="string"&&(n.field=String(this.$t(`${t}.${n.field}`))),String(this.$t(`${t}.validation.${a.key}`,n))});return`${this.$t(`${t}.validation.prefix`)} ${i.join(" ")}`},loadErrorMessage(e){const t=Fe(e),i="pages.administration.commercial.list.errors",a=String(this.$t("pages.administration.commercial.list.loadError")),n=[t.message,...t.details.filter(p=>p!==t.message)].filter(Boolean).join(" ");switch(t.kind){case"validation":return`${a} ${this.$t(`${i}.validation`)} ${n}`.trim();case"unauthorized":return`${a} ${this.$t(`${i}.unauthorized`)}`;case"forbidden":return`${a} ${this.$t(`${i}.forbidden`)}`;case"notFound":return`${a} ${this.$t(`${i}.notFound`)}`;case"server":return`${a} ${this.$t(`${i}.server`,{status:t.status??""})} ${n}`.trim();case"network":return`${a} ${this.$t(`${i}.network`)}`;default:return`${a} ${this.$t(`${i}.unknown`,{status:t.status??"?"})} ${n}`.trim()}},async loadMore(){await this.search(!0)},clear(){this.filters=q(),this.search()},openProposal(e){this.$router.push({query:{...(this._.provides[T]||this.$route).query,proposal:e}})},closeProposal(){const e={...(this._.provides[T]||this.$route).query};delete e.proposal,this.$router.push({query:e})},onChanged(e){this.openProposalId==="new"&&this.$router.replace({query:{...(this._.provides[T]||this.$route).query,proposal:e.id}}),this.search()},onDeleted(){this.closeProposal(),this.search()},onRejected(e){this.rejecting=null,this.$refs.proposalModal?.refresh(e),this.search()},async openPdf(e){this.pdfLoadingId=e;try{const t=await E().commercial.downloadProposalPdf(e),i=URL.createObjectURL(new Blob([t],{type:"application/pdf"}));window.open(i,"_blank","noopener"),setTimeout(()=>URL.revokeObjectURL(i),6e4)}catch{this.errorMessage=String(this.$t("pages.administration.commercial.list.pdfError"))}finally{this.pdfLoadingId=null}},formatDate(e){const t=new Date(e.length===10?`${e}T00:00:00`:e);return Number.isNaN(t.getTime())?e:new Intl.DateTimeFormat("es-ES",{day:"2-digit",month:"2-digit",year:"numeric"}).format(t)},formatInt(e){return ee(e)},formatMoney(e){return x(e)},formatPct(e){return Q(e)}}}),Oe={class:"commercial-content mt-6"}
1,Ae={class:"request-filters-grid"},Ne={class:"request-filters-inputs"},je={class:"request-filters-field request-filters-field-search"},Le={class:"form-label",for:"proposal-search"},Re=["placeholder"],Be={class:"request-filters-field !w-fit"},Ve={class:"form-label",for:"proposal-status"},He={value:""},ze=["value"],We={class:"request-filters-field !w-fit"},Ye={class:"form-label",for:"proposal-author"},Xe={value:""},Ge=["value"],Ke={class:"request-filters-field !w-fit"},Ze={class:"form-label",for:"proposal-expiry"},Je=["value"],Qe={class:"request-filters-field !w-fit"},xe={class:"form-label",for:"proposal-linked"},et={value:""},tt={value:"1"},st={value:"0"},ot={key:0,class:"proposal-advanced-grid","data-testid":"proposal-advanced-filters"},it={class:"min-w-0"},rt={class:"form-label",for:"proposal-created-from"},at=["max"],nt={class:"min-w-0"},lt={class:"form-label",for:"proposal-created-to"},dt=["min"],pt={class:"min-w-0"},ct={class:"form-label",for:"proposal-sent-from"},mt=["max"],ut={class:"min-w-0"},ft={class:"form-label",for:"proposal-sent-to"},ht=["min"],gt={class:"min-w-0"},vt={class:"form-label",for:"proposal-price-min"},yt=["placeholder"],$t={class:"min-w-0"},bt={class:"form-label",for:"proposal-price-max"},Mt=["placeholder"],kt={class:"min-w-0"},wt={class:"form-label",for:"proposal-credits-min"},Pt=["placeholder"],It={class:"min-w-0"},Ft={class:"form-label",for:"proposal-credits-max"},Ct=["placeholder"],Tt={class:"min-w-0"},_t={class:"form-label",for:"proposal-discount-min"},St=["placeholder"],Ut={class:"min-w-0"},Dt={class:"form-label",for:"proposal-payment"},qt={value:""},Et=["value"],Ot={class:"min-w-0"},At={class:"form-label",for:"proposal-payment-in-progress"},Nt={value:""},jt={value:"1"},Lt={class:"min-w-0"},Rt={class:"form-label",for:"proposal-pack"},Bt={value:""},Vt=["value"],Ht={class:"proposal-sort-row"},zt={class:"form-label proposal-sort-label",for:"proposal-sort"},Wt={class:"proposal-sort-controls"},Yt=["value"],Xt=["title","aria-label"],Gt={class:"request-filters-actions"},Kt={key:0,class:"proposal-filters-count"},Zt={key:1,class:"request-search-loader",role:"status","aria-live":"polite"},Jt={class:"request-search-loader-label"},Qt={key:2,class:"request-table-wrapper fade-down"},xt={class:"request-table commercial-table"},es={class:"request-table-th"},ts={class:"request-table-th"},ss={class:"request-table-th"},os={class:"inline-flex items-center"},is={class:"request-table-th text-right"},rs={class:"request-table-th text-right"},as={class:"request-table-th"},ns={class:"request-table-th text-right"},ls=["onClick"],ds={class:"request-table-td"},ps={class:"commercial-reference"},cs={class:"commercial-meta"},ms={class:"request-table-td"},us={class:"commercial-company"},fs={class:"commercial-meta"},hs={class:"request-table-td"},gs={class:"request-table-td text-right"},vs={class:"commercial-meta"},ys={class:"request-table-td text-right"},$s={class:"commercial-price"},bs={key:0,class:"commercial-meta"},Ms={class:"request-table-td"},ks={key:0,class:"commercial-meta"},ws={class:"commercial-actions"},Ps={key:0},Is={class:"request-table-empty",colspan:"7"},Fs={key:3,class:"request-load-more"};function Cs(e,t,i,a,n,p){const d=z,P=D("CommercialSubnav"),_=W,S=Y,y=X,C=D("ProposalStatusBadge"),I=Z,b=D("ProposalModal"),f=D("RejectProposalModal");return l(),c("div",null,[h(d,{active:"commercials"}),h(P,{active:"proposals"}),s("div",Oe,[e.errorMessage?(l(),F(_,{key:0,message:e.errorMessage,variant:"error",classes:"mb-4","data-testid":"proposal-error"},null,8,["message"])):u("",!0),s("form",{class:"request-filters",onSubmit:t[22]||(t[22]=A(o=>e.search(),["prevent"]))},[s("div",Ae,[s("div",Ne,[s("fieldset",je,[s("label",Le,r(e.$t("pages.administration.commercial.list.filters.search")),1),m(s("input",{id:"proposal-search","onUpdate:modelValue":t[0]||(t[0]=o=>e.filters.search=o),class:"form-control",type:"text",placeholder:e.$t("pages.administration.commercial.list.filters.searchPlaceholder")},null,8,Re),[[g,e.filters.search]])]),s("fieldset",Be,[s("label",Ve,r(e.$t("pages.administration.commercial.list.filters.status")),1),m(s("select",{id:"proposal-status","onUpdate:modelValue":t[1]||(t[1]=o=>e.filters.status=o),class:"form-control"},[s("option",He,r(e.$t("pages.administration.commercial.list.filters.allStatuses")),1),(l(!0),c($,null,k(e.statuses,o=>(l(),c("option",{key:o,value:o},r(e.$t(`pages.administration.commercial.statuses.${o}`)),9,ze))),128))],512),[[M,e.filters.status]])]),s("fieldset",We,[s("label",Ye,r(e.$t("pages.administration.commercial.list.filters.author")),1),m(s("select",{id:"proposal-author","onUpdate:modelValue":t[2]||(t[2]=o=>e.filters.createdByUserId=o),class:"form-control"},[s("option",Xe,r(e.$t("pages.administration.commercial.list.filters.allAuthors")),1),(l(!0),c($,null,k(e.authorOptions,o=>(l(),c("option",{key:o.id,value:o.id},r(o.label),9,Ge))),128))],512),[[M,e.filters.createdByUserId]])]),s("fieldset",Ke,[s("label",Ze,r(e.$t("pages.administration.commercial.list.filters.expiry")),1),m(s("select",{id:"proposal-expiry","onUpdate:modelValue":t[3]||(t[3]=o=>e.filters.expiry=o),class:"form-control"},[(l(!0),c($,null,k(e.expiryPresets,o=>(l(),c("option",{key:o,value:o},r(e.$t(`pages.administration.commercial.list.filters.expiryPresets.${o||"any"}`)),9,Je))),128))],512),[[M,e.filters.expiry]])]),s("fieldset",Qe,[s("label",xe,r(e.$t("pages.administration.commercial.list.filters.linked")),1
1),m(s("select",{id:"proposal-linked","onUpdate:modelValue":t[4]||(t[4]=o=>e.filters.linked=o),class:"form-control"},[s("option",et,r(e.$t("pages.administration.commercial.list.filters.linkedOptions.any")),1),s("option",tt,r(e.$t("pages.administration.commercial.list.filters.linkedOptions.linked")),1),s("option",st,r(e.$t("pages.administration.commercial.list.filters.linkedOptions.lead")),1)],512),[[M,e.filters.linked]])])]),h(re,{name:"proposal-collapse",onEnter:e.expand,onAfterEnter:e.clearHeight,onLeave:e.collapse},{default:U(()=>[e.showAdvanced?(l(),c("div",ot,[s("fieldset",it,[s("label",rt,r(e.$t("pages.administration.commercial.list.filters.createdFrom")),1),m(s("input",{id:"proposal-created-from","onUpdate:modelValue":t[5]||(t[5]=o=>e.filters.createdFrom=o),type:"date",class:"form-control",max:e.filters.createdTo||void 0},null,8,at),[[g,e.filters.createdFrom]])]),s("fieldset",nt,[s("label",lt,r(e.$t("pages.administration.commercial.list.filters.createdTo")),1),m(s("input",{id:"proposal-created-to","onUpdate:modelValue":t[6]||(t[6]=o=>e.filters.createdTo=o),type:"date",class:"form-control",min:e.filters.createdFrom||void 0},null,8,dt),[[g,e.filters.createdTo]])]),s("fieldset",pt,[s("label",ct,r(e.$t("pages.administration.commercial.list.filters.sentFrom")),1),m(s("input",{id:"proposal-sent-from","onUpdate:modelValue":t[7]||(t[7]=o=>e.filters.sentFrom=o),type:"date",class:"form-control",max:e.filters.sentTo||void 0},null,8,mt),[[g,e.filters.sentFrom]])]),s("fieldset",ut,[s("label",ft,r(e.$t("pages.administration.commercial.list.filters.sentTo")),1),m(s("input",{id:"proposal-sent-to","onUpdate:modelValue":t[8]||(t[8]=o=>e.filters.sentTo=o),type:"date",class:"form-control",min:e.filters.sentFrom||void 0}
1,null,8,ht),[[g,e.filters.sentTo]])]),s("fieldset",gt,[s("label",vt,r(e.$t("pages.administration.commercial.list.filters.priceMin")),1),m(s("input",{id:"proposal-price-min","onUpdate:modelValue":t[9]||(t[9]=o=>e.filters.priceMin=o),type:"number",min:"0",step:"1",class:"form-control",placeholder:e.$t("pages.administration.commercial.list.filters.placeholders.priceMin")},null,8,yt),[[g,e.filters.priceMin]])]),s("fieldset",$t,[s("label",bt,r(e.$t("pages.administration.commercial.list.filters.priceMax")),1),m(s("input",{id:"proposal-price-max","onUpdate:modelValue":t[10]||(t[10]=o=>e.filters.priceMax=o),type:"number",min:"0",step:"1",class:"form-control",placeholder:e.$t("pages.administration.commercial.list.filters.placeholders.priceMax")},null,8,Mt),[[g,e.filters.priceMax]])]),s("fieldset",kt,[s("label",wt,r(e.$t("pages.administration.commercial.list.filters.creditsMin")),1),m(s("input",{id:"proposal-credits-min","onUpdate:modelValue":t[11]||(t[11]=o=>e.filters.creditsMin=o),type:"number",min:"0",step:"1",class:"form-control",placeholder:e.$t("pages.administration.commercial.list.filters.placeholders.creditsMin")},null,8,Pt),[[g,e.filters.creditsMin]])]),s("fieldset",It,[s("label",Ft,r(e.$t("pages.administration.commercial.list.filters.creditsMax")),1),m(s("input",{id:"proposal-credits-max","onUpdate:modelValue":t[12]||(t[12]=o=>e.filters.creditsMax=o),type:"number",min:"0",step:"1",class:"form-control",placeholder:e.$t("pages.administration.commercial.list.filters.placeholders.creditsMax")},null,8,Ct),[[g,e.filters.creditsMax]])]),s("fieldset",Tt,[s("label",_t,r(e.$t("pages.administration.commercial.list.filters.discountMin")),1),m(s("input",{id:"proposal-discount-min","onUpdate:modelValue":t[13]||(t[13]=o=>e.filters.discountMin=o),type:"number",min:"0",max:"100",step:"0.5",class:"form-control",placeholder:e.$t("pages.administration.commercial.list.filters.placeholders.discountMin")},null,8,St),[[g,e.filters.discountMin]])]),s("fieldset",Ut,[s("label",Dt,r(e.$t("pages.administration.commercial.list.filters.paymentMethod")),1),m(s("select",{id:"proposal-payment","onUpdate:modelValue":t[14]||(t[14]=o=>e.filters.paymentMethod=o),class:"form-control"},[s("option",qt,r(e.$t("pages.administration.commercial.list.filters.allPaymentMethods")),1),(l(!0),c($,null,k(e.paymentMethods,o=>(l(),c("option",{key:o,value:o},r(e.$t(`pages.administration.commercial.paymentMethods.${o}`)),9,Et))),128))],512),[[M,e.filters.paymentMethod]])]),s("fieldset",Ot,[s("label",At,r(e.$t("pages.administration.commercial.list.filters.paymentInProgress")),1),m(s("select",{id:"proposal-payment-in-progress","onUpdate:modelValue":t[15]||(t[15]=o=>e.filters.paymentInProgress=o),class:"form-control"},[s("option",Nt,r(e.$t("pages.administration.commercial.list.filters.paymentInProgressOptions.any")),1),s("option",jt,r(e.$t("pages.administration.commercial.list.filters.paymentInProgressOptions.yes")),1)],512),[[M,e.filters.paymentInProgress]])]),s("fieldset",Lt,[s("label",Rt,r(e.$t("pages.administration.commercial.list.filters.basePack")),1),m(s("select",{id:"proposal-pack","onUpdate:modelValue":t[16]||(t[16]=o=>e.filters.basePackCode=o),class:"form-control"},[s("option",Bt,r(e.$t("pages.administration.commercial.list.filters.allPacks")),1),(l(!0),c($,null,k(e.packOptions,o=>(l(),c("option",{key:o.code,value:o.code},r(o.displayName),9,Vt))),128))],512),[[M,e.filters.basePackCode]])])])):u("",!0)]),_:1},8,["onEnter","onAfterEnter","onLeave"]),s("div",Ht,[s("label",zt,r(e.$t("pages.administration.commercial.list.filters.sortBy")),1),s("div",Wt,[m(s("select",{id:"proposal-sort","onUpdate:modelValue":t[17]||(t[17]=o=>e.filters.sortBy=o),class:"form-control w-full sm:w-fit",onChange:t[18]||(t[18]=o=>e.search())},[(l(!0),c($,null,k(e.sortFields,o=>(l(),c("option",{key:o,value:o},r(e.$t(`pages.administration.commercial.list.sortFields.${o}`)),9,Yt))),128))],544),[[M,e.filters.sortBy]]),s("button",{type:"button",class:"proposal-sort-direction","data-testid":"proposal-sort-direction",title:e.$t(`pages.administration.commercial.list.filters.sortDir.${e.filters.sortDir}`),"aria-label":e.$t(`pages.administration.commercial.list.filters.sortDir.${e.filters.sortDir}`),onClick:t[19]||(t[19]=o=>e.toggleSortDirection())},r(e.filters.sortDir==="desc"?"â":"â"),9,Xt)])]),s("div",Gt,[h(y,{variant:"secondary","data-testid":"proposal-toggle-advanced",onClick:t[20]||(t[20]=o=>e.toggleAdvanced())},{icon:U(()=>[h(S,{class:N(["ui-button-icon proposal-filters-chevron",{"rotate-180":e.showAdvanced}])},null,8,["class"])]),default:U(()=>[j(r(e.showAdvanced?e.$t("pages.administration.commercial.list.filters.lessFilters"):e.$t("pages.administration.commercial.list.filters.moreFilters"))+" ",1),e.advancedCount>0?(l(),c("span",Kt,r(e.advancedCount),1)):u("",!0)]),_:1}),h(y,{variant:"secondary",icon:"UiIconsFilterXIcon",text:e.$t("pages.administration.commercial.list.filters.clear"),onClick:t[21]||(t[21]=o=>e.clear())},null,8,["text"]),h(y,{variant:"primary",type:"submit",icon:"UiIconsSearchIcon",text:e.$t("pages.administration.commercial.list.filters.apply"),loading:e.loading},null,8,["text","loading"])])])],32),e.loading&&e.items.length===0?(l(),c("div",Zt,[t[28]||(t[28]=s("span",{class:"request-search-loader-spinner","aria-hidden":"true"},null,-1)),s("span",Jt,r(e.$t("common.loading")),1)])):(l(),c("div",Qt,[s("table",xt,[s("thead",null,[s("tr",null,[s("th",es,r(e.$t("pages.administration.commercial.list.columns.reference")),1),s("th",ts,r(e.$t("pages.administration.commercial.list.columns.company")),1
1),s("th",ss,[s("span",os,[j(r(e.$t("pages.administration.commercial.list.columns.status"))+" ",1),h(I,{title:e.$t("pages.administration.commercial.list.statusHelp.title"),"aria-label":e.$t("pages.administration.commercial.list.statusHelp.label"),items:e.statusHelpItems,"panel-class":"w-[80vw] sm:w-[28rem]","data-testid":"proposal-status-help",placement:"top",align:"center"},{label:U(({item:o})=>[h(C,{status:o.key},null,8,["status"])]),_:1},8,["title","aria-label","items"])])]),s("th",is,r(e.$t("pages.administration.commercial.list.columns.credits")),1),s("th",rs,r(e.$t("pages.administration.commercial.list.columns.price")),1),s("th",as,r(e.$t("pages.administration.commercial.list.columns.validity")),1),s("th",ns,r(e.$t("pages.administration.commercial.list.columns.actions")),1)])]),s("tbody",null,[(l(!0),c($,null,k(e.items,o=>(l(),c("tr",{key:o.id,class:"request-table-row","data-testid":"proposal-row",onClick:L=>e.openProposal(o.id)},[s("td",ds,[s("div",ps,r(o.reference),1),s("div",cs,r(e.formatDate(o.createdAt)),1)]),s("td",ms,[s("div",us,r(o.companyName),1),s("div",fs,r(o.contactName)+" · "+r(o.contactEmail),1)]),s("td",hs,[h(C,{status:o.status},null,8,["status"])]),s("td",gs,[s("div",null,r(e.formatInt(o.credits)),1),s("div",vs,r(e.$t("pages.administration.commercial.list.requiredShort",{credits:e.formatInt(o.requiredCredits)})),1)]),s("td",ys,[s("div",$s,r(e.formatMoney(o.priceCents)),1),o.discountPct>0?(l(),c("div",bs,"-"+r(e.formatPct(o.discountPct)),1)):u("",!0)]),s("td",Ms,[s("div",null,r(e.formatDate(o.validUntil)),1),o.sentAt?(l(),c("div",ks,r(e.$t("pages.administration.commercial.list.sentOn",{date:e.formatDate(o.sentAt)})),1)):u("",!0)]),s("td",{class:"request-table-td text-right",onClick:t[23]||(t[23]=A(()=>{},["stop"]))},[s("div",ws,[o.hasPdf?(l(),F(y,{key:0,variant:"secondary",size:"sm",icon:"UiIconsExternalLinkIcon","icon-position":"left",text:e.$t("pages.administration.commercial.list.actions.pdf"),loading:e.pdfLoadingId===o.id,disabled:e.pdfLoadingId!==null,onClick:L=>e.openPdf(o.id)},null,8,["text","loading","disabled","onClick"])):u("",!0),o.status==="sent"||o.status==="draft"?(l(),F(y,{key:1,variant:"secondary",size:"sm",icon:"UiIconsCircleXIcon","icon-position":"left",text:e.$t("pages.administration.commercial.list.actions.reject"),onClick:L=>e.rejecting=o},null,8,["text","onClick"])):u("",!0)])])],8,ls))),128)),!e.loading&&e.items.length===0?(l(),c("tr",Ps,[s("td",Is,r(e.$t("pages.administration.commercial.list.empty")),1)])):u("",!0)])])])),e.hasMore?(l(),c("div",Fs,[h(y,{variant:"secondary",text:e.$t("pages.administration.commercial.list.loadMore"),loading:e.loading,onClick:t[24]||(t[24]=o=>e.loadMore())},null,8,["text","loading"])])):u("",!0)]),e.openProposalId?(l(),F(b,{key:0,ref:"proposalModal","proposal-id":e.openProposalId==="new"?null:e.openProposalId,onClose:t[25]||(t[25]=o=>e.closeProposal()),onChanged:e.onChanged,onDeleted:e.onDeleted,onReject:t[26]||(t[26]=o=>
1e.rejecting=o)},null,8,["proposal-id","onChanged","onDeleted"])):u("",!0),e.rejecting?(l(),F(f,{key:1,"proposal-id":e.rejecting.id,reference:e.rejecting.reference,onClose:t[27]||(t[27]=o=>e.rejecting=null),onRejected:e.onRejected},null,8,["proposal-id","reference","onRejected"])):u("",!0)])}const Rs=K(Ee,[["render",Cs],["__scopeId","data-v-9e08d644"]]);export{Rs as default};
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.