var Af=Object.defineProperty;var pf=(e,t,a)=>t in e?Af(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a;var Re=(e,t,a)=>pf(e,typeof t!="symbol"?t+"":t,a);import{r as B,c as $,o as r,w as d,a as n,u as A,b as x,d as o,e as h,f as R,t as f,F as H,g as ae,h as T,i as Ie,j as kt,k as zt,l as N,m as ka,n as ie,p as la,q as Ne,s as xn,T as Gl,v as be,x as xe,y as Gr,z as xa,A as _l,B as Sl,C as ff,D as ya,E as Cl,G as ra,H as mf,I as jl,J as gn,K as vl,L as Xo,M as hf,N as xc,V as Sc,O as Ss,P as _f,Q as jr,R as Ma,S as Gt,U as Vl,W as vf,X as gf,Y as yf,Z as Gs,_ as bf,$ as wf,a0 as Cf,a1 as zr,a2 as Bf}from"./chunks/vue.esm-bundler.js?ver=1.5.4";import{u as al,a as ll,o as Fc,c as kf,b as xf}from"./chunks/vue-router.js?ver=1.5.4";import{_ as J,a as Yt}from"./chunks/DynamicIcon.js?ver=1.5.4";import{T as Fs,_ as $s,a as qr,F as Co,b as Ja,B as fa,P as Vn,c as $c,d as Sf,e as Ff,m as $f}from"./chunks/Badge.js?ver=1.5.4";import{t as u,a as Zt,A as je,p as Bo}from"./chunks/Translator.js?ver=1.5.4";import{_ as bt,P as sl}from"./chunks/Empty.js?ver=1.5.4";import{_ as Yr,a as Ia,b as Ec,c as Uc,L as Wr,d as Jo,O as Ic,e as Zo,P as Xr,C as Yl}from"./chunks/OrderCustomerInformation.js?ver=1.5.4";import{_ as Nt,p as Sn}from"./chunks/UserCan.js?ver=1.5.4";import{C as et}from"./chunks/CurrencyFormatter.js?ver=1.5.4";import{_ as Na,a as Jr,b as Zr,c as Ef,S as Qc,d as Dc,e as Uf,A as Vc,f as Tc}from"./chunks/CancelSubscription.js?ver=1.5.4";import{_ as Ba,C as Qe,a as Ce,b as ke}from"./chunks/CardBody.js?ver=1.5.4";import{_ as at}from"./chunks/_plugin-vue_export-helper.js?ver=1.5.4";import{S as Ot}from"./chunks/Storage.js?ver=1.5.4";import{c as If,h as Xs,a as sr,g as Mc,f as Qf,b as ks,$ as rl,d as Df}from"./chunks/common.js?ver=1.5.4";import{I as Ze}from"./chunks/IconButton.js?ver=1.5.4";import{M as nl}from"./chunks/Model.js?ver=1.5.4";import{R as ce}from"./chunks/Rest.js?ver=1.5.4";import{d as lt,g as Vf}from"./chunks/dayjs.min.js?ver=1.5.4";import{a as ei,E as Xa,m as Tf,b as dl,d as gs,i as tl,c as Mf,s as Lc,e as ko,f as ed,r as td,g as Rc,p as Id,w as Lf,h as ti,l as Rf,j as qs,k as Of,n as Hf,o as xo,t as Pf,q as Nf,u as Kf,v as Gf,x as jf,y as zf,z as qf,A as Yf}from"./chunks/index.js?ver=1.5.4";import{n as Y}from"./chunks/Notify.js?ver=1.5.4";import{_ as va}from"./chunks/Animation.js?ver=1.5.4";import{_ as Wl,T as Ve,m as Pa,a as Rl,i as ea,r as Wf,L as nr,b as Oc,d as Hc,c as Pc}from"./chunks/dateShortCuts.js?ver=1.5.4";import{S as Qa,_ as Da,u as ps,a as Xf,b as Jf,c as Zf}from"./chunks/countries.js?ver=1.5.4";import{u as fs,L as pa,_ as ai}from"./chunks/NotFound.js?ver=1.5.4";import{A as cs}from"./chunks/Asset.js?ver=1.5.4";import{E as em}from"./chunks/index2.js?ver=1.5.4";import{S as da}from"./chunks/Str.js?ver=1.5.4";import{A as rt}from"./chunks/Arr.js?ver=1.5.4";import{C as hs,V as Js,_ as oa,c as Fn,a as ho,b as tm,d as am}from"./chunks/AttrGroups.js?ver=1.5.4";import{U as Zs}from"./chunks/Url.js?ver=1.5.4";import{u as li,t as Nc}from"./chunks/timezone.js?ver=1.5.4";import{e as $n,i as ad,U as ld,p as lm}from"./chunks/Utils.js?ver=1.5.4";import{_ as an,P as Kc}from"./chunks/ProductVariationSelector.js?ver=1.5.4";import{f as _a,a as sm,p as nm,b as om,g as im,c as rm,d as dm}from"./chunks/productService.js?ver=1.5.4";import{B as So}from"./chunks/BundleProducts.js?ver=1.5.4";import{E as Qd}from"./chunks/index3.js?ver=1.5.4";import{T as Dd}from"./chunks/TransitionAccordion.js?ver=1.5.4";import{_ as Gc}from"./chunks/FileUploaderDialog.js?ver=1.5.4";import{E as Qs,v as um,i as cm}from"./chunks/defaults.js?ver=1.5.4";import Am from"./chunks/Screenshot.js?ver=1.5.4";import{u as pm}from"./chunks/useElementPlusComponents.js?ver=1.5.4";import"./chunks/AddressComponent2.js?ver=1.5.4";import"./chunks/index4.js?ver=1.5.4";class fm extends Fs{getTabs(){return{}}getToggleableColumns(){return[{label:u("Lifetime Value (LTV)"),value:"ltv"},{label:u("Customer Since"),value:"customer_since"},{label:u("Last Purchase Date"),value:"last_purchase_date"}]}getSortableColumns(){return[{label:u("Customer ID"),value:"id"},{label:u("Name"),value:"first_name"},{label:u("Purchases"),value:"purchase_count"},{label:u("Lifetime Value (LTV)"),value:"ltv"},{label:u("Last Purchase Date"),value:"last_purchase_date"},{label:u("Customer Since"),value:"created_at"}]}getSearchHint(){return u("Search by, #ID, First Name, Last Name and Email")}getFetchUrl(){return"customers"}parseResponse(t){return t.customers}getTableName(){return"customers"}}function jc(e){return fm.init(e)}const mm={class:"table-cell"},hm={class:"fct-product-info-card w-full"},_m={class:"fct-product-info-media"},vm={class:"fct-product-info-details grow-0 shrink-0 basis-[calc(100%-52px)]",style:{overflow:"hidden"}},gm={class:"fct-product-info-name flex flex-col items-start gap-3"},ym={class:"table-cell"},bm={class:"table-cell"},wm={class:"table-cell"},Cm={class:"table-cell"};const Bm={__name:"CustomersLoader",props:{nextPageCount:{type:Number,default:0},customerTable:{type:Object,default:()=>({})}},setup(e){const t=e,a=Array.from({length:t.nextPageCount},(l,s)=>s+1);return(l,s)=>{const i=B("el-table-column"),c=B("el-skeleton-item"),p=B("el-table"),m=B("el-skeleton");return r(),$(m,{animated:""},{template:d(()=>[n(p,{data:A(a),class:"w-full compact-table responsive"},{empty:d(()=>s[0]||(s[0]=[])),default:d(()=>[x("",!0),n(i,{label:l.$t("Customer"),width:"300"},{default:d(()=>[o("div",mm,[o("div",hm,[o("div",_m,[n(c,{varient:"image",class:"w-10 h-10.5 rounded-full flex-none"})]),o("div",vm,[o("div",gm,[n(c,{varient:"p",class:"max-w-[190px]"}),n(c,{varient:"p",class:"max-w-[100px]"})])])])])]),_:1},8,["label"]),n(i,{label:l.$t("Address"),width:"300"},{default:d(()=>[o("div",ym,[n(c,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"]),n(i,{label:l.$t("Purchases"),width:"150"},{default:d(()=>[o("div",bm,[n(c,{varient:"p",class:"w-3/5"})])]),_:1},8,["label"]),e.customerTable.isColumnVisible("last_purchase_date")?(r(),$(i,{key:1,label:l.$t("Last Purchase Date"),width:"200"},{default:d(()=>[o("div",wm,[n(c,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),e.customerTable.isColumnVisible("customer_since")?(r(),$(i,{key:2,label:l.$t("Customer Since"),width:"150"},{default:d(()=>[o("div",Cm,[n(c,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),(e.customerTable.isColumnVisible("actions"),x("",!0))]),_:1},8,["data"])]),_:1})}}},km={key:0,class:"fct-customer-card"},xm={class:"fct-customer-avatar"},Sm=["src"],Fm={class:"fct-customer-details"},$m={class:"fct-customer-name"},Em={class:"fct-customer-id"},Um={class:"fct-customer-email"},Im=["innerHTML"],Qm={key:1},Dm={__name:"CustomersTable",props:{table:{type:Object,required:!0}},setup(e){return(t,a)=>{const l=B("el-table-column"),s=B("el-table");return r(),$(s,{data:e.table.getTableData(),class:"w-full compact-table"},{empty:d(()=>[n(bt,{icon:"Empty/ListView","has-dark":!0,text:A(u)("No customer found!")},null,8,["text"])]),default:d(()=>[x("",!0),n(l,{label:A(u)("Customer"),width:"300"},{default:d(i=>{var c;return[n(Ba,{class:"hover:no-underline",to:{name:"view_customer",params:{customer_id:(c=i.row)==null?void 0:c.id}}},{default:d(()=>{var p,m,_,g,y;return[(p=i.row)!=null&&p.id?(r(),h("div",km,[o("div",xm,[o("span",null,[o("img",{src:(m=i.row)==null?void 0:m.photo,alt:"avatar"},null,8,Sm)])]),o("div",Fm,[o("div",$m,[R(f(((_=i.row)==null?void 0:_.full_name)||A(u)("No Name"))+" ",1),o("span",Em,"#"+f(A(Zt)((g=i.row)==null?void 0:g.id)),1)]),o("div",Um,f((y=i.row)==null?void 0:y.email),1)])])):x("",!0)]}),_:2},1032,["to"])]}),_:1},8,["label"]),n(l,{label:A(u)("Address"),width:"300"},{default:d(i=>{var c;return[n(Ba,{class:"hover:no-underline",to:{name:"view_customer",params:{customer_id:(c=i.row)==null?void 0:c.id}}},{default:d(()=>[R(f(t.getOrderAddress(i.row)),1)]),_:2},1032,["to"])]}),_:1},8,["label"]),n(l,{label:A(u)("Purchases"),width:90},{default:d(i=>{var c;return[n(Ba,{class:"hover:no-underline",to:{name:"view_customer",params:{customer_id:(c=i.row)==null?void 0:c.id}}},{default:d(()=>[R(f(A(Zt)(i.row.purchase_count)),1)]),_:2},1032,["to"])]}),_:1},8,["label"]),e.table.isColumnVisible("ltv")?(r(),$(l,{key:1,label:A(u)("LTV"),width:100},{default:d(i=>{var c;return[n(Ba,{class:"hover:no-underline",to:{name:"view_customer",params:{customer_id:(c=i.row)==null?void 0:c.id}}},{default:d(()=>[o("span",{innerHTML:A(et).formatNumber(i.row.ltv,!0,!1)},null,8,Im)]),_:2},1032,["to"])]}),_:1},8,["label"])):x("",!0),e.table.isColumnVisible("last_purchase_date")?(r(),$(l,{key:2,label:A(u)("Last Purchase Date"),width:"200"},{default:d(i=>{var c;return[n(Ba,{class:"hover:no-underline",to:{name:"view_customer",params:{customer_id:(c=i.row)==null?void 0:c.id}}},{default:d(()=>[i.row.last_purchase_date?(r(),$(Na,{key:0,"date-time":i.row.last_purchase_date},null,8,["date-time"])):(r(),h("span",Qm,"---"))]),_:2},1032,["to"])]}),_:1},8,["label"])):x("",!0),e.table.isColumnVisible("customer_since")?(r(),$(l,{key:3,label:A(u)("Customer Since"),width:"150"},{default:d(i=>{var c;return[n(Ba,{class:"hover:no-underline",to:{name:"view_customer",params:{customer_id:(c=i.row)==null?void 0:c.id}}},{default:d(()=>[n(Na,{"date-time":i.row.created_at},null,8,["date-time"])]),_:2},1032,["to"])]}),_:1},8,["label"])):x("",!0)]),_:1},8,["data"])}}},Vm={class:"fct-customer-table-mobile-wrap"},Tm=["onClick"],Mm={class:"fct-customer-table-mobile-header"},Lm={key:0,class:"fct-customer-table-customer-col fct-customer-card"},Rm={class:"fct-customer-avatar"},Om=["src"],Hm={class:"fct-customer-details"},Pm={class:"fct-customer-name"},Nm={class:"fct-customer-id"},Km={class:"fct-customer-email"},Gm={class:"fct-customer-table-purchases-col"},jm={class:"fct-customer-table-mobile-body"},zm={class:"fct-customer-table-mobile-body-list"},qm={key:0,class:"fct-customer-table-ltv-col"},Ym={class:"label"},Wm=["innerHTML"],Xm={key:1,class:"fct-customer-table-last-purchase-date-col"},Jm={class:"label"},Zm={class:"value"},eh={key:2,class:"fct-customer-table-customer-since-col"},th={class:"label"},ah={class:"value"},lh={class:"fct-customer-table-mobile-footer"},sh={class:"fct-customer-table-address-col"},nh={key:0,class:"py-6 text-center"},oh={__name:"CustomersTableMobile",props:{table:{type:Object,required:!0},emptyText:{type:String,default:u("No customers found.")}},setup(e){return(t,a)=>(r(),h("div",Vm,[(r(!0),h(H,null,ae(e.table.getTableData(),(l,s)=>(r(),h("div",{key:l.id,class:"fct-customer-table-mobile-row",onClick:i=>t.$router.push({name:"view_customer",params:{customer_id:l.id}})},[o("div",Mm,[l!=null&&l.id?(r(),h("div",Lm,[o("div",Rm,[o("img",{src:l==null?void 0:l.photo,alt:"avatar"},null,8,Om)]),o("div",Hm,[o("div",Pm,[R(f((l==null?void 0:l.full_name)||A(u)("No Name"))+" ",1),o("span",Nm,"#"+f(l==null?void 0:l.id),1)]),o("div",Km,f(l==null?void 0:l.email),1)])])):x("",!0),o("div",Gm,f(l.purchase_count)+" "+f(l.purchase_count>1?A(u)("Purchases"):A(u)("Purchase")),1)]),o("div",jm,[o("ul",zm,[e.table.isColumnVisible("ltv")?(r(),h("li",qm,[o("div",Ym,f(A(u)("LTV:")),1),o("div",{class:"value",innerHTML:A(et).formatNumber(l.ltv,!0,!1)},null,8,Wm)])):x("",!0),e.table.isColumnVisible("last_purchase_date")?(r(),h("li",Xm,[o("div",Jm,f(A(u)("Last Purchase Date:")),1),o("div",Zm,[n(Na,{"date-time":l.last_purchase_date},null,8,["date-time"])])])):x("",!0),e.table.isColumnVisible("customer_since")?(r(),h("li",eh,[o("div",th,f(A(u)("Customer Since:")),1),o("div",ah,[n(Na,{"date-time":l.created_at},null,8,["date-time"])])])):x("",!0)])]),o("div",lh,[o("div",sh,[n(J,{name:"LocationPin"}),R(" "+f(t.getOrderAddress(l)),1)])])],8,Tm))),128)),e.table.getTableData().length===0?(r(),h("div",nh,[n(bt,{icon:"Empty/Order","has-dark":"",text:e.emptyText},null,8,["text"])])):x("",!0)]))}},ih={},rh={class:"px-4 py-3"},dh={class:"flex items-center justify-between mb-3"},uh={class:"flex items-center justify-between mb-3"},ch={class:"flex items-center justify-between mb-3"},Ah={class:"flex items-center justify-between mb-3"};function ph(e,t){const a=B("el-skeleton-item"),l=B("el-skeleton");return r(),$(l,{animated:""},{template:d(()=>[o("div",rh,[o("div",dh,[n(a,{varient:"p",class:"w-1/2"}),n(a,{varient:"p",class:"w-[100px]"})]),o("div",uh,[n(a,{varient:"p",class:"w-[50px]"}),n(a,{varient:"p",class:"w-[80px]"})]),o("div",ch,[n(a,{varient:"p",class:"w-[120px]"}),n(a,{varient:"p",class:"w-[100px]"})]),o("div",Ah,[n(a,{varient:"p",class:"w-[100px]"}),n(a,{varient:"p",class:"w-[100px]"})]),n(a,{varient:"p",class:"w-[230px]"})])]),_:1})}const fh=at(ih,[["render",ph]]),mh={class:"fct-all-customers-page fct-layout-width"},hh={class:"fct-all-customers-wrap"},_h={key:1},vh={__name:"AllCustomers",setup(e){const t=jc(),a=T({showModal:!1,action:"create",title:u("Create New Customer"),customer:{}}),l=T(!1),s=()=>{l.value=window.innerWidth<768};return Ie(()=>{s(),window.addEventListener("resize",s)}),kt(()=>{window.removeEventListener("resize",s)}),(i,c)=>{const p=B("el-button");return r(),h("div",mh,[n(Nt,{permission:"customers/manage"},{default:d(()=>[n(sl,{title:A(u)("Customers")},{action:d(()=>[n(p,{type:"primary",onClick:c[0]||(c[0]=m=>a.value.showModal=!0)},{default:d(()=>[R(f(A(u)("Add Customer")),1)]),_:1})]),_:1},8,["title"])]),_:1}),n(Nt,{permission:"customers/view"},{default:d(()=>[o("div",hh,[n($s,{table:A(t),"has-mobile-slot":!0},{mobile:d(()=>[A(t).isLoading()?(r(),$(fh,{key:0})):x("",!0),n(oh,{table:A(t)},null,8,["table"])]),default:d(()=>[A(t).isLoading()?(r(),$(Bm,{key:0,customerTable:A(t),"next-page-count":A(t).nextPageCount},null,8,["customerTable","next-page-count"])):(r(),h("div",_h,[n(Dm,{table:A(t)},null,8,["table"])]))]),_:1},8,["table"])])]),_:1}),n(Nt,{permission:"customers/manage"},{default:d(()=>[n(Yr,{"onUpdate:customerModal":c[1]||(c[1]=()=>{a.value.showModal=!1,a.value.customer={},A(t).fetch()}),customerModalInfos:a.value,customer_id:a.value.customer_id,customer:a.value.customer,onCloseModal:c[2]||(c[2]=m=>a.value.showModal=!1)},null,8,["customerModalInfos","customer_id","customer"])]),_:1})])}}};class gh extends Fs{getTabs(){return{all:u("All"),completed:u("Completed"),processing:u("Processing"),"on-hold":u("On Hold"),paid:u("Paid"),subscription:u("Subscription"),renewal:u("Renewal"),refunded:u("Refunded"),partially_refunded:u("Partially Refunded"),upgraded_from:{title:u("Upgraded From"),description:u("Orders upgraded from another order")},upgraded_to:{title:u("Upgraded To"),description:u("Orders upgraded to another order")}}}getToggleableColumns(){return[{label:u("Customer"),value:"customer"},{label:u("Items"),value:"order_items"},{label:u("Order Status"),value:"status"},{label:u("Order Type"),value:"type"},{label:u("Actions"),value:"actions"}]}getSortableColumns(){return[{label:u("Order ID"),value:"id"},{label:u("Total"),value:"total_amount"},{label:u("Payment Status"),value:"payment_status"},{label:u("Order Status"),value:"status"}]}getSearchHint(){return u("Search by invoice no, customer name, or customer email.")}getFetchUrl(){return"orders"}parseResponse(t){return t.orders}getTableName(){return"order_table"}with(){return["customer.primary_billing_address","order_items"]}}function zc(e){return gh.init(e)}const yh={class:"fct-order-stats-card"},bh={class:"fct-order-stats-card-head"},wh={class:"fct-order-stats-card-head-content"},Ch={class:"text"},Bh={key:0,class:"value"},kh={class:"fct-order-stats-card-body"},xh={key:0,class:"change-wrap"},Sh={key:0,class:"change-title"},Fh={key:1,class:"change-title"},$h={key:1,class:"change-wrap"},Eh={class:"change-title"},Uh={__name:"StatCard",props:{direction:String,stat:Object,statRanges:Object,currentRange:String|Number,statKey:String|Number,loading:Boolean},setup(e){const t=zt().ctx,a=e,l=N(()=>{switch(a.statKey){case"total_orders":return"warning";case"paid_orders":return"blue";case"total_paid_order_items":return"danger";case"total_paid_amounts":return"secondary";default:return"info"}}),s=N(()=>c.value===0?"":c.value>0?"success":"danger"),i=m=>m.is_cents?t.formatNumber(m.current_count):Zt(m.current_count),c=N(()=>{let m=If(a.stat.current_count,a.stat.compare_count)??0;return m===""?0:m}),p=N(()=>a.statRanges[a.currentRange].label);return(m,_)=>{const g=B("el-skeleton"),y=B("el-skeleton-item");return r(),h("div",yh,[o("div",bh,[n(Ze,{size:"large",bg:l.value,soft:""},{default:d(()=>[ka(m.$slots,"icon")]),_:3},8,["bg"]),o("div",wh,[n(g,{loading:e.loading,animated:"",rows:0},null,8,["loading"]),o("span",Ch,f(e.stat.title),1),e.loading?x("",!0):(r(),h("div",Bh,f(i(e.stat)),1))])]),o("div",kh,[n(g,{loading:e.loading,animated:""},{template:d(()=>[n(y,{variant:"p",class:"w-1/2 h-4"})]),_:1},8,["loading"]),!e.loading&&e.currentRange!=="all_time"?(r(),h("div",xh,[o("span",{class:ie("change "+s.value)},[c.value!==0?(r(),$(J,{key:0,name:c.value>0?"CaretUp":"CaretDown"},null,8,["name"])):x("",!0),R(" "+f(c.value===0?m.$t("Same as previous"):Math.abs(c.value)+"%"),1)],2),c.value>0?(r(),h("span",Sh,f(A(u)("More than %s",p.value==="Today"?m.$t("Yesterday"):m.$t(p.value))),1)):c.value<0?(r(),h("span",Fh,f(A(u)("Less than %s",p.value==="Today"?m.$t("Yesterday"):m.$t(p.value))),1)):x("",!0)])):x("",!0),!e.loading&&e.currentRange==="all_time"?(r(),h("div",$h,[o("span",Eh,f(m.$t("All Time")),1)])):x("",!0)])])}}},Ih={name:"CardFooter"},Qh={class:"fct-card-footer"};function Dh(e,t,a,l,s,i){return r(),h("div",Qh,[ka(e.$slots,"default")])}const sd=at(Ih,[["render",Dh]]);class qc{constructor(){Re(this,"_attributes",{})}attribute(t,a){return this._attributes[t]=a,this}setAttribute(t){return this._attributes=typeof t=="object"?t:this._attributes,this}}class rs{static install(t,a,l={},s=!1){const i=new a(...Object.values(l));Object.keys(i).forEach(c=>{(s||!t.hasOwnProperty(c))&&(t[c]=i[c])}),Object.getOwnPropertyNames(a.prototype).forEach(c=>{c!=="constructor"&&typeof i[c]=="function"&&(s||typeof t[c]!="function")&&(t[c]=i[c].bind(t))})}}class Vh extends nl{constructor(){super(...arguments);Re(this,"data",{salesGrowthChart:[],countryHeatMap:[],fluctuations:[],dashBoardStats:[],recentOrders:[],recentActivities:[],topSoldProducts:[],currencySign:je.get("shop.currency_sign"),isBusy:{recentActivities:!1,fluctuations:!1,dashBoardStats:!1,recentOrders:!1,countryHeatMap:!1,salesGrowthChart:!0,topSoldProducts:!0}})}get controllerKey(){return"ReportingController"}beforeInit(){}makeRequest(a,l,s,i){this.data.isBusy[i]=!0,typeof l!="object"&&(l={});const c=ce.get(`reports/${a}`,l);return this.resolvePromiseResponse(c,s,i),c}resolvePromiseResponse(a,l=null,s=null){a.then(i=>{s==null||l==null||(this.data[s]=i[l])}).catch(i=>{}).finally(()=>{this.data.isBusy[s]=!1})}getDashboardStats(a={}){return this.makeRequest("dashboard-stats",a,"dashBoardStats","dashBoardStats")}getSalesGrowthChart(a={}){return this.makeRequest("sales-growth-chart",a,"salesGrowthChart","salesGrowthChart")}getCountryHeatMap(a={}){return this.makeRequest("country-heat-map",a,"countryHeatMap","countryHeatMap")}getRecentOrders(a={}){return this.makeRequest("get-recent-orders",a,"recentOrders","recentOrders")}getRecentActivities(a={}){return this.makeRequest("get-recent-activities",a,"recentActivities","recentActivities")}getSummary(a={}){return this.makeRequest("get-dashboard-summary",a,"summaryData","summaryData")}getTopSoldProducts(a={}){return this.makeRequest("fetch-top-sold-products",a,"topSoldProducts","topSoldProducts")}}const ol=Vh.init(),Th={},Mh={class:"fct-order-stats-row"},Lh={class:"p-4 bg-gray-25 rounded dark:bg-primary-500"},Rh={class:"flex items-center gap-2 mb-3"},Oh={class:"right flex flex-col flex-1 gap-2"};function Hh(e,t){const a=B("el-skeleton-item"),l=B("el-skeleton");return r(),h("div",Mh,[(r(),h(H,null,ae(4,s=>n(l,{animated:"",key:s},{template:d(()=>[o("div",Lh,[o("div",Rh,[n(a,{variant:"p",class:"rounded w-10 h-10 block"}),o("div",Oh,[n(a,{variant:"p",class:"rounded w-4/5 block"}),n(a,{variant:"p",class:"rounded w-1/2 block"})])]),o("div",null,[n(a,{variant:"p",class:"rounded w-2/3 block"})])])]),_:2},1024)),64))])}const Ph=at(Th,[["render",Hh]]),Nh={class:"fct-order-stats-wrap"},Kh={class:"fct-order-stats-actions flex items-center gap-2.5"},Gh={class:"fct-order-stats-body"},jh={key:1,class:"fct-order-stats-row"},zh={class:"flex justify-end mt-2"},qh=Object.assign({name:"OrderStatBar"},{__name:"OrderStatBar",setup(e){const t=T(Ot.get("order_stat_collapse",!1)),a=T(""),l=zt().ctx,s=T(!1),i=T(!0),c=T(!1),p=T("-7 days"),m=al(),_=T({"-0 days":{label:u("Today"),desc:u("Compared to yesterday")},"-7 days":{label:u("Last 7 days"),desc:u("Compared to the previous 7 days")},"-30 days":{label:u("Last 30 days"),desc:u("Compared to the previous 30 days")},this_month:{label:u("This Month"),desc:u("Compared to the previous Month")},all_time:{label:u("All Time"),desc:u("See All time Sales Stat")}}),g=async v=>{if(p.value!==v)try{p.value=v,a.value="collapse",t.value===!0&&(t.value=!1,Ot.set("order_stat_collapse",t.value)),await Promise.all([l.Storage().set("order_quick_stat_bar_range",p.value),y()])}catch{}},y=()=>{c.value=!1,i.value=!0;const v={"-0 days":[lt().startOf("day").format("YYYY-MM-DD"),lt().endOf("day").format("YYYY-MM-DD")],"-7 days":[lt().subtract(7,"days").startOf("day").format("YYYY-MM-DD"),lt().endOf("day").format("YYYY-MM-DD")],"-30 days":[lt().subtract(30,"days").startOf("day").format("YYYY-MM-DD"),lt().endOf("day").format("YYYY-MM-DD")],this_month:[lt().startOf("month").format("YYYY-MM-DD"),lt().endOf("day").format("YYYY-MM-DD")],all_time:[null,null]},[w,C]=v[p.value]||[lt().startOf("month"),lt().endOf("day")],b={startDate:w,endDate:C,paymentStatus:"all"};ol.getDashboardStats({params:{...b}}).then(()=>{s.value=ol.data.dashBoardStats}).catch(k=>{}).finally(()=>{i.value=!1})};return Ie(()=>{p.value=Ot.get("order_quick_stat_bar_range","-0 days");let v=Ot.get("order_quick_stat_bar_collapse_item");a.value=v===null?"collapse":v,y()}),(v,w)=>{const C=B("el-button");return r(),h("div",Nh,[n(ke,null,{default:d(()=>[n(Qe,{title:A(u)("Order Stats Overview"),border_bottom:""},{action:d(()=>[o("div",Kh,[n(qr,{class:"hide-animation-on-mobile"},{default:d(()=>[(r(!0),h(H,null,ae(_.value,(b,k)=>(r(),$(Co,{title:`${A(u)("Order Stats Overview of")} ${b.label}`,tabindex:"0",key:k,onClick:F=>g(k),class:ie(k===p.value?"active":"")},{default:d(()=>[R(f(b.label),1)]),_:2},1032,["title","onClick","class"]))),128))]),_:1})])]),_:1},8,["title"]),n(Ce,null,{default:d(()=>[o("div",Gh,[i.value?(r(),$(Ph,{key:0})):(r(),h("div",jh,[(r(!0),h(H,null,ae(s.value,(b,k)=>(r(),h("div",{key:k,class:"fct-order-stats-col cursor-pointer",onClick:w[0]||(w[0]=F=>A(m).push({name:"reports_orders"}))},[(r(),$(Uh,{key:k,stat:b,"current-range":p.value,"stat-ranges":_.value,loading:i.value,"stat-key":k},{icon:d(()=>[n(J,{name:b.icon},null,8,["name"])]),_:2},1032,["stat","current-range","stat-ranges","loading","stat-key"]))]))),128))])),o("div",zh,[n(C,{text:"",class:"underline-link-button",onClick:w[1]||(w[1]=b=>A(m).push({name:"reports_orders"}))},{default:d(()=>[R(f(A(u)("See Full Report")),1)]),_:1})])])]),_:1})]),_:1})])}}}),Yh={class:"table-cell"},Wh={class:"table-cell"},Xh={class:"table-cell"},Jh={class:"table-cell"},Zh={class:"table-cell items-center gap-1"},e_={class:"table-cell"},t_={class:"table-cell"},a_={class:"table-cell"},l_={__name:"OrdersLoader",props:{nextPageCount:{type:Number,default:0},orderTable:{type:Object,default:()=>({})}},setup(e){const t=e,a=s=>t.orderTable.columns.includes(s),l=Array.from({length:t.nextPageCount},(s,i)=>i+1);return(s,i)=>{const c=B("el-table-column"),p=B("el-skeleton-item"),m=B("el-table"),_=B("el-skeleton");return r(),$(_,{animated:""},{template:d(()=>[n(m,{data:A(l),class:"w-full compact-table responsive"},{empty:d(()=>i[0]||(i[0]=[])),default:d(()=>[x("",!0),n(c,{label:s.$t("# Date"),width:140},{default:d(()=>[o("div",Yh,[n(p,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"]),a("customer")?(r(),$(c,{key:1,width:"100",label:s.$t("Customer")},{default:d(()=>[o("div",Wh,[n(p,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),a("order_items")?(r(),$(c,{key:2,label:s.$t("Items"),width:"250"},{default:d(()=>[o("div",Xh,[n(p,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),n(c,{width:"100",label:s.$t("Total")},{default:d(()=>[o("div",Jh,[n(p,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"]),n(c,{width:"150",label:s.$t("Payment Status")},{default:d(()=>[o("div",Zh,[n(p,{varient:"p",class:"w-4/5"}),n(p,{varient:"p",class:"w-3/5"})])]),_:1},8,["label"]),a("status")?(r(),$(c,{key:3,width:"150",label:s.$t("Status")},{default:d(()=>[o("div",e_,[n(p,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),a("type")?(r(),$(c,{key:4,width:"110",label:s.$t("Order Type")},{default:d(()=>[o("div",t_,[n(p,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),a("actions")?(r(),$(c,{key:5,width:"60",label:""},{default:d(()=>[o("div",a_,[n(p,{varient:"p",class:"w-3/5"})])]),_:1})):x("",!0)]),_:1},8,["data"])]),_:1})}}},s_={},n_={class:"px-4 py-3"},o_={class:"grid grid-cols-3 gap-5 mt-5"};function i_(e,t){const a=B("el-skeleton-item"),l=B("el-skeleton");return r(),$(l,{animated:""},{template:d(()=>[o("div",n_,[(r(),h(H,null,ae(2,s=>o("div",{key:s,class:"flex items-center justify-between mb-3"},[n(a,{varient:"p",class:"w-1/2"}),n(a,{varient:"p",class:"w-[100px]"})])),64)),o("div",o_,[(r(),h(H,null,ae(3,s=>o("div",{key:s},[n(a,{varient:"p",class:"w-1/2"}),n(a,{varient:"p",class:"w-[100px]"})])),64))])])]),_:1})}const r_=at(s_,[["render",i_]]),d_={class:"fct-all-orders-page fct-layout-width"},u_={class:"fct-delete-test-orders-content"},c_={if:"deleteTestOrdersProgressTitle",class:"fct-delete-test-orders-title"},A_={class:"fct-delete-test-orders-meta"},p_={class:"fct-delete-test-orders-text"},f_={key:0,class:"fct-delete-test-orders-loading"},m_={class:"fct-test-orders-loading-content"},h_={class:"fct-loading-bars"},__=["id"],v_={class:"fct-delete-test-orders-percentage"},g_={class:"fct-delete-test-orders-stats"},y_={class:"fct-delete-test-orders-stat-row"},b_={class:"fct-delete-test-orders-stat-label"},w_={class:"fct-delete-test-orders-stat-value"},C_={class:"fct-delete-test-orders-stat-row"},B_={class:"fct-delete-test-orders-stat-label"},k_={class:"fct-delete-test-orders-stat-value is-success"},x_={class:"fct-delete-test-orders-stat-row"},S_={class:"fct-delete-test-orders-stat-label"},F_={class:"fct-delete-test-orders-stat-value is-danger"},$_={key:1,class:"fct-delete-test-orders-message"},E_={key:0,class:"dialog-footer"},U_={class:"fct-all-orders-wrap"},I_={__name:"AllOrders",setup(e){const t=zc({instance:zt()}),a=T(!1),l=T(!1),s=T(!1),i=T(!1),c=T({total:0,processed:0,deleted:0,failed:0}),p=T(""),m=N(()=>c.value.total?Math.min(100,Math.round(c.value.processed/c.value.total*100)):0),_=N(()=>{if(!c.value.total)return"";const F=Math.min(c.value.processed,c.value.total);return s.value?u("Deleting %1$s of %2$s Test Orders",F,c.value.total):u("Deleted %1$s of %2$s Test Orders",F,c.value.total)}),g=N(()=>c.value.total?s.value?u("Deleting... %s%",m.value):u("Completed"):""),y=()=>{l.value=window.innerWidth<768},v=()=>{c.value={total:0,processed:0,deleted:0,failed:0},p.value=""},w=F=>{F==="show_order_stats"&&(Ot.set("show_order_stats",!a.value),a.value=!a.value),F==="show_delete_bulk_action"&&t.showBulkDeleteAction(!0),F==="hide_delete_bulk_action"&&t.showBulkDeleteAction(!1),F==="delete_test_orders"&&C()},C=async()=>{var F,M;if(!s.value){try{await Xa.confirm(u("Are you sure you want to delete all test orders? This action cannot be undone."),u("Confirm Delete!"),{confirmButtonText:u("Delete"),cancelButtonText:u("Cancel"),cancelButtonClass:"el-button--small",confirmButtonClass:"el-button--small",type:"warning"})}catch{return}s.value=!0,i.value=!0,v();try{let E=0,S=0,Q=0;for(;;){const V=await ce.post("orders/do-bulk-action",{action:"delete_test_orders",last_order_id:E}),D=V||{};if(S=S||Number(D.total_count||0),Q+=Number(D.batch_count||0),c.value={total:S,processed:Q,deleted:c.value.deleted+Number(D.deleted_count||0),failed:c.value.failed+Number(D.failed_count||0)},p.value=D.has_more?u("Processed %1$s of %2$s test orders...",Math.min(Q,S),S):(V==null?void 0:V.message)||"",!D.has_more)break;E=Number(D.last_attempted_order_id||0),await new Promise(I=>setTimeout(I,100))}if(!c.value.total){i.value=!1,Y.info(u("No test orders found to delete"));return}const U=c.value.failed?u("Deleted %1$s test orders. %2$s test orders could not be deleted.",c.value.deleted,c.value.failed):u("Deleted %s test orders successfully",c.value.deleted);p.value=U,Y.success(U),t.fetch()}catch(E){p.value=((F=E==null?void 0:E.data)==null?void 0:F.message)||u("Failed to delete test orders"),Y.error(((M=E==null?void 0:E.data)==null?void 0:M.message)||u("Failed to delete test orders"))}finally{s.value=!1}}},b=()=>{i.value=!1},k=()=>{const F=Ot.get("show_order_stats");F&&(a.value=F)};return Ie(()=>{k(),y(),window.addEventListener("resize",y)}),kt(()=>{window.removeEventListener("resize",y)}),(F,M)=>{const E=B("el-icon"),S=B("el-button"),Q=B("el-dropdown-item"),U=B("el-dropdown-menu"),V=B("el-dropdown"),D=B("el-tag"),I=B("el-progress"),O=B("el-dialog");return r(),h("div",d_,[n(sl,{title:A(u)("Orders")},{action:d(()=>[n(Nt,{permission:["reports/view","orders/manage"]},{default:d(()=>[n(V,{trigger:"click","popper-class":"fct-dropdown",onCommand:w,placement:"bottom-end"},{dropdown:d(()=>[n(U,null,{default:d(()=>[n(Nt,{permission:"reports/view"},{default:d(()=>[n(Q,{command:"show_order_stats"},{default:d(()=>[a.value?(r(),h(H,{key:1},[n(J,{name:"EyeOff"}),R(" "+f(A(u)("Hide Order Stats")),1)],64)):(r(),h(H,{key:0},[n(J,{name:"Eye"}),R(" "+f(A(u)("Show Order Stats")),1)],64))]),_:1}),A(t).data.showDeleteBulkAction?x("",!0):(r(),$(Q,{key:0,command:"show_delete_bulk_action"},{default:d(()=>[n(J,{name:"Eye"}),R(" "+f(A(u)("Show Bulk Actions")),1)]),_:1})),A(t).data.showDeleteBulkAction?(r(),$(Q,{key:1,command:"hide_delete_bulk_action"},{default:d(()=>[n(J,{name:"EyeOff"}),R(" "+f(A(u)("Hide Bulk Actions")),1)]),_:1})):x("",!0)]),_:1}),n(Nt,{permission:"orders/manage"},{default:d(()=>[n(Q,{command:"delete_test_orders",disabled:s.value,class:"item-destructive"},{default:d(()=>[n(J,{name:"Delete"}),R(" "+f(s.value?A(u)("Deleting Test Orders..."):A(u)("Delete Test Orders")),1)]),_:1},8,["disabled"])]),_:1})]),_:1})]),default:d(()=>[n(S,null,{default:d(()=>[R(f(A(u)("More actions"))+" ",1),n(E,null,{default:d(()=>[n(A(ei))]),_:1})]),_:1})]),_:1})]),_:1}),n(Nt,{permission:"orders/create"},{default:d(()=>[n(S,{tag:"router-link",type:"primary",to:{name:"add_order"}},{default:d(()=>[R(f(A(u)("Create Order")),1)]),_:1})]),_:1})]),_:1},8,["title"]),n(O,{modelValue:i.value,"onUpdate:modelValue":M[0]||(M[0]=L=>i.value=L),title:A(u)("Delete Test Orders"),"append-to-body":!0,"close-on-click-modal":!1,"show-close":!0,"close-on-press-escape":!0,onClose:b,class:"fct-delete-test-orders-modal"},{footer:d(()=>[s.value?x("",!0):(r(),h("div",E_,[n(S,{type:"primary",onClick:b},{default:d(()=>[R(f(A(u)("Done")),1)]),_:1})]))]),default:d(()=>[o("div",u_,[o("div",c_,f(_.value),1),o("div",A_,[o("div",p_,f(s.value?A(u)("You can close this — deletion will continue in the background"):A(u)("Test order deletion completed.")),1),g.value?(r(),$(D,{key:0,type:"success",class:ie(["fct-delete-test-orders-status",{"is-complete":!s.value}])},{default:d(()=>[R(f(g.value),1)]),_:1},8,["class"])):x("",!0)]),s.value?(r(),h("div",f_,[o("div",m_,[o("div",h_,[(r(),h(H,null,ae(8,L=>o("div",{key:L,class:"bar-block",id:`bar-block-${L+1}`},null,8,__)),64))]),R(" "+f(A(u)("Deleting...")),1)]),o("span",v_,f(m.value)+"% ",1)])):x("",!0),n(va,{visible:s.value,fade:"",duration:300},{default:d(()=>[n(I,{percentage:m.value,"stroke-width":6,striped:"","striped-flow":"","show-text":!1,status:s.value?void 0:"success",class:"fct-delete-test-orders-progress"},null,8,["percentage","status"])]),_:1},8,["visible"]),o("div",g_,[o("div",y_,[M[1]||(M[1]=o("span",{class:"fct-delete-test-orders-stat-icon"},[o("svg",{width:"24",height:"24",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[o("path",{opacity:"0.4",d:"M13.66 1.1333C13.3741 1.09487 13.0575 1.0716 12.7083 1.05762V1.66146V1.70461C12.7083 2.25782 12.7084 2.73471 12.6567 3.11653C12.6017 3.52616 12.4775 3.91865 12.1592 4.23714C11.8409 4.55563 11.4483 4.68009 11.0383 4.73518C10.6566 4.78653 10.18 4.78649 9.62663 4.78646H9.58329H8.74996H8.70662C8.15333 4.78649 7.67666 4.78653 7.29499 4.73518C6.88499 4.68009 6.49249 4.55563 6.17416 4.23714C5.85583 3.91865 5.73166 3.52616 5.67666 3.11653C5.62333 2.72482 5.625 2.23304 5.625 1.66146V1.05762C5.27583 1.0716 4.95917 1.09487 4.67333 1.1333C3.92333 1.23414 3.2925 1.45038 2.79083 1.95198C2.28917 2.45358 2.07249 3.08503 1.97166 3.83513C1.87499 4.55588 1.875 5.47186 1.875 6.60774V13.3818C1.875 14.5178 1.87499 15.4337 1.97166 16.1544C2.07249 16.9046 2.28917 17.536 2.79083 18.0376C3.2925 18.5392 3.92333 18.7554 4.67333 18.8563C5.39417 18.9532 6.31 18.9532 7.44667 18.9531H10.8866C11.0791 18.9532 11.2641 18.9519 11.4433 18.9515C11.2358 18.5378 11.0666 18.3449 10.9875 18.2671C10.18 18.0578 9.58329 17.3269 9.58329 16.4539C9.58329 15.4184 10.4225 14.5789 11.4583 14.5789C11.6941 14.5789 11.9733 14.6359 12.1158 14.6766C12.31 14.7322 12.52 14.8165 12.7383 14.9346C13.1533 14.298 13.6958 13.5629 14.3133 12.9367C14.8741 12.3678 15.5933 11.7846 16.4583 11.432V6.60774C16.4583 5.47186 16.4583 4.55588 16.3616 3.83513C16.2608 3.08503 16.0441 2.45358 15.5425 1.95198C15.0408 1.45038 14.41 1.23414 13.66 1.1333Z",fill:"#017EF3"}),o("path",{d:"M17.012 12.3361C17.4462 12.1825 17.922 12.4094 18.0753 12.8431C18.2295 13.2768 18.002 13.753 17.5687 13.9068C17.1453 14.0568 16.6945 14.3786 16.2395 14.8393C15.7912 15.2944 15.3778 15.845 15.022 16.3897C14.6687 16.9317 14.3828 17.4519 14.1853 17.8374C14.087 18.0296 13.9387 18.3456 13.8879 18.4534C13.7587 18.7501 13.4695 18.9462 13.1453 18.9548C12.822 18.9633 12.5228 18.7836 12.3778 18.4942C12.0112 17.7597 11.6821 17.4672 11.5154 17.3564C11.4421 17.3074 11.3937 17.2895 11.3762 17.284C10.9537 17.2435 10.6237 16.8878 10.6237 16.4548C10.6237 15.9945 10.997 15.6214 11.457 15.6214C11.5645 15.6214 11.7428 15.6547 11.8287 15.6792C12.002 15.7287 12.2112 15.8173 12.4403 15.9698C12.6295 16.0958 12.8245 16.2633 13.0228 16.48C13.1945 16.1726 13.3971 15.8302 13.6271 15.4782C14.0187 14.8772 14.5003 14.2296 15.0528 13.6691C15.6003 13.1143 16.2595 12.6028 17.012 12.3361ZM9.16532 11.8714C9.51032 11.8714 9.79032 12.1513 9.79032 12.4964C9.79032 12.8416 9.51032 13.1214 9.16532 13.1214H5.83203C5.48703 13.1214 5.20703 12.8416 5.20703 12.4964C5.20703 12.1513 5.48703 11.8714 5.83203 11.8714H9.16532ZM12.4987 8.53809C12.8437 8.53809 13.1237 8.81793 13.1237 9.16309C13.1237 9.50826 12.8437 9.78809 12.4987 9.78809H5.83203C5.48703 9.78809 5.20703 9.50826 5.20703 9.16309C5.20703 8.81793 5.48703 8.53809 5.83203 8.53809H12.4987ZM11.457 1.0389V1.66309C11.457 2.26994 11.4562 2.66228 11.417 2.95134C11.3803 3.22242 11.3212 3.3074 11.2737 3.35498C11.2262 3.40256 11.1412 3.46176 10.8704 3.49821C10.5812 3.53706 10.1887 3.53809 9.58199 3.53809H8.74866C8.14203 3.53809 7.74952 3.53706 7.46036 3.49821C7.18952 3.46176 7.10453 3.40256 7.05703 3.35498C7.00953 3.3074 6.95036 3.22242 6.9137 2.95134C6.87453 2.66228 6.8737 2.26994 6.8737 1.66309V1.0389C7.05786 1.03839 7.24786 1.03808 7.44536 1.03809H10.8853C11.0828 1.03808 11.2728 1.03839 11.457 1.0389Z",fill:"#017EF3"})])],-1)),o("span",b_,f(A(u)("Processed")),1),o("span",w_,f(c.value.processed)+" / "+f(c.value.total),1)]),o("div",C_,[M[2]||(M[2]=o("span",{class:"fct-delete-test-orders-stat-icon"},[o("svg",{width:"24",height:"24",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[o("path",{opacity:"0.4",d:"M16.9433 13.0463C16.88 14.0913 16.8292 14.9197 16.725 15.5813C16.6183 16.2605 16.4475 16.8263 16.1067 17.3205C15.7942 17.773 15.3917 18.1547 14.9258 18.4413C14.4158 18.7555 13.8467 18.8922 13.1692 18.958H8.06417C7.38667 18.8922 6.81667 18.7547 6.30667 18.4405C5.84 18.153 5.4375 17.7705 5.125 17.3172C4.78417 16.8222 4.61417 16.2563 4.50833 15.5763C4.405 14.913 4.355 14.083 4.2925 13.0372L3.75 3.95801H17.5L16.9433 13.0463Z",fill:"#189877"}),o("path",{d:"M11.7488 1.06879C12.2196 1.11046 12.6621 1.25462 13.043 1.53796C13.3238 1.74712 13.5188 2.00379 13.6855 2.28212C13.8405 2.53962 13.9963 2.86046 14.173 3.22462L14.528 3.95879H18.1263C18.5863 3.95879 18.9596 4.33129 18.9596 4.79212C18.9596 5.25212 18.5863 5.62546 18.1263 5.62546H3.1263C2.6663 5.62546 2.29297 5.25212 2.29297 4.79212C2.29297 4.33129 2.6663 3.95879 3.1263 3.95879H6.8013L7.09797 3.30796C7.26964 2.93046 7.4213 2.59796 7.5738 2.33129C7.73797 2.04296 7.93214 1.77629 8.21714 1.55796C8.6013 1.26296 9.05297 1.11379 9.53464 1.06962C9.86213 1.03962 10.193 1.04046 10.5221 1.04129C10.5571 1.04129 10.5913 1.04212 10.6263 1.04212C10.6605 1.04212 10.6955 1.04212 10.7288 1.04212C11.1138 1.04212 11.4605 1.04296 11.7488 1.06879ZM8.63297 3.95879H12.6763C12.4871 3.56879 12.3663 3.32212 12.2571 3.13962C12.0963 2.87296 11.9046 2.75546 11.6005 2.72879C11.3846 2.70962 11.103 2.70879 10.6555 2.70879C10.1963 2.70879 9.90714 2.70962 9.68547 2.72962C9.3738 2.75796 9.17964 2.87962 9.0213 3.15712C8.91714 3.33879 8.80464 3.58212 8.63297 3.95879Z",fill:"#189877"})])],-1)),o("span",B_,f(A(u)("Deleted")),1),o("span",k_,f(c.value.deleted),1)]),o("div",x_,[M[3]||(M[3]=o("span",{class:"fct-delete-test-orders-stat-icon"},[o("svg",{width:"24",height:"24",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[o("path",{opacity:"0.4",d:"M10.0013 1.04004C14.9488 1.04004 18.9596 5.05082 18.9596 9.99833C18.9596 14.9459 14.9488 18.9567 10.0013 18.9567C5.0538 18.9567 1.04297 14.9459 1.04297 9.99833C1.04297 9.54867 1.40778 9.18392 1.85677 9.18375C2.30677 9.18375 2.6722 9.54858 2.6722 9.99833C2.6722 14.0463 5.95297 17.3282 10.0013 17.3282C14.0496 17.3282 17.3304 14.0463 17.3304 9.99833C17.3304 5.95037 14.0496 2.66846 10.0013 2.66846C9.55138 2.66846 9.18764 2.30434 9.18747 1.85466C9.18747 1.40488 9.5513 1.04004 10.0013 1.04004ZM2.80566 4.66634C3.08066 4.35891 3.55043 4.30436 3.89209 4.55241C4.25514 4.81714 4.33519 5.32656 4.07031 5.69011L3.90674 5.92448C3.53507 6.47876 3.23784 7.08712 3.02784 7.73356C2.88857 8.16094 2.42904 8.39483 2.00163 8.25602C1.57424 8.11701 1.33924 7.65747 1.47835 7.22982C1.77169 6.32508 2.20608 5.48362 2.75358 4.73145L2.80566 4.66634ZM7.3125 1.45345C7.71574 1.36659 8.12817 1.59791 8.25814 1.9987C8.39722 2.42644 8.16233 2.88598 7.73486 3.02491L7.46061 3.12011C6.82564 3.35476 6.23137 3.67519 5.69222 4.06738L5.62224 4.11214C5.26557 4.32003 4.80286 4.22905 4.55453 3.88835C4.29044 3.52472 4.37034 3.01452 4.73356 2.74984L5.02084 2.55046C5.69734 2.09692 6.44048 1.7332 7.23194 1.47624L7.3125 1.45345Z",fill:"#F04438"}),o("path",{d:"M11.9754 6.85201C12.3029 6.58506 12.7854 6.6039 13.0904 6.90897C13.3954 7.21407 13.4145 7.69657 13.147 8.02388L13.0904 8.08736L11.1787 9.99808L13.0895 11.9089L13.147 11.9724C13.4137 12.2997 13.3945 12.7823 13.0895 13.0873C12.7845 13.3923 12.302 13.4113 11.9745 13.1442L11.9112 13.0873L10.0012 11.1765L8.09122 13.0873C7.76538 13.4127 7.23789 13.4127 6.91289 13.0873C6.58706 12.7619 6.58706 12.2344 6.91289 11.9089L8.82288 9.99808L6.91206 8.08736L6.85456 8.02388C6.58789 7.69657 6.60706 7.21407 6.91206 6.90897C7.21706 6.6039 7.69955 6.58506 8.02705 6.85201L8.09039 6.90897L10.0012 8.81975L11.912 6.90897L11.9754 6.85201Z",fill:"#F04438"})])],-1)),o("span",S_,f(A(u)("Failed")),1),o("span",F_,f(c.value.failed),1)])]),p.value&&!s.value?(r(),h("p",$_,f(p.value),1)):x("",!0)])]),_:1},8,["modelValue","title"]),n(Nt,{permission:"reports/view"},{default:d(()=>[a.value?(r(),$(qh,{key:0})):x("",!0)]),_:1}),n(Nt,{permission:"orders/view"},{default:d(()=>[o("div",U_,[n($s,{table:A(t),classicTabStyle:!0,hasMobileSlot:!0},{mobile:d(()=>[A(t).isLoading()?(r(),$(r_,{key:0})):x("",!0),A(t).isLoading()?x("",!0):(r(),$(Zr,{key:1,table:A(t),orders:A(t).getTableData(),columns:A(t).data.columns,"empty-text":A(t).emptyMessage},null,8,["table","orders","columns","empty-text"]))]),default:d(()=>[A(t).isLoading()?(r(),$(l_,{key:0,orderTable:A(t),"next-page-count":A(t).nextPageCount},null,8,["orderTable","next-page-count"])):(r(),$(Jr,{key:1,table:A(t),orders:A(t).getTableData(),columns:A(t).data.columns,"empty-text":A(t).emptyMessage},null,8,["table","orders","columns","empty-text"]))]),_:1},8,["table"])])]),_:1})])}}},Q_={class:"setting-wrap"},D_={class:"setting-wrap-inner"},V_={class:"setting-confirmation-content"},T_={class:"custom-wp-editor-wrapper"},M_={class:"setting-save-action"},L_={__name:"InvoicePacking",setup(e){const t=T([]),a=T([]),l=T(!1),s=T(!1);fs().onSave(()=>{_()});const c=T([u("Invoice Template"),u("Packing Slip Template"),u("Delivery Slip Template"),u("Shipping Slip Template"),u("Dispatch Slip Template")]),p=()=>{l.value=!0,ce.get("templates/print-templates").then(g=>{t.value=g.templates,l.value=!1}).catch(g=>{Y.error(g)}).finally(()=>{l.value=!1})},m=()=>{l.value=!0,ce.get("settings/confirmation/shortcode",{}).then(g=>{a.value=g.data}).catch(g=>{Y.error(g)}).finally(()=>{l.value=!1})},_=()=>{s.value=!0,ce.put("templates/print-templates",{templates:t.value}).then(g=>{Y.success(g.message)}).catch(g=>{Y.error(g)}).finally(()=>{s.value=!1})};return Ie(()=>{p(),m()}),(g,y)=>{const v=B("el-skeleton");return B("el-button"),r(),h("div",Q_,[n(Qa,{heading:A(u)("Invoice & Packing"),"show-save-button":!1},null,8,["heading"]),o("div",D_,[n(Da),n(Ja,{class:"mb-5",type:"information",content:A(u)("It will be available soon!")},null,8,["content"]),l.value?(r(!0),h(H,{key:0},ae(c.value,(w,C)=>(r(),$(ke,{key:C},{default:d(()=>[n(Qe,{title:w,border_bottom:""},null,8,["title"]),n(Ce,null,{default:d(()=>[n(v,{animated:"",rows:6})]),_:1})]),_:2},1024))),128)):x("",!0),!l.value&&t.value.length>0?(r(),h(H,{key:1},[(r(!0),h(H,null,ae(t.value,(w,C)=>(r(),$(ke,{key:C},{default:d(()=>[n(Qe,{title:w.title+" (Under Development)",border_bottom:""},null,8,["title"]),n(Ce,null,{default:d(()=>[o("div",V_,[o("div",T_,[n(Wl,{"short-codes":a.value,modelValue:w.content,"onUpdate:modelValue":b=>w.content=b,onUpdate:b=>{w.content=b}},null,8,["short-codes","modelValue","onUpdate:modelValue","onUpdate"])])])]),_:2},1024)]),_:2},1024))),128)),o("div",M_,[x("",!0)])],64)):x("",!0)])])}}},R_={class:"fct-pdf-pro-gate"},O_={class:"fct-pdf-pro-gate-inner"},H_={class:"fct-pdf-pro-heading"},P_={class:"fct-pdf-pro-icon"},N_={class:"fct-pdf-pro-label"},K_={class:"fct-pdf-pro-badge"},G_={class:"fct-pdf-pro-desc"},j_={__name:"PdfTemplateProGate",setup(e){return(t,a)=>{const l=B("el-button");return r(),h("div",R_,[o("div",O_,[o("div",H_,[o("div",P_,[n(J,{name:"Crown"})]),o("span",N_,f(A(u)("PDF Templates")),1),o("span",K_,f(A(u)("Pro")),1)]),o("p",G_,f(A(u)("Customizable PDF receipts, invoices, and e-invoices with ZUGFeRD support.")),1),n(l,{type:"primary",size:"small",tag:"a",href:"https://fluentcart.com/pricing/",target:"_blank"},{default:d(()=>[n(J,{name:"Crown"}),R(" "+f(A(u)("Upgrade to Pro")),1)]),_:1})])])}}},z_=at(j_,[["__scopeId","data-v-83e6a503"]]),q_={__name:"PdfTemplateRoute",setup(e){const t=je.get("app_config.isProActive");return(a,l)=>{const s=B("router-view");return A(t)?(r(),$(s,{key:1})):(r(),$(z_,{key:0}))}}},Y_={class:"setting-wrap"},W_={class:"setting-wrap-inner"},X_={class:"flex gap-5"},J_={class:"flex flex-col items-center justify-center py-12 text-center"},Z_={class:"text-lg font-semibold mb-2 text-system-dark dark:text-gray-200"},ev={class:"text-sm text-system-mid dark:text-gray-400 mb-6 max-w-md"},tv={class:"fct-pdf-template-desc"},av={class:"fct-pdf-template-grid"},lv={class:"fct-pdf-template-preview"},sv={class:"fct-pdf-template-preview-placeholder"},nv={class:"fct-pdf-placeholder-text"},ov={class:"fct-pdf-template-overlay"},iv={class:"fct-pdf-template-footer"},rv={class:"fct-pdf-template-name-row"},dv={class:"fct-pdf-template-title"},uv={key:0,class:"fct-pdf-badge fct-pdf-badge--default"},cv={__name:"PdfTemplateIndex",setup(e){const t=al(),a=T(!0),l=T(!1),s=T({}),i=T(!1),c=T(""),p=T(!1),m=T(""),_=T(null),g=T(!1),y=T(!1),v=je.get("app_config.isProActive"),w=()=>{a.value=!0,ce.get("settings/pdf-templates/receipt").then(E=>{s.value=E.templates||{},l.value=E.has_fluent_pdf||!1,_.value=E.addon_info||null}).catch(E=>{var S;Y.error(((S=E.data)==null?void 0:S.message)||u("Failed to load templates"))}).finally(()=>{a.value=!1})},C=()=>{if(_.value){if(!v&&_.value.repo_link){window.open(_.value.repo_link,"_blank","noopener,noreferrer");return}g.value=!0,ce.post("settings/modules/plugin-addons/install",{plugin_slug:_.value.plugin_slug,source_type:_.value.source_type||"wordpress",source_link:_.value.source_link||"",asset_path:_.value.asset_path||""}).then(E=>{Y.success(E.message||u("Plugin installed successfully")),setTimeout(()=>{window.location.reload()},500)}).catch(E=>{var S;Y.error(((S=E.data)==null?void 0:S.message)||u("Failed to install plugin"))}).finally(()=>{g.value=!1})}},b=()=>{_.value&&(y.value=!0,ce.post("settings/modules/plugin-addons/activate",{plugin_file:_.value.plugin_file}).then(E=>{Y.success(E.message||u("Plugin activated successfully")),setTimeout(()=>{window.location.reload()},500)}).catch(E=>{var S;Y.error(((S=E.data)==null?void 0:S.message)||u("Failed to activate plugin"))}).finally(()=>{y.value=!1}))},k=()=>{c.value="",i.value=!0},F=()=>{if(!c.value.trim()){Y.error(u("Please enter a template name"));return}p.value=!0,ce.post("settings/pdf-templates/create",{title:c.value.trim()}).then(E=>{i.value=!1,Y.success(E.message||u("Template created")),E.slug?t.push({name:"edit-pdf-template",params:{template:E.slug}}):w()}).catch(E=>{var S;Y.error(((S=E.data)==null?void 0:S.message)||u("Failed to create template"))}).finally(()=>{p.value=!1})},M=E=>{m.value=E,ce.delete("settings/pdf-templates/delete/"+E).then(S=>{Y.success(S.message||u("Template deleted")),w()}).catch(S=>{var Q;Y.error(((Q=S.data)==null?void 0:Q.message)||u("Failed to delete template"))}).finally(()=>{m.value=""})};return Ie(()=>{w()}),(E,S)=>{const Q=B("el-button"),U=B("el-skeleton-item"),V=B("el-skeleton"),D=B("el-popconfirm"),I=B("el-input"),O=B("el-form-item"),L=B("el-form"),P=B("el-dialog");return r(),h("div",Y_,[n(Qa,{heading:A(u)("PDF Templates"),"show-save-button":!1},la({_:2},[l.value?{name:"action",fn:d(()=>[n(Q,{type:"primary",size:"small",onClick:k},{default:d(()=>[R(f(A(u)("Add Template")),1)]),_:1})]),key:"0"}:void 0]),1032,["heading"]),o("div",W_,[n(Da),a.value?(r(),$(ke,{key:0},{default:d(()=>[n(Ce,null,{default:d(()=>[n(V,{animated:""},{template:d(()=>[n(U,{variant:"text",class:"w-[300px] mb-4"}),o("div",X_,[n(U,{variant:"rect",style:{width:"220px",height:"280px","border-radius":"8px"}}),n(U,{variant:"rect",style:{width:"220px",height:"280px","border-radius":"8px"}})])]),_:1})]),_:1})]),_:1})):x("",!0),!a.value&&!l.value&&_.value?(r(),$(ke,{key:1},{default:d(()=>[n(Ce,null,{default:d(()=>[o("div",J_,[S[3]||(S[3]=o("svg",{class:"mb-4",width:"48",height:"48",viewBox:"0 0 32 32",fill:"none",stroke:"currentColor","stroke-width":"1.5"},[o("path",{d:"M8 2C6.9 2 6 2.9 6 4v24c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V10l-8-8H8z"}),o("path",{d:"M18 2v8h8"}),o("path",{d:"M12 18h8M12 22h6"})],-1)),o("h3",Z_,f(A(u)("Fluent PDF Required")),1),o("p",ev,f(A(u)("To use PDF receipt templates, you need to install and activate the Fluent PDF plugin.")),1),_.value.is_installed?_.value.is_installed&&!_.value.is_active?(r(),$(Q,{key:1,type:"success",loading:y.value,onClick:b},{default:d(()=>[R(f(A(u)("Activate Plugin")),1)]),_:1},8,["loading"])):x("",!0):(r(),$(Q,{key:0,type:"primary",loading:g.value,onClick:C},{default:d(()=>[R(f(A(v)?A(u)("Install & Activate"):A(u)("Download")),1)]),_:1},8,["loading"]))])]),_:1})]),_:1})):x("",!0),!a.value&&l.value?(r(),$(ke,{key:2},{default:d(()=>[n(Ce,null,{default:d(()=>[o("p",tv,f(A(u)("Customize PDF templates for email attachments. Select which template to attach in each email notification's settings.")),1),o("div",av,[(r(!0),h(H,null,ae(s.value,(G,j)=>(r(),h("div",{key:j,class:"fct-pdf-template-card"},[o("div",lv,[o("div",sv,[S[4]||(S[4]=o("svg",{width:"40",height:"40",viewBox:"0 0 32 32",fill:"none",stroke:"#525866","stroke-width":"1.2"},[o("path",{d:"M8 2C6.9 2 6 2.9 6 4v24c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V10l-8-8H8z"}),o("path",{d:"M18 2v8h8"}),o("path",{d:"M12 18h8M12 22h6"})],-1)),o("span",nv,f(G.title||A(u)("Receipt Template")),1)]),o("div",ov,[n(Q,{type:"primary",size:"small",tag:"router-link",to:{name:"edit-pdf-template",params:{template:j}}},{default:d(()=>[R(f(A(u)("Edit Template")),1)]),_:2},1032,["to"])])]),o("div",iv,[o("div",rv,[o("span",dv,f(G.title||j),1),G.is_default?(r(),h("span",uv,f(A(u)("Built-in")),1)):x("",!0)]),G.is_default?x("",!0):(r(),$(D,{key:0,title:A(u)("Delete this template?"),"confirm-button-text":A(u)("Delete"),"cancel-button-text":A(u)("Cancel"),"confirm-button-type":"danger",onConfirm:z=>M(j)},{reference:d(()=>[n(Q,{type:"danger",size:"small",text:"",loading:m.value===j,class:"fct-pdf-delete-btn"},{default:d(()=>S[5]||(S[5]=[o("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[o("path",{d:"M3 6h18"}),o("path",{d:"M19 6v14a2 2 0 01-2 2H7a2 2 0 01-2-2V6m3 0V4a2 2 0 012-2h4a2 2 0 012 2v2"})],-1)])),_:2,__:[5]},1032,["loading"])]),_:2},1032,["title","confirm-button-text","cancel-button-text","onConfirm"]))])]))),128))])]),_:1})]),_:1})):x("",!0)]),n(P,{modelValue:i.value,"onUpdate:modelValue":S[2]||(S[2]=G=>i.value=G),title:A(u)("Add Custom Template"),width:"420px","close-on-click-modal":!1,"append-to-body":!0},{footer:d(()=>[n(Q,{onClick:S[1]||(S[1]=G=>i.value=!1)},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1}),n(Q,{type:"primary",onClick:F,loading:p.value},{default:d(()=>[R(f(A(u)("Create")),1)]),_:1},8,["loading"])]),default:d(()=>[n(L,{onSubmit:Ne(F,["prevent"]),"label-position":"top"},{default:d(()=>[n(O,{label:A(u)("Template Name")},{default:d(()=>[n(I,{modelValue:c.value,"onUpdate:modelValue":S[0]||(S[0]=G=>c.value=G),placeholder:A(u)("e.g. Custom Invoice"),autofocus:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1})]),_:1},8,["modelValue","title"])])}}},Av={name:"EmailBodySkeleton",props:{showLoadingBadge:{type:Boolean,default:!1}}},pv={class:"fct-email-body-skeleton"},fv={class:"fct-email-body-skeleton__page"},mv={key:0,class:"fct-ebs__badge"},hv={class:"fct-ebs__badge-text"};function _v(e,t,a,l,s,i){return r(),h("div",pv,[o("div",fv,[t[3]||(t[3]=xn('
',9)),a.showLoadingBadge?(r(),h("div",mv,[t[0]||(t[0]=o("span",{class:"fct-ebs__dot"},null,-1)),t[1]||(t[1]=o("span",{class:"fct-ebs__dot"},null,-1)),t[2]||(t[2]=o("span",{class:"fct-ebs__dot"},null,-1)),o("span",hv,f(e.$t("Loading block editor…")),1)])):x("",!0)])])}const or=at(Av,[["render",_v]]),vv={name:"NewEditorFrame",components:{EmailBodySkeleton:or},props:{editorPath:{type:String,default:"/editor"},modelValue:{type:String,default:""},editorParams:{type:Object,default:()=>({})},frameHeight:{type:String,default:"500px"},documentTitle:{type:String,default:""}},emits:["update:modelValue","titleUpdated","contentUpdated","editorFullscreenToggle","featuredMediaUpdated","previewRequest","autosaveState"],data(){return{editorData:{content:""},editorFrame:null,editorOrigin:null,dataSent:!1,isFailing:!1,iframeReady:!1,pendingDataSend:!1,sendRetries:0,editorReadyReceived:!1,editorContentReady:!1,isFullscreen:!1,_timers:[]}},computed:{editorFailed(){return!this.dataSent&&this.isFailing&&!this.editorReadyReceived}},mounted(){this._setTimeout(()=>{this.editorReadyReceived||(this.isFailing=!0)},3e4),this.editorData.content=this.modelValue,this.editorData.title=this.documentTitle,this.createEditorIframe(),window.addEventListener("message",this.handleEditorMessage)},beforeUnmount(){this._timers.forEach(e=>clearTimeout(e)),this._timers=[],window.removeEventListener("message",this.handleEditorMessage),this.isFullscreen&&this.toggleFullScreen(!1),this.editorFrame&&(this.editorFrame.onload=null,this.$refs.iframeContainer.removeChild(this.editorFrame),this.editorFrame=null)},methods:{_setTimeout(e,t){const a=setTimeout(e,t);return this._timers.push(a),a},createEditorIframe(){this.editorFrame=document.createElement("iframe");let e=this.appVars.fct_editor_frame;if(this.editorParams){const t=new URLSearchParams(this.editorParams);e+="&"+t.toString()}try{this.editorOrigin=new URL(e,window.location.origin).origin}catch{this.editorOrigin=window.location.origin}this.editorFrame.src=e,this.editorFrame.style.width="100%",this.editorFrame.style.height=this.frameHeight,this.editorFrame.onload=()=>{this.iframeReady=!0,this.pendingDataSend&&(this.pendingDataSend=!1,this._setTimeout(()=>{this.sendDataToEditor()},1e3)),this._setTimeout(()=>{!this.editorReadyReceived&&this.iframeReady&&this.sendDataToEditor()},1e4)},this.$refs.iframeContainer.appendChild(this.editorFrame)},sendDataToEditor(){if(!this.iframeReady||!this.editorFrame||!this.editorFrame.contentWindow){this.pendingDataSend=!0;return}try{const e=JSON.parse(JSON.stringify(this.editorData));this.editorFrame.contentWindow.postMessage({action:"UPDATE_EDITOR",data:e},this.editorOrigin),this.dataSent=!0,this.sendRetries=0,this._setTimeout(()=>{this.editorContentReady||(this.editorContentReady=!0)},5e3)}catch{this.sendRetries++,this.sendRetries<=3&&this._setTimeout(()=>{this.sendDataToEditor()},500)}},handleEditorMessage(e){if(e&&e.origin&&this.editorOrigin&&e.origin!==this.editorOrigin)return;const{action:t,content:a}=e.data;t==="EDITOR_UPDATED"?this.dataSent&&(this.editorContentReady||this._setTimeout(()=>{this.editorContentReady=!0},1500),this.editorData.content=a,this.$emit("update:modelValue",a),this.$emit("contentUpdated",a)):t==="TITLE_UPDATED"?(this.editorData.title=a,this.$emit("titleUpdated",a)):t==="FEATURED_MEDIA_UPDATED"?this.$emit("featuredMediaUpdated",a):t==="EDITOR_FULLSCREEN_TOGGLE"?this.toggleFullScreen(a):t==="EMAIL_PREVIEW_REQUEST"?this.$emit("previewRequest"):t==="AUTOSAVE_STATE"?this.$emit("autosaveState",a):t==="EDITOR_READY"&&(this.editorReadyReceived=!0,this.isFailing=!1,this.sendDataToEditor())},forceAutosave(){this.editorFrame&&this.editorFrame.contentWindow&&this.editorFrame.contentWindow.postMessage({action:"FORCE_SAVE"},this.editorOrigin)},toggleFullScreen(e){this.isFullscreen=e;const t=this.editorFrame;if(e){if(document.documentElement.classList.add("fct-editor-fullscreen"),document.body.style.overflow="hidden",t){t.classList.add("fct-fullscreen-iframe"),this._fullscreenAncestors=[];let a=t.parentElement;for(;a&&a!==document.documentElement;)a.classList.add("fct-fullscreen-ancestor"),this._fullscreenAncestors.push(a),a=a.parentElement}}else document.documentElement.classList.remove("fct-editor-fullscreen"),document.body.style.overflow="",t&&t.classList.remove("fct-fullscreen-iframe"),this._fullscreenAncestors&&(this._fullscreenAncestors.forEach(function(a){a.classList.remove("fct-fullscreen-ancestor")}),this._fullscreenAncestors=null);this.$emit("editorFullscreenToggle",e)}}},gv={style:{width:"100%"}},yv={key:0,style:{display:"flex","justify-content":"center","align-items":"center","column-gap":"10px"}},bv={class:"editor-container",style:{position:"relative"}},wv={key:0,class:"fct-editor-skeleton"},Cv={ref:"iframeContainer",class:"iframe-container"};function Bv(e,t,a,l,s,i){const c=B("EmailBodySkeleton");return r(),h("div",gv,[i.editorFailed?(r(),h("div",yv,[o("p",null,f(e.$t("Problem with loading the editor. Please reload the page.")),1)])):x("",!0),o("div",bv,[n(Gl,{name:"fct-skeleton-fade"},{default:d(()=>[s.editorContentReady?x("",!0):(r(),h("div",wv,[t[0]||(t[0]=o("div",{class:"fct-skel-menubar"},[o("div",{class:"fct-skel fct-skel-logo"}),o("div",{class:"fct-skel-slash"}),o("div",{class:"fct-skel fct-skel-name"}),o("div",{class:"fct-skel-spacer"}),o("div",{class:"fct-skel fct-skel-btn-wide"}),o("div",{class:"fct-skel-dot"}),o("div",{class:"fct-skel-dot"})],-1)),t[1]||(t[1]=o("div",{class:"fct-skel-toolbar"},[o("div",{class:"fct-skel fct-skel-tb-btn"}),o("div",{class:"fct-skel fct-skel-tb-btn"}),o("div",{class:"fct-skel fct-skel-tb-btn"}),o("div",{class:"fct-skel-sep"}),o("div",{class:"fct-skel fct-skel-tb-btn"}),o("div",{class:"fct-skel fct-skel-tb-btn"}),o("div",{class:"fct-skel-sep"}),o("div",{class:"fct-skel fct-skel-tb-wide"}),o("div",{class:"fct-skel fct-skel-tb-wide"}),o("div",{class:"fct-skel-sep"}),o("div",{class:"fct-skel fct-skel-tb-btn"})],-1)),n(c,{"show-loading-badge":!0})]))]),_:1}),o("div",Cv,null,512)])])}const Yc=at(vv,[["render",Bv],["__scopeId","data-v-e5dae537"]]),kv={class:"setting-wrap fct-pdf-template-edit-wrapper"},xv={class:"capitalize"},Sv={class:"setting-wrap-inner"},Fv={class:"bg-white rounded dark:bg-dark-700 p-6 mb-4"},$v={class:"setting-save-action"},Ev={__name:"PdfTemplateEdit",props:{template:{type:String,required:!0}},setup(e){const t=e,a=al(),l=T(!0),s=T(!1),i=T(!1),c=T(!1),p=T(null),m=T(null),_=T(""),g=S=>{const Q=atob(S),U=new Array(Q.length);for(let V=0;V{const S=await ce.post("settings/pdf-templates/download",{template_id:t.template});if(!(S!=null&&S.pdf_base64))throw new Error(u("Failed to generate PDF"));return S},v=()=>{l.value=!0,ce.get("settings/pdf-templates/receipt/"+t.template).then(S=>{var U,V,D;p.value=S.template;const Q=(D=(V=(U=S.template)==null?void 0:U.pdf_settings)==null?void 0:V[0])==null?void 0:D.pdf_structure;Q&&(_.value=Q.content||"")}).catch(S=>{var Q;Y.error(((Q=S.data)==null?void 0:Q.message)||u("Failed to load template"))}).finally(()=>{l.value=!1})},w=async({showSuccess:S=!0}={})=>{var U,V,D,I;s.value=!0,m.value&&await m.value.forceAutosave();const Q=((D=(V=(U=p.value)==null?void 0:U.pdf_settings)==null?void 0:V[0])==null?void 0:D.pdf_structure)||{};Q.content=_.value;try{const O=await ce.post("settings/pdf-templates/receipt/"+t.template,{pdf_structure:Q});return S&&Y.success(O.message||u("Template saved")),!0}catch(O){return Y.error(((I=O.data)==null?void 0:I.message)||u("Failed to save template")),!1}finally{s.value=!1}},C=()=>{i.value=!0,y().then(S=>{const Q=g(S.pdf_base64),U=URL.createObjectURL(Q),V=document.createElement("a");V.href=U,V.download=S.filename||"receipt-test.pdf",document.body.appendChild(V),V.click(),document.body.removeChild(V),URL.revokeObjectURL(U),Y.success(u("PDF downloaded"))}).catch(S=>{var Q;Y.error(((Q=S.data)==null?void 0:Q.message)||S.message||u("Failed to generate PDF"))}).finally(()=>{i.value=!1})},b=async()=>{var S;c.value=!0;try{const Q=await y(),U=g(Q.pdf_base64),V=URL.createObjectURL(U),D=document.createElement("a");D.href=V,D.target="_blank",D.rel="noopener",document.body.appendChild(D),D.click(),document.body.removeChild(D),setTimeout(()=>{URL.revokeObjectURL(V)},1e4)}catch(Q){Y.error(((S=Q.data)==null?void 0:S.message)||Q.message||u("Failed to generate PDF"))}finally{c.value=!1}},k=async()=>{s.value||i.value||c.value||!await w({showSuccess:!1})||await b()},F=()=>p.value&&!p.value.is_default,M=()=>{ce.delete("settings/pdf-templates/delete/"+t.template).then(S=>{Y.success(S.message||u("Template deleted")),a.push({path:"/settings/pdf-template"})}).catch(S=>{var Q;Y.error(((Q=S.data)==null?void 0:Q.message)||u("Failed to delete template"))})},E=()=>{ce.get("settings/pdf-templates/factory-default").then(S=>{var V,D,I;const Q=(V=S.templates)==null?void 0:V[t.template];if(!Q)return;const U=((I=(D=Q.pdf_settings)==null?void 0:D[0])==null?void 0:I.pdf_structure)||{};return ce.post("settings/pdf-templates/receipt/"+t.template,{pdf_structure:U}).then(()=>{Y.success(u("Reverted to default template")),v()})}).catch(S=>{var Q;Y.error(((Q=S.data)==null?void 0:Q.message)||u("Failed to revert template"))})};return Ie(()=>{v()}),(S,Q)=>{const U=B("el-breadcrumb-item"),V=B("el-breadcrumb"),D=B("el-icon"),I=B("el-button"),O=B("el-dropdown-item"),L=B("el-dropdown-menu"),P=B("el-dropdown"),G=B("el-skeleton-item"),j=B("el-skeleton");return r(),h("div",kv,[n(Qa,{loading:s.value,"loading-text":A(u)("Saving"),"save-button-text":A(u)("Save Template"),onOnSave:w},{heading:d(()=>[n(V,{class:"mb-0","separator-icon":A(dl)},{default:d(()=>[n(U,{to:{path:"/settings/pdf-template"}},{default:d(()=>[R(f(A(u)("PDF Templates")),1)]),_:1}),n(U,null,{default:d(()=>{var z;return[o("span",xv,f(((z=p.value)==null?void 0:z.title)||A(u)("Edit Template")),1)]}),_:1})]),_:1},8,["separator-icon"])]),action:d(()=>[n(P,{trigger:"click",style:{"margin-left":"12px",display:"inline-flex","align-items":"center"},"popper-class":"fct-dropdown"},{dropdown:d(()=>[n(L,null,{default:d(()=>[n(O,{onClick:C,disabled:i.value},{default:d(()=>[R(f(i.value?A(u)("Downloading..."):A(u)("Test Download")),1)]),_:1},8,["disabled"]),n(O,{onClick:E},{default:d(()=>[R(f(A(u)("Revert to Default")),1)]),_:1}),F()?(r(),$(O,{key:0,divided:"",onClick:M,style:{color:"#F56C6C"}},{default:d(()=>[R(f(A(u)("Delete Template")),1)]),_:1})):x("",!0)]),_:1})]),default:d(()=>[n(I,{size:"small",text:"",style:{height:"auto",padding:"4px"}},{default:d(()=>[n(D,{style:{transform:"rotate(90deg)","font-size":"16px"}},{default:d(()=>[n(A(Tf))]),_:1})]),_:1})]),_:1})]),_:1},8,["loading","loading-text","save-button-text"]),o("div",Sv,[n(Da),n(j,{loading:l.value,class:"bg-white rounded p-6 dark:bg-dark-700",animated:""},{template:d(()=>[n(G,{variant:"h3",class:"w-[200px] mb-5"}),n(G,{variant:"rect",style:{width:"100%",height:"500px"}})]),_:1},8,["loading"]),!l.value&&p.value?(r(),h(H,{key:0},[o("div",Fv,[n(Yc,{ref_key:"editorFrameRef",ref:m,editorParams:{block_type:"pdf_template",campaign_title:p.value.title,bid:t.template},frameHeight:"calc(100vh - 200px)",documentTitle:p.value.title||A(u)("Receipt Template"),onPreviewRequest:k,modelValue:_.value,"onUpdate:modelValue":Q[0]||(Q[0]=z=>_.value=z)},null,8,["editorParams","documentTitle","modelValue"])]),o("div",$v,[n(I,{onClick:w,type:"primary",disabled:s.value,loading:s.value},{default:d(()=>[R(f(A(u)("Save Template")),1)]),_:1},8,["disabled","loading"]),n(I,{onClick:C,disabled:i.value,loading:i.value},{default:d(()=>[R(f(A(u)("Test Download")),1)]),_:1},8,["disabled","loading"])])],64)):x("",!0)])])}}},Uv={class:"fluent-cart-admin-validation-error-wrapper `${fieldKey}`"},fl=Object.assign({name:"ValidationError"},{__name:"ValidationError",props:{validationErrors:Object,fieldKey:{type:String,default:""}},setup(e){return(t,a)=>(r(),h("div",Uv,[(r(!0),h(H,null,ae(e.validationErrors,(l,s)=>(r(),h("span",{class:"fluent-cart-admin-validation-error",key:l.toLowerCase().replace(/\s/g,"")},f(l),1))),128))]))}}),_o={__name:"Alert",props:{type:String,title:String,description:String,closable:Boolean,showIcon:Boolean},setup(e){return(t,a)=>{const l=B("el-alert");return r(),$(l,{title:e.title,type:e.type,description:e.description,"show-icon":e.showIcon,closable:e.closable,role:"alert"},{default:d(()=>[ka(t.$slots,"default")]),_:3},8,["title","type","description","show-icon","closable"])}}},Iv={class:"setting-wrap"},Qv={class:"setting-wrap-inner"},Dv={class:"grid gap-3 mb-6"},Vv={class:"grid gap-3 mb-6"},Tv={class:"grid gap-3 mb-6"},Mv={class:"grid gap-3"},Lv={key:0,class:"mb-4 p-4 rounded-lg border border-yellow-300 bg-yellow-50 text-yellow-800 text-sm"},Rv=["href"],Ov={class:"form-note"},Hv={class:"form-note"},Pv=["href"],Nv={class:"mb-4"},Kv={class:"mb-4"},Gv={class:"form-note"},jv={class:"form-note"},zv={class:"form-note"},qv={class:"form-note"},Yv={class:"setting-save-action"},Wv={__name:"PdfTemplateSettings",setup(e){const t=T(!0),a=T(!1),l=T({}),s=T(!0),i=T(""),c=T({zugferd_enabled:"0",zugferd_profile:"en16931",seller_legal_registration_scheme:"",seller_contact_name:"",seller_contact_email:"",seller_contact_phone:"",seller_bank_iban:"",seller_bank_bic:"",seller_bank_account_name:"",seller_electronic_address:""}),p=[{label:"EN 16931 (ZUGFeRD)",value:"en16931"}],m=[{value:"",label:u("None")},{value:"0002",label:"0002 — SIRENE (France)"},{value:"0009",label:"0009 — SIRET (France)"},{value:"0021",label:"0021 — SWIFT"},{value:"0060",label:"0060 — DUNS"},{value:"0088",label:"0088 — EAN / GS1 GLN"},{value:"0096",label:"0096 — Danish P number"},{value:"0130",label:"0130 — EU Directorates"},{value:"0183",label:"0183 — Swiss UID"},{value:"0184",label:"0184 — Danish CVR"},{value:"0190",label:"0190 — Dutch OIN"},{value:"0191",label:"0191 — Dutch KvK"},{value:"0192",label:"0192 — Dutch Organisation ID"},{value:"0195",label:"0195 — Singapore UEN"},{value:"0196",label:"0196 — Icelandic kennitala"},{value:"0198",label:"0198 — Danish SE"},{value:"0199",label:"0199 — LEI"},{value:"0200",label:"0200 — Lithuanian legal entity"},{value:"0204",label:"0204 — German Leitweg-ID"},{value:"0208",label:"0208 — Belgian CBE / KBO"},{value:"0210",label:"0210 — Italian Codice Fiscale"},{value:"0211",label:"0211 — Italian Partita IVA"},{value:"0213",label:"0213 — Finnish OVT"}];fs().onSave(()=>{y()});const g=()=>{t.value=!0,ce.get("settings/pdf-templates/seller-details").then(v=>{v.seller_details&&Object.keys(c.value).forEach(w=>{v.seller_details[w]!==void 0&&(c.value[w]=v.seller_details[w])}),s.value=v.store_country_set!==!1,i.value=v.store_settings_url||""}).catch(v=>{var w;Y.error(((w=v.data)==null?void 0:w.message)||u("Failed to load settings"))}).finally(()=>{t.value=!1})},y=()=>{a.value=!0,l.value={},ce.post("settings/pdf-templates/seller-details",c.value).then(v=>{Y.success(v.message||u("Settings saved"))}).catch(v=>{var w,C;v.status_code===422&&((w=v.data)!=null&&w.data)&&(l.value=v.data.data),Y.error(((C=v.data)==null?void 0:C.message)||u("Failed to save settings"))}).finally(()=>{a.value=!1})};return Ie(()=>{g()}),(v,w)=>{const C=B("el-skeleton-item"),b=B("el-skeleton"),k=B("el-switch"),F=B("el-option"),M=B("el-select"),E=B("el-form-item"),S=B("el-col"),Q=B("el-row"),U=B("el-input"),V=B("el-divider"),D=B("el-button");return r(),h("div",Iv,[n(Qa,{heading:A(u)("E-Invoice Settings"),loading:a.value,onOnSave:y},null,8,["heading","loading"]),o("div",Qv,[n(Da),t.value?(r(),$(ke,{key:0},{default:d(()=>[n(Ce,null,{default:d(()=>[n(b,{animated:""},{template:d(()=>[o("div",Dv,[n(C,{variant:"p",class:"w-[20%]"}),n(C,{variant:"p"})]),o("div",Vv,[n(C,{variant:"p",class:"w-[20%]"}),n(C,{variant:"p"})]),o("div",Tv,[n(C,{variant:"p",class:"w-[20%]"}),n(C,{variant:"p"})]),o("div",Mv,[n(C,{variant:"p",class:"w-[20%]"}),n(C,{variant:"p"})])]),_:1})]),_:1})]),_:1})):x("",!0),t.value?x("",!0):(r(),h(H,{key:1},[c.value.zugferd_enabled==="1"&&!s.value?(r(),h("div",Lv,[o("strong",null,f(A(u)("Store country is not configured.")),1),R(" "+f(A(u)("ZUGFeRD XML cannot be embedded in PDFs until your store country is set."))+" ",1),i.value?(r(),h("a",{key:0,href:i.value,class:"underline ml-1"},f(A(u)("Go to Store Settings")),9,Rv)):x("",!0)])):x("",!0),n(ke,null,{default:d(()=>[n(Qe,{title:A(u)("E-Invoice Configuration"),text:A(u)("Configure ZUGFeRD / Factur-X e-invoice encoding and seller details for your PDFs."),border_bottom:""},{action:d(()=>[n(k,{modelValue:c.value.zugferd_enabled,"onUpdate:modelValue":w[0]||(w[0]=I=>c.value.zugferd_enabled=I),"active-value":"1","inactive-value":"0"},null,8,["modelValue"])]),_:1},8,["title","text"]),n(Ce,null,{default:d(()=>[n(Q,{gutter:15},{default:d(()=>[n(S,{lg:12},{default:d(()=>[n(E,{label:A(u)("ZUGFeRD Profile"),"label-position":"top"},{default:d(()=>[n(M,{modelValue:c.value.zugferd_profile,"onUpdate:modelValue":w[1]||(w[1]=I=>c.value.zugferd_profile=I)},{default:d(()=>[(r(),h(H,null,ae(p,I=>n(F,{key:I.value,label:I.label,value:I.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),o("div",Ov,[o("p",null,f(A(u)("Select the e-invoice formatter used when generating the embedded XML.")),1)])]),_:1},8,["label"])]),_:1}),n(S,{lg:12},{default:d(()=>[n(E,{label:A(u)("Legal Registration Scheme"),"label-position":"top"},{default:d(()=>[n(M,{modelValue:c.value.seller_legal_registration_scheme,"onUpdate:modelValue":w[2]||(w[2]=I=>c.value.seller_legal_registration_scheme=I),placeholder:A(u)("Select scheme"),clearable:"",filterable:""},{default:d(()=>[(r(),h(H,null,ae(m,I=>n(F,{key:I.value,label:I.label,value:I.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","placeholder"]),o("div",Hv,[o("p",null,f(A(u)("ISO 6523 ICD code for the legal registration identifier")),1)]),n(fl,{"validation-errors":l.value.seller_legal_registration_scheme||{},"field-key":"seller_legal_registration_scheme"},null,8,["validation-errors"])]),_:1},8,["label"])]),_:1})]),_:1}),n(_o,{type:"info",closable:!1,"show-icon":"",class:"mb-4"},{default:d(()=>[R(f(A(u)("Company Name, VAT ID, Tax ID, and Legal Registration ID are managed in"))+" ",1),i.value?(r(),h("a",{key:0,href:i.value,target:"_blank",class:""},f(A(u)("Store Settings → Business Details")),9,Pv)):x("",!0)]),_:1}),o("h4",Nv,f(A(u)("Seller Contact")),1),n(Q,{gutter:15},{default:d(()=>[n(S,{lg:12},{default:d(()=>[n(E,{label:A(u)("Contact Name"),"label-position":"top"},{default:d(()=>[n(U,{modelValue:c.value.seller_contact_name,"onUpdate:modelValue":w[3]||(w[3]=I=>c.value.seller_contact_name=I)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1}),n(S,{lg:12},{default:d(()=>[n(E,{label:A(u)("Contact Email"),"label-position":"top"},{default:d(()=>[n(U,{modelValue:c.value.seller_contact_email,"onUpdate:modelValue":w[4]||(w[4]=I=>c.value.seller_contact_email=I),type:"email"},null,8,["modelValue"]),n(fl,{"validation-errors":l.value.seller_contact_email||{},"field-key":"seller_contact_email"},null,8,["validation-errors"])]),_:1},8,["label"])]),_:1})]),_:1}),n(Q,{gutter:15},{default:d(()=>[n(S,{lg:12},{default:d(()=>[n(E,{label:A(u)("Contact Phone"),"label-position":"top"},{default:d(()=>[n(U,{modelValue:c.value.seller_contact_phone,"onUpdate:modelValue":w[5]||(w[5]=I=>c.value.seller_contact_phone=I)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),_:1}),n(V),o("h4",Kv,f(A(u)("Seller Bank Details")),1),n(Q,{gutter:15},{default:d(()=>[n(S,{lg:12},{default:d(()=>[n(E,{label:A(u)("Bank IBAN"),"label-position":"top"},{default:d(()=>[n(U,{modelValue:c.value.seller_bank_iban,"onUpdate:modelValue":w[6]||(w[6]=I=>c.value.seller_bank_iban=I)},null,8,["modelValue"]),n(fl,{"validation-errors":l.value.seller_bank_iban||{},"field-key":"seller_bank_iban"},null,8,["validation-errors"]),o("div",Gv,[o("p",null,f(A(u)("International Bank Account Number")),1)])]),_:1},8,["label"])]),_:1}),n(S,{lg:12},{default:d(()=>[n(E,{label:A(u)("Bank BIC"),"label-position":"top"},{default:d(()=>[n(U,{modelValue:c.value.seller_bank_bic,"onUpdate:modelValue":w[7]||(w[7]=I=>c.value.seller_bank_bic=I)},null,8,["modelValue"]),o("div",jv,[o("p",null,f(A(u)("Bank Identifier Code (SWIFT)")),1)])]),_:1},8,["label"])]),_:1})]),_:1}),n(Q,{gutter:15},{default:d(()=>[n(S,{lg:12},{default:d(()=>[n(E,{label:A(u)("Bank Account Name"),"label-position":"top"},{default:d(()=>[n(U,{modelValue:c.value.seller_bank_account_name,"onUpdate:modelValue":w[8]||(w[8]=I=>c.value.seller_bank_account_name=I)},null,8,["modelValue"]),o("div",zv,[o("p",null,f(A(u)("Name of the bank account holder")),1)])]),_:1},8,["label"])]),_:1}),n(S,{lg:12},{default:d(()=>[n(E,{label:A(u)("Electronic Address"),"label-position":"top"},{default:d(()=>[n(U,{modelValue:c.value.seller_electronic_address,"onUpdate:modelValue":w[9]||(w[9]=I=>c.value.seller_electronic_address=I)},null,8,["modelValue"]),o("div",qv,[o("p",null,f(A(u)("Electronic address for receiving e-invoices (e.g. PEPPOL ID)")),1)])]),_:1},8,["label"])]),_:1})]),_:1})]),_:1})]),_:1}),o("div",Yv,[n(D,{type:"primary",onClick:w[10]||(w[10]=I=>y()),loading:a.value},{default:d(()=>[R(f(A(u)("Save Settings")),1)]),_:1},8,["loading"])])],64))])])}}},Xv={name:"CustomersRoute"},Jv={class:"fca_customers_route"};function Zv(e,t,a,l,s,i){const c=B("router-view");return r(),h("div",Jv,[n(c)])}const eg=at(Xv,[["render",Zv]]);/*!
* html2canvas 1.4.1
* Copyright (c) 2022 Niklas von Hertzen
* Released under MIT License
*//*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */var ir=function(e,t){return ir=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,l){a.__proto__=l}||function(a,l){for(var s in l)Object.prototype.hasOwnProperty.call(l,s)&&(a[s]=l[s])},ir(e,t)};function Ul(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");ir(e,t);function a(){this.constructor=e}e.prototype=t===null?Object.create(t):(a.prototype=t.prototype,new a)}var rr=function(){return rr=Object.assign||function(t){for(var a,l=1,s=arguments.length;l0&&i[i.length-1])&&(_[0]===6||_[0]===2)){a=0;continue}if(_[0]===3&&(!i||_[1]>i[0]&&_[1]=55296&&s<=56319&&a>10)+55296,c%1024+56320)),(s+1===a||l.length>16384)&&(i+=String.fromCharCode.apply(String,l),l.length=0)}return i},Vd="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ag=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(var Pn=0;Pn"u"?[]:new Uint8Array(256);for(var Nn=0;Nn>4,g[s++]=(c&15)<<4|p>>2,g[s++]=(p&3)<<6|m&63;return _},sg=function(e){for(var t=e.length,a=[],l=0;l>Cs,ig=1<>Cs,dg=Wc+rg,ug=dg,cg=32,Ag=ug+cg,pg=65536>>nd,fg=1<=0){if(t<55296||t>56319&&t<=65535)return a=this.index[t>>Cs],a=(a<>Cs)],a=(a<>nd),a=this.index[a],a+=t>>Cs&mg,a=this.index[a],a=(a<"u"?[]:new Uint8Array(256);for(var Kn=0;KnRd?(s.push(!0),p-=Rd):s.push(!1),["normal","auto","loose"].indexOf(t)!==-1&&[8208,8211,12316,12448].indexOf(i)!==-1)return l.push(c),a.push(cr);if(p===wg||p===dr){if(c===0)return l.push(c),a.push(ys);var m=a[c-1];return Eg.indexOf(m)===-1?(l.push(l[c-1]),a.push(m)):(l.push(c),a.push(ys))}if(l.push(c),p===Sg)return a.push(t==="strict"?Ar:En);if(p===eA||p===xg)return a.push(ys);if(p===Fg)return i>=131072&&i<=196605||i>=196608&&i<=262141?a.push(En):a.push(ys);a.push(p)}),[l,a,s]},xi=function(e,t,a,l){var s=l[a];if(Array.isArray(e)?e.indexOf(s)!==-1:e===s)for(var i=a;i<=l.length;){i++;var c=l[i];if(c===t)return!0;if(c!==ss)break}if(s===ss)for(var i=a;i>0;){i--;var p=l[i];if(Array.isArray(e)?e.indexOf(p)!==-1:e===p)for(var m=a;m<=l.length;){m++;var c=l[m];if(c===t)return!0;if(c!==ss)break}if(p!==ss)break}return!1},jd=function(e,t){for(var a=e;a>=0;){var l=t[a];if(l===ss)a--;else return l}return 0},Qg=function(e,t,a,l,s){if(a[l]===0)return Pt;var i=l-1;if(Array.isArray(s)&&s[i]===!0)return Pt;var c=i-1,p=i+1,m=t[i],_=c>=0?t[c]:0,g=t[p];if(m===Xc&&g===Jc)return Pt;if(vr.indexOf(m)!==-1)return tA;if(vr.indexOf(g)!==-1||aA.indexOf(g)!==-1)return Pt;if(jd(i,t)===Zc)return qn;if(_r.get(e[i])===dr||(m===jn||m===zn)&&_r.get(e[p])===dr||m===Od||g===Od||m===Hd||[ss,ur,pn].indexOf(m)===-1&&g===Hd||[Gn,rn,kg,Ds,Vs].indexOf(g)!==-1||jd(i,t)===dn||xi(Bi,dn,i,t)||xi([Gn,rn],Ar,i,t)||xi(Pd,Pd,i,t))return Pt;if(m===ss)return qn;if(m===Bi||g===Bi)return Pt;if(g===cr||m===cr)return qn;if([ur,pn,Ar].indexOf(g)!==-1||m===Bg||_===mr&&Ug.indexOf(m)!==-1||m===Vs&&g===mr||g===Nd||Nl.indexOf(g)!==-1&&m===cl||Nl.indexOf(m)!==-1&&g===cl||m===mn&&[En,jn,zn].indexOf(g)!==-1||[En,jn,zn].indexOf(m)!==-1&&g===fn||Nl.indexOf(m)!==-1&&Kd.indexOf(g)!==-1||Kd.indexOf(m)!==-1&&Nl.indexOf(g)!==-1||[mn,fn].indexOf(m)!==-1&&(g===cl||[dn,pn].indexOf(g)!==-1&&t[p+1]===cl)||[dn,pn].indexOf(m)!==-1&&g===cl||m===cl&&[cl,Vs,Ds].indexOf(g)!==-1)return Pt;if([cl,Vs,Ds,Gn,rn].indexOf(g)!==-1)for(var y=i;y>=0;){var v=t[y];if(v===cl)return Pt;if([Vs,Ds].indexOf(v)!==-1)y--;else break}if([mn,fn].indexOf(g)!==-1)for(var y=[Gn,rn].indexOf(m)!==-1?c:i;y>=0;){var v=t[y];if(v===cl)return Pt;if([Vs,Ds].indexOf(v)!==-1)y--;else break}if(hr===m&&[hr,vo,pr,fr].indexOf(g)!==-1||[vo,pr].indexOf(m)!==-1&&[vo,go].indexOf(g)!==-1||[go,fr].indexOf(m)!==-1&&g===go||Gd.indexOf(m)!==-1&&[Nd,fn].indexOf(g)!==-1||Gd.indexOf(g)!==-1&&m===mn||Nl.indexOf(m)!==-1&&Nl.indexOf(g)!==-1||m===Ds&&Nl.indexOf(g)!==-1||Nl.concat(cl).indexOf(m)!==-1&&g===dn&&$g.indexOf(e[p])===-1||Nl.concat(cl).indexOf(g)!==-1&&m===rn)return Pt;if(m===ki&&g===ki){for(var w=a[i],C=1;w>0&&(w--,t[w]===ki);)C++;if(C%2!==0)return Pt}return m===jn&&g===zn?Pt:qn},Dg=function(e,t){t||(t={lineBreak:"normal",wordBreak:"normal"});var a=Ig(e,t.lineBreak),l=a[0],s=a[1],i=a[2];(t.wordBreak==="break-all"||t.wordBreak==="break-word")&&(s=s.map(function(p){return[cl,ys,eA].indexOf(p)!==-1?En:p}));var c=t.wordBreak==="keep-all"?i.map(function(p,m){return p&&e[m]>=19968&&e[m]<=40959}):void 0;return[l,s,c]},Vg=function(){function e(t,a,l,s){this.codePoints=t,this.required=a===tA,this.start=l,this.end=s}return e.prototype.slice=function(){return Ua.apply(void 0,this.codePoints.slice(this.start,this.end))},e}(),Tg=function(e,t){var a=ni(e),l=Dg(a,t),s=l[0],i=l[1],c=l[2],p=a.length,m=0,_=0;return{next:function(){if(_>=p)return{done:!0,value:null};for(var g=Pt;_
'))};return be(()=>t.product_id,(v,w)=>{v!==w&&m()}),Ie(()=>{m(),g(),window.addEventListener("hashchange",g)}),vl(()=>{jQuery(".fct-admin-product-header").remove(),window.removeEventListener("hashchange",g)}),jr("reload",()=>{p.value=!1,m()}),(v,w)=>{const C=B("router-view");return r(),h("div",cV,[A(c).name==="product_edit"&&i.value?(r(),$(uV,{key:0})):x("",!0),a.show?(r(),$(ai,{key:1,"button-text":a.buttonText,message:a.message,route:a.route},null,8,["button-text","message","route"])):x("",!0),l.value&&a.show==!1?(r(),$(C,{key:2,product:l.value,taxonomies:s.value},null,8,["product","taxonomies"])):x("",!0)])}}};class pV extends Fs{setupInitialData(){super.setupInitialData(),this.data.sorting.sortBy="ID"}getTabs(){return{all:u("All"),publish:u("Published"),draft:u("Draft"),physical:u("Physical"),digital:u("Digital"),subscribable:u("Subscribable"),bundle:u("Bundle"),non_bundle:u("Non Bundle")}}getToggleableColumns(){return[{label:u("Type"),value:"product_type"},{label:u("Variation"),value:"variation_type"},{label:u("Stock"),value:"stock_availability"},{label:u("Price"),value:"item_price"},{label:u("Status"),value:"post_status"},{label:u("Date"),value:"post_date"}]}getSortableColumns(){return[{label:u("Product ID"),value:"ID"},{label:u("Title"),value:"post_title"},{label:u("Created at"),value:"post_date"}]}getSearchHint(){return u("Search by Id, product title or variation title")}getFetchUrl(){return"products"}parseResponse(t){return t.products}getTableName(){return"product_table"}with(){return["detail","variants:post_id,available"]}}function $p(e){return pV.init(e)}const fV={key:0,class:"fct-dummy-product-content"},mV={key:0,class:"title"},hV={class:"text"},_V={class:"fct-dummy-product-loading"},vV={class:"fct-loading-bars"},gV=["id"],yV={key:1,class:"fct-form-group"},bV={class:"required"},wV={class:"dialog-footer"},CV={__name:"CreateDummyProduct",props:{products:{}},emits:["onProductCreated"],setup(e,{emit:t}){const a=t,l=zt().ctx,s=T(!1),i=T([]),c=T(null),p=T(0),m=T(!1),_=T(null),g=T(0),y=C=>{s.value=C},v=(C=0)=>{if(c.value===null){w();return}m.value=!0;const b=i.value[c.value];if(_.value=b,C>b.count-1){setTimeout(()=>{w(),s.value=!1,a("onProductCreated")},1e3);return}p.value=C,l.$post("products/create-dummy",{category:b.category,index:C}).then(k=>{g.value=parseFloat(((C+1)/b.count*100).toFixed(0)),v(C+1)}).catch(k=>{k.code===400?w():v(C+1),l.handleError(k)})},w=()=>{g.value=0,p.value=0,m.value=!1,_.value=null};return Ie(()=>{i.value=je.get("dummy_product_info")}),(C,b)=>{const k=B("el-button"),F=B("el-progress"),M=B("el-option"),E=B("el-select"),S=B("el-dialog");return r(),h(H,null,[n(k,{onClick:b[0]||(b[0]=Q=>y(!0))},{default:d(()=>[n(J,{name:"Stars",class:"hidden lg:inline"}),R(" "+f(C.$t("Add Dummy Product")),1)]),_:1}),n(S,{modelValue:s.value,"onUpdate:modelValue":b[4]||(b[4]=Q=>s.value=Q),title:C.$t("Create Dummy Product"),"append-to-body":!0},la({default:d(()=>[m.value?(r(),h("div",fV,[_.value!=null?(r(),h("div",mV,f(A(u)("Inserting %1$s of %2$s %3$s Product",p.value+1,_.value.count,_.value.title)),1)):x("",!0),o("div",hV,[R(f(C.$t("Can close the window - product will continue to insert."))+" ",1),o("div",_V,[o("div",vV,[(r(),h(H,null,ae(8,Q=>o("div",{key:Q,class:"bar-block",id:`bar-block-${Q+1}`},null,8,gV)),64))]),R(" "+f(A(u)("Uploading... %s%",g.value)),1)])]),n(F,{percentage:g.value,"striped-flow":"","stroke-width":6,striped:"","show-text":!1},null,8,["percentage"])])):(r(),h("div",yV,[o("label",bV,f(C.$t("Product Category")),1),n(E,{modelValue:c.value,"onUpdate:modelValue":b[1]||(b[1]=Q=>c.value=Q),clearable:"",placeholder:C.$t("Select a Product Category")},{default:d(()=>[(r(!0),h(H,null,ae(i.value,(Q,U)=>(r(),$(M,{key:U,label:Q.title,value:U},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]))]),_:2},[m.value?void 0:{name:"footer",fn:d(()=>[o("div",wV,[n(k,{onClick:b[2]||(b[2]=Q=>y(!1))},{default:d(()=>[R(f(C.$t("Cancel")),1)]),_:1}),n(k,{type:"primary",onClick:b[3]||(b[3]=()=>{v()}),disabled:!c.value},{default:d(()=>[R(f(C.$t("Create Products")),1)]),_:1},8,["disabled"])])]),key:"0"}]),1032,["modelValue","title"])],64)}}},BV={class:"table-cell"},kV={class:"fct-product-info-card w-full"},xV={class:"fct-product-info-media"},SV={class:"fct-product-info-details grow-0 shrink-0 basis-[calc(100%-52px)]",style:{overflow:"hidden"}},FV={class:"fct-product-info-name flex flex-col items-start gap-3"},$V={class:"table-cell"},EV={class:"table-cell"},UV={class:"table-cell"},IV={class:"table-cell"},QV={class:"table-cell"},DV={class:"table-cell"},VV={class:"table-cell"},TV={__name:"ProductsLoader",props:{nextPageCount:{type:Number,default:0},productTable:{type:Object,default:()=>({})}},setup(e){const t=e,a=Array.from({length:t.nextPageCount},(l,s)=>s+1);return(l,s)=>{const i=B("el-table-column"),c=B("el-skeleton-item"),p=B("el-table"),m=B("el-skeleton");return r(),$(m,{animated:""},{template:d(()=>[n(p,{data:A(a),class:"w-full compact-table responsive fct-loader-table"},{empty:d(()=>s[0]||(s[0]=[])),default:d(()=>[n(i,{selectable:()=>!1,type:"selection",width:"45"}),n(i,{label:l.$t("Products"),width:"380"},{default:d(()=>[o("div",BV,[o("div",kV,[o("div",xV,[n(c,{varient:"image",class:"w-10 h-10.5 flex-none"})]),o("div",SV,[o("div",FV,[n(c,{varient:"p",class:"max-w-[190px]"}),n(c,{varient:"p",class:"max-w-[100px]"})])])])])]),_:1},8,["label"]),e.productTable.isColumnVisible("product_type")?(r(),$(i,{key:0,label:l.$t("Type"),width:"100"},{default:d(()=>[o("div",$V,[n(c,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),e.productTable.isColumnVisible("variation_type")?(r(),$(i,{key:1,label:l.$t("Variation"),width:"150"},{default:d(()=>[o("div",EV,[n(c,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),e.productTable.isColumnVisible("item_price")?(r(),$(i,{key:2,label:l.$t("Price"),width:"130"},{default:d(()=>[o("div",UV,[n(c,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),e.productTable.isColumnVisible("stock_availability")?(r(),$(i,{key:3,label:l.$t("Stock"),width:"100"},{default:d(()=>[o("div",IV,[n(c,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),e.productTable.isColumnVisible("post_status")?(r(),$(i,{key:4,label:l.$t("Status"),width:"130"},{default:d(()=>[o("div",QV,[n(c,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),e.productTable.isColumnVisible("post_date")?(r(),$(i,{key:5,label:l.$t("Date"),width:"120"},{default:d(()=>[o("div",DV,[n(c,{varient:"p",class:"w-4/5"})])]),_:1},8,["label"])):x("",!0),n(i,{label:l.$t("Actions"),width:"80",align:"right"},{default:d(()=>[o("div",VV,[n(c,{varient:"p",class:"w-3/5"})])]),_:1},8,["label"])]),_:1},8,["data"])]),_:1})}}},MV={},LV={class:"px-4 py-3"},RV={class:"flex items-center justify-between mb-3"},OV={class:"grid grid-cols-3 gap-5 mt-5"};function HV(e,t){const a=B("el-skeleton-item"),l=B("el-skeleton");return r(),$(l,{animated:""},{template:d(()=>[o("div",LV,[o("div",RV,[n(a,{varient:"p",class:"w-1/2"}),n(a,{varient:"p",class:"w-[100px]"})]),o("div",OV,[(r(),h(H,null,ae(3,s=>o("div",{key:s},[n(a,{varient:"p",class:"w-1/2"}),n(a,{varient:"p",class:"w-[100px]"})])),64))])])]),_:1})}const PV=at(MV,[["render",HV]]),NV={class:"fct-product-action show-on-mobile absolute right-0 top-1"},KV={class:"more-btn pr-3"},GV={class:"flex items-center gap-2"},jV={key:0},zV={key:1},qV={key:2},YV={key:0},WV={key:1},XV={key:0},JV={key:1},ZV={key:0},eT={key:1},tT={class:"flex items-center gap-0.5"},aT={key:0},lT={key:1},sT=["innerHTML"],nT=["innerHTML"],oT={class:"fct-product-id hidden",title:"Product ID"},iT={class:"more-btn pr-3"},rT={__name:"ProductsTable",props:{productTable:{type:Object,required:!0}},emits:["delete","duplicate","selectionChange"],setup(e,{expose:t,emit:a}){const l=a,s=T(null),i=y=>{y.action==="delete"?rl(u("Are you sure you want to delete this product : %s ?",y.product.post_title),u("Confirm Delete!"),{confirmButtonText:u("Yes, Delete!"),cancelButtonText:u("Cancel"),type:"warning"}).then(()=>{l("delete",y.product.ID)}).catch(v=>{}):y.action==="duplicate"&&l("duplicate",y.product)},c=y=>y.min_price===y.max_price?_a(y.min_price,!0):`${_a(y.min_price,!0)} - ${_a(y.max_price,!0)}`,p=y=>{switch(y){case"physical":return u("Physical");case"digital":return u("Digital");case"bundle":return u("Bundle");default:da.headline(y)}},m=y=>{switch(y){case"simple":return u("Simple");case"simple_variations":return u("Simple Variations");case"advanced_variations":return u("Advanced Variations");default:return y?da.headline(y):""}},_=y=>{l("selectionChange",y)};return t({clearSelection:()=>{var y,v;(v=(y=s.value)==null?void 0:y.clearSelection)==null||v.call(y)}}),(y,v)=>{const w=B("el-table-column"),C=B("router-link"),b=B("el-dropdown-item"),k=B("el-dropdown-menu"),F=B("el-dropdown"),M=B("el-tooltip"),E=B("el-table");return r(),$(E,{ref_key:"elTableRef",ref:s,data:e.productTable.getTableData(),class:"w-full compact-table",onSelectionChange:_},{empty:d(()=>[n(bt,{icon:"Empty/ListView","has-dark":!0,text:e.productTable.emptyMessage},null,8,["text"])]),default:d(()=>[n(w,{type:"selection",width:"45"}),n(w,{label:A(u)("Products"),width:"380"},{default:d(S=>[n(Ba,{class:"hover:no-underline",to:{name:"product_edit",params:{product_id:S.row.ID}}},{default:d(()=>[n(Xr,{product:S.row,class:"fct-product-table-product-info"},null,8,["product"])]),_:2},1032,["to"]),o("div",NV,[n(F,{trigger:"click",class:"fct-more-option-wrap","popper-class":"fct-dropdown",onCommand:i,placement:"bottom-end"},{dropdown:d(()=>[n(k,null,{default:d(()=>[S.row.ID?(r(),$(b,{key:0,class:"item-link"},{default:d(()=>[n(C,{to:{name:"product_edit",params:{product_id:S.row.ID}}},{default:d(()=>[n(J,{name:"Edit"}),R(" "+f(A(u)("Edit")),1)]),_:2},1032,["to"])]),_:2},1024)):x("",!0),n(b,{command:{action:"duplicate",product:S.row}},{default:d(()=>[n(J,{name:"Duplicate"}),R(" "+f(A(u)("Duplicate")),1)]),_:2},1032,["command"]),n(b,{command:{action:"delete",product:S.row},class:"item-destructive"},{default:d(()=>[n(J,{name:"Delete"}),R(" "+f(A(u)("Delete")),1)]),_:2},1032,["command"])]),_:2},1024)]),default:d(()=>[o("span",KV,[n(J,{name:"More"})])]),_:2},1024)])]),_:1},8,["label"]),e.productTable.isColumnVisible("product_type")?(r(),$(w,{key:0,label:A(u)("Type"),width:"170"},{default:d(S=>[n(Ba,{class:"hover:no-underline",to:{name:"product_edit",params:{product_id:S.row.ID}}},{default:d(()=>{var Q,U;return[o("div",GV,[((U=(Q=S.row.detail)==null?void 0:Q.other_info)==null?void 0:U.is_bundle_product)==="yes"?(r(),h("span",jV,f(A(u)("Bundle"))+" - ",1)):x("",!0),S.row.detail?(r(),h("span",zV,f(p(S.row.detail.fulfillment_type)),1)):(r(),h("span",qV,f(A(u)("N/A")),1))])]}),_:2},1032,["to"])]),_:1},8,["label"])):x("",!0),e.productTable.isColumnVisible("variation_type")?(r(),$(w,{key:1,label:A(u)("Variation"),width:"150"},{default:d(S=>[n(Ba,{class:"hover:no-underline",to:{name:"product_edit",params:{product_id:S.row.ID}}},{default:d(()=>[S.row.detail?(r(),h("span",YV,f(m(S.row.detail.variation_type)),1)):(r(),h("span",WV,f("N/A")))]),_:2},1032,["to"])]),_:1},8,["label"])):x("",!0),e.productTable.isColumnVisible("item_price")?(r(),$(w,{key:2,label:A(u)("Price"),width:"130"},{default:d(S=>[n(Ba,{class:"hover:no-underline",to:{name:"product_edit",params:{product_id:S.row.ID}}},{default:d(()=>[S.row.detail?(r(),h("span",XV,f(c(S.row.detail)),1)):(r(),h("span",JV,f(A(u)("Set Price")),1))]),_:2},1032,["to"])]),_:1},8,["label"])):x("",!0),e.productTable.isColumnVisible("stock_availability")?(r(),$(w,{key:3,label:A(u)("Stock"),width:"100"},{default:d(S=>[n(Ba,{class:"hover:no-underline",to:{name:"product_edit",params:{product_id:S.row.ID}}},{default:d(()=>[S.row.detail?(r(),h("span",ZV,[S.row.detail.manage_stock.toString()==="0"?(r(),h(H,{key:0},[R(f(A(u)("Unlimited")),1)],64)):(r(),h(H,{key:1},[R(f(A(Zt)(A(rt).sum(S.row.variants,"available"))),1)],64))])):(r(),h("span",eT,f("")))]),_:2},1032,["to"])]),_:1},8,["label"])):x("",!0),e.productTable.isColumnVisible("post_status")?(r(),$(w,{key:4,label:A(u)("Status"),width:"130"},{default:d(S=>[n(Ba,{class:"hover:no-underline",to:{name:"product_edit",params:{product_id:S.row.ID}}},{default:d(()=>[o("div",tT,[(r(),$(fa,{key:S.row.ID,status:S.row.post_status==="future"?"scheduled":S.row.post_status},null,8,["status"])),S.row.post_status==="future"?(r(),$(M,{key:0,effect:"dark",placement:"top","popper-class":"fct-label-hint-popover fct-tooltip","show-after":400,"hide-after":0},{content:d(()=>[R(f(A(u)("Publishes On: %s",A(ks)(S.row.post_date,!0))),1)]),default:d(()=>[n(J,{name:"InformationFill",class:"w-4 h-4 flex-none"})]),_:2},1024)):x("",!0)])]),_:2},1032,["to"])]),_:1},8,["label"])):x("",!0),e.productTable.isColumnVisible("post_date")?(r(),$(w,{key:5,label:A(u)("Date"),width:"120"},{default:d(S=>[n(Ba,{class:"hover:no-underline",to:{name:"product_edit",params:{product_id:S.row.ID}}},{default:d(()=>[n(Na,{"date-time":S.row.post_date,"with-time":!1},null,8,["date-time"])]),_:2},1032,["to"])]),_:1},8,["label"])):x("",!0),(r(!0),h(H,null,ae(e.productTable.getCustomColumns(),S=>(r(),$(w,{label:S.label},{default:d(Q=>[S.render_template?(r(),h("div",aT,[(r(),$(Cl(Tc),{templateContent:S.template,data:{column:S,product:Q.row,index:Q.$index}},null,8,["templateContent","data"]))])):(r(),h("div",lT,[S.as_link!==!1?(r(),$(Ba,{key:0,class:"hover:no-underline",to:{name:"product_edit",params:{product_id:Q.row.ID}}},{default:d(()=>[o("div",{innerHTML:A(rt).get(Q.row,S.accessor)},null,8,sT)]),_:2},1032,["to"])):(r(),h("div",{key:1,innerHTML:A(rt).get(Q.row,S.accessor)},null,8,nT))]))]),_:2},1032,["label"]))),256)),n(w,{label:A(u)("Actions"),width:"80",align:"right"},{default:d(S=>[o("span",oT,"ID: "+f(S.row.ID),1),n(F,{trigger:"click",class:"fct-more-option-wrap","popper-class":"fct-dropdown",onCommand:i,placement:"bottom-end"},{dropdown:d(()=>[n(k,null,{default:d(()=>[S.row.ID?(r(),$(b,{key:0,class:"item-link"},{default:d(()=>[n(C,{to:{name:"product_edit",params:{product_id:S.row.ID}}},{default:d(()=>[n(J,{name:"Edit"}),R(" "+f(A(u)("Edit")),1)]),_:2},1032,["to"])]),_:2},1024)):x("",!0),n(b,{command:{action:"duplicate",product:S.row}},{default:d(()=>[n(J,{name:"Duplicate"}),R(" "+f(A(u)("Duplicate")),1)]),_:2},1032,["command"]),n(b,{command:{action:"delete",product:S.row},class:"item-destructive"},{default:d(()=>[n(J,{name:"Delete"}),R(" "+f(A(u)("Delete")),1)]),_:2},1032,["command"])]),_:2},1024)]),default:d(()=>[o("span",iT,[n(J,{name:"More"})])]),_:2},1024)]),_:1},8,["label"])]),_:1},8,["data"])}}},dT={class:"fct-product-table-mobile-wrap"},uT={class:"fct-product-table-mobile-header"},cT={key:0,class:"fct-product-table-post-status-col"},AT={class:"flex items-center gap-1.5"},pT={class:"fct-product-action"},fT={class:"more-btn"},mT=["onClick"],hT={class:"fct-product-table-mobile-body-header"},_T={class:"fct-product-table-date-col"},vT={class:"invoice-no",title:"Product ID"},gT={key:0,class:"fct-product-table-price-col"},yT={key:0},bT={key:1},wT={class:"fct-product-table-product-col"},CT=["onClick"],BT={key:0,class:"fct-product-table-product-type"},kT={class:"title"},xT={key:0,class:"value"},ST={key:1,class:"value"},FT={key:1,class:"fct-product-table-variation-col"},$T={class:"title"},ET={key:0,class:"value"},UT={key:1,class:"value"},IT={key:2,class:"fct-product-table-stock-col"},QT={class:"title"},DT={key:0,class:"value"},VT={key:1},TT={key:0,class:"fct-product-table-mobile-footer"},MT={class:"fct-product-table-stock-col"},LT={key:0,class:"title"},RT=["innerHTML"],OT=["innerHTML"],HT={__name:"ProductsTableMobile",props:{productTable:{type:Object,required:!0}},emits:["delete"],setup(e,{emit:t}){const a=t,l=p=>{p.action==="delete"&&rl(u("Are you sure you want to delete this product : %s ?",p.product.post_title),u("Confirm Delete!"),{confirmButtonText:u("Yes, Delete!"),cancelButtonText:u("Cancel"),type:"warning"}).then(()=>{a("delete",p.product.ID)}).catch(m=>{})},s=p=>p.min_price===p.max_price?_a(p.min_price,!0):`${_a(p.min_price,!0)} - ${_a(p.max_price,!0)}`,i=p=>{switch(p){case"physical":return u("Physical");case"digital":return u("Digital");default:da.headline(p)}},c=p=>{switch(p){case"simple":return u("Simple");case"simple_variations":return u("Simple Variations");default:da.headline(p)}};return(p,m)=>{const _=B("el-tooltip"),g=B("router-link"),y=B("el-dropdown-item"),v=B("el-dropdown-menu"),w=B("el-dropdown");return r(),h("div",dT,[(r(!0),h(H,null,ae(e.productTable.getTableData(),(C,b)=>(r(),h("div",{key:C.id,class:"fct-product-table-mobile-row"},[o("div",uT,[e.productTable.isColumnVisible("post_status")?(r(),h("div",cT,[o("div",AT,[(r(),$(fa,{key:C.ID,status:C.post_status,onClick:k=>p.$router.push({name:"product_edit",params:{product_id:C.ID}})},null,8,["status","onClick"])),C.post_status==="future"?(r(),$(_,{key:0,effect:"dark",placement:"top","popper-class":"fct-label-hint-popover fct-tooltip","show-after":400,"hide-after":0},{content:d(()=>[R(f(A(u)("Publishes On: %s",A(ks)(C.post_date,!0))),1)]),default:d(()=>[n(J,{name:"InformationFill",class:"w-4 h-4"})]),_:2},1024)):x("",!0)])])):x("",!0),o("div",pT,[n(w,{trigger:"click",class:"fct-more-option-wrap","popper-class":"fct-dropdown",onCommand:l,placement:"bottom-end"},{dropdown:d(()=>[n(v,null,{default:d(()=>[C.ID?(r(),$(y,{key:0,class:"item-link"},{default:d(()=>[n(g,{to:{name:"product_edit",params:{product_id:C.ID}}},{default:d(()=>[n(J,{name:"Edit"}),R(" "+f(A(u)("Edit")),1)]),_:2},1032,["to"])]),_:2},1024)):x("",!0),n(y,{command:{action:"delete",product:C},class:"item-destructive"},{default:d(()=>[n(J,{name:"Delete"}),R(" "+f(A(u)("Delete")),1)]),_:2},1032,["command"])]),_:2},1024)]),default:d(()=>[o("span",fT,[n(J,{name:"More"})])]),_:2},1024)])]),o("div",{class:"fct-product-table-mobile-body",onClick:k=>p.$router.push({name:"product_edit",params:{product_id:C.ID}})},[o("div",hT,[o("div",_T,[e.productTable.isColumnVisible("post_date")?(r(),h(H,{key:0},[n(Na,{class:"date","date-time":C.post_date,"with-time":!1},null,8,["date-time"]),m[0]||(m[0]=o("span",{class:"bullet"},"•",-1))],64)):x("",!0),o("span",vT,"#"+f(C.ID),1)]),e.productTable.isColumnVisible("item_price")?(r(),h("div",gT,[C.detail?(r(),h("span",yT,f(s(C.detail)),1)):(r(),h("span",bT,f(A(u)("Set Price")),1))])):x("",!0)]),o("div",wT,[n(Xr,{product:C},null,8,["product"])])],8,mT),o("div",{class:"fct-product-table-mobile-footer",onClick:k=>p.$router.push({name:"product_edit",params:{product_id:C.ID}})},[e.productTable.isColumnVisible("product_type")?(r(),h("div",BT,[o("div",kT,f(A(u)("Type")),1),C.detail?(r(),h("span",xT,f(i(C.detail.fulfillment_type)),1)):(r(),h("span",ST,f("N/A")))])):x("",!0),e.productTable.isColumnVisible("variation_type")?(r(),h("div",FT,[o("div",$T,f(A(u)("Variation")),1),C.detail?(r(),h("span",ET,f(c(C.detail.variation_type)),1)):(r(),h("span",UT,f("N/A")))])):x("",!0),e.productTable.isColumnVisible("stock_availability")?(r(),h("div",IT,[o("div",QT,f(A(u)("Stock")),1),C.detail?(r(),h("span",DT,[C.detail.manage_stock.toString()==="0"?(r(),h(H,{key:0},[R(f(A(u)("Unlimited")),1)],64)):(r(),h(H,{key:1},[R(f(A(Zt)(A(rt).sum(C.variants,"available"))),1)],64))])):(r(),h("span",VT,f("")))])):x("",!0)],8,CT),e.productTable.getCustomColumns()?(r(),h("div",TT,[(r(!0),h(H,null,ae(e.productTable.getCustomColumns(),k=>(r(),h("div",MT,[k.label?(r(),h("div",LT,f(k.label),1)):x("",!0),k.render_template?(r(),$(Cl(Tc),{key:1,templateContent:k.template,data:k,column:k,row:C},null,8,["templateContent","data","column","row"])):(r(),h(H,{key:2},[k.as_link!==!1?(r(),$(Ba,{key:0,class:"hover:no-underline",to:{name:"product_edit",params:{product_id:C.ID}}},{default:d(()=>[o("div",{innerHTML:A(rt).get(C,k.accessor)},null,8,RT)]),_:2},1032,["to"])):(r(),h("div",{key:1,innerHTML:A(rt).get(C,k.accessor)},null,8,OT))],64))]))),256))])):x("",!0)]))),128))])}}},PT={class:"product-action-modal"},NT={class:"fct-alert-content"},KT={class:"fct-alert-title"},GT={class:"fct-alert-text"},jT={class:"fct-alert-subtext"},zT={key:1,class:"product-info"},qT={class:"info-text"},YT={key:0},WT={key:1},XT={key:2},JT={key:2,class:"options-wrapper"},ZT={key:4,class:"products-preview"},eM={class:"preview-title"},tM={class:"product-list"},aM={class:"product-name"},lM={key:0,class:"remaining-count"},sM={key:5,class:"progress-section"},nM={class:"progress-text"},oM={key:6,class:"results-section"},iM={class:"dialog-footer"},rM={key:0,class:"el-icon-delete"},dM={__name:"ProductActionModal",props:{modelValue:{type:Boolean,default:!1},action:{type:String,required:!0,validator:e=>["duplicate","delete"].includes(e)},productId:{type:[Number,String],default:null},productName:{type:String,default:""},products:{type:Array,default:()=>[]},productIds:{type:Array,default:()=>[]}},emits:["update:modelValue","completed"],setup(e,{emit:t}){const a=e,l=t,s=T(a.modelValue),i=T(!1),c=T(!1),p=T(!1),m=T(0),_=T(0),g=T(0),y=T({importStockManagement:!0,importLicenseSettings:!0,importDownloadableFiles:!0}),v=je.get("app_config.isProActive"),w=je.get("modules_settings.stock_management.active"),C=N(()=>a.action==="duplicate"),b=N(()=>a.action==="delete"),k=N(()=>a.products&&a.products.length>0||a.productIds&&a.productIds.length>0),F=N(()=>a.products&&a.products.length>0?a.products.length:a.productIds&&a.productIds.length>0?a.productIds.length:1),M=N(()=>k.value?u(C.value?"Bulk Duplicate Products":"Bulk Delete Products"):u(C.value?"Duplicate Product":"Delete Product")),E=N(()=>b.value?u(k.value?"Delete Products":"Delete Product"):u(k.value?"Duplicate Products":"Duplicate Product")),S=N(()=>a.products.slice(0,5)),Q=N(()=>{const oe=F.value-5;return oe>0?oe:0}),U=N(()=>F.value===0?0:Math.round(m.value/F.value*100)),V=N(()=>{if(g.value>0&&m.value===F.value)return"exception";if(m.value===F.value)return"success"});be(()=>a.modelValue,oe=>{s.value=oe,oe&&(y.value={importStockManagement:!0,importLicenseSettings:!0,importDownloadableFiles:!0},c.value=!1,p.value=!1,m.value=0,_.value=0,g.value=0,i.value=!1)}),be(s,oe=>{l("update:modelValue",oe)});const D=()=>{!c.value&&!i.value&&(s.value=!1,(p.value&&_.value>0||!k.value&&!p.value)&&l("completed"))},I=()=>{k.value?G():O()},O=()=>{i.value=!0,C.value?L():P()},L=()=>{ce.post(`products/${a.productId}/duplicate`,{import_stock_management:y.value.importStockManagement,import_license_settings:y.value.importLicenseSettings,import_downloadable_files:y.value.importDownloadableFiles}).then(oe=>{Y.success(oe.message||u("Product duplicated successfully")),l("completed"),D()}).catch(oe=>{var de,K;((de=oe.status_code)==null?void 0:de.toString())==="422"?Y.validationErrors(oe):Y.error(((K=oe.data)==null?void 0:K.message)||u("Failed to duplicate product"))}).finally(()=>{i.value=!1})},P=()=>{ce.delete(`products/${a.productId}`).then(oe=>{Y.success(oe.message||u("Product deleted successfully")),l("completed"),D()}).catch(oe=>{var de,K;((de=oe.status_code)==null?void 0:de.toString())==="422"?Y.validationErrors(oe):Y.error(((K=oe.data)==null?void 0:K.message)||u("Failed to delete product"))}).finally(()=>{i.value=!1})},G=async()=>{c.value=!0,m.value=0,_.value=0,g.value=0,C.value?await j():await z(),c.value=!1,p.value=!0,Z()},j=async()=>{const oe={import_stock_management:y.value.importStockManagement,import_license_settings:y.value.importLicenseSettings,import_downloadable_files:y.value.importDownloadableFiles},de=a.productIds&&a.productIds.length>0?a.productIds:a.products.map(K=>K.ID);for(const K of de){try{await ce.post(`products/${K}/duplicate`,oe),_.value++}catch{g.value++}m.value++}},z=async()=>{const oe=a.products&&a.products.length>0?a.products:[];for(const de of oe){try{await ce.delete(`products/${de.ID}`),_.value++}catch{g.value++}m.value++}},Z=()=>{const oe=C.value?"duplicated":"deleted";_.value>0&&g.value===0?Y.success({message:u(`All products ${oe} successfully`)}):_.value>0&&g.value>0?Y.warning({message:u(`Some products were ${oe} successfully`)}):Y.error({message:u(`Failed to ${oe.replace("ed","")} products`)})};return(oe,de)=>{const K=B("el-checkbox"),q=B("el-progress"),X=B("el-alert"),W=B("el-button"),re=B("el-dialog");return r(),$(re,{modelValue:s.value,"onUpdate:modelValue":de[3]||(de[3]=ye=>s.value=ye),title:M.value,"append-to-body":!0,width:"500px",onClose:D,"modal-class":"fct-duplicate-product-modal"},{footer:d(()=>[o("div",iM,[n(W,{onClick:D,disabled:c.value},{default:d(()=>[R(f(c.value||p.value?A(u)("Close"):A(u)("Cancel")),1)]),_:1},8,["disabled"]),p.value?x("",!0):(r(),$(W,{key:0,type:b.value?"danger":"primary",loading:i.value||c.value,disabled:i.value||c.value,onClick:I},{default:d(()=>[b.value?(r(),h("i",rM)):x("",!0),R(" "+f(E.value),1)]),_:1},8,["type","loading","disabled"]))])]),default:d(()=>[o("div",PT,[b.value?(r(),$(Ja,{key:0,icon:"WarningFill",type:"error"},{content:d(()=>[o("div",NT,[o("h3",KT,f(A(u)("Are you sure?")),1),o("p",GT,[R(f(A(u)("You are about to permanently delete"))+" ",1),o("strong",null,f(F.value),1),R(" "+f(A(u)(F.value===1?"product":"products"))+". ",1)]),o("p",jT,f(A(u)("This action cannot be undone.")),1)])]),_:1})):x("",!0),C.value?(r(),h("div",zT,[o("div",qT,[R(f(A(u)(k.value?"You are about to duplicate":"Select which settings to import from"))+" ",1),k.value?(r(),h("strong",YT,f(F.value),1)):(r(),h("strong",WT,f(e.productName),1)),k.value?(r(),h("span",XT,f(A(u)(F.value===1?"product":"products")),1)):x("",!0)])])):x("",!0),C.value?(r(),h("div",JT,[n(K,{modelValue:y.value.importDownloadableFiles,"onUpdate:modelValue":de[0]||(de[0]=ye=>y.value.importDownloadableFiles=ye),label:A(u)("Import Downloadable Files"),size:"large"},null,8,["modelValue","label"]),n(K,{modelValue:y.value.importLicenseSettings,"onUpdate:modelValue":de[1]||(de[1]=ye=>y.value.importLicenseSettings=ye),label:A(u)("Import License Settings"),size:"large"},null,8,["modelValue","label"]),A(w)==="yes"?(r(),h(H,{key:0},[A(v)?(r(),$(K,{key:0,modelValue:y.value.importStockManagement,"onUpdate:modelValue":de[2]||(de[2]=ye=>y.value.importStockManagement=ye),label:A(u)("Import Stock Management"),size:"large"},null,8,["modelValue","label"])):(r(),$(K,{key:1,disabled:!0,size:"large"},{default:d(()=>[R(f(A(u)("Import Stock Management"))+" ",1),n(J,{name:"Crown",class:"w-4 h-4 text-warning-500"})]),_:1}))],64)):x("",!0)])):x("",!0),C.value?(r(),$(Ja,{key:3,type:"warning",icon:"InformationFill"},{default:d(()=>[o("span",null,f(A(u)(k.value?"All duplicated products will be created as drafts":"The duplicated product will be created as a draft")),1)]),_:1})):x("",!0),b.value&&k.value&&!c.value&&!p.value?(r(),h("div",ZT,[o("p",eM,f(A(u)("Products to be deleted:")),1),o("ul",tM,[(r(!0),h(H,null,ae(S.value,ye=>(r(),h("li",{key:ye.ID,class:"product-item"},[o("span",aM,f(ye.post_title),1)]))),128)),Q.value>0?(r(),h("li",lM,f(A(u)("... and %s more",Q.value)),1)):x("",!0)])])):x("",!0),k.value&&c.value?(r(),h("div",sM,[n(q,{percentage:U.value,status:V.value},null,8,["percentage","status"]),o("p",nM,f(A(u)(b.value?"Deleting":"Duplicating"))+" "+f(m.value)+" / "+f(F.value),1)])):x("",!0),k.value&&p.value?(r(),h("div",oM,[_.value>0?(r(),$(X,{key:0,title:A(u)(b.value?"Successfully deleted %s product(s)":"Successfully duplicated %s product(s)",_.value),type:"success",closable:!1,"show-icon":""},null,8,["title"])):x("",!0),g.value>0?(r(),$(X,{key:1,title:A(u)(b.value?"Failed to delete %s product(s)":"Failed to duplicate %s product(s)",g.value),type:"error",closable:!1,"show-icon":"",style:{"margin-top":"10px"}},null,8,["title"])):x("",!0)])):x("",!0)])]),_:1},8,["modelValue","title"])}}},uM={class:"fct-all-products-page fct-layout-width"},cM={class:"fct-all-products-wrap"},AM={key:0,class:"bulk-actions-bar"},pM={class:"bulk-left flex items-center gap-2"},fM={class:"bulk-right"},mM={key:1,class:"fct-products-table-wrap"},hM={__name:"AllProducts",setup(e){const t=$p({instance:zt()}),a=T(!1),l=T(!1),s=T("duplicate"),i=T(null),c=T([]),p=T(""),m=T(!1),_=()=>{m.value=window.innerWidth<768},g=U=>{ce.delete(`products/${U}`).then(V=>{Y.success(V),t.fetch()}).catch(V=>{var D;V.status_code.toString()==="422"?Y.validationErrors(V):Y.error((D=V.data)==null?void 0:D.message)})},y=U=>{i.value=U,c.value=[],s.value="duplicate",l.value=!0},v=()=>{t.fetch(),i.value=null,c.value=[]},w=()=>{var U,V;t.fetch(),c.value=[],p.value="",(V=(U=Q.value)==null?void 0:U.clearSelection)==null||V.call(U)},C=U=>{c.value=U},b=()=>{if(c.value.length===0){Y.warning({message:u("Please select at least one product to duplicate")});return}i.value=null,s.value="duplicate",l.value=!0},k=()=>{if(c.value.length===0){Y.warning({message:u("Please select at least one product to delete")});return}i.value=null,s.value="delete",l.value=!0},F=()=>{if(!p.value){Y.warning({message:u("Please select a bulk action")});return}p.value==="duplicate"?b():p.value==="delete"&&k()},M=N(()=>c.value.map(U=>U.ID)),E=N(()=>c.value.length>0),S=N(()=>c.value.length>0),Q=T(null);return Ie(()=>{_(),window.addEventListener("resize",_)}),kt(()=>{window.removeEventListener("resize",_)}),(U,V)=>{const D=B("el-icon"),I=B("el-button"),O=B("el-dropdown-item"),L=B("el-dropdown-menu"),P=B("el-dropdown"),G=B("el-option"),j=B("el-select"),z=B("el-dialog");return r(),h("div",uM,[n(sl,{title:A(u)("Products")},{action:d(()=>[n(Nt,{permission:"products/create"},{default:d(()=>[n(P,{trigger:"click","popper-class":"fct-dropdown",onCommand:V[3]||(V[3]=()=>{}),placement:"bottom-end"},{dropdown:d(()=>[n(L,null,{default:d(()=>[n(O,{class:"item-link"},{default:d(()=>[n(CV,{onOnProductCreated:V[0]||(V[0]=Z=>A(t).fetch()),products:A(t).getTableData()},null,8,["products"])]),_:1}),n(O,{onClick:V[1]||(V[1]=Z=>U.$router.push({name:"product_bulk_insert"}))},{default:d(()=>[n(J,{name:"Insert"}),R(" "+f(A(u)("Bulk Product Insert")),1)]),_:1}),n(O,{onClick:V[2]||(V[2]=Z=>U.$router.push({name:"product_bulk_edit"}))},{default:d(()=>[n(J,{name:"Edit"}),R(" "+f(A(u)("Bulk Product Edit")),1)]),_:1})]),_:1})]),default:d(()=>[n(I,null,{default:d(()=>[R(f(A(u)("More actions"))+" ",1),n(D,null,{default:d(()=>[n(A(ei))]),_:1})]),_:1})]),_:1}),n(I,{type:"primary",onClick:V[4]||(V[4]=()=>{a.value=!0})},{default:d(()=>[R(f(A(u)("Add Product")),1)]),_:1})]),_:1})]),_:1},8,["title"]),n(Nt,{permission:"products/view"},{default:d(()=>[o("div",cM,[n($s,{table:A(t),classicTabStyle:!0,"has-mobile-slot":!0},{mobile:d(()=>[A(t).isLoading()?(r(),$(PV,{key:0})):x("",!0),n(HT,{"product-table":A(t),onDelete:g,onDuplicate:y},null,8,["product-table"])]),default:d(()=>[n(Gl,{name:"slide-fade"},{default:d(()=>[E.value?(r(),h("div",AM,[o("div",pM,[n(j,{size:"small",class:"bulk-select min-w-[180px]",placeholder:A(u)("Select Bulk Action"),modelValue:p.value,"onUpdate:modelValue":V[5]||(V[5]=Z=>p.value=Z)},{default:d(()=>[n(G,{label:A(u)("Duplicate"),value:"duplicate"},null,8,["label"]),n(G,{label:A(u)("Delete"),value:"delete"},null,8,["label"])]),_:1},8,["placeholder","modelValue"]),n(I,{size:"small",type:p.value==="delete"?"danger":"primary",onClick:F},{default:d(()=>[p.value==="delete"?(r(),$(J,{key:0,name:"Delete",class:"w-4 h-4"})):(r(),$(J,{key:1,name:"Copy",class:"w-4 h-4"})),R(" "+f(A(u)("Confirm")),1)]),_:1},8,["type"])]),o("div",fM,f(c.value.length)+" "+f(A(u)("item(s) selected")),1)])):x("",!0)]),_:1}),A(t).isLoading()?(r(),$(TV,{key:0,productTable:A(t),"next-page-count":A(t).nextPageCount},null,8,["productTable","next-page-count"])):(r(),h("div",mM,[n(rT,{ref_key:"productTableRef",ref:Q,"product-table":A(t),onDelete:g,onDuplicate:y,onSelectionChange:C},null,8,["product-table"])]))]),_:1},8,["table"])])]),_:1}),n(Nt,{permission:"products/create"},{default:d(()=>{var Z,oe;return[n(z,{"append-to-body":!0,modelValue:a.value,"onUpdate:modelValue":V[6]||(V[6]=de=>a.value=de),title:A(u)("Add New Product")},{default:d(()=>[a.value?(r(),$(fi,{key:0})):x("",!0)]),_:1},8,["modelValue","title"]),n(dM,{modelValue:l.value,"onUpdate:modelValue":V[7]||(V[7]=de=>l.value=de),action:s.value,"product-id":(Z=i.value)==null?void 0:Z.ID,"product-name":(oe=i.value)==null?void 0:oe.post_title,products:S.value?c.value:[],"product-ids":S.value?M.value:[],onCompleted:V[8]||(V[8]=de=>S.value?w():v())},null,8,["modelValue","action","product-id","product-name","products","product-ids"])]}),_:1})])}}},_M=at(hM,[["__scopeId","data-v-cd57428c"]]);let vM=0;function Al(){return"_cid_"+ ++vM}const es={IN_STOCK:"in-stock",OUT_OF_STOCK:"out-of-stock"};class xd extends nl{constructor(){super(...arguments);Re(this,"data",{visibleColumns:[],options:{status:[{title:"Published",value:"published"},{title:"Draft",value:"draft"}],fulfilment:[{title:"Physical",value:"physical"},{title:"Digital",value:"digital"}],variation:[{title:"Simple",value:"simple"},{title:"Simple Variations",value:"simple_variations"}]},dummies:{productDetail:{variation_type:"simple",manage_stock:1,fulfillment_type:"physical",stock_availability:es.IN_STOCK},variation:{variation_title:"",sku:"",item_price:0,compare_price:0,serial_index:1,fulfillment_type:"",manage_stock:1,total_stock:100,available:100,committed:0,on_hold:0,stock_status:es.IN_STOCK},variationDetail:{description:"",payment_type:"onetime",installment:"no",times:"",repeat_interval:"",trial_days:"",billing_summary:"",manage_setup_fee:"no",signup_fee_name:"",signup_fee:"",setup_fee_per_item:"no"},variationImage:{id:"",url:"",title:""},gallery:{id:"",url:"",title:""},downloadableFile:{title:"",type:"",driver:"",file_name:"",file_path:"",file_url:"",settings:"",serial:1}}});Re(this,"ensureProductVariantIsArray",a=>{Array.isArray(a.variants)||(a.variants=[])})}getDummyVariation(a){var i;const l=a==null?void 0:a.variants,s={...this.data.dummies.variation};return s.serial_index=Array.isArray(l)?l.length+1:1,s.fulfillment_type=(i=a==null?void 0:a.detail)==null?void 0:i.fulfillment_type,s.other_info={...this.data.dummies.variationDetail},s.media=[],s._cid=Al(),s}addVariationToProduct(a){this.ensureProductVariantIsArray(a),a.variants.push(this.getDummyVariation(a))}handleVariationChanged(a,l){l==="simple_variations"?this.addVariationToProduct(a):a.variants=[]}getColumnWidthStorageKey(){return""}saveColumnWidths(a){const l=this.getColumnWidthStorageKey();if(!l)return;const s={};a.forEach(i=>{i.key&&(s[i.key]=i.width)}),Ot.set(l,s)}restoreColumnWidths(a){const l=this.getColumnWidthStorageKey();if(!l)return;const s=Ot.get(l);s&&typeof s=="object"&&a.forEach(i=>{i.key&&s[i.key]!==void 0&&(i.width=s[i.key])})}getColumnStorageKey(){return""}getToggleableColumns(){return[]}setupColumnVisibility(){const a=this.getColumnStorageKey();if(!a)return;const l=Ot.get(a);Array.isArray(l)?this.data.visibleColumns=l:this.data.visibleColumns=this.getToggleableColumns().map(s=>s.value)}handleColumnVisibilityChange(){const a=this.getColumnStorageKey();a&&Ot.set(a,this.data.visibleColumns)}isColumnVisible(a){return this.data.visibleColumns.includes(a)}get downloadableFileSchema(){return{product_variation_id:[],title:"",type:"",driver:"",file_name:"",file_path:"",file_url:"",settings:{download_limit:"",download_expiry:"",bucket:""},serial:""}}syncStockStatus(a){var i;if(!Array.isArray(a.variants))return;if(!((i=a.detail)==null?void 0:i.manage_stock)){for(const c of a.variants)c.stock_status=es.IN_STOCK;a.detail&&(a.detail.stock_availability=es.IN_STOCK);return}let s=!0;for(const c of a.variants){const p=parseInt(c.available,10)||0;c.stock_status=p>0?es.IN_STOCK:es.OUT_OF_STOCK,p>0&&(s=!1)}a.detail&&(a.detail.stock_availability=s?es.OUT_OF_STOCK:es.IN_STOCK)}addDummyDownloadableFiles(a){const l=a;Array.isArray(l.downloadable_files)||(l.downloadable_files=[]),l.downloadable_files.push(this.downloadableFileSchema)}}class gM extends xd{constructor(){super(...arguments);Re(this,"data",{product:{},original_product:{},product_changes:{},validationErrors:{},excerptWordCount:0,maxExcerptWordCount:0,hasChange:!1,saving:!1,product_snapshot:{},discardKey:0,savedVariationLength:0,productDownloadableModel:null,metaValue:null,hasChangeLongDescEditor:!1,reloader:()=>{},onProductUpdatedListener:{}});Re(this,"router",al());Re(this,"_mergeOtherInfo",(a,l)=>{const s=JSON.parse(JSON.stringify(l));Object.keys(s).forEach(i=>{a[i]=s[i]}),Object.keys(a).forEach(i=>{i in s||delete a[i]})});Re(this,"_mergeSnapshot",a=>{const l=this.data.product,s=new Set(["ID","guid","variants","detail","downloadable_files","product_terms","taxonomies","variantOptions"]);if(Object.keys(a).forEach(i=>{if(s.has(i))return;const c=a[i];l[i]=c!==null&&typeof c=="object"?JSON.parse(JSON.stringify(c)):c}),a.detail&&l.detail){const i=JSON.parse(JSON.stringify(a.detail));Object.keys(i).forEach(c=>{c!=="other_info"&&(l.detail[c]=i[c])}),i.other_info&&(l.detail.other_info||(l.detail.other_info={}),this._mergeOtherInfo(l.detail.other_info,i.other_info))}if(Array.isArray(a.variants)&&Array.isArray(l.variants)){const i={};a.variants.forEach(p=>{p.id&&(i[p.id]=p)});const c=new Set(["id","post_id","rowId","media","created_at","updated_at"]);l.variants.forEach(p=>{const m=i[p.id];m&&Object.keys(m).forEach(_=>{if(c.has(_))return;const g=m[_];_==="other_info"&&p.other_info?this._mergeOtherInfo(p.other_info,g):p[_]=g!==null&&typeof g=="object"?JSON.parse(JSON.stringify(g)):g})})}});Re(this,"addDummyVariant",()=>{var a,l;return{post_id:this.product.detail.post_id,serial_index:this.variantsLength()+1,variation_title:"",item_price:"",compare_price:"",manage_cost:"yes",item_cost:"",profit:"--",profit_margin:"--",manage_stock:this.product.detail.manage_stock,stock_status:"in-stock",total_stock:1,on_hold:0,committed:0,available:1,fulfillment_type:this.product.detail.fulfillment_type,media:[],other_info:{description:"",payment_type:"onetime",tax_class:"standard",tax_exempt:"no",tax_inclusion:"",times:"",repeat_interval:"yearly",billing_summary:"",manage_setup_fee:"no",signup_fee_name:"",signup_fee:"",setup_fee_per_item:"no",package_slug:"",weight:null,weight_unit:((l=(a=window.fluentCartAdminApp)==null?void 0:a.shop)==null?void 0:l.weight_unit)||"kg"},downloadable:"true"}});Re(this,"formatPricing",a=>{let l={};return a.forEach((s,i)=>{s.item_price=s.item_price?_a(s.item_price,!1):0,s.item_cost=s.item_cost?_a(s.item_cost,!1):0,s.compare_price=s.compare_price?_a(s.compare_price,!1):0,s.other_info.signup_fee=s.other_info.signup_fee?_a(s.other_info.signup_fee,!1):0,s.rowId=i,l[s.id]=s}),a});Re(this,"onChangePricing",(a,l,s)=>{this.ensureVariationIndex(l),this.product.variants[l][a]=s,a==="item_price"&&this.onChangePricingPayment(this.product.variants[l],s,l),this.data.product_changes.detail||(this.data.product_changes.detail.id=this.product.detail.id),this.data.product_changes.variants[l][a]=s,this.data.product_changes.variants[l].id=this.product.variants[l].id,(a==="item_price"||a==="compare_price")&&this.validateComparePrice(l),this.setHasChange(!0)});Re(this,"updateLongDescEditorChange",a=>{this.setHasChangeLongDescEditor(!0),ce.post(`products/${this.product.ID}/update-long-desc-editor-mode`,{active_editor:a??"wp-editor"}).then(l=>{Y.success(l.message)}).catch(l=>{l&&l.message&&Y.error(l)}).finally(()=>{this.setHasChangeLongDescEditor(!1)})});Re(this,"onChangePricingPayment",(a,l,s)=>{var i;if(a.item_price!==""&&a.other_info.repeat_interval!==""){let c=parseInt(a.other_info.times)?u("for %s Times",(i=a==null?void 0:a.other_info)==null?void 0:i.times):u("Until Cancel");return this.data.product_changes.variants[s].billing_summary=`${a.item_price} ${a.other_info.repeat_interval} ${c}`,this.data.product_changes.variants[s].id=a.id,this.data.product_changes.detail.id=this.product.detail.id,a.other_info.billing_summary=`${a.item_price} ${a.other_info.repeat_interval} ${c}`}return this.data.product_changes.variants[s].billing_summary="",this.data.product_changes.variants[s].id=a.id,this.data.product_changes.detail.id=this.product.detail.id,a.other_info.billing_summary=""});Re(this,"onUploadPricingMedia",(a,l,s)=>{this.product.variants[l][a]=[],this.product.variants[l][a]=[...this.product.variants[l][a],...s];const i=this.product.variants[l].id;ce.post(`products/variants/${i}/setMedia`,{media:this.product.variants[l].media}).then(c=>{Y.success(c.message)}).catch(c=>{var p;c.status_code=="422"?Y.validationErrors(c):Y.error((p=c.data)==null?void 0:p.message)}).finally(()=>{})});Re(this,"afterCreatingOrUpdatingPricing",(a,l)=>{l.created_at=l.created_at??new Date().toLocaleDateString()+""+new Date().toLocaleTimeString(),a!==void 0&&a!=null?this.product.variants[a]=l:(l.rowId=this.variantsLength()>0?this.data.product.variants[this.variantsLength()-1].rowId+1:this.variantsLength(),this.data.product.variants.push(l),a=this.variantsLength()-1),this.data.productDownloadableModel.setDownloadableFiles(this.data.product.downloadable_files)});Re(this,"createOrUpdatePricing",a=>{this.setSaving(!0),this.setValidationErrors({});let l="";return a.id!=null?l=ce.post(`products/variants/${a.id}`,{variants:a}):l=ce.post("products/variants",{variants:a}),l.then(s=>(Y.success(s.message),Object.values(this.data.onProductUpdatedListener).forEach(i=>{typeof i=="function"&&i(this.product)}),this.saveSnapshot(),s)).catch(s=>{var i;s.status_code=="422"?(Y.validationErrors(s),this.setValidationErrors(s.data)):Y.error((i=s.data)==null?void 0:i.message)}).finally(()=>{this.setSaving(!1)})});Re(this,"updatePricingValue",(a,l,s,i,c)=>{if(s.includes(".")&&(s=s.split(".").pop()),this.ensureVariationIndex(s),s!==void 0&&this.clearValidationError(`${s}.${a}`),i[a]=l,a==="item_price"&&this.onChangePricingPayment(i,l,s),a==="fulfillment_type"&&(this.data.product_changes.detail||(this.data.product_changes.detail={}),this.data.product_changes.detail.fulfillment_type=l,this.data.product_changes.variants[s].fulfillment_type=l),a==="item_cost"){const p=parseFloat(l);i.item_cost=isNaN(p)||p<0?0:p}parseFloat(i.item_cost)>parseFloat(i.item_price)&&(i.item_cost=0),this.data.product_changes.variants[s][a]=a==="item_cost"?i[a]:l,this.data.product_changes.variants[s].id=i.id,this.data.product_changes.detail.id=this.product.detail.id,this.product.detail.variation_type==="simple"&&(a==="fulfillment_type"&&(this.data.product_changes.detail||(this.data.product_changes.detail={}),this.data.product_changes.detail.fulfillment_type=l,this.data.product_changes.variants[s].fulfillment_type=l),this.product.variants[0]=i,this.setHasChange(!0)),(a==="item_price"||a==="compare_price")&&this.validateComparePrice(s)});Re(this,"updatePricingOtherValue",(a,l,s=null,i,c="")=>{this.ensureVariationIndex(s),["payment_type","times","repeat_interval","manage_setup_fee","signup_fee_name","signup_fee","billing_summary","setup_fee_per_item","purchasable","tax_class","tax_exempt","tax_inclusion","weight","length","width","height","package_slug","weight_unit","manage_stock"].includes(a)&&(s!==void 0&&this.clearValidationError(`${s}.other_info.${a}`),i.other_info[a]=l,this.data.product_changes.variants||(this.data.product_changes.variants=[]),this.data.product_changes.variants[s].other_info||(this.data.product_changes.variants[s].other_info={}),this.data.product_changes.variants[s].other_info[a]=l,i.other_info.payment_type==="subscription"&&(a==="times"&&parseInt(l)<0&&(i.other_info.times=0),i.other_info.times=i.other_info.times??"",i.other_info.repeat_interval=i.other_info.repeat_interval??"",i.other_info.trial_days=i.other_info.trial_days??0,i.other_info.billing_summary=i.other_info.billing_summary??"",i.other_info.manage_setup_fee=i.other_info.manage_setup_fee??"no",i.other_info.signup_fee_name=i.other_info.signup_fee_name??"",i.other_info.signup_fee=i.other_info.signup_fee??"",i.other_info.setup_fee_per_item=i.other_info.setup_fee_per_item??"no"),this.data.product_changes.variants[s].other_info=i.other_info,this.data.product_changes.variants[s].id=i.id,this.data.product_changes.detail.id=this.product.detail.id,["payment_type","times","repeat_interval","manage_setup_fee","signup_fee_name","signup_fee","billing_summary","setup_fee_per_item","purchasable"].includes(a)&&this.onChangePricingPayment(i,l,s)),["media"].includes(a)&&(i.media=[],i.media=[...i.media,...l],this.data.product_changes.variants[s].media=i.media,this.data.product_changes.variants[s].id=i.id,this.data.product_changes.detail.id=this.product.detail.id),["description"].includes(a)&&(s!==void 0&&this.clearValidationError(`${s}.other_info.${a}`),this.data.product_changes.variants[s].other_info||(this.data.product_changes.variants[s].other_info={}),i.other_info[a]=l,this.data.product_changes.variants[s].other_info[a]=l,this.data.product_changes.variants[s].id=i.id,this.data.product_changes.detail.id=this.product.detail.id),this.product.detail.variation_type==="simple"&&(this.product.variants[0]=i,this.data.product_changes.variants=[],this.data.product_changes.variants[0]=i,this.data.product_changes.variants[0].id=i.id,this.data.product_changes.detail.id=this.product.detail.id),c==="add"&&this.setHasChange(!0)});Re(this,"afterDeletingPricing",a=>{this.product.variants.splice(a,1)});Re(this,"deletePricing",(a,l)=>Fn.ofDelete(u("Are you sure, you want to delete this price?")).then(()=>{if(a!==void 0)return ce.delete(`products/variants/${a}`).then(s=>{Y.success(s.message),this.afterDeletingPricing(l),this.saveSnapshot()}).catch(s=>{throw(s==null?void 0:s.status_code)=="422"?Y.validationErrors(s):Y.error(s==null?void 0:s.data),s})}));Re(this,"getDownloadableHeaderClass",()=>{var l;const a=this.product.downloadable_files&&Array.isArray(this.product.downloadable_files)&&this.product.downloadable_files.length>0;return{"!border-0":((l=this.product.detail)==null?void 0:l.manage_downloadable)=="0"||!a}});Re(this,"onChangeInventoryStatus",a=>{this.product.variants.filter(l=>l.manage_stock=a),this.setHasChange(!0)});Re(this,"ensureVariationIndex",a=>{var l;(l=this.data.product_changes)!=null&&l.detail||(this.data.product_changes.detail={}),this.data.product_changes.variants||(this.data.product_changes.variants=[]),this.data.product_changes.variants[a]||(this.data.product_changes.variants[a]={})});Re(this,"onChangeNewStock",(a,l,s)=>{this.product.variants[s]||(this.data.product_changes.variants=[]),this.ensureVariationIndex(s),l===""&&(this.product.variants[s].new_stock=0,this.data.product_changes.variants[s].new_stock=0);let i=this.product.variants[s].total_stock??0,c=this.product.variants[s].new_stock??0,p=parseInt(c.toString())-parseInt(i);this.product.variants[s].adjusted_quantity=p,this.data.product_changes.variants[s].adjusted_quantity=p,this.data.product_changes.variants[s].id=this.product.variants[s].id});Re(this,"onChangeAdjustedQuantity",(a,l,s)=>{this.ensureVariationIndex(s),l===""&&(l=0);let i=this.product.variants[s].total_stock+parseInt(l);this.product.variants[s].new_stock=i<0?0:i});Re(this,"onChangeInputField",(a,l,s=!0)=>{var i,c,p,m,_;if(a==="post_title"&&this.product.detail.variation_type==="simple"&&Array.isArray(this.product.variants)&&this.variantsLength()>0&&(this.product.variants[0].variation_title=l,(i=this.data.product_changes)!=null&&i.variants||(this.data.product_changes.variants=[]),this.ensureVariationIndex(0),this.data.product_changes.variants[0].variation_title=l,this.data.product_changes.variants[0].id=this.product.variants[0].id),a==="post_date"&&(this.product[a]=lt(l).format("YYYY-MM-DDTHH:mm:ssZ"),this.data.product_changes[a]=this.product[a]),a==="default_variation_id"&&(this.data.product_changes.detail||(this.data.product_changes.detail={}),this.product.detail||(this.product.detail={}),this.data.product_changes.detail.default_variation_id=l,this.data.product_changes.detail.id=this.product.detail.id,this.setHasChange(!0)),a==="fulfillment_type"&&(this.data.product_changes.detail||(this.data.product_changes.detail={}),this.product.detail.fulfillment_type=l,this.data.product_changes.detail.fulfillment_type=l,this.data.product_changes.detail.id=this.product.detail.id,this.product.variants.forEach((g,y)=>{this.product.variants[y].fulfillment_type=l,this.ensureVariationIndex(y),this.data.product_changes.variants[y].fulfillment_type=l,this.data.product_changes.variants[y].id=g.id})),a==="shipping_class"&&(this.data.product_changes.detail||(this.data.product_changes.detail={}),this.product.detail||(this.product.detail={}),(c=this.product.detail)!=null&&c.other_info||(this.product.detail.other_info={}),this.product.detail.other_info[a]=l,(p=this.data.product_changes.detail)!=null&&p.other_info||(this.data.product_changes.detail.other_info={}),this.data.product_changes.detail.other_info[a]=l,this.product.variants.forEach((g,y)=>{this.product.variants[y].shipping_class=l,this.ensureVariationIndex(y),this.data.product_changes.variants[y].shipping_class=l,this.data.product_changes.variants[y].id=g.id})),["group_pricing_by","use_pricing_table","active_editor","sold_individually"].includes(a)&&(this.ensureVariationIndex(0),this.data.product_changes.detail||(this.data.product_changes.detail={}),(m=this.product.detail)!=null&&m.other_info||(this.product.detail.other_info={}),(_=this.data.product_changes.detail)!=null&&_.other_info||(this.data.product_changes.detail.other_info={}),this.product.detail.other_info[a]=l,this.data.product_changes.detail.other_info[a]=l,this.product.detail.variation_type==="simple"&&(this.data.product_changes.detail.id=this.product.detail.id,this.data.product_changes.variants[0].id=this.product.variants[0].id)),a==="post_excerpt"){this.product[a]=l,this.data.product_changes.detail||(this.data.product_changes.detail={}),this.data.product_changes.detail.id=this.product.detail.id,this.data.product_changes[a]=this.product[a];const g=l.trim();g.length===0?this.setExcerptWordCount(0):this.setExcerptWordCount(g.split(" ").length)}else this.product[a]=l,this.data.product_changes[a]=l,this.data.product_changes.detail||(this.data.product_changes.detail={}),this.data.product_changes.detail.id=this.product.detail.id;s&&this.setHasChange(!0)});Re(this,"hasValidationError",a=>this.validationErrors&&this.validationErrors.hasOwnProperty(a));Re(this,"clearValidationError",a=>{this.validationErrors&&this.validationErrors.hasOwnProperty(a)&&delete this.validationErrors[a]});Re(this,"validateComparePrice",a=>{var p,m;if(a==null)return!0;const l=(m=(p=this.product)==null?void 0:p.variants)==null?void 0:m[a];if(!l)return!0;const s=`variants.${a}.compare_price`,i=parseFloat(l.item_price),c=parseFloat(l.compare_price);return isNaN(c)||c<=0?(this.clearValidationError(s),!0):!isNaN(i)&&c{const a=this.data.product_snapshot;!a||!Object.keys(a).length||(this._mergeSnapshot(a),this.data.product_changes={},this.data.discardKey++,this.setHasChange(!1))});Re(this,"update",async(a=null)=>{var c,p,m,_,g,y;let l=this.data.product_changes;if(l={...this.product},l.metaValue=this.data.metaValue,this.data.product_changes.post_status||(this.data.product_changes.post_status=this.product.post_status),this.data.product_changes.post_title||(this.data.product_changes.post_title=this.product.post_title),this.data.product_changes.detail?((c=this.data.product_changes.detail)!=null&&c.fulfillment_type||(this.data.product_changes.detail.fulfillment_type=this.product.detail.fulfillment_type),(p=this.data.product_changes.detail)!=null&&p.variation_type||(this.data.product_changes.detail.variation_type=this.product.detail.variation_type)):(this.data.product_changes.detail={},this.data.product_changes.detail.fulfillment_type=this.product.detail.fulfillment_type,this.data.product_changes.detail.variation_type=this.product.detail.variation_type),l=this.data.product_changes,l.metaValue=this.data.metaValue,this.setValidationErrors({}),this.setSaving(!0),((m=l.detail)==null?void 0:m.variation_type)==="simple"&&(l.variants||(l.variants=[]),!Array.isArray(l.variants)||l.variants.length===0)){const v=((_=this.product.variants)==null?void 0:_[0])||{};l.variants[0]={id:v.id,variation_title:l.post_title||v.variation_title,item_price:v.item_price??"",post_id:this.product.ID}}if(delete l.taxonomies,delete l.product_terms,delete l.variantOptions,delete l.downloadable_files,((g=l.detail)==null?void 0:g.variation_type)!=="simple"&&l.variants){let v=[];l.variants.forEach(w=>{v.push({id:w.id,variation_title:w.variation_title,sku:w.sku,item_price:w.item_price,compare_price:w.compare_price,item_cost:w.item_cost,manage_cost:w.manage_cost,fulfillment_type:w.fulfillment_type,shipping_class:w.shipping_class,other_info:w.other_info,manage_stock:w.manage_stock,serial_index:w.serial_index,total_stock:w.total_stock,available:w.available,committed:w.committed,on_hold:w.on_hold,stock_status:w.stock_status,sold_individually:w.sold_individually,media:w.media,downloadable:w.downloadable,payment_type:w.payment_type})}),l.variants=v}((y=l.downloadable_files)==null?void 0:y.length)<1&&(l.variantOptions=[]);const s=ce.post(`products/${this.product.ID}/pricing`,l);let i=document.querySelector(".fct-admin-product-info .badge");s.then(v=>{Y.success(a||v.message),this.setHasChange(!1),i&&(i.innerText=v.data.post_status),this.product.view_url=v.data.viewUrl,i&&v.data.post_status==="publish"&&(i.classList.remove("warning"),i.classList.add("success")),i&&v.data.post_status==="future"&&(i.innerText=u("Publishes on: %s",ks(v.data.post_date,!0)),i.classList.remove("success"),i.classList.add("warning")),i&&(v.data.post_status==="draft"?(i.classList.remove("success"),i.classList.add("info")):(i.classList.remove("info"),i.classList.add("success"))),this.product.detail.variation_type==="simple"&&Array.isArray(v.data.variants)&&v.data.variants.length>0&&(this.product.variants[0].id=v.data.variants[0].id,this.product.variants[0].created_at=v.data.variants[0].created_at),this.product.variants=this.product.variants.filter((w,C,b)=>C===b.findIndex(k=>k.id===w.id)),this.data.product_changes={},this.saveSnapshot(),Object.values(this.data.onProductUpdatedListener).forEach(w=>{typeof w=="function"&&w(this.product)})}).catch(v=>{var w,C;((w=v==null?void 0:v.status_code)==null?void 0:w.toString())==="422"?(Y.validationErrors(v),this.setValidationErrors(v)):Y.error(((C=v==null?void 0:v.data)==null?void 0:C.message)||(v==null?void 0:v.message)||u("Failed to save product"))}).finally(async()=>{this.setSaving(!1)})});Re(this,"delete",()=>{rl(u("Are you sure you want to delete this product?"),u("Confirm Delete!"),{confirmButtonText:u("Yes, Delete!"),cancelButtonText:u("Cancel"),type:"warning"}).then(()=>{this.setHasChange(!1),ce.delete(`products/${this.product.ID}`).then(a=>{Y.success(a.message),this.router.push({name:"products"})}).catch(a=>{var l;a.status_code=="422"?Y.validationErrors(a):Y.error((l=a.data)==null?void 0:l.message)})}).catch(()=>{})});Re(this,"updateVariationType",(a,l)=>{var p,m;const s=this.product.detail[a];this.product.detail[a]=l;let i={variation_type:l,variation_ids:[(m=(p=this.product)==null?void 0:p.variants[0])==null?void 0:m.id],action:"change_variation_type"};const c=ce.post(`products/detail/${this.product.detail.id}`,i);return c.then(_=>{Y.info(_.message),a==="variation_type"&&l==="simple"?(this.product.variants=this.product.variants.slice(0,1),this.variantsLength()>0&&(this.product.variants[0].manage_stock=this.product.detail.manage_stock)):a==="variation_type"&&l==="advanced_variations"&&(this.product.variants=[])}).catch(_=>{var g;this.product.detail[a]=s,_.status_code=="422"?Y.validationErrors(_):Y.error((g=_.data)==null?void 0:g.message)}).finally(()=>{}),c});Re(this,"getMaxExcerptWordCount",()=>{ce.get("products/get-max-excerpt-word-count").then(a=>{this.setMaxExcerptWordCount(a.count)}).catch(a=>{})});Re(this,"shouldShowShippingMethodAlert",()=>je.get("available_shipping_method_count").toString()!=="0"?!1:this.hasPhysicalVariation());Re(this,"hasDigitalVariation",()=>this.product.variants.some(a=>a.fulfillment_type==="digital"));Re(this,"isAllDigitalVariation",()=>this.product.variants.every(a=>a.fulfillment_type==="digital"));Re(this,"hasPhysicalVariation",()=>this.product.variants.some(a=>a.fulfillment_type==="physical"));Re(this,"isTaxEnabled",()=>je.get("is_tax_enabled"));Re(this,"isAllPhysicalVariation",()=>this.product.variants.every(a=>a.fulfillment_type==="physical"));Re(this,"isBundleProduct",()=>rt.get(this.data.product,"detail.other_info.is_bundle_product")==="yes")}addOnProductUpdatedListener(a,l){this.data.onProductUpdatedListener[a]=l}triggerProductUpdated(a=null){const l=this.data.onProductUpdatedListener;(Array.isArray(a)?a:Object.keys(l)).forEach(i=>{const c=l[i];typeof c=="function"&&c(this.product)})}setProductDownloadableModel(a){this.data.productDownloadableModel=a}setReloader(a){this.data.reloader=a}saveSnapshot(){this.data.product_snapshot=JSON.parse(JSON.stringify(this.data.product))}get product(){return this.data.product}get validationErrors(){return this.data.validationErrors}get excerptWordCount(){return this.data.excerptWordCount}get maxExcerptWordCount(){return this.data.maxExcerptWordCount}get hasChange(){return this.data.hasChange}get hasChangeLongDescEditor(){return this.data.hasChangeLongDescEditor}get saving(){return this.data.saving}beforeInit(){this.data.product={ID:"",post_title:"",post_name:"",post_content:"",post_excerpt:"",post_status:"publish",post_date:new Date,comment_status:"close",variants:!1},this.vueInstance=zt().ctx}setProduct(a){let l=document.querySelector(".fct-admin-product-info .badge");l&&a.post_status==="future"&&(l.innerText=u("Publishes on: %s",ks(a.post_date,!0)),l.classList.add("warning")),this.data.product=a,this.data.original_product={...a}}setValidationErrors(a){this.data.validationErrors=a}setExcerptWordCount(a){this.data.excerptWordCount=a}setMaxExcerptWordCount(a){this.data.maxExcerptWordCount=a}setHasChange(a){this.data.hasChange=a}setHasChangeLongDescEditor(a){this.data.hasChangeLongDescEditor=a}setSaving(a){this.data.saving=a}isInDraft(){return this.product.post_status==="draft"}viewUrl(){return this.product.view_url??""}variantsLength(){return this.product.variants.length??0}updateVariantSerialIndexes(a){var l;a.forEach((s,i)=>{s.serial_index=i+1}),(l=this.data.product_changes)!=null&&l.variants||(this.data.product_changes.variants=[]),this.data.product_changes.variants=a.map(s=>({id:s.id,serial_index:s.serial_index})),this.setHasChange(!0)}bulkUpdateVariants(a){return ce.post("products/variants/bulk-update",{updates:a})}addDummyDownloadableFile(){super.addDummyDownloadableFiles(this.product),this.setHasChange(!0)}updateMedia(a,l){this.product[a]=l,this.data.product_changes[a]=l,this.setHasChange(!0)}shippingSettingsUrl(){return je.get("admin_url")+"settings/shipping"}}function yM(){return gM.init()}function bM(){Ie(()=>{document.addEventListener("keydown",t)}),vl(()=>{document.removeEventListener("keydown",t)});let e;function t(l){(l.ctrlKey||l.metaKey)&&l.shiftKey&&l.keyCode===83&&(l.preventDefault(),typeof e=="function"&&e())}function a(l){e=l}return{onSave:a}}const wM={id:"gt",class:"fct-custom-gutenberg-editor-wrap w-full",style:{height:"400px",position:"relative"}},CM={key:0,class:"iframe-loader"},BM=["src"],kM={class:"iframe-controls"},xM={class:"dialog-header"},SM={id:"gt",class:"fct-custom-gutenberg-editor-wrap",style:{position:"relative"}},FM={key:0,class:"iframe-loader"},$M=["src"],EM={__name:"GutenbergEditor",props:{post_id:{required:!0},product:{type:Object},reload:Function,productEditModel:Object},setup(e){const t=e,a=T(!1),l=T(!0),s=T(!0),i=T(),c=T(null),p=T(null);ll();const m=()=>{const k=window.location.origin;i.value=k+"/wp-admin"},_=()=>{setTimeout(()=>{l.value=!1},500)},g=()=>{var k;s.value=!1,setTimeout(()=>{},500);try{const F=(k=p.value)==null?void 0:k.contentDocument;F&&F.addEventListener("click",M=>{const E=M.target.closest("a[href]");if(E&&!E.target&&!E.getAttribute("onclick")){const S=E.getAttribute("href");S&&(S.startsWith("/")||S.startsWith("http"))&&(M.preventDefault(),window.parent.postMessage({type:"navigateTo",content:S},"*"))}},!0)}catch{}},y=()=>{a.value=!0,s.value=!0},v=()=>{s.value=!1,a.value=!1,t.productEditModel.data.reloader()},w=()=>{l.value=!0,c.value&&(c.value.src=c.value.src.toString())},C=()=>{s.value=!0,p.value&&(p.value.src=p.value.src.toString())},b=k=>{const{type:F,content:M}=k.data;F==="gutenbergContentChanged"&&w(),F==="navigateTo"&&(v(),window.location.href=M)};return Ie(()=>{m(),window.addEventListener("message",b)}),(k,F)=>{const M=B("el-icon"),E=B("el-button"),S=B("el-breadcrumb-item"),Q=B("el-breadcrumb"),U=B("el-dialog");return r(),h(H,null,[o("div",wM,[F[2]||(F[2]=o("div",{class:"fct-custom-gutenberg-editor-wrap-overlay"},null,-1)),l.value?(r(),h("div",CM,[o("span",null,[R(f(A(u)("Loading preview..."))+" ",1),n(M,{class:"is-loading"},{default:d(()=>[n(A(qs))]),_:1})])])):x("",!0),o("iframe",{ref_key:"previewIframeRef",ref:c,class:"scrollbar-none preview-iframe",src:`${i.value}/post.php?post=${e.post_id}&action=edit&custom-editor=true&is-preview-mode=true`,width:"100%",height:"400px",onLoad:_,style:ra({visibility:l.value?"hidden":"visible"})},null,44,BM)]),o("div",kM,[n(E,{onClick:y},{default:d(()=>[R(f(A(u)("Show Content Editor")),1)]),_:1})]),n(U,{"append-to-body":!0,"show-close":!1,"modal-class":"fct-custom-gutenberg-editor-dialog",width:"800px",modelValue:a.value,"onUpdate:modelValue":F[0]||(F[0]=V=>a.value=V),onClose:v,onOpen:F[1]||(F[1]=()=>{C()})},{header:d(()=>[o("div",xM,[n(Q,{separator:"/"},{default:d(()=>[n(S,null,{default:d(()=>[o("span",{class:"fct-custom-gutenberg-editor-product-title",onClick:v},f(e.product.post_title),1)]),_:1}),n(S,null,{default:d(()=>F[3]||(F[3]=[R("Editor",-1)])),_:1,__:[3]})]),_:1}),s.value?x("",!0):(r(),$(E,{key:0,class:"fct-custom-gutenberg-editor-close-btn",onClick:v},{default:d(()=>[n(J,{name:"Cross"}),R(" "+f(A(u)("Close")),1)]),_:1}))])]),default:d(()=>[o("div",SM,[s.value?(r(),h("div",FM,[o("span",null,[R(f(A(u)("Loading editor..."))+" ",1),n(M,{class:"is-loading"},{default:d(()=>[n(A(qs))]),_:1})])])):x("",!0),o("iframe",{ref_key:"dialogIframeRef",ref:p,class:"dialog-iframe",src:`${i.value}/post.php?post=${e.post_id}&action=edit&custom-editor=true`,width:"100%",height:"700px",sandbox:"allow-same-origin allow-scripts allow-forms allow-popups",onLoad:g,style:ra({visibility:s.value?"hidden":"visible"})},null,44,$M)])]),_:1},8,["modelValue"])],64)}}},UM=at(EM,[["__scopeId","data-v-2a0b985d"]]),IM={class:"fct-product-info-wrap"},QM={class:"fct-admin-input-wrapper"},DM={class:"fct-admin-input-wrapper"},VM={class:"form-note"},TM={class:"fct-excerpt-word-counter mt-[7px]"},MM={class:"editor-tabs-nav"},LM={class:"fct-custom-long-desc-wrap fct-admin-input-wrapper"},RM={class:"custom-wp-editor-wrapper relative"},OM={class:"relative rounded overflow-hidden"},HM={class:"editor-tab-content fct-wp-editor-tab-content"},PM={class:"editor-tab-content fct-gutenberg-tab-content"},NM={__name:"ProductInfo",props:{product:Object,productEditModel:Object,reload:Function},setup(e){const t=e,a=T(!1),l=T("wp-editor");T("#gt"),ll();const s=T(),i=c=>{t.productEditModel.updateLongDescEditorChange(c),l.value=c};return be(()=>t.product.post_title,c=>{const p=document.querySelector(".fct-admin-product-header .product-name");p&&(p.textContent=c&&c.trim()?c:u("Product Name"))}),Ie(()=>{var c,p,m,_,g,y;a.value=!0,t.productEditModel.getMaxExcerptWordCount(),((c=t.product)==null?void 0:c.post_excerpt)!==void 0&&((p=t.product)==null?void 0:p.post_excerpt.toString().length)>0&&t.productEditModel.setExcerptWordCount((m=t.product)==null?void 0:m.post_excerpt.toString().split(" ").length),(y=(g=(_=t.product)==null?void 0:_.detail)==null?void 0:g.other_info)!=null&&y.active_editor&&(l.value=t.product.detail.other_info.active_editor)}),be(()=>t.productEditModel.data.discardKey,()=>{s.value&&s.value.resetContent(t.product.post_content)}),(c,p)=>{const m=B("el-input"),_=B("el-form-item"),g=B("el-form"),y=Ma("loading");return r(),h("div",IM,[n(ke,null,{default:d(()=>[n(Ce,null,{default:d(()=>[n(g,{"label-position":"top","require-asterisk-position":"right",onSubmit:p[6]||(p[6]=Ne(()=>{},["prevent"]))},{default:d(()=>[o("div",QM,[n(_,{label:A(u)("Title"),required:""},{default:d(()=>[n(m,{class:ie(e.productEditModel.hasValidationError("post_title")?"is-error":""),id:"post_title",placeholder:A(u)("Title"),type:"text",modelValue:e.product.post_title,"onUpdate:modelValue":p[0]||(p[0]=v=>e.product.post_title=v),onInput:p[1]||(p[1]=v=>{e.productEditModel.onChangeInputField("post_title",v)}),onFocus:p[2]||(p[2]=v=>e.productEditModel.clearValidationError("post_title"))},null,8,["class","placeholder","modelValue"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":"post_title"},null,8,["validation-errors"])]),_:1},8,["label"])]),o("div",DM,[n(_,{label:A(u)("Short description")},{default:d(()=>[n(m,{class:"fct-short-desc-input",onInput:p[3]||(p[3]=v=>{e.productEditModel.onChangeInputField("post_excerpt",v)}),modelValue:e.product.post_excerpt,"onUpdate:modelValue":p[4]||(p[4]=v=>e.product.post_excerpt=v),rows:2,type:"textarea",onFocus:p[5]||(p[5]=v=>e.productEditModel.clearValidationError("post_excerpt"))},null,8,["modelValue"]),o("div",null,[o("div",VM,[o("p",TM,f(A(u)("%1$s Words of %2$s",A(u)(e.productEditModel.data.excerptWordCount),A(u)(e.productEditModel.maxExcerptWordCount))),1)]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":"post_excerpt"},null,8,["validation-errors"])])]),_:1},8,["label"])])]),_:1})]),_:1})]),_:1}),n(ke,null,{default:d(()=>[n(Qe,{title:A(u)("Long Description")},{action:d(()=>[Gt((r(),h("div",MM,[n(qr,null,{default:d(()=>[n(Co,{label:A(u)("Classic Editor"),class:ie(l.value==="wp-editor"?"active":""),onClick:p[7]||(p[7]=v=>i("wp-editor"))},null,8,["label","class"]),n(Co,{label:A(u)("Builder"),class:ie(l.value==="gutenberg"?"active":""),onClick:p[8]||(p[8]=v=>i("gutenberg"))},null,8,["label","class"])]),_:1})])),[[y,e.productEditModel.hasChangeLongDescEditor]])]),_:1},8,["title"]),n(Ce,null,{default:d(()=>[n(g,{"label-position":"top","require-asterisk-position":"right",onSubmit:p[10]||(p[10]=Ne(()=>{},["prevent"]))},{default:d(()=>[o("div",LM,[n(_,null,{default:d(()=>[o("div",RM,[o("div",OM,[Gt(o("div",HM,[n(Wl,{ref_key:"wpEditor",ref:s,modelValue:e.product.post_content,onUpdate:p[9]||(p[9]=v=>{e.productEditModel.onChangeInputField("post_content",v)})},null,8,["modelValue"])],512),[[Vl,l.value==="wp-editor"]]),Gt(o("div",PM,[n(UM,{post_id:e.product.ID,product:e.product,reload:e.reload,productEditModel:e.productEditModel},null,8,["post_id","product","reload","productEditModel"])],512),[[Vl,l.value==="gutenberg"]])])])]),_:1})])]),_:1})]),_:1})]),_:1})])}}},KM=["aria-label"],GM=["src","alt"],jM={class:"fmp-featured__edit-icon"},zM=["src","alt"],qM={key:0,class:"fmp-count"},YM={key:0,class:"fmp-preview-grid"},WM=["src","alt"],XM={key:0,class:"fmp-preview-more"},JM={key:1,class:"fmp-add-full",type:"button"},ZM={class:"fmp-modal-body"},e7=["src","alt"],t7=["onClick","title"],a7={key:1,class:"fmp-empty"},l7={class:"fmp-url-list"},s7=["src","alt"],n7={class:"fmp-url-info"},o7={class:"fmp-url-title"},i7={class:"fmp-url-text"},r7=["onClick","title"],d7={class:"fmp-url-add"},u7={class:"dialog-footer"},c7={class:"fct-media-picker-footer-actions"},A7={class:"fct-btn-group sm"},hl={__name:"BulkMediaPicker",props:{modelValue:{type:Array,default:()=>[]},compact:{type:Boolean,default:!0},maxThumbs:{type:Number,default:3},multiple:{type:Boolean,default:!0},showUrlTab:{type:Boolean,default:!0},title:{type:String,default:""},featured:{type:Boolean,default:!1},square:{type:Boolean,default:!1},showApplyToAll:{type:Boolean,default:!1},defaultApplyToAll:{type:Boolean,default:!1},selectedCount:{type:Number,default:0}},emits:["update:modelValue","change"],setup(e,{emit:t}){const a=cs.getUrl("images/placeholder.svg"),l=I=>{I.target&&I.target.src!==a&&(I.target.src=a)},s=e,i=t,c=T(!1),p=T([]),m=T("gallery"),_=T(""),g=T(!1),y=N(()=>s.title||u("Manage Media")),v=N(()=>s.selectedCount>0?u("Apply to all (%1$s)",s.selectedCount):u("Apply to all")),w=N(()=>p.value.filter(I=>I.id>0)),C=N(()=>p.value.filter(I=>!I.id)),b=N(()=>s.showUrlTab),k=N(()=>Array.isArray(s.modelValue)?s.modelValue:[]),F=N(()=>k.value.filter(I=>I&&I.url)),M=()=>{p.value=JSON.parse(JSON.stringify(k.value)),m.value="gallery",_.value="",g.value=s.defaultApplyToAll,c.value=!0},E=()=>{(JSON.stringify(p.value)!==JSON.stringify(k.value)||g.value)&&(i("update:modelValue",p.value),i("change",p.value,{applyToAll:g.value})),c.value=!1},S=()=>{c.value=!1},Q=I=>{p.value.splice(I,1)},U=I=>{const O=I.filter(P=>P.url).map(P=>({id:P.id,title:P.title,url:P.url}));if(!s.multiple){p.value=O.slice(0,1);return}const L=new Set(p.value.map(P=>P.url));for(const P of O)L.has(P.url)||(p.value.push(P),L.add(P.url))},V=()=>{const I=_.value.trim();if(!I)return;if(p.value.some(P=>P.url===I)){_.value="";return}const O=I.split("/").pop().split("?")[0]||"image",L={id:0,url:I,title:O};s.multiple?p.value.push(L):p.value=[L],_.value=""},D=I=>{const O=p.value.findIndex(L=>L.url===I);O!==-1&&p.value.splice(O,1)};return(I,O)=>{const L=B("el-tag"),P=B("el-button"),G=B("el-tab-pane"),j=B("el-input"),z=B("el-tabs"),Z=B("el-checkbox"),oe=B("el-dialog");return r(),h(H,null,[o("div",{class:ie(["fct-media-picker",{"is-compact":e.compact,"is-featured":e.featured,"is-square":e.square}]),onClick:M},[e.featured?(r(),h(H,{key:0},[e.modelValue&&e.modelValue.length?(r(),h("button",{key:0,type:"button",class:"fmp-featured","aria-label":A(u)("Edit media")},[o("img",{src:e.modelValue[0].url||A(a),alt:e.modelValue[0].title||"",class:"fmp-featured__image",onError:l},null,40,GM),o("span",jM,[n(J,{name:"Edit"})]),e.modelValue.length>1?(r(),$(L,{key:0,class:"fmp-featured__count",size:"small",round:""},{default:d(()=>[R(f(e.modelValue.length)+" "+f(I.$t("images")),1)]),_:1})):x("",!0)],8,KM)):(r(),$(P,{key:1,class:"fct-mp-add-featured"},{default:d(()=>[n(J,{name:"GalleryAdd"})]),_:1}))],64)):e.compact?(r(),h(H,{key:1},[F.value.length?(r(),h("div",{key:0,class:ie(["fmp-stack",{"is-square":e.square}])},[(r(!0),h(H,null,ae(F.value.slice(0,e.maxThumbs),(de,K)=>(r(),h("span",{key:K,class:"fmp-thumb-wrap",style:ra({zIndex:e.maxThumbs-K})},[o("img",{src:de.url,alt:de.title||"",class:"fmp-thumb",onError:l},null,40,zM)],4))),128)),F.value.length>e.maxThumbs?(r(),h("span",qM,"+"+f(F.value.length-e.maxThumbs),1)):x("",!0),O[4]||(O[4]=xn('',1))],2)):(r(),$(P,{key:1,class:"fct-mp-add-compact"},{default:d(()=>[n(J,{name:"GalleryAdd"})]),_:1}))],64)):(r(),h(H,{key:2},[e.modelValue&&e.modelValue.length?(r(),h("div",YM,[(r(!0),h(H,null,ae(e.modelValue.slice(0,4),(de,K)=>(r(),h("div",{class:"fmp-preview-item",key:K},[o("img",{src:de.url,alt:de.title||""},null,8,WM),K===3&&e.modelValue.length>4?(r(),h("span",XM,"+"+f(e.modelValue.length-4),1)):x("",!0)]))),128))])):(r(),h("button",JM,[O[5]||(O[5]=xn('',1)),o("span",null,f(I.$t("Add Media")),1)]))],64))],2),c.value?(r(),$(oe,{key:0,modelValue:c.value,"onUpdate:modelValue":O[3]||(O[3]=de=>c.value=de),title:y.value,width:"600px","append-to-body":!0,"close-on-click-modal":!1,onClose:S,class:"fct-bulk-media-picker-modal"},{default:d(()=>[o("div",ZM,[n(z,{modelValue:m.value,"onUpdate:modelValue":O[1]||(O[1]=de=>m.value=de)},{default:d(()=>[n(G,{label:I.$t("Gallery"),name:"gallery"},{default:d(()=>[p.value.length?(r(),$(A(Js),{key:0,list:p.value,class:"fmp-grid",tag:"div",animation:200},{default:d(()=>[(r(!0),h(H,null,ae(p.value,(de,K)=>(r(),h("div",{class:"fmp-grid-item",key:de.url||K},[o("img",{src:de.url,alt:de.title||""},null,8,e7),K===0?(r(),$(L,{key:0,type:"primary",size:"small",class:"fmp-featured-tag"},{default:d(()=>[R(f(I.$t("Featured")),1)]),_:1})):x("",!0),o("button",{type:"button",class:"fmp-remove-btn",onClick:Ne(q=>Q(K),["stop"]),title:I.$t("Remove")}," × ",8,t7)]))),128))]),_:1},8,["list"])):(r(),h("div",a7,[o("p",null,f(I.$t("No media added yet.")),1)]))]),_:1},8,["label"]),b.value?(r(),$(G,{key:0,name:"imported-urls"},{label:d(()=>[R(f(I.$t("Add by URL"))+" ",1),C.value.length?(r(),$(L,{key:0,size:"small",round:"",style:{"margin-left":"6px"}},{default:d(()=>[R(f(C.value.length),1)]),_:1})):x("",!0)]),default:d(()=>[o("div",l7,[(r(!0),h(H,null,ae(C.value,de=>(r(),h("div",{class:"fmp-url-item",key:de.url},[o("img",{src:de.url,alt:de.title||"",class:"fmp-url-thumb"},null,8,s7),o("div",n7,[o("span",o7,f(de.title),1),o("span",i7,f(de.url),1)]),o("button",{type:"button",class:"fmp-url-delete",onClick:Ne(K=>D(de.url),["stop"]),title:I.$t("Remove")}," × ",8,r7)]))),128)),o("div",d7,[n(j,{modelValue:_.value,"onUpdate:modelValue":O[0]||(O[0]=de=>_.value=de),placeholder:I.$t("Paste image URL..."),size:"small",onKeyup:xa(V,["enter"])},null,8,["modelValue","placeholder"]),n(P,{size:"small",onClick:V,disabled:!_.value.trim()},{default:d(()=>[R(f(I.$t("Add")),1)]),_:1},8,["disabled"])])])]),_:1})):x("",!0)]),_:1},8,["modelValue"])]),o("div",u7,[n(Oc,{attachments:w.value,multiple:e.multiple,onOnMediaSelected:U},null,8,["attachments","multiple"]),o("div",c7,[e.showApplyToAll?(r(),h("label",{key:0,class:ie(["fct-media-picker-apply-to-group-label",{"is-enabled":g.value}])},[n(Z,{modelValue:g.value,"onUpdate:modelValue":O[2]||(O[2]=de=>g.value=de),"aria-label":I.$t("Apply media to all variants in this group")},null,8,["modelValue","aria-label"]),R(" "+f(v.value),1)],2)):x("",!0),o("div",A7,[n(P,{onClick:S},{default:d(()=>[R(f(I.$t("Cancel")),1)]),_:1}),n(P,{type:"primary",onClick:E},{default:d(()=>[R(f(I.$t("Save")),1)]),_:1})])])])]),_:1},8,["modelValue","title"])):x("",!0)],64)}}},p7={},f7={class:"fct-shared-variant-item-box"},m7={key:0,class:"fct-shared-variant-item-box__header"},h7={class:"fct-shared-variant-item-box__label"},_7={class:"fct-shared-variant-item-box__action"},v7={class:"fct-shared-variant-item-box__body"};function g7(e,t){return r(),h("div",f7,[e.$slots.label||e.$slots.action?(r(),h("div",m7,[o("div",h7,[ka(e.$slots,"label")]),o("div",_7,[ka(e.$slots,"action")])])):x("",!0),o("div",v7,[ka(e.$slots,"default")])])}const Rn=at(p7,[["render",g7]]),y7={class:"fct-product-media-row"},b7={key:0,class:"fct-variant-title-readonly"},w7={key:0,class:"fct-variant-title-group text-system-dark dark:text-white"},C7={class:"fct-variant-title-detail text-system-mid dark:text-gray-200"},B7={class:"fct-admin-input-wrapper"},k7={__name:"VariantTitleMedia",props:{variant:Object,fieldKey:String,modeType:String,product:Object,productEditModel:Object,titleInfo:Object},setup(e){const t=e,a=N(()=>{var s;return["simple_variations","advanced_variations"].includes((s=t.product.detail)==null?void 0:s.variation_type)}),l=N(()=>{var s;return((s=t.product.detail)==null?void 0:s.variation_type)==="advanced_variations"});return(s,i)=>{const c=B("el-input"),p=B("el-form-item");return a.value?(r(),$(Rn,{key:0,class:"fct-product-media-and-title"},{default:d(()=>[o("div",y7,[n(hl,{modelValue:e.variant.media,"onUpdate:modelValue":i[0]||(i[0]=m=>e.variant.media=m),featured:!0,compact:!1,onChange:i[1]||(i[1]=m=>e.productEditModel.updatePricingOtherValue("media",m,e.fieldKey,e.variant,e.modeType))},null,8,["modelValue"]),l.value?(r(),h("div",b7,[e.titleInfo&&e.titleInfo.group?(r(),h("div",w7,f(e.titleInfo.group),1)):x("",!0),o("div",C7,f(e.titleInfo&&e.titleInfo.detail||e.variant.variation_title),1)])):(r(),$(p,{key:1,label:A(u)("Variation Title")},{default:d(()=>[o("div",B7,[n(c,{class:ie(e.productEditModel.hasValidationError(`${e.fieldKey}.variation_title`)?"is-error":""),id:`${e.fieldKey}.variation_title`,placeholder:A(u)("e.g. Small, Medium, Large"),type:"text",modelValue:e.variant.variation_title,"onUpdate:modelValue":i[2]||(i[2]=m=>e.variant.variation_title=m),onInput:i[3]||(i[3]=m=>{e.productEditModel.updatePricingValue("variation_title",m,e.fieldKey,e.variant,e.modeType)})},null,8,["class","id","placeholder","modelValue"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.variation_title`},null,8,["validation-errors","field-key"])])]),_:1},8,["label"]))])]),_:1})):x("",!0)}}},x7=at(k7,[["__scopeId","data-v-81001ec3"]]),S7={class:"fct-variant-item-collapse"},F7={class:"fct-variant-item-collapse-header"},$7={class:"fct-variant-item-collapse-body"},Ep={__name:"VariantItemCollapse",props:{modelValue:{type:Array,default:()=>[""]}},emits:["update:modelValue"],setup(e,{emit:t}){const a=e,l=t,s=N({get:()=>a.modelValue,set:c=>l("update:modelValue",c)}),i=N(()=>s.value.includes("1"));return(c,p)=>{const m=B("el-collapse-item"),_=B("el-collapse");return r(),h("div",S7,[n(_,{modelValue:s.value,"onUpdate:modelValue":p[0]||(p[0]=g=>s.value=g),accordion:""},{default:d(()=>[n(m,{name:"1",icon:A(Of)},{title:d(()=>[o("div",F7,[ka(c.$slots,"header",{isOpen:i.value})])]),default:d(()=>[o("div",$7,[ka(c.$slots,"default")])]),_:3},8,["icon"])]),_:3},8,["modelValue"])])}}},E7=["innerHTML"],zs={__name:"PriceInput",props:{modelValue:{type:[Number,String],default:""},numberFormat:{type:String,default:"comma_dot",validator:e=>["comma_dot","dot_comma"].includes(e)},id:{type:String,default:""},placeholder:{type:String,default:""},min:{type:Number,default:0},errorClass:{type:String,default:""},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(e,{emit:t}){const a=e,l=t,s=N(()=>je.get("shop.currency_sign","$")),i=N(()=>a.numberFormat==="dot_comma"),c=N(()=>{const I=je.get("shop.decimal_separator","");return I==="comma"?",":I==="dot"?".":i.value?",":"."}),p=N(()=>c.value===","?".":","),m=N(()=>c.value===","?"de-DE":"en-US"),_=/[\d.,]/,g=I=>{["Backspace","Delete","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Tab","Enter","Home","End"].includes(I.key)||I.ctrlKey||I.metaKey||_.test(I.key)||I.preventDefault()},y=I=>String(I||"").replace(/^0+(?=\d)/,""),v=I=>String(I??"").replace(/[^\d.,]/g,""),w=I=>{const O=v(I);if(!O)return"";const L=O.lastIndexOf("."),P=O.lastIndexOf(","),G=Math.max(L,P);if(G===-1)return y(O.replace(/[.,]/g,""));const j=y(O.slice(0,G).replace(/[^\d]/g,"")),z=O.slice(G+1).replace(/[^\d]/g,""),Z=O.charAt(G),oe=(O.match(new RegExp(`\\${Z}`,"g"))||[]).length,de=G===O.length-1,K=O.includes(".")&&O.includes(",");if(!de&&!K&&Z===p.value&&(oe>1||z.length>2))return y(O.replace(/[^\d]/g,""));const X=j||"0";return de?`${X}.`:`${X}.${z.slice(0,2)}`},C=I=>{if(I==null||I==="")return NaN;const O=typeof I=="number"?String(I):w(I);return O?parseFloat(O.replace(/\.$/,"")):NaN},b=I=>{const O=C(I);return isNaN(O)?"":O.toLocaleString(m.value,{minimumFractionDigits:0,maximumFractionDigits:2})},k=I=>{if(!I)return"";const O=I.endsWith("."),[L="",P=""]=I.split("."),G=(L||"0").replace(/\B(?=(\d{3})+(?!\d))/g,p.value);return O?`${G}${c.value}`:P?`${G}${c.value}${P}`:G},F=(I,O=!1)=>{const L=C(I);return isNaN(L)?"":(O?M(L):L).toFixed(2)},M=I=>a.min===null||a.min===void 0||isNaN(I)?I:I{const O=F(I);if(!O){E.value="",S.value="";return}E.value=b(O),S.value=O},V=I=>{const O=w(I);if(S.value=O,E.value=k(O),Q.value=!0,O===""){l("update:modelValue","");return}const L=F(O);L!==""&&L!==F(a.modelValue)&&l("update:modelValue",L)},D=()=>{const I=Q.value?S.value:a.modelValue;if(I==="")l("update:modelValue",""),l("change",""),E.value="",S.value="";else{const O=F(I,!0);O===""?U(a.modelValue):(l("update:modelValue",O),O!==F(a.modelValue)&&l("change",O),E.value=b(O),S.value=O)}Q.value=!1};return be([()=>a.modelValue,()=>a.numberFormat],([I])=>{Q.value||U(I)}),U(a.modelValue),(I,O)=>{const L=B("el-input");return r(),$(L,{class:ie(e.errorClass),id:e.id,placeholder:e.placeholder,"model-value":E.value,disabled:e.disabled,onBlur:D,onInput:V,onKeydown:g},la({prefix:d(()=>[o("span",{innerHTML:s.value},null,8,E7)]),_:2},[I.$slots.suffix?{name:"suffix",fn:d(()=>[ka(I.$slots,"suffix")]),key:"0"}:void 0]),1032,["class","id","placeholder","model-value","disabled"])}}},U7={key:0,class:"fct-shared-variant-item-box__switch"},I7={class:"fct-shared-variant-item-box__hint"},Q7={key:1,class:"fct-inline-select-wrap"},D7={class:"fct-price-with-inclusion"},V7={key:0,class:"fct-required"},T7={class:"fct-admin-input-wrapper"},M7={key:0},L7={key:0,class:"fct-collapse-heading"},R7={key:1,class:"fct-tag-group"},O7={class:"fct-tag-item"},H7={class:"fct-tags-internal"},P7={key:0,class:"fct-tag-item"},N7={class:"fct-tags-internal"},K7={key:1,class:"fct-tag-item"},G7={class:"fct-tags-internal"},j7={key:2,class:"fct-tag-item"},z7={class:"fct-tags-internal"},q7={class:"fct-tag-item"},Y7={class:"fct-tags-internal"},W7={class:"fct-shared-variant-pricing-additional"},X7={class:"fct-admin-input-wrapper"},J7={class:"fct-admin-input-wrapper"},Z7={class:"fct-admin-input-wrapper"},eL={key:0},tL={class:"fct-admin-input-wrapper"},aL={class:"fct-admin-input-wrapper"},lL={class:"fct-admin-input-wrapper"},sL={class:"fct-admin-input-wrapper"},nL={class:"fct-admin-input-wrapper"},oL={class:"fct-admin-input-wrapper"},iL={class:"fct-admin-input-wrapper"},qi=2,Up={__name:"VariantPrice",props:{variant:Object,fieldKey:String,modeType:String,product:Object,productEditModel:Object,isGroupMode:{type:Boolean,default:!1}},setup(e){const t=e,a=je.get("app_config.isProActive"),l=T(),s=T([""]),i=T(0),c=new Set(["compare_price","repeat_interval","trial_days","times","signup_fee_name","signup_fee","setup_fee_per_item","item_cost","manage_cost"]);be(()=>{var b;return(b=t.variant)==null?void 0:b.id},()=>{var b,k;i.value=Number((k=(b=t.variant)==null?void 0:b.other_info)==null?void 0:k.signup_fee)||0}),be(()=>{var b,k;return(k=(b=t.variant)==null?void 0:b.other_info)==null?void 0:k.payment_type},b=>{b==="subscription"&&(s.value="1")}),be(()=>{var b;return(b=t.productEditModel)==null?void 0:b.validationErrors},b=>{if(!b||Object.keys(b).length===0)return;Object.keys(b).some(F=>{for(const M of c)if(F.includes(M))return!0;return!1})&&(s.value="1")},{deep:!0});let p=t.product.variants.length>0;const m=N(()=>{var b;return((b=window.fluentCartAdminApp)==null?void 0:b.subscription_intervals)??[]}),_=()=>{var b,k,F;return((b=t.variant)==null?void 0:b.other_info)&&["subscription"].includes((F=(k=t.variant)==null?void 0:k.other_info)==null?void 0:F.payment_type)},g=(b,k,F,M)=>{t.productEditModel.updatePricingOtherValue(b,k,F,M,t.modeType)},y=(b,k,F)=>{const M=Number(b);(!Number.isFinite(M)||M{t.productEditModel.updatePricingOtherValue("manage_setup_fee",b,t.fieldKey,t.variant,t.modeType),b==="no"?(i.value=Number(t.variant.other_info.signup_fee),t.productEditModel.updatePricingOtherValue("signup_fee","0",t.fieldKey,t.variant,t.modeType)):t.productEditModel.updatePricingOtherValue("signup_fee",i.value,t.fieldKey,t.variant,t.modeType)},w=N(()=>{var F,M;const b=Number(t.variant.item_price)||0,k=Number((M=(F=t.variant)==null?void 0:F.other_info)==null?void 0:M.times)||1;return b*k}),C=b=>{const k=m.value.find(M=>M.value===b);return!(k!=null&&k.label)&&!b?"":((k==null?void 0:k.label)||b).split(" ").map(M=>M.charAt(0).toUpperCase()).join("")};return(b,k)=>{const F=B("el-switch"),M=B("el-option"),E=B("el-select"),S=B("el-form-item"),Q=B("el-col"),U=B("el-input"),V=B("el-row"),D=B("el-checkbox"),I=B("el-tooltip");return r(),$(Rn,null,{label:d(()=>[R(f(A(u)("Pricing")),1)]),action:d(()=>{var O;return[(O=e.variant)!=null&&O.other_info?(r(),h("div",U7,[e.isGroupMode?(r(),h("div",Q7,[o("label",null,f(A(u)("Payment Type"))+":",1),n(E,{size:"small",modelValue:e.variant.other_info.payment_type,"onUpdate:modelValue":k[1]||(k[1]=L=>e.variant.other_info.payment_type=L),"popper-class":"fct-group-select-popper",onChange:k[2]||(k[2]=L=>{L==="subscription"&&!e.variant.other_info.repeat_interval&&xe(()=>{e.variant.other_info.repeat_interval="yearly"})}),class:"fct-inline-select",placement:"bottom"},{default:d(()=>[n(M,{value:"__unchanged__",label:A(u)("Unchanged")},null,8,["label"]),n(M,{value:"subscription",label:A(u)("Subscription")},null,8,["label"]),n(M,{value:"onetime",label:A(u)("One-time")},null,8,["label"])]),_:1},8,["modelValue"])])):(r(),h(H,{key:0},[o("span",I7,f(A(u)("Subscription")),1),n(F,{size:"small","model-value":e.variant.other_info.payment_type==="subscription",onChange:k[0]||(k[0]=L=>{const P=L?"subscription":"onetime";e.productEditModel.updatePricingOtherValue("payment_type",P,null,e.variant,e.modeType),e.variant.other_info.repeat_interval="",L&&xe(()=>{var G;e.variant.other_info.repeat_interval="yearly",e.variant.other_info.times==""&&((G=l.value.value)==null||G.focus())})})},null,8,["model-value"])],64))])):x("",!0)]}),default:d(()=>[o("div",D7,[n(S,{class:"fct-price-with-inclusion__price"},{label:d(()=>{var O,L;return[R(f(((L=(O=e.variant)==null?void 0:O.other_info)==null?void 0:L.installment)==="yes"?A(u)("Installment Price"):A(u)("Price"))+" ",1),e.isGroupMode?x("",!0):(r(),h("span",V7,"*"))]}),default:d(()=>{var O,L;return[o("div",T7,[n(zs,{"error-class":e.productEditModel.hasValidationError(`${e.fieldKey}.item_price`)?"is-error":"",id:`${e.fieldKey}.item_price`,placeholder:e.isGroupMode?A(u)("Unchanged"):((L=(O=e.variant)==null?void 0:O.other_info)==null?void 0:L.installment)==="yes"?A(u)("Installment Price"):A(u)("Price"),"model-value":e.variant.item_price,"onUpdate:modelValue":k[3]||(k[3]=P=>{e.variant.item_price=P,e.productEditModel.updatePricingValue("item_price",P,e.fieldKey,e.variant,e.modeType)})},{suffix:d(()=>{var P,G,j,z;return[((G=(P=e.variant)==null?void 0:P.other_info)==null?void 0:G.installment)==="yes"?(r(),h("span",M7," x "+f((z=(j=e.variant)==null?void 0:j.other_info)==null?void 0:z.times),1)):x("",!0)]}),_:1},8,["error-class","id","placeholder","model-value"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.item_price`},null,8,["validation-errors","field-key"])])]}),_:1}),e.productEditModel.isTaxEnabled()?(r(),$(S,{key:0,class:"fct-price-with-inclusion__tax"},{label:d(()=>[R(f(A(u)("Tax")),1)]),default:d(()=>{var O,L;return[e.isGroupMode?(r(),$(E,{key:0,modelValue:e.variant.other_info.tax_inclusion,"onUpdate:modelValue":k[4]||(k[4]=P=>e.variant.other_info.tax_inclusion=P),"popper-class":"fct-group-select-popper"},{default:d(()=>[n(M,{value:"__unchanged__",label:A(u)("Unchanged")},null,8,["label"]),n(M,{value:"included",label:A(u)("Tax included")},null,8,["label"]),n(M,{value:"excluded",label:A(u)("Tax excluded")},null,8,["label"])]),_:1},8,["modelValue"])):(r(),$(E,{key:1,"model-value":((L=(O=e.variant)==null?void 0:O.other_info)==null?void 0:L.tax_inclusion)||"_default_",onChange:k[5]||(k[5]=P=>{const G=P==="_default_"?"":P;e.variant.other_info&&(e.variant.other_info.tax_inclusion=G),e.productEditModel.updatePricingOtherValue("tax_inclusion",G,e.fieldKey,e.variant,e.modeType)})},{default:d(()=>[n(M,{value:"_default_",label:A(u)("Store default")},null,8,["label"]),n(M,{value:"included",label:A(u)("Tax included")},null,8,["label"]),n(M,{value:"excluded",label:A(u)("Tax excluded")},null,8,["label"])]),_:1},8,["model-value"]))]}),_:1})):x("",!0)]),n(Ep,{modelValue:s.value,"onUpdate:modelValue":k[27]||(k[27]=O=>s.value=O)},{header:d(({isOpen:O})=>{var L,P,G,j,z,Z;return[O?(r(),h("div",L7,f(A(u)("Additional display prices")),1)):(r(),h("div",R7,[o("div",O7,[R(f(A(u)("Compare-at"))+" ",1),o("span",H7,f((L=e.variant)!=null&&L.compare_price?b.appVars.shop.currency_sign+e.variant.compare_price:0),1)]),e.variant.other_info.payment_type==="subscription"?(r(),h("div",P7,[R(f(A(u)("Installment"))+" ",1),o("span",N7,f(((G=(P=e.variant)==null?void 0:P.other_info)==null?void 0:G.installment)==="yes"?A(u)("Yes"):A(u)("No")),1)])):x("",!0),e.variant.other_info.payment_type==="subscription"?(r(),h("div",K7,[R(f(A(u)("Interval"))+" ",1),o("span",G7,f(C(e.variant.other_info.repeat_interval)),1)])):x("",!0),e.variant.other_info.payment_type==="subscription"?(r(),h("div",j7,[R(f(A(u)("Trial Days"))+" ",1),o("span",z7,f(((z=(j=e.variant)==null?void 0:j.other_info)==null?void 0:z.trial_days)??0),1)])):x("",!0),o("div",q7,[R(f(A(u)("Cost Per Item"))+" ",1),o("span",Y7,f((Z=e.variant)!=null&&Z.item_cost?b.appVars.shop.currency_sign+e.variant.item_cost:A(u)("N/A")),1)])]))]}),default:d(()=>[o("div",W7,[n(V,{gutter:15},{default:d(()=>[n(Q,{lg:12},{default:d(()=>[o("div",X7,[n(S,null,{label:d(()=>[n(pa,{title:A(u)("Compare at price"),content:A(u)("Set a higher price to show with a strike-through, highlighting a discount for sales")},null,8,["title","content"])]),default:d(()=>[n(zs,{"error-class":e.productEditModel.hasValidationError(`${e.fieldKey}.compare_price`)?"is-error":"",id:`${e.fieldKey}.compare_price`,placeholder:e.isGroupMode?A(u)("Unchanged"):A(u)("Compare at price"),"model-value":e.variant.compare_price,"onUpdate:modelValue":k[6]||(k[6]=O=>{e.variant.compare_price=O,e.productEditModel.updatePricingValue("compare_price",O,e.fieldKey,e.variant,e.modeType)})},null,8,["error-class","id","placeholder","model-value"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.compare_price`},null,8,["validation-errors","field-key"])]),_:1})])]),_:1}),_()?(r(),h(H,{key:0},[n(Q,{lg:12},{default:d(()=>[o("div",J7,[n(S,{label:A(u)("Interval"),required:""},{default:d(()=>[n(E,{class:ie(["fct-repeat-payment-every-select",e.productEditModel.hasValidationError(`${e.fieldKey}.other_info.repeat_interval`)?"is-error":""]),id:`${e.fieldKey}.other_info.repeat_interval`,modelValue:e.variant.other_info.repeat_interval,"onUpdate:modelValue":k[7]||(k[7]=O=>e.variant.other_info.repeat_interval=O),placeholder:A(u)("Interval"),onChange:k[8]||(k[8]=O=>{e.productEditModel.updatePricingOtherValue("repeat_interval",O,e.fieldKey,e.variant,e.modeType)})},{default:d(()=>[(r(!0),h(H,null,ae(m.value,O=>(r(),$(M,{key:O.value,label:O.label,value:O.value},null,8,["label","value"]))),128))]),_:1},8,["class","id","modelValue","placeholder"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.other_info.repeat_interval`},null,8,["validation-errors","field-key"])]),_:1},8,["label"])])]),_:1}),n(Q,{lg:12},{default:d(()=>[n(S,{class:"has-tooltip"},{label:d(()=>[n(pa,{title:A(u)("Trial Days"),content:A(u)("Enter the number of days the free trial will last. The trial period cannot exceed 365 days.")},null,8,["title","content"])]),default:d(()=>[n(U,{class:ie(e.productEditModel.hasValidationError(`${e.fieldKey}.other_info.trial_days`)?"is-error":""),id:`${e.fieldKey}.other_info.trial_days`,placeholder:A(u)("Trial Days"),type:"number",min:1,max:365,modelValue:e.variant.other_info.trial_days,"onUpdate:modelValue":k[9]||(k[9]=O=>e.variant.other_info.trial_days=O),modelModifiers:{number:!0},autofocus:"",onInput:k[10]||(k[10]=O=>{e.productEditModel.updatePricingOtherValue("trial_days",O,e.fieldKey,e.variant,e.modeType)})},null,8,["class","id","placeholder","modelValue"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.other_info.trial_days`},null,8,["validation-errors","field-key"])]),_:1})]),_:1})],64)):x("",!0)]),_:1}),_()?(r(),$(V,{key:0},{default:d(()=>{var O;return[n(Q,{lg:24},{default:d(()=>[n(S,null,{default:d(()=>[n(D,{"true-value":"yes","false-value":"no",label:A(u)("Enable installment payment"),class:ie(e.productEditModel.hasValidationError(`${e.fieldKey}.other_info.installment`)?"is-error":""),id:`${e.fieldKey}.other_info.installment`,placeholder:A(u)("Occurrence"),type:"number",modelValue:e.variant.other_info.installment,"onUpdate:modelValue":k[11]||(k[11]=L=>e.variant.other_info.installment=L),modelModifiers:{number:!0},disabled:!A(a),onChange:k[12]||(k[12]=L=>{if(g("installment",L,e.fieldKey,e.variant),L==="no"){g("times",0,e.fieldKey,e.variant);return}(!e.variant.other_info.times||e.variant.other_info.times<2)&&g("times",2,e.fieldKey,e.variant)}),autofocus:""},null,8,["label","class","id","placeholder","modelValue","disabled"]),A(a)?x("",!0):(r(),$(I,{key:0,"popper-class":"fct-tooltip"},{content:d(()=>[R(f(A(u)("This feature is available in pro version only.")),1)]),default:d(()=>[n(J,{name:"Crown",class:"fct-pro-icon",style:{"margin-left":"5px"}})]),_:1})),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.other_info.times`},null,8,["validation-errors","field-key"])]),_:1})]),_:1}),n(va,{visible:((O=e.variant.other_info)==null?void 0:O.installment)==="yes",accordion:""},{default:d(()=>[n(V,{gutter:15},{default:d(()=>{var L;return[n(Q,{lg:12},{default:d(()=>[n(S,{required:"",class:"has-tooltip-and-required"},{label:d(()=>[n(pa,{title:A(u)("Installment Count"),content:A(u)("Number of payments to split the price over the installment period.")},null,8,["title","content"])]),default:d(()=>[n(U,{class:ie(e.productEditModel.hasValidationError(`${e.fieldKey}.other_info.times`)?"is-error":""),id:`${e.fieldKey}.other_info.times`,placeholder:A(u)("Installment Count"),type:"number",min:qi,modelValue:e.variant.other_info.times,"onUpdate:modelValue":k[13]||(k[13]=P=>e.variant.other_info.times=P),modelModifiers:{number:!0},onInput:k[14]||(k[14]=P=>{g("times",P,e.fieldKey,e.variant)}),onChange:k[15]||(k[15]=P=>{y(P,e.fieldKey,e.variant)}),autofocus:"",ref_key:"inputSubscriptionTimesRef",ref:l},null,8,["class","id","placeholder","modelValue"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.other_info.times`},null,8,["validation-errors","field-key"])]),_:1})]),_:1}),((L=e.variant.other_info)==null?void 0:L.installment)==="yes"?(r(),$(Q,{key:0,lg:12},{default:d(()=>[n(S,null,{label:d(()=>[n(pa,{title:A(u)("Total Price"),content:A(u)("Final price after all installments, excluding any fees.")},null,8,["title","content"])]),default:d(()=>[n(U,{id:`${e.fieldKey}.total_price`,type:"number",min:1,disabled:"","model-value":w.value,autofocus:""},{prefix:d(()=>[o("span",null,f(b.appVars.shop.currency_sign),1)]),_:1},8,["id","model-value"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.other_info.times`},null,8,["validation-errors","field-key"])]),_:1})]),_:1})):x("",!0)]}),_:1})]),_:1},8,["visible"])]}),_:1})):x("",!0),_()?(r(),$(V,{key:1,gutter:15},{default:d(()=>{var O,L;return[n(Q,{lg:24},{default:d(()=>[o("div",Z7,[n(S,{label:e.isGroupMode?A(u)("Setup fee"):void 0,class:ie(e.isGroupMode?"fct-group-select-label":"")},{default:d(()=>[e.isGroupMode?(r(),$(E,{key:0,size:"small",modelValue:e.variant.other_info.manage_setup_fee,"onUpdate:modelValue":k[16]||(k[16]=P=>e.variant.other_info.manage_setup_fee=P),style:{width:"160px"},"popper-class":"fct-group-select-popper"},{default:d(()=>[n(M,{value:"__unchanged__",label:A(u)("Unchanged")},null,8,["label"]),n(M,{value:"yes",label:A(u)("Setup fee: Yes")},null,8,["label"]),n(M,{value:"no",label:A(u)("Setup fee: No")},null,8,["label"])]),_:1},8,["modelValue"])):(r(),h(H,{key:1},[n(F,{size:"small",disabled:!A(a),modelValue:e.variant.other_info.manage_setup_fee,"onUpdate:modelValue":k[17]||(k[17]=P=>e.variant.other_info.manage_setup_fee=P),"active-value":"yes","inactive-value":"no",onChange:v,"active-text":A(u)("Setup fee")},null,8,["disabled","modelValue","active-text"]),A(a)?x("",!0):(r(),h("span",eL,[n(I,{"popper-class":"fct-tooltip"},{content:d(()=>[R(f(A(u)("This feature is available in pro version only.")),1)]),default:d(()=>[n(J,{name:"Crown",class:"fct-pro-icon",style:{"margin-left":"5px"}})]),_:1})]))],64))]),_:1},8,["label","class"])])]),_:1}),n(va,{visible:((L=(O=e.variant)==null?void 0:O.other_info)==null?void 0:L.manage_setup_fee)=="yes",accordion:""},{default:d(()=>[n(V,{gutter:15,class:"fct-setup-fee-wrap px-[7.5px]"},{default:d(()=>[n(Q,{lg:12},{default:d(()=>[o("div",tL,[n(S,{required:"",class:"has-tooltip-and-required"},{label:d(()=>[n(pa,{title:A(u)("Setup fee label"),content:A(u)("Name the one-time setup fee (e.g., Initial Setup)")},null,8,["title","content"])]),default:d(()=>[n(U,{class:ie(e.productEditModel.hasValidationError(`${e.fieldKey}.other_info.signup_fee_name`)?"is-error":""),id:`${e.fieldKey}.other_info.signup_fee_name`,placeholder:A(u)("Setup fee name"),type:"text",modelValue:e.variant.other_info.signup_fee_name,"onUpdate:modelValue":k[18]||(k[18]=P=>e.variant.other_info.signup_fee_name=P),onInput:k[19]||(k[19]=P=>{e.productEditModel.updatePricingOtherValue("signup_fee_name",P,e.fieldKey,e.variant,e.modeType)})},null,8,["class","id","placeholder","modelValue"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.other_info.signup_fee_name`},null,8,["validation-errors","field-key"])]),_:1})])]),_:1}),n(Q,{lg:12},{default:d(()=>[o("div",aL,[n(S,{required:"",class:"has-tooltip-and-required"},{label:d(()=>[n(pa,{title:A(u)("Setup fee amount"),content:A(u)("Set the one-time setup fee amount (e.g., $50) per order. This fee does not apply to quantity.")},null,8,["title","content"])]),default:d(()=>[n(zs,{"error-class":e.productEditModel.hasValidationError(`${e.fieldKey}.other_info.signup_fee`)?"is-error":"",id:`${e.fieldKey}.other_info.signup_fee`,placeholder:A(u)("Setup fee amount"),"model-value":e.variant.other_info.signup_fee,"onUpdate:modelValue":k[20]||(k[20]=P=>{e.variant.other_info.signup_fee=P,e.productEditModel.updatePricingOtherValue("signup_fee",P,e.fieldKey,e.variant,e.modeType)})},null,8,["error-class","id","placeholder","model-value"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.other_info.signup_fee`},null,8,["validation-errors","field-key"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.other_info.setup_fee_per_item`},null,8,["validation-errors","field-key"])]),_:1})])]),_:1})]),_:1})]),_:1},8,["visible"])]}),_:1})):x("",!0),n(V,{gutter:15},{default:d(()=>[e.variant.manage_cost||e.isGroupMode?(r(),$(Q,{key:0,lg:24,class:"fct-manage-cost-col"},{default:d(()=>[o("div",lL,[n(S,{label:e.isGroupMode?A(u)("Calculate profit/cost"):void 0,class:ie(e.isGroupMode?"fct-group-select-label":"")},{default:d(()=>[e.isGroupMode?(r(),$(E,{key:0,size:"small",modelValue:e.variant.manage_cost,"onUpdate:modelValue":k[21]||(k[21]=O=>e.variant.manage_cost=O),style:{width:"200px"},"popper-class":"fct-group-select-popper"},{default:d(()=>[n(M,{value:"__unchanged__",label:A(u)("Unchanged")},null,8,["label"]),n(M,{value:"true",label:A(u)("Enable")},null,8,["label"]),n(M,{value:"false",label:A(u)("Disable")},null,8,["label"])]),_:1},8,["modelValue"])):(r(),$(F,{key:1,size:"small",modelValue:e.variant.manage_cost,"onUpdate:modelValue":k[22]||(k[22]=O=>e.variant.manage_cost=O),"active-value":"true","inactive-value":"false",onChange:k[23]||(k[23]=O=>{A(p)&&e.productEditModel.updatePricingOtherValue("manage_cost",O,e.fieldKey,e.variant,e.modeType),bf(p)?p.value=!0:p=!0}),"active-text":A(u)("Calculate profit/cost")},null,8,["modelValue","active-text"]))]),_:1},8,["label","class"])])]),_:1})):x("",!0),n(va,{visible:e.variant.manage_cost==="true",accordion:""},{default:d(()=>[n(V,{gutter:15,class:"fct-cost-profit-wrap"},{default:d(()=>{var O,L,P;return[n(Q,{lg:e.isGroupMode?24:((O=e.product.detail)==null?void 0:O.variation_type)==="simple_variations"?12:8},{default:d(()=>[o("div",sL,[n(S,null,{label:d(()=>[n(pa,{title:A(u)("Cost per item"),content:A(u)("Customers won't see this")},null,8,["title","content"])]),default:d(()=>[n(zs,{"error-class":e.productEditModel.hasValidationError(`${e.fieldKey}.item_cost`)?"is-error":"",id:`${e.fieldKey}.item_cost`,placeholder:e.isGroupMode?A(u)("Unchanged"):A(u)("Cost per item"),"model-value":e.variant.item_cost,"onUpdate:modelValue":k[24]||(k[24]=G=>{e.variant.item_cost=G,e.productEditModel.updatePricingValue("item_cost",G,e.fieldKey,e.variant,e.modeType)})},null,8,["error-class","id","placeholder","model-value"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.item_cost`},null,8,["validation-errors","field-key"])]),_:1})])]),_:1},8,["lg"]),e.isGroupMode?x("",!0):(r(),$(Q,{key:0,lg:((L=e.product.detail)==null?void 0:L.variation_type)==="simple_variations"?6:8},{default:d(()=>[o("div",nL,[n(S,{label:A(u)("Profit")},{default:d(()=>[n(U,{disabled:"",class:"fct-profit-display",value:A(rm)(e.variant)},null,8,["value"])]),_:1},8,["label"])])]),_:1},8,["lg"])),e.isGroupMode?x("",!0):(r(),$(Q,{key:1,lg:((P=e.product.detail)==null?void 0:P.variation_type)==="simple_variations"?6:8},{default:d(()=>[o("div",oL,[n(S,{label:A(u)("Margin")},{default:d(()=>[n(U,{disabled:"",class:"fct-margin-display",value:A(dm)(e.variant)},null,8,["value"])]),_:1},8,["label"])])]),_:1},8,["lg"]))]}),_:1})]),_:1},8,["visible"]),n(Q,{lg:24},{default:d(()=>[o("div",iL,[(e.variant.other_info,x("",!0))])]),_:1})]),_:1})])]),_:1},8,["modelValue"])]),_:1})}}},rL={class:"fct-adjust-by-wrap"},dL={class:"fct-adjust-by-row"},uL={class:"fct-adjust-by-col"},cL={class:"title"},AL={class:"fct-adjust-by-col"},pL={class:"title"},fL={class:"fct-adjust-by-action"},Vr={__name:"StockAdjuster",props:{variant:Object,fieldKey:String,productEditModel:Object},emits:["save"],setup(e,{expose:t,emit:a}){const l=a,s=T(!1);return t({toggle:()=>s.value=!s.value}),(i,c)=>{const p=B("el-input"),m=B("el-button"),_=B("el-popover");return r(),$(_,{visible:s.value,"popper-class":"fct-stock-dropdown",trigger:"click",placement:"bottom-end"},{reference:d(()=>[o("div",{onClick:c[7]||(c[7]=g=>s.value=!s.value),class:"fct-stock-adjuster-trigger"},[n(J,{name:"Configuration"})])]),default:d(()=>[o("div",rL,[o("div",dL,[o("div",uL,[o("span",cL,f(A(u)("Adjust by")),1),n(p,{size:"small",placeholder:A(u)("Quantity"),type:"number",modelValue:e.variant.adjusted_quantity,"onUpdate:modelValue":c[0]||(c[0]=g=>e.variant.adjusted_quantity=g),modelModifiers:{number:!0},onKeyup:c[1]||(c[1]=g=>{e.productEditModel.onChangeAdjustedQuantity("adjusted_quantity",g.target.value,e.fieldKey)}),onChange:c[2]||(c[2]=g=>{e.productEditModel.onChangeAdjustedQuantity("adjusted_quantity",g,e.fieldKey)})},null,8,["placeholder","modelValue"])]),o("div",AL,[o("span",pL,f(A(u)("New Stock")),1),n(p,{size:"small",placeholder:A(u)("New Stock"),type:"number",min:1,modelValue:e.variant.new_stock,"onUpdate:modelValue":c[3]||(c[3]=g=>e.variant.new_stock=g),modelModifiers:{number:!0},onKeyup:c[4]||(c[4]=g=>{e.productEditModel.onChangeNewStock("new_stock",g.target.value,e.fieldKey)})},null,8,["placeholder","modelValue"])])]),o("div",fL,[n(m,{size:"small",type:"info",soft:"",onClick:c[5]||(c[5]=g=>s.value=!1)},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1}),n(m,{size:"small",type:"primary",onClick:c[6]||(c[6]=g=>{s.value=!1,l("save")}),disabled:e.variant.new_stock===""},{default:d(()=>[R(f(A(u)("Apply")),1)]),_:1},8,["disabled"])])])]),_:1},8,["visible"])}}},mL={class:"fct-shared-variant-item-box__switch"},hL={key:1,class:"fct-inline-select-wrap"},_L={key:0,class:"fct-variant-stock-grid"},vL={class:"fct-variant-stock-box"},gL={class:"fct-stock-box-label"},yL={class:"fct-stock-box-content fct-stock-box-total-content"},bL={class:"fct-stock-number"},wL={class:"fct-variant-stock-box"},CL={class:"fct-stock-box-label"},BL={class:"fct-stock-box-content"},kL={class:"fct-stock-number"},xL={class:"fct-variant-stock-box"},SL={class:"fct-stock-box-label"},FL={class:"fct-stock-box-content"},$L={class:"fct-stock-number"},EL={class:"fct-variant-stock-box"},UL={class:"fct-stock-box-label"},IL={class:"fct-stock-box-content"},QL={class:"fct-stock-number"},DL={key:1,class:"fct-admin-input-wrapper"},VL={key:0,class:"fct-collapse-heading"},TL={key:1,class:"fct-tag-group"},ML={class:"fct-tag-item"},LL={class:"fct-admin-input-wrapper"},RL={style:{display:"flex","justify-content":"space-between","align-items":"center",width:"100%"}},OL=["disabled"],Ip={__name:"VariantInventory",props:{variant:Object,fieldKey:String,modeType:String,product:Object,productEditModel:Object,isGroupMode:{type:Boolean,default:!1}},setup(e){const t=e,a=T(!1),l=N(()=>t.variant.manage_stock=="1"||t.variant.manage_stock==1),s=N(()=>{var m;return["simple_variations","advanced_variations"].includes((m=t.product.detail)==null?void 0:m.variation_type)}),i=m=>{t.productEditModel.updatePricingValue("manage_stock",m,t.fieldKey,t.variant,t.modeType)};Ie(()=>{t.variant.new_stock===void 0&&(t.variant.new_stock=t.variant.total_stock),t.variant.adjusted_quantity===void 0&&(t.variant.adjusted_quantity=0)});const c=()=>{let m=parseInt(t.variant.new_stock)||0;const _=t.variant.total_stock,g=t.variant.available;t.variant.total_stock=m<0?0:m;let y=(parseInt(t.variant.total_stock)||0)-(parseInt(t.variant.committed)||0)-(parseInt(t.variant.on_hold)||0);t.variant.available=y<0?0:y,t.variant.adjusted_quantity=0,t.variant.new_stock=t.variant.total_stock,ce.put(`products/${t.product.ID}/update-inventory/${t.variant.id}`,{total_stock:t.variant.total_stock,available:t.variant.available}).then(v=>{Y.success(v.message)}).catch(v=>{var w;t.variant.total_stock=_,t.variant.available=g,t.variant.new_stock=_,Y.error(((w=v==null?void 0:v.data)==null?void 0:w.message)||u("Failed to update inventory"))})},p=()=>{var v;if(a.value)return;const m=t.product.post_title||"";if(!m)return;const g=["simple_variations","advanced_variations"].includes((v=t.product.detail)==null?void 0:v.variation_type)&&t.variant.variation_title||"",y=t.variant.id||0;a.value=!0,ce.get("products/suggest-sku",{title:m,variant_title:g,exclude_id:y}).then(w=>{w!=null&&w.sku&&(t.variant.sku=w.sku,t.productEditModel.updatePricingValue("sku",w.sku,t.fieldKey,t.variant,t.modeType))}).catch(w=>{var b;const C=((b=w==null?void 0:w.data)==null?void 0:b.message)||u("Failed to generate SKU.");Y.error(C)}).finally(()=>{a.value=!1})};return(m,_)=>{var b;const g=B("el-switch"),y=B("el-option"),v=B("el-select"),w=B("el-input"),C=B("el-form-item");return r(),$(Rn,{class:ie(["fct-variant-inventory",((b=e.product.detail)==null?void 0:b.variation_type)==="simple"?"fct-variant-inventory--simple":""])},la({default:d(()=>[l.value&&s.value&&!e.isGroupMode?(r(),h("div",_L,[o("div",vL,[o("div",gL,f(A(u)("Total Stock")),1),o("div",yL,[o("div",bL,f(e.variant.total_stock),1),n(Vr,{variant:e.variant,"field-key":e.fieldKey,"product-edit-model":e.productEditModel,onSave:c},null,8,["variant","field-key","product-edit-model"])])]),o("div",wL,[o("div",CL,f(A(u)("Available")),1),o("div",BL,[o("div",kL,f(e.variant.available),1)])]),o("div",xL,[o("div",SL,f(A(u)("On Hold")),1),o("div",FL,[o("div",$L,f(e.variant.on_hold),1)])]),o("div",EL,[o("div",UL,f(A(u)("Delivered")),1),o("div",IL,[o("div",QL,f(e.variant.committed),1)])])])):x("",!0),l.value&&s.value&&e.isGroupMode?(r(),h("div",DL,[n(C,{label:A(u)("Total Stock")},{default:d(()=>[n(w,{type:"number",min:0,placeholder:A(u)("Unchanged"),modelValue:e.variant.total_stock,"onUpdate:modelValue":_[2]||(_[2]=k=>e.variant.total_stock=k)},null,8,["placeholder","modelValue"])]),_:1},8,["label"])])):x("",!0),e.isGroupMode?x("",!0):(r(),$(Ep,{key:2},{header:d(({isOpen:k})=>[k?(r(),h("div",VL,f(A(u)("More details")),1)):x("",!0),k?x("",!0):(r(),h("div",TL,[o("div",ML,f(A(u)("SKU")),1)]))]),default:d(()=>[o("div",LL,[n(C,null,{label:d(()=>[o("div",RL,[n(pa,{title:A(u)("SKU (Stock Keeping Unit)"),placement:"bottom"},null,8,["title"]),o("button",{type:"button",onClick:p,disabled:!e.product.post_title||a.value,class:"underline-link-button fct-generate-sku-btn"},f(a.value?A(u)("Generating..."):A(u)("Generate SKU")),9,OL)])]),default:d(()=>[n(w,{class:ie(e.productEditModel.hasValidationError(`${e.fieldKey}.sku`)?"is-error":""),id:`${e.fieldKey}.sku`,placeholder:A(u)("SKU"),type:"text",modelValue:e.variant.sku,"onUpdate:modelValue":_[3]||(_[3]=k=>e.variant.sku=k),maxlength:"30","show-word-limit":"",onInput:_[4]||(_[4]=k=>{e.productEditModel.updatePricingValue("sku",k,e.fieldKey,e.variant,e.modeType)})},null,8,["class","id","placeholder","modelValue"]),n(oa,{"validation-errors":e.productEditModel.validationErrors,"field-key":`${e.fieldKey}.sku`},null,8,["validation-errors","field-key"])]),_:1})])]),_:1}))]),_:2},[s.value?{name:"label",fn:d(()=>[R(f(A(u)("Inventory")),1)]),key:"0"}:void 0,s.value?{name:"action",fn:d(()=>[o("div",mL,[e.isGroupMode?(r(),h("div",hL,[o("label",null,f(A(u)("Manage Stock"))+":",1),n(v,{size:"small",modelValue:e.variant.manage_stock,"onUpdate:modelValue":_[1]||(_[1]=k=>e.variant.manage_stock=k),"popper-class":"fct-group-select-popper",class:"fct-inline-select",placement:"bottom"},{default:d(()=>[n(y,{value:"__unchanged__",label:A(u)("Unchanged")},null,8,["label"]),n(y,{value:"1",label:A(u)("Manage stock")},null,8,["label"]),n(y,{value:"0",label:A(u)("Don't manage")},null,8,["label"])]),_:1},8,["modelValue"])])):(r(),$(g,{key:0,size:"small",modelValue:e.variant.manage_stock,"onUpdate:modelValue":_[0]||(_[0]=k=>e.variant.manage_stock=k),onChange:i,"active-value":"1","inactive-value":"0"},null,8,["modelValue"]))])]),key:"1"}:void 0]),1032,["class"])}}},HL={class:"fct-shared-variant-item-box__switch"},PL={class:"fct-shared-variant-item-box__hint"},NL={key:1,class:"fct-inline-select-wrap"},KL={key:0,class:"fct-package-select-icon"},GL={class:"fct-add-new-package-option"},jL={class:"fct-package-options"},zL={class:"fct-package-options-info"},qL={class:"fct-package-options-name"},YL={class:"fct-package-options-dimensions"},WL={class:"fct-product-weight-input"},Qp={__name:"ProductShipping",props:{variant:Object,fieldKey:String,modeType:String,productEditModel:Object,isGroupMode:{type:Boolean,default:!1}},setup(e){var C,b;const t=e,a=T(!1),l=T(!1),s=T(je.get("shop.shipping_packages")||[]),i=[{label:"kg",value:"kg"},{label:"g",value:"g"},{label:"lbs",value:"lbs"},{label:"oz",value:"oz"}],c={box:"Box",envelope:"Envelope",soft_package:"SoftPackage"},p=N(()=>{var F,M;const k=(M=(F=t.variant)==null?void 0:F.other_info)==null?void 0:M.package_slug;return k?s.value.find(E=>E.slug===k)||null:s.value.find(E=>E.is_default)||null}),m=k=>{if(!k)return u("Select a package");const F=k.type==="envelope"?k.length+" × "+k.width+" "+k.dimension_unit:k.length+" × "+k.width+" × "+k.height+" "+k.dimension_unit;return(k.is_default?u("Store default")+" · ":"")+k.name+" - "+F+", "+k.weight+" "+k.weight_unit},_=()=>ce.get("shipping/packages").then(k=>{s.value=k.packages||s.value}).catch(()=>{Qd({message:u("Failed to load packages."),type:"error"})}),g=T(((b=(C=t.variant)==null?void 0:C.other_info)==null?void 0:b.package_slug)||""),y=async k=>{if(k==="__add_new__"){t.variant.other_info.package_slug=g.value,await _(),a.value=!0;return}g.value=k||"",t.productEditModel.updatePricingOtherValue("package_slug",k,t.fieldKey,t.variant,t.modeType)},v=k=>{t.productEditModel.updatePricingOtherValue("weight_unit",k,t.fieldKey,t.variant,t.modeType)},w=k=>{const F=JSON.parse(JSON.stringify(s.value));k.is_default&&s.value.forEach(S=>{S.is_default=!1});let M=k.slug,E=1;for(;s.value.some(S=>S.slug===M);)M=k.slug+"-"+E,E++;k.slug=M,s.value.push(k),l.value=!0,ce.post("shipping/packages",{packages:s.value}).then(S=>{s.value=S.packages||s.value,a.value=!1,y(k.slug)}).catch(()=>{s.value=F,Qd({message:u("Failed to save package."),type:"error"})}).finally(()=>{l.value=!1})};return(k,F)=>{const M=B("el-switch"),E=B("el-option"),S=B("el-select"),Q=B("el-form-item"),U=B("el-col"),V=B("el-input"),D=B("el-row");return r(),h(H,null,[e.variant.other_info?(r(),$(Rn,{key:0},{label:d(()=>[R(f(A(u)("Shipping")),1)]),action:d(()=>[o("div",HL,[e.isGroupMode?(r(),h("div",NL,[o("label",null,f(A(u)("Fulfillment Type"))+":",1),n(S,{size:"small",modelValue:e.variant.fulfillment_type,"onUpdate:modelValue":F[2]||(F[2]=I=>e.variant.fulfillment_type=I),"popper-class":"fct-group-select-popper",class:"fct-inline-select",placement:"bottom"},{default:d(()=>[n(E,{value:"__unchanged__",label:A(u)("Unchanged")},null,8,["label"]),n(E,{value:"physical",label:A(u)("Physical")},null,8,["label"]),n(E,{value:"digital",label:A(u)("Digital")},null,8,["label"])]),_:1},8,["modelValue"])])):(r(),h(H,{key:0},[o("span",PL,f(A(u)("Physical Product")),1),n(M,{modelValue:e.variant.fulfillment_type,"onUpdate:modelValue":F[0]||(F[0]=I=>e.variant.fulfillment_type=I),"active-value":"physical","inactive-value":"digital",onChange:F[1]||(F[1]=I=>{e.productEditModel.updatePricingValue("fulfillment_type",I,e.fieldKey,e.variant,e.modeType)}),size:"small"},null,8,["modelValue"])],64))])]),default:d(()=>[n(va,{visible:e.variant.fulfillment_type==="physical",accordion:""},{default:d(()=>[n(D,{gutter:10,class:"fct-physical-product-meta-row"},{default:d(()=>[n(U,{xs:24,sm:14,lg:14},{default:d(()=>[n(Q,null,{label:d(()=>[R(f(A(u)("Package")),1)]),default:d(()=>[n(S,{modelValue:e.variant.other_info.package_slug,"onUpdate:modelValue":F[3]||(F[3]=I=>e.variant.other_info.package_slug=I),placeholder:A(u)("Select a package"),onChange:y,class:"fct-package-options-select",clearable:""},{prefix:d(()=>[p.value?(r(),h("span",KL,[n(J,{name:c[p.value.type]||"Box"},null,8,["name"])])):x("",!0)]),default:d(()=>[n(E,{value:"__add_new__",label:A(u)("Add new package")},{default:d(()=>[o("div",GL," + "+f(A(u)("Add new package")),1)]),_:1},8,["label"]),(r(!0),h(H,null,ae(s.value,I=>(r(),$(E,{key:I.slug,label:m(I),value:I.slug},{default:d(()=>[o("div",jL,[n(J,{name:c[I.type]||"Box"},null,8,["name"]),o("div",zL,[o("span",qL,f(I.is_default?A(u)("Store default")+" · ":"")+f(I.name),1),o("span",YL,f(I.type==="envelope"?I.length+" × "+I.width:I.length+" × "+I.width+" × "+I.height)+" "+f(I.dimension_unit)+", "+f(I.weight)+" "+f(I.weight_unit),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1})]),_:1}),n(U,{xs:24,sm:10,lg:10},{default:d(()=>[n(Q,null,{label:d(()=>[R(f(A(u)("Product weight")),1)]),default:d(()=>[o("div",WL,[n(V,{modelValue:e.variant.other_info.weight,"onUpdate:modelValue":F[5]||(F[5]=I=>e.variant.other_info.weight=I),type:"number",min:0,step:"0.0001",placeholder:"0.0",inputmode:"decimal",onInput:F[6]||(F[6]=I=>{e.productEditModel.updatePricingOtherValue("weight",I,e.fieldKey,e.variant,e.modeType)}),class:"fct-product-weight-number"},{append:d(()=>[n(S,{modelValue:e.variant.other_info.weight_unit,"onUpdate:modelValue":F[4]||(F[4]=I=>e.variant.other_info.weight_unit=I),onChange:v,class:"fct-product-weight-unit"},{default:d(()=>[(r(),h(H,null,ae(i,I=>n(E,{key:I.value,label:I.label,value:I.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1})]),_:1},8,["visible"])]),_:1})):x("",!0),n(Xf,{modelValue:a.value,"onUpdate:modelValue":F[7]||(F[7]=I=>a.value=I),saving:l.value,onSave:w},null,8,["modelValue","saving"])],64)}}},XL={key:0,class:"fct-tax-class-control"},JL={class:"fct-inline-select-wrap"},ZL={key:0,class:"fct-tax-class-control__class-row text-sm text-system-mid dark:text-gray-300"},eR=["title"],tR={key:1,class:"fct-tax-class-control"},aR={key:0,class:"fct-tax-class-control__class-row text-sm text-system-mid dark:text-gray-300"},lR=["title"],Dp={__name:"VariationTaxClass",props:{variant:Object,productEditModel:Object,fieldKey:String,modeType:String,isGroupMode:{type:Boolean,default:!1}},setup(e){const t=e,a=T([]),l=k=>{if(!k)return"standard";const F=a.value.find(E=>String(E.slug)===String(k));if(F)return F.slug;const M=a.value.find(E=>String(E.id)===String(k));return M?M.slug:k},s=N(()=>rt.get(t.variant,"other_info.tax_exempt","no")),i=N(()=>{const k=rt.get(t.variant,"other_info.tax_class","standard");return l(k)||"standard"}),c=T(s.value!=="yes"),p=T(i.value||"standard");be([s,i,a],([k,F])=>{c.value=k!=="yes",p.value=F||"standard"});const m=()=>{t.variant.other_info||(t.variant.other_info={})},_=(k,F)=>{m(),t.variant.other_info.tax_exempt=k,t.variant.other_info.tax_class=F||"standard",t.productEditModel&&t.fieldKey&&(t.productEditModel.updatePricingOtherValue("tax_exempt",t.variant.other_info.tax_exempt,t.fieldKey,t.variant,t.modeType),t.productEditModel.updatePricingOtherValue("tax_class",t.variant.other_info.tax_class,t.fieldKey,t.variant,t.modeType))},g=()=>{ce.get("tax/classes").then(k=>{a.value=k.classes||[]}).catch(()=>{Y.error(u("Failed to load tax classes"))})},y=k=>{const F=p.value||i.value||"standard";c.value=k,p.value=F,_(k?"no":"yes",F)},v=k=>{p.value=k,c.value=!0,_("no",k)},w=()=>{const k=a.value.find(F=>F.slug===p.value);return k?k.title:"Standard"},C=()=>{var M,E;const k=(E=(M=t.variant)==null?void 0:M.other_info)==null?void 0:E.tax_class;if(!k)return u("Unchanged");const F=a.value.find(S=>S.slug===k);return F?F.title:k},b=k=>{t.variant.other_info&&(t.variant.other_info.tax_class=k)};return Ie(()=>{g()}),(k,F)=>{const M=B("el-option"),E=B("el-select"),S=B("el-dropdown-item"),Q=B("el-dropdown-menu"),U=B("el-dropdown"),V=B("el-checkbox");return r(),$(Rn,null,{label:d(()=>[R(f(A(u)("Tax")),1)]),default:d(()=>[e.isGroupMode?(r(),h("div",XL,[o("div",JL,[o("label",null,f(A(u)("Tax Exemption"))+":",1),n(E,{modelValue:e.variant.other_info.tax_exempt,"onUpdate:modelValue":F[0]||(F[0]=D=>e.variant.other_info.tax_exempt=D),size:"small",class:"fct-inline-select",placement:"bottom","popper-class":"fct-group-select-popper"},{default:d(()=>[n(M,{value:"__unchanged__",label:A(u)("Unchanged")},null,8,["label"]),n(M,{value:"no",label:A(u)("Charge tax")},null,8,["label"]),n(M,{value:"yes",label:A(u)("Tax exempt")},null,8,["label"])]),_:1},8,["modelValue"])]),e.variant.other_info.tax_exempt==="no"&&a.value.length>=1?(r(),h("div",ZL,[o("span",null,[R(f(A(u)("Class:"))+" ",1),o("strong",{class:ie(e.variant.other_info.tax_class&&e.variant.other_info.tax_class!=="standard"?"text-red-500 dark:text-red-400":"")},f(C()),3)]),a.value.length>1?(r(),$(U,{key:0,trigger:"click",onCommand:b},{dropdown:d(()=>[n(Q,null,{default:d(()=>[n(S,{command:null,class:ie({"is-active":!e.variant.other_info.tax_class})},{default:d(()=>[R(f(A(u)("Unchanged")),1)]),_:1},8,["class"]),(r(!0),h(H,null,ae(a.value,D=>(r(),$(S,{key:D.slug,command:D.slug,class:ie({"is-active":e.variant.other_info.tax_class===D.slug})},{default:d(()=>[R(f(D.title),1)]),_:2},1032,["command","class"]))),128))]),_:1})]),default:d(()=>[o("span",{class:"fct-tax-class-control__edit text-system-light hover:text-system-dark dark:text-gray-400 dark:hover:text-gray-50",title:A(u)("Change tax class")},F[2]||(F[2]=[o("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor",width:"14",height:"14"},[o("path",{d:"M13.488 2.513a1.75 1.75 0 0 0-2.475 0L3.22 10.303a.75.75 0 0 0-.178.31l-.893 3.125a.75.75 0 0 0 .926.926l3.125-.893a.75.75 0 0 0 .31-.178l7.79-7.79a1.75 1.75 0 0 0 0-2.475l-.812-.815ZM12.074 3.574a.25.25 0 0 1 .354 0l.812.812a.25.25 0 0 1 0 .354L5.45 12.529l-1.838.526.525-1.838 7.937-7.643Z"})],-1)]),8,eR)]),_:1})):x("",!0)])):x("",!0)])):(r(),h("div",tR,[n(V,{class:"fct-tax-class-control__checkbox",modelValue:c.value,"onUpdate:modelValue":F[1]||(F[1]=D=>c.value=D),onChange:y},{default:d(()=>[R(f(A(u)("Charge tax on this variation")),1)]),_:1},8,["modelValue"]),c.value&&a.value.length>=1?(r(),h("div",aR,[o("span",null,[R(f(A(u)("Class:"))+" ",1),o("strong",{class:ie(p.value!=="standard"?"text-red-500 dark:text-red-400":"")},f(w()),3)]),a.value.length>1?(r(),$(U,{key:0,trigger:"click",onCommand:v},{dropdown:d(()=>[n(Q,null,{default:d(()=>[(r(!0),h(H,null,ae(a.value,D=>(r(),$(S,{key:D.slug,command:D.slug,class:ie({"is-active":p.value===D.slug})},{default:d(()=>[R(f(D.title),1)]),_:2},1032,["command","class"]))),128))]),_:1})]),default:d(()=>[o("span",{class:"fct-tax-class-control__edit text-system-light hover:text-system-dark dark:text-gray-400 dark:hover:text-gray-50",title:A(u)("Change tax class")},F[3]||(F[3]=[o("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor",width:"14",height:"14"},[o("path",{d:"M13.488 2.513a1.75 1.75 0 0 0-2.475 0L3.22 10.303a.75.75 0 0 0-.178.31l-.893 3.125a.75.75 0 0 0 .926.926l3.125-.893a.75.75 0 0 0 .31-.178l7.79-7.79a1.75 1.75 0 0 0 0-2.475l-.812-.815ZM12.074 3.574a.25.25 0 0 1 .354 0l.812.812a.25.25 0 0 1 0 .354L5.45 12.529l-1.838.526.525-1.838 7.937-7.643Z"})],-1)]),8,lR)]),_:1})):x("",!0)])):x("",!0)]))]),_:1})}}},sR={class:"fct-product-pricing-form-wrap"},nR={class:"fct-product-pricing-form-inner"},oR={key:0,class:"dialog-footer"},iR={class:"fct-btn-group sm"},Sd={__name:"ProductPricingForm",props:{modeType:String,index:Number,fieldKey:String,product:Object,productEditModel:Object,variantTitleInfo:Object},emits:["createOrUpdateVariant","closeModal","dirtyStateChange"],setup(e,{expose:t,emit:a}){const l=e,s=T({}),i=a,c=ps(),p=T(0),m=T(!1),_=T({}),g=T(null),y=T(!1),v=L=>L?JSON.parse(JSON.stringify(L)):{},w=(L=l.modeType,P=l.index)=>{var j,z,Z;if(L==="create")return"create";if(L==="duplicate"){const oe=(j=l.product.variants)==null?void 0:j[P];return`duplicate-${(oe==null?void 0:oe.id)??P??"draft"}`}if(((z=l.product.detail)==null?void 0:z.variation_type)==="simple")return"simple-0";const G=(Z=l.product.variants)==null?void 0:Z[P];return`update-${(G==null?void 0:G.id)??P??"draft"}`},C=(L=l.modeType,P=l.index,G=s.value)=>({modeType:L,index:P,variant:v(G)}),b=()=>{if(y.value){y.value=!1;return}!g.value||m.value||!p.value||(_.value[g.value]=C())},k=()=>{var L;(L=s.value)!=null&&L.other_info&&(s.value.other_info.payment_type||(s.value.other_info.payment_type="onetime"),s.value.other_info.weight_unit||(s.value.other_info.weight_unit=S.value),s.value.other_info.package_slug===void 0&&(s.value.other_info.package_slug=""))},F=async()=>{var P,G,j,z;b(),m.value=!0,p.value=0,g.value=w();const L=(P=_.value[g.value])==null?void 0:P.variant;if(L){s.value=v(L),k(),await xe(),p.value=1,m.value=!1;return}((G=l.product.detail)==null?void 0:G.variation_type)==="simple"?Array.isArray(l.product.variants)&&l.product.variants.length===0?(s.value=l.productEditModel.addDummyVariant(),s.value.variation_title=l.product.post_title):s.value=l.product.variants[0]:l.modeType==="create"?s.value=l.productEditModel.addDummyVariant():l.modeType==="update"?s.value=v((j=l.product.variants)==null?void 0:j[l.index]):l.modeType==="duplicate"?(s.value=v((z=l.product.variants)==null?void 0:z[l.index]),s.value.serial_index=l.productEditModel.variantsLength()+1,s.value.variation_title=`${u("Copy of")} ${s.value.variation_title||""}`.trim(),s.value.sku="",s.value.on_hold=0,s.value.committed=0,s.value.available=s.value.total_stock??0,delete s.value.id):s.value={},k(),await xe(),p.value=0,m.value=!1},M=async()=>{var L;try{let P=l.index;const G=v(s.value);l.modeType==="duplicate"&&(P=l.productEditModel.variantsLength(),G.rowId=(G.rowId??0)+1);let j=await l.productEditModel.createOrUpdatePricing(G);return(L=j==null?void 0:j.data)!=null&&L.id?(G.id=j.data.id,l.productEditModel.afterCreatingOrUpdatingPricing(P,G),P==null&&(P=l.product.variants.findIndex(z=>(z==null?void 0:z.id)===G.id),P===-1&&(P=l.product.variants.length-1)),g.value&&delete _.value[g.value],p.value=0,i("createOrUpdateVariant",{index:P,modeType:l.modeType,variant:v(G)}),{index:P,modeType:l.modeType,variant:v(G)}):null}catch{return null}},E=async()=>M(),S=N(()=>je.get("shop.weight_unit")||"kg"),Q=()=>{const L={..._.value};return g.value&&p.value&&(L[g.value]=C()),Object.entries(L)},U=()=>Q().length>0,V=()=>Q().length,D=N(()=>Q().length),I=async()=>{y.value=!0,_.value={},p.value=0,l.productEditModel.setValidationErrors({}),await F()};return be(s,()=>{m.value||p.value++},{deep:!0}),be(()=>[l.modeType,l.index],()=>{F()},{immediate:!0}),be(D,L=>{i("dirtyStateChange",!!L)},{immediate:!0}),c.bind(["mod+s"],L=>{var P,G;((G=(P=l.product)==null?void 0:P.detail)==null?void 0:G.variation_type)!=="simple"&&(L.preventDefault(),p.value&&E())}),kt(()=>{c.unbind("mod+s")}),t({hasDirtyDrafts:U,getDirtyDraftCount:V,discardDrafts:I,saveCurrentDraft:M,loadVariantFromProps:F,getVariantData:()=>v(s.value)}),(L,P)=>{const G=B("el-form"),j=B("el-button");return r(),h("div",sR,[o("div",nR,[n(G,{"label-position":"top","require-asterisk-position":"right"},{default:d(()=>[n(x7,{variant:s.value,"field-key":l.fieldKey,"mode-type":e.modeType,product:e.product,"product-edit-model":e.productEditModel,"title-info":e.variantTitleInfo},null,8,["variant","field-key","mode-type","product","product-edit-model","title-info"]),n(Up,{variant:s.value,"field-key":l.fieldKey,"mode-type":e.modeType,product:e.product,"product-edit-model":e.productEditModel},null,8,["variant","field-key","mode-type","product","product-edit-model"]),n(Ip,{variant:s.value,"field-key":l.fieldKey,"mode-type":e.modeType,product:e.product,"product-edit-model":e.productEditModel},null,8,["variant","field-key","mode-type","product","product-edit-model"]),n(Qp,{variant:s.value,"field-key":l.fieldKey,"mode-type":e.modeType,"product-edit-model":e.productEditModel},null,8,["variant","field-key","mode-type","product-edit-model"]),e.productEditModel.isTaxEnabled()?(r(),$(Dp,{key:0,variant:s.value,"product-edit-model":e.productEditModel,"field-key":l.fieldKey,"mode-type":e.modeType},null,8,["variant","product-edit-model","field-key","mode-type"])):x("",!0)]),_:1})]),e.modeType!=="add"?(r(),h("div",oR,[o("div",iR,[D.value?(r(),$(j,{key:0,onClick:I},{default:d(()=>[R(f(A(u)("Discard")),1)]),_:1})):x("",!0),n(j,{onClick:P[0]||(P[0]=()=>{i("closeModal")})},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1}),n(j,{disabled:e.productEditModel.saving||e.modeType==="update"&&!D.value,onClick:E,type:"primary",loading:e.productEditModel.saving},{default:d(()=>[R(f(typeof s.value.id>"u"?A(u)("Save"):A(u)("Update")),1)]),_:1},8,["disabled","loading"])])])):x("",!0)])}}},rR={class:"fct-product-button-and-drawer-wrap"},dR={key:0,class:"fct-product-add-more-price-wrap text-right pr-6"},uR={key:1,class:"fct-btn-group sm"},cR={class:"more-btn"},Yi={__name:"ProductPricingActions",props:{modeType:String,index:Number,variant:{type:Object,default:{}},product:Object,productEditModel:Object},emits:["open-editor"],setup(e,{emit:t}){const a=e,l=t;let s=T(null);const i=T(1),c=(v="update")=>{l("open-editor",{modeType:v,index:a.index??null})},p=N(()=>{var v;return{product:a.product,variant:a.variant,index:a.index,productEditModel:a.productEditModel,openPricingModal:w=>{c(w)},vueContext:(v=zt())==null?void 0:v.ctx}}),m=T([]),_=()=>{var b,k;const v=((b=window==null?void 0:window.fluent_cart_admin)==null?void 0:b.hooks)||(window==null?void 0:window.fluentCartAdminHooks),w=[],C=(k=v==null?void 0:v.applyFilters)==null?void 0:k.call(v,"fluent_cart_product_pricing_actions_dropdown_items",w,p.value);m.value=Array.isArray(C)?C:w},g=v=>v?typeof v.disabled=="function"?!!v.disabled(p.value):!!v.disabled:!1;Ie(()=>{s.value=a.index,_(),setTimeout(_,0)});const y=v=>{var w,C;if(v&&typeof v=="object"){if(typeof v.onClick=="function")return v.onClick(p.value);if(v.command){const b=((w=window==null?void 0:window.fluent_cart_admin)==null?void 0:w.hooks)||(window==null?void 0:window.fluentCartAdminHooks);return(C=b==null?void 0:b.doAction)==null?void 0:C.call(b,"fluent_cart_product_pricing_actions_dropdown_command",v.command,p.value,v)}}v==="duplicate_pricing"?c("duplicate"):v==="delete_variant"&&a.productEditModel.deletePricing(a.variant.id,a.index)};return(v,w)=>{const C=B("el-button"),b=B("el-checkbox"),k=B("el-dropdown-item"),F=B("el-dropdown-menu"),M=B("el-dropdown");return r(),h("div",rR,[a.modeType=="add"?(r(),h("div",dR,[e.product.detail.variation_type!=="simple"?(r(),$(C,{key:0,text:"",type:"primary",onClick:w[0]||(w[0]=E=>c("create"))},{default:d(()=>[n(J,{name:"Plus"}),R(" "+f(e.product.variants.length>0?v.$t("Add more"):v.$t("Add Pricing")),1)]),_:1})):x("",!0)])):x("",!0),a.modeType=="action"?(r(),h("div",uR,[n(Ze,{class:"hide-on-mobile",size:"small",tag:"button",onClick:w[1]||(w[1]=E=>c("update"))},{default:d(()=>[n(J,{name:"Edit"})]),_:1}),n(M,{class:"fct-more-option-wrap","popper-class":"fct-dropdown",onCommand:y,trigger:"click",onVisibleChange:w[5]||(w[5]=E=>{E&&_()})},{dropdown:d(()=>[n(F,null,{default:d(()=>[e.product.detail&&e.product.detail.manage_stock=="1"?(r(),$(k,{key:0,class:"item-checkbox"},{default:d(()=>[n(b,{modelValue:e.variant.manage_stock,"onUpdate:modelValue":w[2]||(w[2]=E=>e.variant.manage_stock=E),onChange:w[3]||(w[3]=E=>{e.productEditModel.onChangePricing("manage_stock",A(s),E)}),"true-value":"0","false-value":"1"},{default:d(()=>[R(f(v.$t("Skip inventory")),1)]),_:1},8,["modelValue"])]),_:1})):x("",!0),n(k,{class:"show-on-mobile",onClick:w[4]||(w[4]=E=>c("update"))},{default:d(()=>[n(J,{name:"Edit"}),R(" "+f(v.$t("Edit")),1)]),_:1}),e.product.detail&&e.product.detail.variation_type!=="simple"?(r(),$(k,{key:1,command:"duplicate_pricing"},{default:d(()=>[n(J,{name:"Duplicate"}),R(" "+f(v.$t("Duplicate")),1)]),_:1})):x("",!0),n(k,null,{default:d(()=>[e.variant.id?(r(),$(Ia,{key:0,class:"fct-copy-wrap-inline",text:String(e.variant.id),showMode:"icon_with_text",buttonText:v.$t("Copy Variation ID")},null,8,["text","buttonText"])):x("",!0)]),_:1}),n(k,{disabled:e.product.post_status!=="publish"&&e.product.post_status!=="private"&&e.variant.id!=""},{default:d(()=>{var E;return[(e.product.post_status==="publish"||e.product.post_status==="private")&&e.variant.id?(r(),$(Ia,{key:0,class:"fct-copy-wrap-inline",text:((E=v.appVars)==null?void 0:E.frontend_url)+"=instant_checkout&item_id="+e.variant.id+"&quantity=1",showMode:"icon_with_text",buttonText:v.$t("Direct Checkout"),tooltipContent:v.$t("Share direct checkout link to let customers buy this variation directly.")},null,8,["text","buttonText","tooltipContent"])):(r(),h(H,{key:1},[n(J,{name:"Copy"}),R(" "+f(v.$t("Direct Checkout"))+" ",1),n(pa,{content:v.$t("This product is currently in draft. You can't share direct checkout link")},null,8,["content"])],64))]}),_:1},8,["disabled"]),(r(!0),h(H,null,ae(m.value,(E,S)=>(r(),$(k,{key:"js_item_"+S,command:E,class:ie(E==null?void 0:E.class),divided:!!(E!=null&&E.divided),disabled:g(E)},{default:d(()=>[E!=null&&E.icon?(r(),$(J,{key:0,name:E.icon},null,8,["name"])):x("",!0),R(" "+f(E==null?void 0:E.label),1)]),_:2},1032,["command","class","divided","disabled"]))),128)),e.productEditModel.variantsLength()>i.value?(r(),$(k,{key:2,command:"delete_variant",class:"item-destructive"},{default:d(()=>[n(J,{name:"Delete"}),R(" "+f(v.$t("Delete")),1)]),_:1})):x("",!0)]),_:1})]),default:d(()=>[o("span",cR,[n(J,{name:"More"})])]),_:1})])):x("",!0)])}}},AR={class:"fct-variant-pricing-add-button-wrap"},pR={__name:"VariantPricingAddButton",props:{product:Object,drawerMode:String,isVariationDirty:Boolean},emits:["open-editor"],setup(e,{emit:t}){const a=e,l=t,s=()=>{l("open-editor",{modeType:"create"})},i=()=>a.drawerMode==="create"||a.isVariationDirty;return(c,p)=>{var _;const m=B("el-button");return r(),h("div",AR,[((_=e.product.detail)==null?void 0:_.variation_type)!=="simple"?(r(),$(m,{key:0,text:"",type:"primary",disabled:i(),onClick:s,size:"small"},{default:d(()=>[n(J,{name:"Plus"}),R(" "+f(e.product.variants.length>0?c.$t("Add more"):c.$t("Add Pricing")),1)]),_:1},8,["disabled"])):x("",!0)])}}},fR={class:"fct-shared-variant-nav__summary"},mR={class:"fct-shared-variant-nav__summary-product"},hR={class:"fct-shared-variant-nav__summary-product-name"},_R={class:"fct-shared-variant-nav__summary-meta"},vR={class:"fct-shared-variant-nav__status"},gR={class:"fct-shared-variant-nav__variant-count"},Tr={__name:"VariantNavSummary",props:{product:Object},setup(e){return(t,a)=>(r(),h("div",fR,[o("div",mR,[o("h3",hR,f(e.product.post_title||A(u)("Untitled product")),1)]),o("div",_R,[o("span",vR,[n(fa,{status:e.product.post_status||"draft"},null,8,["status"])]),o("span",gR,f(e.product.variants.length)+" "+f(A(u)("variants")),1)])]))}},yR={class:"fct-shared-variant-nav__group-header"},bR=["aria-expanded","onClick"],wR={class:"fct-shared-variant-nav__group-caret"},CR={class:"fct-shared-variant-nav__group-title"},BR={class:"fct-shared-variant-nav__group-count"},kR=["aria-label","onClick"],xR={class:"fct-shared-variant-nav__group-body"},SR=["disabled","aria-current","onClick"],FR={class:"fct-shared-variant-nav__item-image-wrapper"},$R={class:"fct-shared-variant-nav__item-image"},ER=["src","alt"],UR=["src","alt"],IR={key:0,class:"fct-shared-variant-nav__item-dot"},QR={class:"fct-shared-variant-nav__item-content"},DR={class:"fct-shared-variant-nav__item-title"},VR={key:0,class:"fct-variant-badge fct-variant-badge-inactive"},TR={class:"fct-shared-variant-nav__item-meta"},MR=["disabled","aria-label"],LR=["disabled","aria-label"],RR={class:"more-btn"},OR=["disabled","aria-current","onClick"],HR={class:"fct-shared-variant-nav__item-image-wrapper"},PR={class:"fct-shared-variant-nav__item-image"},NR=["src","alt"],KR=["src","alt"],GR={key:0,class:"fct-shared-variant-nav__item-dot"},jR={class:"fct-shared-variant-nav__item-content"},zR={class:"fct-shared-variant-nav__item-title"},qR={key:0,class:"fct-variant-badge fct-variant-badge-inactive"},YR={class:"fct-shared-variant-nav__item-meta"},WR=["disabled","aria-label"],XR=["disabled","aria-label"],JR={class:"more-btn"},Vp={__name:"VariantNavList",props:{items:Array,groupedItems:{type:Array,default:null},activeKey:[String,Number],isDirty:Boolean,isSaving:Boolean,drawerMode:String,product:Object,productEditModel:Object,canCopyDirectCheckout:Function},emits:["select","command","save","edit-group"],setup(e,{emit:t}){const a=()=>cs.getUrl("images/placeholder.svg"),l=e,s=C=>{const b=l.isDirty&&l.activeKey!==C.key,k=l.drawerMode==="create"&&C.key!=="draft-variation";return b||k},i=t,c=N(()=>Array.isArray(l.groupedItems)&&l.groupedItems.length>0),p=T(null),m=(C,b)=>{for(const k of C||[])if((k.items||[]).some(F=>F.key===b))return String(k.termId);return null};be(()=>l.groupedItems,C=>{if(!Array.isArray(C)||!C.length){p.value=null;return}p.value=m(C,l.activeKey)||String(C[0].termId)},{immediate:!0}),be(()=>l.activeKey,C=>{if(!c.value||C==null)return;const b=m(l.groupedItems,C);b&&(p.value=b)});const _=C=>String(C.termId)===p.value,g=C=>{const b=String(C.termId);p.value=p.value===b?null:b},y=T(null);let v=null;const w=()=>{v&&clearTimeout(v),xe(()=>{v=setTimeout(()=>{var b;v=null;const C=(b=y.value)==null?void 0:b.querySelector(".fct-shared-variant-nav__item-shell.is-active");C&&C.scrollIntoView({block:"center"})},240)})};return Ie(w),be(()=>l.activeKey,()=>w()),vl(()=>{v&&clearTimeout(v)}),(C,b)=>{const k=B("el-dropdown-item"),F=B("el-dropdown-menu"),M=B("el-dropdown");return r(),h("div",{ref_key:"listRef",ref:y,class:"fct-shared-variant-nav__list"},[c.value?(r(!0),h(H,{key:0},ae(e.groupedItems,E=>(r(),h("div",{key:"g-"+E.termId,class:ie(["fct-shared-variant-nav__group",{"is-collapsed":!_(E)}])},[o("div",yR,[o("button",{type:"button",class:"fct-shared-variant-nav__group-toggle","aria-expanded":_(E)?"true":"false",onClick:S=>g(E)},[o("span",wR,[n(J,{name:_(E)?"CaretDown":"CaretRight"},null,8,["name"])]),o("span",CR,f(E.title),1),o("span",BR,f(A(u)("%1$s variants",E.count)),1)],8,bR),o("button",{type:"button",class:"fct-shared-variant-nav__group-edit","aria-label":A(u)("Edit group"),onClick:Ne(S=>i("edit-group",E),["stop"])},[n(J,{name:"Edit"})],8,kR)]),n(va,{visible:_(E),accordion:"",duration:220},{default:d(()=>[o("div",xR,[(r(!0),h(H,null,ae(E.items,S=>{var Q,U,V,D,I,O,L,P;return r(),h("div",{key:S.key,class:ie(["fct-shared-variant-nav__item-shell",{"is-active":e.activeKey===S.key,"is-draft":S.isDraft}])},[o("button",{type:"button",class:ie(["fct-shared-variant-nav__item",{"is-disabled":s(S)}]),disabled:s(S),"aria-current":e.activeKey===S.key?"true":void 0,onClick:G=>!s(S)&&i("select",S)},[o("div",FR,[o("div",$R,[(V=(U=(Q=S.variant)==null?void 0:Q.media)==null?void 0:U[0])!=null&&V.url?(r(),h("img",{key:0,src:(O=(I=(D=S.variant)==null?void 0:D.media)==null?void 0:I[0])==null?void 0:O.url,alt:S.label},null,8,ER)):(r(),h("img",{key:1,class:"fct-shared-variant-placeholder",src:a(),alt:S.label},null,8,UR))]),e.activeKey===S.key?(r(),h("span",IR)):x("",!0)]),o("div",QR,[o("span",DR,[R(f(S.label)+" ",1),((L=S.variant)==null?void 0:L.item_status)==="inactive"&&((P=e.product.detail)==null?void 0:P.variation_type)==="advanced_variations"?(r(),h("span",VR,f(A(u)("Inactive")),1)):x("",!0)]),o("span",TR,f(S.meta),1)])],10,SR),e.isDirty&&e.activeKey===S.key?(r(),h("button",{key:0,type:"button",class:ie(["fct-shared-variant-check-icon",{"is-saving":e.isSaving}]),disabled:e.isSaving,onClick:b[0]||(b[0]=G=>i("save")),"aria-label":A(u)("Save variant")},[e.isSaving?(r(),$(J,{key:1,name:"Loading",class:"fct-rotation-icon"})):(r(),$(J,{key:0,name:"Save"}))],10,MR)):x("",!0),S.isDraft?x("",!0):(r(),$(M,{key:1,trigger:"click",placement:"bottom-end","popper-class":"fct-dropdown",class:"fct-shared-variant-nav__menu fct-more-option-wrap",disabled:s(S),onCommand:G=>!s(S)&&i("command",G,S)},{dropdown:d(()=>[n(F,null,{default:d(()=>{var G,j,z,Z,oe;return[["simple","advanced_variations"].includes((G=e.product.detail)==null?void 0:G.variation_type)?x("",!0):(r(),$(k,{key:0,command:"duplicate"},{default:d(()=>[n(J,{name:"Duplicate"}),R(" "+f(A(u)("Duplicate")),1)]),_:1})),n(k,{command:"copy_variation_id"},{default:d(()=>[n(J,{name:"Copy"}),R(" "+f(A(u)("Copy Variation ID")),1)]),_:1}),n(k,{command:"copy_direct_checkout",disabled:!e.canCopyDirectCheckout(S)},{default:d(()=>[n(J,{name:"Copy"}),R(" "+f(A(u)("Direct Checkout")),1)]),_:2},1032,["disabled"]),(j=S.variant)!=null&&j.id&&((z=e.product.detail)==null?void 0:z.variation_type)==="advanced_variations"?(r(),$(k,{key:1,command:"toggle_status",class:ie({"item-destructive":((Z=S.variant)==null?void 0:Z.item_status)!=="inactive"})},{default:d(()=>{var de,K;return[n(J,{name:((de=S.variant)==null?void 0:de.item_status)==="inactive"?"CheckCircle":"InActive"},null,8,["name"]),R(" "+f(((K=S.variant)==null?void 0:K.item_status)==="inactive"?A(u)("Set Active"):A(u)("Set Inactive")),1)]}),_:2},1032,["class"])):x("",!0),((oe=e.product.detail)==null?void 0:oe.variation_type)!=="advanced_variations"&&e.productEditModel.variantsLength()>1?(r(),$(k,{key:2,command:"delete",class:"item-destructive"},{default:d(()=>[n(J,{name:"Delete"}),R(" "+f(A(u)("Delete")),1)]),_:1})):x("",!0)]}),_:2},1024)]),default:d(()=>[o("button",{type:"button",class:ie(["fct-shared-variant-nav__menu-trigger",{"is-disabled":s(S)}]),disabled:s(S),onClick:b[1]||(b[1]=Ne(()=>{},["stop"])),"aria-label":A(u)("Variation actions")},[o("span",RR,[n(J,{name:"More"})])],10,LR)]),_:2},1032,["disabled","onCommand"]))],2)}),128))])]),_:2},1032,["visible"])],2))),128)):(r(!0),h(H,{key:1},ae(e.items,E=>{var S,Q,U,V,D,I,O,L;return r(),h("div",{key:E.key,class:ie(["fct-shared-variant-nav__item-shell",{"is-active":e.activeKey===E.key,"is-draft":E.isDraft}])},[o("button",{type:"button",class:ie(["fct-shared-variant-nav__item",{"is-disabled":s(E)}]),disabled:s(E),"aria-current":e.activeKey===E.key?"true":void 0,onClick:P=>!s(E)&&i("select",E)},[o("div",HR,[o("div",PR,[(U=(Q=(S=E.variant)==null?void 0:S.media)==null?void 0:Q[0])!=null&&U.url?(r(),h("img",{key:0,src:(I=(D=(V=E.variant)==null?void 0:V.media)==null?void 0:D[0])==null?void 0:I.url,alt:E.label},null,8,NR)):(r(),h("img",{key:1,class:"fct-shared-variant-placeholder",src:a(),alt:E.label},null,8,KR))]),e.activeKey===E.key?(r(),h("span",GR)):x("",!0)]),o("div",jR,[o("span",zR,[R(f(E.label)+" ",1),((O=E.variant)==null?void 0:O.item_status)==="inactive"&&((L=e.product.detail)==null?void 0:L.variation_type)==="advanced_variations"?(r(),h("span",qR,f(A(u)("Inactive")),1)):x("",!0)]),o("span",YR,f(E.meta),1)])],10,OR),e.isDirty&&e.activeKey===E.key?(r(),h("button",{key:0,type:"button",class:ie(["fct-shared-variant-check-icon",{"is-saving":e.isSaving}]),disabled:e.isSaving,onClick:b[2]||(b[2]=P=>i("save")),"aria-label":A(u)("Save variant")},[e.isSaving?(r(),$(J,{key:1,name:"Loading",class:"fct-rotation-icon"})):(r(),$(J,{key:0,name:"Save"}))],10,WR)):x("",!0),E.isDraft?x("",!0):(r(),$(M,{key:1,trigger:"click",placement:"bottom-end","popper-class":"fct-dropdown",class:"fct-shared-variant-nav__menu fct-more-option-wrap",disabled:s(E),onCommand:P=>!s(E)&&i("command",P,E)},{dropdown:d(()=>[n(F,null,{default:d(()=>{var P,G,j,z,Z;return[["simple","advanced_variations"].includes((P=e.product.detail)==null?void 0:P.variation_type)?x("",!0):(r(),$(k,{key:0,command:"duplicate"},{default:d(()=>[n(J,{name:"Duplicate"}),R(" "+f(A(u)("Duplicate")),1)]),_:1})),n(k,{command:"copy_variation_id"},{default:d(()=>[n(J,{name:"Copy"}),R(" "+f(A(u)("Copy Variation ID")),1)]),_:1}),n(k,{command:"copy_direct_checkout",disabled:!e.canCopyDirectCheckout(E)},{default:d(()=>[n(J,{name:"Copy"}),R(" "+f(A(u)("Direct Checkout")),1)]),_:2},1032,["disabled"]),(G=E.variant)!=null&&G.id&&((j=e.product.detail)==null?void 0:j.variation_type)==="advanced_variations"?(r(),$(k,{key:1,command:"toggle_status",class:ie({"item-destructive":((z=E.variant)==null?void 0:z.item_status)!=="inactive"})},{default:d(()=>{var oe,de;return[n(J,{name:((oe=E.variant)==null?void 0:oe.item_status)==="inactive"?"CheckCircle":"InActive"},null,8,["name"]),R(" "+f(((de=E.variant)==null?void 0:de.item_status)==="inactive"?A(u)("Set Active"):A(u)("Set Inactive")),1)]}),_:2},1032,["class"])):x("",!0),((Z=e.product.detail)==null?void 0:Z.variation_type)!=="advanced_variations"&&e.productEditModel.variantsLength()>1?(r(),$(k,{key:2,command:"delete",class:"item-destructive"},{default:d(()=>[n(J,{name:"Delete"}),R(" "+f(A(u)("Delete")),1)]),_:1})):x("",!0)]}),_:2},1024)]),default:d(()=>[o("button",{type:"button",class:ie(["fct-shared-variant-nav__menu-trigger",{"is-disabled":s(E)}]),disabled:s(E),onClick:b[3]||(b[3]=Ne(()=>{},["stop"])),"aria-label":A(u)("Variation actions")},[o("span",JR,[n(J,{name:"More"})])],10,XR)]),_:2},1032,["disabled","onCommand"]))],2)}),128))],512)}}},ZR={class:"fct-shared-variant-nav-mobile"},eO=["disabled","onClick"],Tp={__name:"VariantNavMobile",props:{items:Array,activeKey:[String,Number],isDirty:Boolean},emits:["select"],setup(e,{emit:t}){const a=t;return(l,s)=>(r(),h("div",ZR,[(r(!0),h(H,null,ae(e.items,i=>(r(),h("button",{key:`mobile-${i.key}`,type:"button",class:ie(["fct-shared-variant-nav-mobile__item",{"is-active":e.activeKey===i.key,"is-draft":i.isDraft}]),disabled:e.isDirty&&e.activeKey!==i.key,onClick:c=>a("select",i)},f(i.label),11,eO))),128))]))}},tO={class:"fct-product-pricing-table-wrap"},aO={class:"fct-table-draggable hide-on-mobile"},lO={class:"is-right"},sO={key:0,class:"fct-drag-handle drag-icon"},nO=["src","alt"],oO=["src"],iO={class:"fct-product-pricing-table-item"},rO={key:0,class:"fct-variant-badge"},dO={class:"fct-product-pricing-table-item"},uO={key:0,class:"fct-variant-badge fct-variant-badge--light"},cO={class:"fct-product-pricing-table-item"},AO={class:"is-right"},pO={class:"fct-product-pricing-table-item"},fO={class:"fct-table-draggable fct-product-pricing-table-mobile-wrap"},mO={key:0,class:"fct-drag-handle drag-icon"},hO={class:"fct-product-pricing-table-mobile-item-inner"},_O={class:"fct-product-pricing-table-item"},vO={class:"media"},gO=["src","alt"],yO=["src"],bO={class:"fct-product-pricing-table-item-content"},wO={class:"title"},CO={key:0,class:"fct-variant-badge"},BO={key:0,class:"compare-price"},kO={class:"price"},xO={key:0,class:"capitalize"},SO={key:0,class:"fct-product-pricing-table-item-action"},FO={class:"fct-shared-variant-drawer__layout"},$O={key:0,class:"fct-shared-variant-nav"},EO={class:"fct-shared-variant-drawer__content"},UO={class:"fct-shared-variant-drawer__form"},IO={class:"fct-variant-dirty-dialog__header"},QO={class:"dialog-footer"},DO={class:"fct-btn-group sm"},Yu=1040,VO=1060,TO={__name:"ProductPricingTable",props:{product:Object,productEditModel:Object,readonly:{type:Boolean,default:!1}},setup(e){const t=e,a=T(typeof window<"u"?window.innerWidth:Yu),l=T(0),s=()=>{if(typeof window>"u")return 0;const me=document.querySelector("#adminmenuwrap");if(!me)return 0;const ge=window.getComputedStyle(me);return ge.display==="none"||ge.visibility==="hidden"?0:Math.round(me.getBoundingClientRect().width)},i=()=>{typeof window>"u"||(a.value=window.innerWidth,l.value=s())};Ie(()=>{i(),window.addEventListener("resize",i),setTimeout(()=>{document.querySelectorAll(".el-input__wrapper input[type='number']").forEach(ge=>{ge.addEventListener("wheel",se=>{document.activeElement===ge&&se.preventDefault()})}),t.product.variants.filter(ge=>{const se=ge.media?ge.media.meta_value||[]:[];return ge.media=se})},50)}),kt(()=>{typeof window>"u"||window.removeEventListener("resize",i)});const c=N(()=>({animation:600,ghostClass:"ghost"})),p=T(!1),m=T("update"),_=T(null),g=T(null),y=T(!1),v=T(!1),w=T(null),C=T(!1),b=N(()=>Math.max(a.value-l.value,360)),k=N(()=>b.value<=VO),F=N(()=>{let me=24;a.value<=640?me=12:a.value<=900&&(me=16);const ge=Math.max(b.value-me,320);return`${Math.min(Yu,ge)}px`}),M=(me,ge)=>(me==null?void 0:me.variation_title)||`${u("Variation")} ${ge+1}`,E=me=>{var se,fe;const ge=(me==null?void 0:me.item_price)??"";return ge===""||ge===null||ge===void 0?u("No price set"):`${((fe=(se=window.appVars)==null?void 0:se.shop)==null?void 0:fe.currency_sign)||"$"} ${ge}`},S=me=>typeof me=="number"&&me>=0&&me{m.value=me,_.value=me==="create"?null:S(ge),C.value=!1,t.productEditModel.setValidationErrors({}),p.value=!0},U=()=>{C.value=!1,t.productEditModel.setValidationErrors({}),p.value=!1},V=()=>{y.value=!1,v.value=!1,w.value=null},D=()=>{var me,ge;return((ge=(me=g.value)==null?void 0:me.hasDirtyDrafts)==null?void 0:ge.call(me))??!1},I=me=>{me&&(m.value=me.modeType,_.value=me.index,t.productEditModel.setValidationErrors({}))},O=async(me,ge)=>{var se,fe;if(!(!ge||!me)){if(me==="duplicate"){Q({modeType:"duplicate",index:ge.index});return}if(me==="delete"&&((se=ge.variant)!=null&&se.id)){t.productEditModel.deletePricing(ge.variant.id,ge.index).then(async()=>{var $e,tt;await xe(),t.product.variants.length>0?(m.value="update",_.value=Math.min(ge.index,t.product.variants.length-1),C.value=!1,(tt=($e=g.value)==null?void 0:$e.loadVariantFromProps)==null||tt.call($e)):U()}).catch(()=>{});return}if(me==="copy_variation_id"&&((fe=ge.variant)!=null&&fe.id)){Yl.copy(String(ge.variant.id),{successMessage:u("Variation ID copied to clipboard")});return}me==="copy_direct_checkout"&&L(ge)&&Yl.copy(P(ge),{successMessage:u("Direct checkout link copied to clipboard")})}},L=me=>{var ge,se;return!!((ge=me==null?void 0:me.variant)!=null&&ge.id)&&["publish","private"].includes((se=t.product)==null?void 0:se.post_status)},P=me=>`${je.get("frontend_url")}=instant_checkout&item_id=${me.variant.id}&quantity=1`,G=()=>{const me=w.value;if(V(),!!me&&me.type==="close"){if(typeof me.done=="function"){me.done();return}U()}},j=()=>{V()},z=async()=>{var me,ge;await((ge=(me=g.value)==null?void 0:me.discardDrafts)==null?void 0:ge.call(me)),G()},Z=async()=>{var ge;if(!((ge=g.value)!=null&&ge.saveCurrentDraft)||v.value)return;if(v.value=!0,await g.value.saveCurrentDraft()){G();return}v.value=!1,j()},oe=me=>{if(!D()){me();return}w.value={type:"close",done:me},y.value=!0},de=()=>{oe(()=>{U()})},K=me=>{C.value=me},q=me=>{me&&(m.value="update",typeof me.index=="number"&&me.index>=0?_.value=me.index:_.value=S(_.value),C.value=!1,t.productEditModel.setValidationErrors({}))},X=(me,ge)=>{const se=M(me,ge);return`${u("Copy of")} ${se}`},W=N(()=>{var ge;const me=(t.product.variants||[]).map((se,fe)=>({key:(se==null?void 0:se.id)??`variant-${fe}`,index:fe,variant:se,label:M(se,fe),meta:E(se),modeType:"update",isDraft:!1}));if(p.value&&m.value==="create"&&me.push({key:"draft-variation",index:null,label:u("New variation"),meta:u("Unsaved draft"),modeType:"create",isDraft:!0}),p.value&&m.value==="duplicate"){const se=(ge=t.product.variants)==null?void 0:ge[_.value];me.push({key:"duplicate-variation",index:_.value,variant:se,label:X(se,_.value??0),meta:u("Unsaved copy"),modeType:"duplicate",isDraft:!0})}return me}),re=N(()=>{var ge;if(m.value==="create"&&_.value===null)return"draft-variation";if(m.value==="duplicate")return"duplicate-variation";const me=(ge=t.product.variants)==null?void 0:ge[_.value];return(me==null?void 0:me.id)??`variant-${_.value??0}`}),ye=me=>{me&&(C.value&&re.value!==me.key||I(me))};return(me,ge)=>{const se=B("el-input"),fe=B("el-drawer"),$e=B("el-button"),tt=B("el-dialog");return r(),h("div",tO,[o("div",aO,[o("table",null,[ge[5]||(ge[5]=o("colgroup",null,[o("col"),o("col",{width:"50"}),o("col",{width:"300"}),o("col"),o("col"),o("col")],-1)),o("thead",null,[o("tr",null,[ge[4]||(ge[4]=o("th",null,null,-1)),o("th",null,f(me.$t("Image")),1),o("th",null,f(me.$t("Title")),1),o("th",null,f(me.$t("Price")),1),o("th",null,f(me.$t("Compare at price")),1),o("th",lO,f(me.$t("Action")),1)])]),n(A(Js),ya(c.value,{list:e.product.variants,"item-key":"id",disabled:e.readonly,onEnd:ge[0]||(ge[0]=_e=>{e.readonly||e.productEditModel.updateVariantSerialIndexes(e.product.variants)}),tag:"tbody",handle:".fct-drag-handle"}),{default:d(()=>[(r(!0),h(H,null,ae(e.product.variants,(_e,Xe)=>{var ht,Ye,Se,Ee;return r(),h("tr",{key:_e.id},[o("td",null,[e.product.variants.length>1&&!e.readonly?(r(),h("span",sO,[n(J,{name:"ReorderDotsVertical"})])):x("",!0)]),o("td",null,[e.readonly?_e.media&&_e.media[0]?(r(),h("img",{key:1,src:_e.media[0].url,alt:_e.variation_title,class:"fct-variant-thumb-readonly"},null,8,nO)):(r(),h("img",{key:2,src:me.appVars.asset_url+"images/empty-image.svg",alt:"",class:"fct-variant-thumb-readonly"},null,8,oO)):(r(),$(hl,{key:0,modelValue:_e.media,"onUpdate:modelValue":Oe=>_e.media=Oe,compact:!0,"max-thumbs":1,onChange:Oe=>e.productEditModel.onUploadPricingMedia("media",Xe,Oe)},null,8,["modelValue","onUpdate:modelValue","onChange"]))]),o("td",null,[o("div",iO,[n(se,{class:ie(e.productEditModel.hasValidationError(`variants.${Xe}.variation_title`)?"is-error":""),id:`variants.${Xe}.variation_title`,placeholder:me.$t("e.g. Small, Medium, Large"),type:"text",modelValue:_e.variation_title,"onUpdate:modelValue":Oe=>_e.variation_title=Oe,onInput:Oe=>{e.productEditModel.onChangePricing("variation_title",Xe,Oe)},disabled:((Ye=(ht=e.product)==null?void 0:ht.detail)==null?void 0:Ye.variation_type)==="simple"||e.readonly,onFocus:Oe=>e.productEditModel.clearValidationError(`variants.${Xe}.variation_title`)},null,8,["class","id","placeholder","modelValue","onUpdate:modelValue","onInput","disabled","onFocus"]),((Se=_e.other_info)==null?void 0:Se.installment)==="yes"?(r(),h("span",rO,f(_e.other_info.times)+" "+f(A(u)("Installment")),1)):x("",!0)])]),o("td",null,[o("div",dO,[n(zs,{placeholder:me.$t("Price"),"error-class":e.productEditModel.hasValidationError(`variants.${Xe}.item_price`)?"is-error":"",id:`variants.${Xe}.item_price`,"model-value":_e.item_price,disabled:_e.expanded||e.readonly,"onUpdate:modelValue":Oe=>{e.readonly||(_e.item_price=Oe,e.productEditModel.onChangePricing("item_price",Xe,Oe),e.productEditModel.clearValidationError(`variants.${Xe}.item_price`))}},null,8,["placeholder","error-class","id","model-value","disabled","onUpdate:modelValue"]),((Ee=_e.other_info)==null?void 0:Ee.payment_type)==="subscription"?(r(),h("span",uO,f(_e.other_info.repeat_interval),1)):x("",!0)])]),o("td",null,[o("div",cO,[n(zs,{placeholder:me.$t("Compare price"),"error-class":e.productEditModel.hasValidationError(`variants.${Xe}.compare_price`)?"is-error":"",id:`variants.${Xe}.compare_price`,"model-value":_e.compare_price,disabled:_e.expanded||e.readonly,"onUpdate:modelValue":Oe=>{e.readonly||(_e.compare_price=Oe,e.productEditModel.onChangePricing("compare_price",Xe,Oe),e.productEditModel.clearValidationError(`variants.${Xe}.compare_price`))}},null,8,["placeholder","error-class","id","model-value","disabled","onUpdate:modelValue"])])]),o("td",AO,[o("div",pO,[e.readonly?x("",!0):(r(),$(Yi,{key:0,modeType:"action",index:Xe,variant:_e,product:e.product,productEditModel:e.productEditModel,onOpenEditor:Q},null,8,["index","variant","product","productEditModel"]))])])])}),128))]),_:1},16,["list","disabled"])])]),o("div",fO,[n(A(Js),ya(c.value,{list:e.product.variants,"item-key":"id",disabled:e.readonly,onEnd:ge[1]||(ge[1]=_e=>{e.readonly||e.productEditModel.updateVariantSerialIndexes(e.product.variants)}),handle:".fct-drag-handle"}),{default:d(()=>[(r(!0),h(H,null,ae(e.product.variants,(_e,Xe)=>{var ht,Ye;return r(),h("div",{key:_e.id,class:"fct-product-pricing-table-mobile-row"},[e.product.variants.length>1&&!e.readonly?(r(),h("span",mO,[n(J,{name:"ReorderDotsVertical"})])):x("",!0),o("div",hO,[o("div",_O,[o("div",vO,[e.readonly?_e.media&&_e.media[0]?(r(),h("img",{key:1,src:_e.media[0].url,alt:_e.variation_title,class:"fct-variant-thumb-readonly"},null,8,gO)):(r(),h("img",{key:2,src:me.appVars.asset_url+"images/empty-image.svg",alt:"",class:"fct-variant-thumb-readonly"},null,8,yO)):(r(),$(hl,{key:0,modelValue:_e.media,"onUpdate:modelValue":Se=>_e.media=Se,compact:!0,"max-thumbs":1,onChange:Se=>e.productEditModel.onUploadPricingMedia("media",Xe,Se)},null,8,["modelValue","onUpdate:modelValue","onChange"]))]),o("div",bO,[o("div",wO,[R(f(_e.variation_title)+" ",1),((ht=_e.other_info)==null?void 0:ht.installment)==="yes"?(r(),h("span",CO,f(_e.other_info.times)+" "+f(A(u)("Installment")),1)):x("",!0)]),o("ul",null,[o("li",null,[_e.compare_price?(r(),h("div",BO,[o("span",null,f(me.appVars.shop.currency_sign),1),R(" "+f(_e.compare_price),1)])):x("",!0),o("div",kO,[o("span",null,f(me.appVars.shop.currency_sign),1),R(" "+f(_e.item_price),1)])]),((Ye=_e.other_info)==null?void 0:Ye.payment_type)==="subscription"?(r(),h("li",xO,f(_e.other_info.repeat_interval),1)):x("",!0)])])]),e.readonly?x("",!0):(r(),h("div",SO,[n(Yi,{modeType:"action",index:Xe,variant:_e,product:e.product,productEditModel:e.productEditModel,onOpenEditor:Q},null,8,["index","variant","product","productEditModel"])]))])])}),128))]),_:1},16,["list","disabled"])]),e.readonly?x("",!0):(r(),$(Yi,{key:0,modeType:"add",product:e.product,productEditModel:e.productEditModel,onOpenEditor:Q},null,8,["product","productEditModel"])),n(fe,{modelValue:p.value,"onUpdate:modelValue":ge[2]||(ge[2]=_e=>p.value=_e),title:me.$t("Pricing"),size:F.value,"append-to-body":!0,"close-on-click-modal":!0,"close-on-press-escape":!1,"destroy-on-close":!0,"before-close":oe,class:"fct-shared-variant-drawer",onClose:U},{default:d(()=>[o("div",FO,[k.value?x("",!0):(r(),h("aside",$O,[n(Tr,{product:e.product},null,8,["product"]),n(Vp,{items:W.value,"active-key":re.value,"is-dirty":C.value,"drawer-mode":m.value,product:e.product,"product-edit-model":e.productEditModel,"can-copy-direct-checkout":L,"is-saving":v.value,onSelect:ye,onCommand:O,onSave:Z},null,8,["items","active-key","is-dirty","drawer-mode","product","product-edit-model","is-saving"]),n(pR,{product:e.product,"drawer-mode":m.value,"is-variation-dirty":C.value,onOpenEditor:Q},null,8,["product","drawer-mode","is-variation-dirty"])])),o("div",EO,[k.value?(r(),$(Tp,{key:0,items:W.value,"active-key":re.value,"is-dirty":C.value,onSelect:ye},null,8,["items","active-key","is-dirty"])):x("",!0),o("div",UO,[n(Sd,{ref_key:"pricingFormRef",ref:g,index:_.value,modeType:m.value,fieldKey:"variants",product:e.product,productEditModel:e.productEditModel,onCreateOrUpdateVariant:q,onCloseModal:de,onDirtyStateChange:K},null,8,["index","modeType","product","productEditModel"])])])])]),_:1},8,["modelValue","title","size"]),n(tt,{modelValue:y.value,"onUpdate:modelValue":ge[3]||(ge[3]=_e=>y.value=_e),"close-on-click-modal":!1,"close-on-press-escape":!v.value,"show-close":!v.value,class:"fct-variant-dirty-dialog",onClose:j},{header:d(()=>[o("div",IO,[o("h3",null,f(A(u)("Unsaved changes")),1)])]),default:d(()=>[o("p",null,f(A(u)("You have unsaved variation changes. Discard them or save before continuing.")),1),o("div",QO,[o("div",DO,[n($e,{disabled:v.value,onClick:j,size:"small"},{default:d(()=>[R(f(A(u)("Continue editing")),1)]),_:1},8,["disabled"]),n($e,{disabled:v.value,onClick:z,size:"small"},{default:d(()=>[R(f(A(u)("Discard")),1)]),_:1},8,["disabled"]),n($e,{type:"primary",loading:v.value,onClick:Z,size:"small"},{default:d(()=>[R(f(A(u)("Save")),1)]),_:1},8,["loading"])])])]),_:1},8,["modelValue","close-on-press-escape","show-close"])])}}},MO={key:0,class:"fct-adv-groupby-bar"},LO={class:"fct-adv-groupby-label"},RO={__name:"AdvancedVariationGroupBar",props:{product:Object,attributeGroups:{type:Array,default:()=>[]},modelValue:{type:[Number,null],default:null}},emits:["update:modelValue"],setup(e,{expose:t,emit:a}){const l=e,s=a,i=N({get(){return l.modelValue},set(p){s("update:modelValue",p)}}),c=N(()=>{var m,_,g;const p=(g=(_=(m=l.product)==null?void 0:m.detail)==null?void 0:_.other_info)==null?void 0:g.attribute_config;return!p||!Array.isArray(p)?[]:p.map(y=>{const v=l.attributeGroups.find(w=>String(w.id)===String(y.group_id));return v?{id:v.id,title:v.title}:null}).filter(Boolean)});return t({configuredGroups:c}),(p,m)=>{const _=B("el-option"),g=B("el-select");return c.value.length>=2?(r(),h("div",MO,[o("span",LO,f(p.$t("Group by")),1),n(g,{modelValue:i.value,"onUpdate:modelValue":m[0]||(m[0]=y=>i.value=y),placeholder:p.$t("Select")},{default:d(()=>[(r(!0),h(H,null,ae(c.value,y=>(r(),$(_,{key:y.id,label:y.title,value:y.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])):x("",!0)}}},OO={key:0,class:"fct-adv-bulk-bar"},HO={class:"fct-adv-bulk-count"},PO=["textContent"],NO={__name:"AdvancedVariationBulkBar",props:{selectedCount:{type:Number,default:0},bulkAction:{type:String,default:""},bulkValue:{type:[String,Number],default:""},saving:{type:Boolean,default:!1}},emits:["update:bulkAction","update:bulkValue","apply","clear"],setup(e,{emit:t}){const a=e,l=t,s=N({get(){return a.bulkAction},set(p){l("update:bulkAction",p)}}),i=N({get(){return a.bulkValue},set(p){l("update:bulkValue",p)}}),c=N(()=>a.bulkAction==="set_price");return(p,m)=>{const _=B("el-option"),g=B("el-select"),y=B("el-input"),v=B("el-button");return e.selectedCount>0?(r(),h("div",OO,[o("span",HO,f(p.$t("%1$s selected",e.selectedCount)),1),o("button",{type:"button",class:"fct-adv-bulk-clear",onClick:m[0]||(m[0]=w=>p.$emit("clear"))},f(p.$t("Clear")),1),n(g,{modelValue:s.value,"onUpdate:modelValue":m[1]||(m[1]=w=>s.value=w),placeholder:p.$t("Bulk Actions"),size:"small"},{default:d(()=>[n(_,{label:p.$t("Set Price"),value:"set_price"},null,8,["label"]),n(_,{label:p.$t("Set Active"),value:"set_status_active"},null,8,["label"]),n(_,{label:p.$t("Set Inactive"),value:"set_status_inactive"},null,8,["label"])]),_:1},8,["modelValue","placeholder"]),c.value?(r(),$(y,{key:0,modelValue:i.value,"onUpdate:modelValue":m[2]||(m[2]=w=>i.value=w),placeholder:p.$t("Value"),size:"small",type:"number"},{prefix:d(()=>[o("span",{textContent:f(p.appVars.shop.currency_sign)},null,8,PO)]),_:1},8,["modelValue","placeholder"])):x("",!0),n(v,{type:"primary",size:"small",loading:e.saving,disabled:!e.bulkAction||e.selectedCount===0,onClick:m[3]||(m[3]=w=>p.$emit("apply"))},{default:d(()=>[R(f(p.$t("Apply")),1)]),_:1},8,["loading","disabled"])])):x("",!0)}}},KO={class:"fct-grouped-variant-table fct-adv-table-desktop"},GO={class:"is-right"},jO=["aria-expanded","aria-label"],zO=["onClick"],qO={class:"fct-adv-group-header"},YO={class:"fct-adv-group-count"},WO={class:"fct-product-pricing-table-item"},XO=["textContent"],JO={class:"is-right"},ZO={class:"fct-adv-group-actions"},eH=["aria-expanded","aria-label","onClick"],tH={class:"fct-adv-slot-row"},aH={colspan:"6"},lH={class:"fct-product-pricing-table-item"},sH={class:"fct-product-pricing-table-item fct-adv-child-title"},nH={class:"fct-adv-title-cell"},oH={class:"fct-adv-title-main"},iH={class:"fct-adv-variant-title"},rH={key:0,class:"fct-variant-badge fct-variant-badge-inactive"},dH={class:"fct-product-pricing-table-item"},uH=["textContent"],cH={key:0,class:"fct-variant-badge fct-repeat-interval-badge"},AH={class:"fct-product-pricing-table-item"},pH=["textContent"],fH={class:"is-right"},mH={class:"fct-product-pricing-table-item"},hH={class:"fct-btn-group sm justify-end"},_H=["aria-label"],vH={key:0,class:"fct-adv-row-sentinel-row","aria-hidden":"true"},gH={colspan:"6"},yH={class:"fct-grouped-variant-table fct-adv-table-mobile"},bH={class:"is-right"},wH=["aria-expanded","aria-label"],CH=["onClick"],BH={class:"fct-adv-group-header"},kH={class:"fct-adv-group-count"},xH={class:"is-right"},SH={class:"fct-adv-group-actions"},FH=["aria-expanded","aria-label","onClick"],$H={class:"fct-adv-slot-row"},EH={colspan:"4"},UH={class:"fct-product-pricing-table-item"},IH={class:"fct-product-pricing-table-item fct-adv-child-title"},QH={class:"fct-adv-title-cell"},DH={class:"fct-adv-title-main"},VH={class:"fct-adv-variant-title"},TH={key:0,class:"fct-variant-badge fct-variant-badge-inactive"},MH={class:"fct-adv-variant-price"},LH={key:0,class:"fct-adv-variant-compare"},RH={class:"is-right"},OH={class:"fct-product-pricing-table-item"},HH={class:"fct-btn-group sm justify-end"},PH=["aria-label"],NH={key:0,class:"fct-adv-row-sentinel-row","aria-hidden":"true"},KH={colspan:"6"},Wu=30,GH=30,jH={__name:"AdvancedVariationGroupedTable",props:{product:Object,productEditModel:{type:Object,default:null},attributeGroups:{type:Array,default:()=>[]},groupedVariants:{type:Array,default:()=>[]},selectedVariants:{type:Array,default:()=>[]},isAllSelected:{type:Boolean,default:!1},isSelectionIndeterminate:{type:Boolean,default:!1},groupById:{type:Number,default:null},expandedGroups:{type:Set,default:()=>new Set}},emits:["update:selectedVariants","update:isAllSelected","update:expandedGroups","editVariant","editGroup","toggleStatus","inlinePriceChange","inlinePriceCommit","mediaUploaded","groupPriceApply","groupMediaUploaded"],setup(e,{emit:t}){const a=e,l=N(()=>{var me,ge,se;const q=a.groupById?parseInt(a.groupById):null,X=(((se=(ge=(me=a.product)==null?void 0:me.detail)==null?void 0:ge.other_info)==null?void 0:se.attribute_config)||[]).map(fe=>parseInt(fe.group_id)).filter(Boolean),W=fe=>{const $e=X.indexOf(fe);return $e===-1?Number.MAX_SAFE_INTEGER:$e},re={};(a.attributeGroups||[]).forEach(fe=>{const $e={};(fe.terms||[]).forEach(tt=>{$e[parseInt(tt.id)]=tt.title}),re[parseInt(fe.id)]=$e});const ye={};return(a.groupedVariants||[]).forEach(fe=>{(fe.variants||[]).forEach($e=>{const tt=$e.attr_map||[];if(!tt.length){ye[$e.id]="";return}const _e=[...tt].sort((Xe,ht)=>W(parseInt(Xe.group_id))-W(parseInt(ht.group_id))).map(Xe=>{const ht=parseInt(Xe.group_id);if(q&&ht===q)return null;const Ye=re[ht];return Ye&&Ye[parseInt(Xe.term_id)]||null}).filter(Boolean);ye[$e.id]=_e.join(" / ")})}),ye}),s=T(new Set),i=q=>{s.value.has(q)||(s.value=new Set(s.value).add(q))},c=T({}),p=q=>c.value[q]||Wu,m=q=>{const X=q.variants||[],W=p(q.termId);return W>=X.length?X:X.slice(0,W)},_=q=>(q.variants||[]).length>p(q.termId),g=(q,X)=>{const W=c.value[q]||Wu;W>=X||(c.value={...c.value,[q]:Math.min(W+GH,X)})};be(()=>a.expandedGroups,q=>{const X=Object.keys(c.value);if(!X.length)return;const W={};X.forEach(re=>{q&&(q.has(re)||q.has(Number(re)))&&(W[re]=c.value[re])}),Object.keys(W).length!==X.length&&(c.value=W)});let y=null;const v={},w=q=>{let X=q&&q.parentElement;for(;X;){const W=getComputedStyle(X).overflowY;if(W==="auto"||W==="scroll"||W==="overlay")return X;X=X.parentElement}return null},C=q=>{y||(y=new IntersectionObserver(X=>{X.forEach(W=>{W.isIntersecting&&g(W.target.dataset.termId,parseInt(W.target.dataset.total,10)||0)})},{root:w(q),rootMargin:"300px 0px"}))},b=(q,X)=>W=>{W?(W.dataset.termId=q,W.dataset.total=X,C(W),v[q]=W,y.observe(W)):v[q]&&(y&&y.unobserve(v[q]),delete v[q])};kt(()=>{y&&(y.disconnect(),y=null)});const k=q=>{if(!a.productEditModel)return!1;const X=a.product.variants.findIndex(W=>W.id===q.id);return X===-1?!1:a.productEditModel.hasValidationError(`variants.${X}.compare_price`)},F=t,M=T({});be(()=>{var q,X;return(X=(q=a.productEditModel)==null?void 0:q.data)==null?void 0:X.discardKey},()=>{M.value={}});const E=N(()=>a.groupedVariants.every(q=>a.expandedGroups.has(q.termId))),S=()=>{const q=E.value?new Set:new Set(a.groupedVariants.map(X=>X.termId));F("update:expandedGroups",q)},Q=q=>{const X=new Set(a.expandedGroups);X.has(q)?X.delete(q):X.add(q),F("update:expandedGroups",X)},U=q=>a.expandedGroups.has(q),V=q=>q.variants.length>0&&q.variants.every(X=>a.selectedVariants.includes(X.id)),D=q=>{if(q.variants.length===0)return!1;const X=q.variants.filter(W=>a.selectedVariants.includes(W.id)).length;return X>0&&X{let W;if(X){const re=new Set(a.selectedVariants);q.variants.forEach(ye=>re.add(ye.id)),W=Array.from(re)}else{const re=new Set(q.variants.map(ye=>ye.id));W=a.selectedVariants.filter(ye=>!re.has(ye))}F("update:selectedVariants",W)},O=(q,X)=>{let W;X?W=[...a.selectedVariants,q]:W=a.selectedVariants.filter(re=>re!==q),F("update:selectedVariants",W)},L=(q,X)=>{F("groupPriceApply",q,X)},P=q=>{const X=q.variants.map(ye=>parseFloat(ye.item_price)).filter(ye=>!isNaN(ye));if(!X.length)return"";const W=Math.min(...X),re=Math.max(...X);return W===re?String(W):`${W} – ${re}`},G=T(null),j=q=>G.value===q.termId?"":P(q)||"",z=q=>{G.value=q.termId},Z=()=>{G.value=null},oe=q=>{const X=new Set,W=[];return(q.variants||[]).forEach(re=>{Array.isArray(re==null?void 0:re.media)&&re.media.forEach(ye=>{const me=(ye==null?void 0:ye.id)||(ye==null?void 0:ye.url);me&&!X.has(me)&&(X.add(me),W.push(ye))})}),W},de=(q,X,W)=>{!W||!W.applyToAll||F("groupMediaUploaded",q,X)},K=(q,X,W,re)=>{re&&re.applyToAll?F("groupMediaUploaded",q,W):F("mediaUploaded",X,W)};return(q,X)=>{const W=B("el-checkbox"),re=B("el-input"),ye=B("el-dropdown-item"),me=B("el-dropdown-menu"),ge=B("el-dropdown");return r(),h(H,null,[o("div",KO,[o("table",null,[X[11]||(X[11]=o("colgroup",null,[o("col",{width:"80"}),o("col",{width:"130"}),o("col",{width:"250"}),o("col",{width:"150"}),o("col",{width:"180"}),o("col",{width:"100"})],-1)),o("thead",null,[o("tr",null,[o("th",null,[n(W,{"model-value":e.isAllSelected,indeterminate:e.isSelectionIndeterminate,"aria-label":q.$t("Select all variants"),"onUpdate:modelValue":X[0]||(X[0]=se=>q.$emit("update:isAllSelected",se))},null,8,["model-value","indeterminate","aria-label"])]),o("th",null,f(q.$t("Image")),1),o("th",null,f(q.$t("Variant")),1),o("th",null,f(q.$t("Price")),1),o("th",null,f(q.$t("Compare at price")),1),o("th",GO,[o("button",{type:"button",class:"fct-adv-group-chevron-btn","aria-expanded":E.value,"aria-label":E.value?q.$t("Collapse all groups"):q.$t("Expand all groups"),onClick:S},[o("span",{class:ie(["fct-adv-group-chevron",{"is-expanded":E.value}])},[n(J,{name:"ChevronDown"})],2)],8,jO)])])]),o("tbody",null,[(r(!0),h(H,null,ae(e.groupedVariants,se=>(r(),h(H,{key:se.termId},[o("tr",{class:ie(["fct-adv-group-row",{"is-expanded":U(se.termId)}]),onClick:fe=>Q(se.termId)},[o("td",null,[n(W,{onClick:X[1]||(X[1]=Ne(()=>{},["stop"])),"model-value":V(se),indeterminate:D(se),"aria-label":A(u)("Select all variants in %1$s",se.title),onChange:fe=>I(se,fe)},null,8,["model-value","indeterminate","aria-label","onChange"])]),o("td",null,[o("div",{class:"fct-product-pricing-table-item",onClick:X[2]||(X[2]=Ne(()=>{},["stop"]))},[n(hl,{"model-value":oe(se),compact:!0,"max-thumbs":1,square:!0,"show-apply-to-all":!0,"default-apply-to-all":!0,"selected-count":e.selectedVariants.length,onChange:(fe,$e)=>de(se,fe,$e)},null,8,["model-value","selected-count","onChange"])])]),o("td",null,[o("div",qO,[o("strong",null,f(se.title),1),o("span",YO,f(se.variants.length)+" "+f(se.variants.length===1?q.$t("variant"):q.$t("variants")),1)])]),o("td",null,[o("div",WO,[n(re,{onClick:X[3]||(X[3]=Ne(()=>{},["stop"])),class:"fct-adv-group-price-input",placeholder:j(se),type:"number",min:0,size:"small",modelValue:M.value[se.termId],"onUpdate:modelValue":fe=>M.value[se.termId]=fe,onFocus:fe=>z(se),onBlur:Z,onKeyup:xa(fe=>L(se.termId,M.value[se.termId]),["enter"]),onChange:fe=>L(se.termId,fe)},{prefix:d(()=>[o("span",{textContent:f(q.appVars.shop.currency_sign)},null,8,XO)]),_:2},1032,["placeholder","modelValue","onUpdate:modelValue","onFocus","onKeyup","onChange"])])]),X[9]||(X[9]=o("td",null,null,-1)),o("td",JO,[o("div",ZO,[U(se.termId)?(r(),$(Ze,{key:0,class:"fct-adv-group-edit-btn",size:"small",tag:"button","aria-label":q.$t("Edit group %1$s",se.title),onClick:Ne(fe=>q.$emit("editGroup",se),["stop"])},{default:d(()=>[n(J,{name:"Edit"})]),_:2},1032,["aria-label","onClick"])):x("",!0),o("button",{type:"button",class:"fct-adv-group-chevron-btn","aria-expanded":U(se.termId),"aria-label":q.$t("Toggle %1$s variants",se.title),onClick:Ne(fe=>Q(se.termId),["stop"])},[o("span",{class:ie(["fct-adv-group-chevron",{"is-expanded":U(se.termId)}])},[n(J,{name:"ChevronDown"})],2)],8,eH)])])],10,zO),o("tr",tH,[o("td",aH,[n(Dd,{visible:U(se.termId),duration:220},{default:d(()=>[o("table",null,[X[10]||(X[10]=o("colgroup",null,[o("col",{width:"80"}),o("col",{width:"130"}),o("col",{width:"250"}),o("col",{width:"150"}),o("col",{width:"180"}),o("col",{width:"100"})],-1)),o("tbody",null,[(r(!0),h(H,null,ae(m(se),fe=>{var $e,tt;return r(),h("tr",{key:fe.id,class:"fct-adv-group-child-row"},[o("td",{onClick:X[4]||(X[4]=Ne(()=>{},["stop"]))},[n(W,{"model-value":e.selectedVariants.includes(fe.id),"aria-label":A(u)("Select variant %1$s",fe.variation_title),onChange:_e=>O(fe.id,_e)},null,8,["model-value","aria-label","onChange"])]),o("td",null,[o("div",lH,[n(hl,{modelValue:fe.media,"onUpdate:modelValue":_e=>fe.media=_e,compact:!0,"max-thumbs":1,square:!0,"show-apply-to-all":!0,"selected-count":e.selectedVariants.length,onChange:(_e,Xe)=>K(se,fe,_e,Xe)},null,8,["modelValue","onUpdate:modelValue","selected-count","onChange"])])]),o("td",null,[o("div",sH,[o("div",nH,[o("div",oH,[o("span",iH,f(l.value[fe.id]||fe.variation_title),1),fe.item_status==="inactive"?(r(),h("span",rH,f(A(u)("Inactive")),1)):x("",!0)])])])]),o("td",null,[o("div",dH,[n(re,{placeholder:q.$t("Price"),type:"number",min:0,"model-value":fe.item_price,onInput:_e=>q.$emit("inlinePriceChange",fe,"item_price",_e),onChange:_e=>q.$emit("inlinePriceCommit",fe)},{prefix:d(()=>[o("span",{textContent:f(q.appVars.shop.currency_sign)},null,8,uH)]),_:2},1032,["placeholder","model-value","onInput","onChange"]),(($e=fe.other_info)==null?void 0:$e.payment_type)==="subscription"&&((tt=fe.other_info)!=null&&tt.repeat_interval)?(r(),h("span",cH,f(fe.other_info.repeat_interval),1)):x("",!0)])]),o("td",null,[o("div",AH,[n(re,{placeholder:q.$t("Compare price"),type:"number",min:0,class:ie({"is-error":k(fe)}),title:k(fe)?q.$t("Compare price must be greater than or equal to item price."):null,"model-value":fe.compare_price,onInput:_e=>q.$emit("inlinePriceChange",fe,"compare_price",_e),onChange:_e=>q.$emit("inlinePriceCommit",fe)},{prefix:d(()=>[o("span",{textContent:f(q.appVars.shop.currency_sign)},null,8,pH)]),_:2},1032,["placeholder","class","title","model-value","onInput","onChange"])])]),o("td",fH,[o("div",mH,[o("div",hH,[n(Ze,{class:"hide-on-mobile",size:"small",tag:"button",onClick:_e=>q.$emit("editVariant",fe)},{default:d(()=>[n(J,{name:"Edit"})]),_:2},1032,["onClick"]),n(ge,{class:"fct-more-option-wrap","popper-class":"fct-dropdown",trigger:"click",onVisibleChange:_e=>_e&&i(fe.id),onCommand:_e=>{_e==="toggle_status"&&q.$emit("toggleStatus",fe)}},{dropdown:d(()=>[n(me,null,{default:d(()=>[s.value.has(fe.id)?(r(),h(H,{key:0},[n(ye,{class:"show-on-mobile",onClick:_e=>q.$emit("editVariant",fe)},{default:d(()=>[n(J,{name:"Edit"}),R(" "+f(q.$t("Edit")),1)]),_:2},1032,["onClick"]),n(ye,null,{default:d(()=>[fe.id?(r(),$(Ia,{key:0,class:"fct-copy-wrap-inline",text:String(fe.id),showMode:"icon_with_text",buttonText:q.$t("Copy Variation ID")},null,8,["text","buttonText"])):x("",!0)]),_:2},1024),n(ye,{disabled:e.product.post_status!=="publish"&&e.product.post_status!=="private"||!fe.id},{default:d(()=>{var _e;return[(e.product.post_status==="publish"||e.product.post_status==="private")&&fe.id?(r(),$(Ia,{key:0,class:"fct-copy-wrap-inline",text:((_e=q.appVars)==null?void 0:_e.frontend_url)+"=instant_checkout&item_id="+fe.id+"&quantity=1",showMode:"icon_with_text",buttonText:q.$t("Direct Checkout"),tooltipContent:q.$t("Share direct checkout link to let customers buy this variation directly.")},null,8,["text","buttonText","tooltipContent"])):(r(),h(H,{key:1},[n(J,{name:"Copy"}),R(" "+f(q.$t("Direct Checkout"))+" ",1),n(pa,{content:q.$t("This product is currently in draft. You can't share direct checkout link")},null,8,["content"])],64))]}),_:2},1032,["disabled"]),fe.id?(r(),$(ye,{key:0,command:"toggle_status",class:ie({"item-destructive":fe.item_status!=="inactive"})},{default:d(()=>[n(J,{name:fe.item_status==="inactive"?"CheckCircle":"InActive"},null,8,["name"]),R(" "+f(fe.item_status==="inactive"?q.$t("Set Active"):q.$t("Set Inactive")),1)]),_:2},1032,["class"])):x("",!0)],64)):x("",!0)]),_:2},1024)]),default:d(()=>[o("button",{type:"button",class:"more-btn","aria-label":A(u)("Variation actions")},[n(J,{name:"More"})],8,_H)]),_:2},1032,["onVisibleChange","onCommand"])])])])])}),128)),_(se)?(r(),h("tr",vH,[o("td",gH,[o("div",{class:"fct-adv-row-sentinel",ref_for:!0,ref:b(se.termId,se.variants.length)},null,512)])])):x("",!0)])])]),_:2},1032,["visible"])])])],64))),128))])])]),o("div",yH,[o("table",null,[X[13]||(X[13]=o("colgroup",null,[o("col",{width:"56"}),o("col",{width:"68"}),o("col",{width:"auto"}),o("col",{width:"56"})],-1)),o("thead",null,[o("tr",null,[o("th",null,[n(W,{"model-value":e.isAllSelected,indeterminate:e.isSelectionIndeterminate,"aria-label":q.$t("Select all variants"),"onUpdate:modelValue":X[5]||(X[5]=se=>q.$emit("update:isAllSelected",se))},null,8,["model-value","indeterminate","aria-label"])]),o("th",null,f(q.$t("Image")),1),o("th",null,f(q.$t("Variant")),1),o("th",bH,[o("button",{type:"button",class:"fct-adv-group-chevron-btn","aria-expanded":E.value,"aria-label":E.value?q.$t("Collapse all groups"):q.$t("Expand all groups"),onClick:S},[o("span",{class:ie(["fct-adv-group-chevron",{"is-expanded":E.value}])},[n(J,{name:"ChevronDown"})],2)],8,wH)])])]),o("tbody",null,[(r(!0),h(H,null,ae(e.groupedVariants,se=>(r(),h(H,{key:se.termId},[o("tr",{class:ie(["fct-adv-group-row",{"is-expanded":U(se.termId)}]),onClick:fe=>Q(se.termId)},[o("td",null,[n(W,{onClick:X[6]||(X[6]=Ne(()=>{},["stop"])),"model-value":V(se),indeterminate:D(se),"aria-label":A(u)("Select all variants in %1$s",se.title),onChange:fe=>I(se,fe)},null,8,["model-value","indeterminate","aria-label","onChange"])]),o("td",null,[o("div",{class:"fct-product-pricing-table-item",onClick:X[7]||(X[7]=Ne(()=>{},["stop"]))},[n(hl,{"model-value":oe(se),compact:!0,"max-thumbs":1,square:!0,"show-apply-to-all":!0,"default-apply-to-all":!0,"selected-count":e.selectedVariants.length,onChange:(fe,$e)=>de(se,fe,$e)},null,8,["model-value","selected-count","onChange"])])]),o("td",null,[o("div",BH,[o("strong",null,f(se.title),1),o("span",kH,f(se.variants.length)+" "+f(se.variants.length===1?q.$t("variant"):q.$t("variants")),1)])]),o("td",xH,[o("div",SH,[U(se.termId)?(r(),$(Ze,{key:0,class:"fct-adv-group-edit-btn",size:"small",tag:"button","aria-label":q.$t("Edit group %1$s",se.title),onClick:Ne(fe=>q.$emit("editGroup",se),["stop"])},{default:d(()=>[n(J,{name:"Edit"})]),_:2},1032,["aria-label","onClick"])):x("",!0),o("button",{type:"button",class:"fct-adv-group-chevron-btn","aria-expanded":U(se.termId),"aria-label":q.$t("Toggle %1$s variants",se.title),onClick:Ne(fe=>Q(se.termId),["stop"])},[o("span",{class:ie(["fct-adv-group-chevron",{"is-expanded":U(se.termId)}])},[n(J,{name:"ChevronDown"})],2)],8,FH)])])],10,CH),o("tr",$H,[o("td",EH,[n(Dd,{visible:U(se.termId),duration:220},{default:d(()=>[o("table",null,[X[12]||(X[12]=o("colgroup",null,[o("col",{width:"56"}),o("col",{width:"68"}),o("col",{width:"auto"}),o("col",{width:"56"})],-1)),o("tbody",null,[(r(!0),h(H,null,ae(m(se),fe=>(r(),h("tr",{key:fe.id,class:"fct-adv-group-child-row"},[o("td",{onClick:X[8]||(X[8]=Ne(()=>{},["stop"]))},[n(W,{"model-value":e.selectedVariants.includes(fe.id),"aria-label":A(u)("Select variant %1$s",fe.variation_title),onChange:$e=>O(fe.id,$e)},null,8,["model-value","aria-label","onChange"])]),o("td",null,[o("div",UH,[n(hl,{modelValue:fe.media,"onUpdate:modelValue":$e=>fe.media=$e,compact:!0,"max-thumbs":1,square:!0,"show-apply-to-all":!0,"selected-count":e.selectedVariants.length,onChange:($e,tt)=>K(se,fe,$e,tt)},null,8,["modelValue","onUpdate:modelValue","selected-count","onChange"])])]),o("td",null,[o("div",IH,[o("div",QH,[o("div",DH,[o("span",VH,f(l.value[fe.id]||fe.variation_title),1),fe.item_status==="inactive"?(r(),h("span",TH,f(A(u)("Inactive")),1)):x("",!0)]),o("span",MH,[fe.compare_price?(r(),h("span",LH,f(q.appVars.shop.currency_sign)+f(fe.compare_price),1)):x("",!0),o("span",null,f(q.appVars.shop.currency_sign)+f(fe.item_price||"0"),1)])])])]),o("td",RH,[o("div",OH,[o("div",HH,[n(ge,{class:"fct-more-option-wrap","popper-class":"fct-dropdown",trigger:"click",onVisibleChange:$e=>$e&&i(fe.id),onCommand:$e=>{$e==="toggle_status"&&q.$emit("toggleStatus",fe)}},{dropdown:d(()=>[n(me,null,{default:d(()=>[s.value.has(fe.id)?(r(),h(H,{key:0},[n(ye,{onClick:$e=>q.$emit("editVariant",fe)},{default:d(()=>[n(J,{name:"Edit"}),R(" "+f(q.$t("Edit")),1)]),_:2},1032,["onClick"]),n(ye,null,{default:d(()=>[fe.id?(r(),$(Ia,{key:0,class:"fct-copy-wrap-inline",text:String(fe.id),showMode:"icon_with_text",buttonText:q.$t("Copy Variation ID")},null,8,["text","buttonText"])):x("",!0)]),_:2},1024),n(ye,{disabled:e.product.post_status!=="publish"&&e.product.post_status!=="private"||!fe.id},{default:d(()=>{var $e;return[(e.product.post_status==="publish"||e.product.post_status==="private")&&fe.id?(r(),$(Ia,{key:0,class:"fct-copy-wrap-inline",text:(($e=q.appVars)==null?void 0:$e.frontend_url)+"=instant_checkout&item_id="+fe.id+"&quantity=1",showMode:"icon_with_text",buttonText:q.$t("Direct Checkout"),tooltipContent:q.$t("Share direct checkout link to let customers buy this variation directly.")},null,8,["text","buttonText","tooltipContent"])):(r(),h(H,{key:1},[n(J,{name:"Copy"}),R(" "+f(q.$t("Direct Checkout"))+" ",1),n(pa,{content:q.$t("This product is currently in draft. You can't share direct checkout link")},null,8,["content"])],64))]}),_:2},1032,["disabled"]),fe.id?(r(),$(ye,{key:0,command:"toggle_status",class:ie({"item-destructive":fe.item_status!=="inactive"})},{default:d(()=>[n(J,{name:fe.item_status==="inactive"?"CheckCircle":"InActive"},null,8,["name"]),R(" "+f(fe.item_status==="inactive"?q.$t("Set Active"):q.$t("Set Inactive")),1)]),_:2},1032,["class"])):x("",!0)],64)):x("",!0)]),_:2},1024)]),default:d(()=>[o("button",{type:"button",class:"more-btn","aria-label":A(u)("Variation actions")},[n(J,{name:"More"})],8,PH)]),_:2},1032,["onVisibleChange","onCommand"])])])])]))),128)),_(se)?(r(),h("tr",NH,[o("td",KH,[o("div",{class:"fct-adv-row-sentinel",ref_for:!0,ref:b(se.termId,se.variants.length)},null,512)])])):x("",!0)])])]),_:2},1032,["visible"])])])],64))),128))])])])],64)}}},zH={class:"fct-flat-variant-table fct-table-draggable hide-on-mobile"},qH={class:"is-right"},YH={class:"fct-product-pricing-table-item"},WH={class:"fct-product-pricing-table-item"},XH={class:"fct-adv-title-cell"},JH={class:"fct-adv-title-main"},ZH={class:"fct-adv-variant-title"},eP={key:0,class:"fct-variant-badge fct-variant-badge-inactive"},tP={key:0,class:"fct-adv-attr-breadcrumb"},aP={class:"fct-product-pricing-table-item"},lP=["textContent"],sP={key:0,class:"fct-variant-badge fct-repeat-interval-badge"},nP={class:"fct-product-pricing-table-item"},oP=["textContent"],iP={class:"is-right"},rP={class:"fct-product-pricing-table-item"},dP={class:"fct-btn-group sm"},uP=["aria-label"],cP={key:0,class:"fct-adv-row-sentinel-row","aria-hidden":"true"},Xu=30,AP=30,pP={__name:"AdvancedVariationFlatTable",props:{product:Object,productEditModel:{type:Object,default:null},attributeGroups:{type:Array,default:()=>[]},selectedVariants:{type:Array,default:()=>[]},isAllSelected:{type:Boolean,default:!1},isSelectionIndeterminate:{type:Boolean,default:!1},variants:{type:Array,default:null}},emits:["update:selectedVariants","update:isAllSelected","editVariant","toggleStatus","inlinePriceChange","inlinePriceCommit","mediaUploaded"],setup(e,{emit:t}){const a=e,l=N(()=>a.variants??a.product.variants),s=T(Xu),i=N(()=>{const b=l.value;return b.length<=s.value?b:b.slice(0,s.value)}),c=N(()=>l.value.length>s.value);be(l,()=>{s.value=Xu});let p=null,m=null;const _=b=>{let k=b&&b.parentElement;for(;k;){const F=getComputedStyle(k).overflowY;if(F==="auto"||F==="scroll"||F==="overlay")return k;k=k.parentElement}return null},g=b=>{b?(p||(p=new IntersectionObserver(k=>{k.some(F=>F.isIntersecting)&&(s.value=Math.min(s.value+AP,l.value.length))},{root:_(b),rootMargin:"300px 0px"})),m=b,p.observe(b)):m&&(p&&p.unobserve(m),m=null)};kt(()=>{p&&(p.disconnect(),p=null)});const y=b=>{if(!a.productEditModel)return!1;const k=a.product.variants.findIndex(F=>F.id===b.id);return k===-1?!1:a.productEditModel.hasValidationError(`variants.${k}.compare_price`)},v=b=>{var S,Q,U;const k=b.attr_map||[];if(!k.length)return"";const F=(((U=(Q=(S=a.product)==null?void 0:S.detail)==null?void 0:Q.other_info)==null?void 0:U.attribute_config)||[]).map(V=>parseInt(V.group_id)).filter(Boolean),M=V=>{const D=F.indexOf(V);return D===-1?Number.MAX_SAFE_INTEGER:D};return[...k].sort((V,D)=>M(parseInt(V.group_id))-M(parseInt(D.group_id))).map(V=>{const D=a.attributeGroups.find(O=>O.id===parseInt(V.group_id));if(!D)return null;const I=(D.terms||[]).find(O=>O.id===parseInt(V.term_id));return I?I.title:null}).filter(Boolean).join(" / ")},w=t,C=(b,k)=>{let F;k?F=[...a.selectedVariants,b]:F=a.selectedVariants.filter(M=>M!==b),w("update:selectedVariants",F)};return(b,k)=>{const F=B("el-checkbox"),M=B("el-input"),E=B("el-dropdown-item"),S=B("el-dropdown-menu"),Q=B("el-dropdown");return r(),h("div",zH,[o("table",null,[k[1]||(k[1]=o("colgroup",null,[o("col",{width:"40"}),o("col",{width:"50"}),o("col"),o("col"),o("col"),o("col")],-1)),o("thead",null,[o("tr",null,[o("th",null,[n(F,{"model-value":e.isAllSelected,indeterminate:e.isSelectionIndeterminate,"aria-label":b.$t("Select all variants"),"onUpdate:modelValue":k[0]||(k[0]=U=>b.$emit("update:isAllSelected",U))},null,8,["model-value","indeterminate","aria-label"])]),o("th",null,f(b.$t("Image")),1),o("th",null,f(b.$t("Title")),1),o("th",null,f(b.$t("Price")),1),o("th",null,f(b.$t("Compare at price")),1),o("th",qH,f(b.$t("Action")),1)])]),o("tbody",null,[(r(!0),h(H,null,ae(i.value,U=>{var V,D;return r(),h("tr",{key:U.id},[o("td",null,[n(F,{"model-value":e.selectedVariants.includes(U.id),"aria-label":A(u)("Select variant %1$s",U.variation_title),onChange:I=>C(U.id,I)},null,8,["model-value","aria-label","onChange"])]),o("td",null,[o("div",YH,[n(hl,{modelValue:U.media,"onUpdate:modelValue":I=>U.media=I,compact:!0,"max-thumbs":1,square:!0,onChange:I=>b.$emit("mediaUploaded",U,I)},null,8,["modelValue","onUpdate:modelValue","onChange"])])]),o("td",null,[o("div",WH,[o("div",XH,[o("div",JH,[o("span",ZH,f(U.variation_title),1),U.item_status==="inactive"?(r(),h("span",eP,f(A(u)("Inactive")),1)):x("",!0)]),v(U)&&v(U)!==U.variation_title?(r(),h("span",tP,f(v(U)),1)):x("",!0)])])]),o("td",null,[o("div",aP,[n(M,{placeholder:b.$t("Price"),type:"number",min:0,"model-value":U.item_price,onInput:I=>b.$emit("inlinePriceChange",U,"item_price",I),onChange:I=>b.$emit("inlinePriceCommit",U)},{prefix:d(()=>[o("span",{textContent:f(b.appVars.shop.currency_sign)},null,8,lP)]),_:2},1032,["placeholder","model-value","onInput","onChange"]),((V=U.other_info)==null?void 0:V.payment_type)==="subscription"&&((D=U.other_info)!=null&&D.repeat_interval)?(r(),h("span",sP,f(U.other_info.repeat_interval),1)):x("",!0)])]),o("td",null,[o("div",nP,[n(M,{placeholder:b.$t("Compare price"),type:"number",min:0,class:ie({"is-error":y(U)}),title:y(U)?b.$t("Compare price must be greater than or equal to item price."):null,"model-value":U.compare_price,onInput:I=>b.$emit("inlinePriceChange",U,"compare_price",I),onChange:I=>b.$emit("inlinePriceCommit",U)},{prefix:d(()=>[o("span",{textContent:f(b.appVars.shop.currency_sign)},null,8,oP)]),_:2},1032,["placeholder","class","title","model-value","onInput","onChange"])])]),o("td",iP,[o("div",rP,[o("div",dP,[n(Ze,{class:"hide-on-mobile",size:"small",tag:"button",onClick:I=>b.$emit("editVariant",U)},{default:d(()=>[n(J,{name:"Edit"})]),_:2},1032,["onClick"]),n(Q,{class:"fct-more-option-wrap","popper-class":"fct-dropdown",trigger:"click",onCommand:I=>{I==="toggle_status"&&b.$emit("toggleStatus",U)}},{dropdown:d(()=>[n(S,null,{default:d(()=>[n(E,{class:"show-on-mobile",onClick:I=>b.$emit("editVariant",U)},{default:d(()=>[n(J,{name:"Edit"}),R(" "+f(b.$t("Edit")),1)]),_:2},1032,["onClick"]),n(E,null,{default:d(()=>[U.id?(r(),$(Ia,{key:0,class:"fct-copy-wrap-inline",text:String(U.id),showMode:"icon_with_text",buttonText:b.$t("Copy Variation ID")},null,8,["text","buttonText"])):x("",!0)]),_:2},1024),n(E,{disabled:e.product.post_status!=="publish"&&e.product.post_status!=="private"||!U.id},{default:d(()=>{var I;return[(e.product.post_status==="publish"||e.product.post_status==="private")&&U.id?(r(),$(Ia,{key:0,class:"fct-copy-wrap-inline",text:((I=b.appVars)==null?void 0:I.frontend_url)+"=instant_checkout&item_id="+U.id+"&quantity=1",showMode:"icon_with_text",buttonText:b.$t("Direct Checkout"),tooltipContent:b.$t("Share direct checkout link to let customers buy this variation directly.")},null,8,["text","buttonText","tooltipContent"])):(r(),h(H,{key:1},[n(J,{name:"Copy"}),R(" "+f(b.$t("Direct Checkout"))+" ",1),n(pa,{content:b.$t("This product is currently in draft. You can't share direct checkout link")},null,8,["content"])],64))]}),_:2},1032,["disabled"]),U.id?(r(),$(E,{key:0,command:"toggle_status",class:ie({"item-destructive":U.item_status!=="inactive"})},{default:d(()=>[n(J,{name:U.item_status==="inactive"?"CheckCircle":"InActive"},null,8,["name"]),R(" "+f(U.item_status==="inactive"?b.$t("Set Active"):b.$t("Set Inactive")),1)]),_:2},1032,["class"])):x("",!0)]),_:2},1024)]),default:d(()=>[o("button",{type:"button",class:"more-btn","aria-label":A(u)("Variation actions")},[n(J,{name:"More"})],8,uP)]),_:2},1032,["onCommand"])])])])])}),128)),c.value?(r(),h("tr",cP,[o("td",{colspan:"6"},[o("div",{class:"fct-adv-row-sentinel",ref:g})])])):x("",!0)])])])}}},fP={class:"fct-product-pricing-form-wrap"},mP={class:"fct-product-pricing-form-inner"},hP={class:"dialog-footer"},_P={class:"fct-btn-group sm"},vP={__name:"GroupBulkEditForm",props:{groupVariantIds:{type:Array,required:!0},product:Object,productEditModel:Object,fieldKey:String},emits:["createOrUpdateVariant","closeModal","dirtyStateChange"],setup(e,{expose:t,emit:a}){const l=e,s=a,i=()=>({item_price:null,compare_price:null,item_cost:null,manage_cost:"__unchanged__",sku:null,manage_stock:"__unchanged__",total_stock:null,fulfillment_type:"__unchanged__",available:null,on_hold:null,committed:null,other_info:{payment_type:"__unchanged__",description:null,tax_class:null,tax_exempt:"__unchanged__",tax_inclusion:"__unchanged__",package_slug:null,weight:null,weight_unit:null,length:null,width:null,height:null,interval:null,interval_count:null,billing_summary:null,manage_setup_fee:"__unchanged__",signup_fee:null,signup_fee_name:null,times:null,trial_days:null}}),c=T(i()),p=T(0),m=T(!1),_=T(!1);Ie(async()=>{await xe(),_.value=!0});const g=()=>{const v=c.value||{},w={};["item_price","compare_price","item_cost","manage_cost","sku","manage_stock","total_stock","fulfillment_type"].forEach(M=>{const E=v[M];E!=null&&E!==""&&E!=="__unchanged__"&&(w[M]=E)});const b=v.other_info||{},k={};Object.keys(b).forEach(M=>{const E=b[M];E!=null&&E!==""&&E!=="__unchanged__"&&(k[M]=E)});const F={...w};return Object.keys(k).length>0&&(F.other_info=k),F},y=async()=>{if(!l.groupVariantIds.length)return Y.error(u("Please select at least one variant to update.")),null;const v=g();if(!Object.keys(v).length)return Y.error(u("Please fill in at least one field to update.")),null;l.productEditModel.setSaving(!0);try{const w=await ce.post("products/variants/group-bulk-update",{variant_ids:l.groupVariantIds,...v});return Y.success(w.message||u("Variants updated successfully")),p.value=0,s("createOrUpdateVariant",{group:!0,count:l.groupVariantIds.length}),w}catch(w){return w&&(w.status_code===422||w.status===422)?Y.validationErrors(w):Y.error(w&&w.data&&w.data.message||u("Failed to update variants")),null}finally{l.productEditModel.setSaving(!1)}};return be(c,()=>{m.value||!_.value||p.value++},{deep:!0}),be(()=>p.value,v=>{s("dirtyStateChange",v>0)},{immediate:!0}),t({hasDirtyDrafts:()=>p.value>0,getDirtyDraftCount:()=>p.value>0?1:0,discardDrafts:async()=>{m.value=!0,c.value=i(),await xe(),p.value=0,m.value=!1},saveCurrentDraft:y}),(v,w)=>{const C=B("el-form"),b=B("el-button");return r(),h("div",fP,[o("div",mP,[n(C,{"label-position":"top","require-asterisk-position":"right"},{default:d(()=>[n(Up,{variant:c.value,"field-key":e.fieldKey,"mode-type":"update",product:e.product,"product-edit-model":e.productEditModel,"is-group-mode":!0},null,8,["variant","field-key","product","product-edit-model"]),n(Ip,{variant:c.value,"field-key":e.fieldKey,"mode-type":"update",product:e.product,"product-edit-model":e.productEditModel,"is-group-mode":!0},null,8,["variant","field-key","product","product-edit-model"]),n(Qp,{variant:c.value,"field-key":e.fieldKey,"mode-type":"update","product-edit-model":e.productEditModel,"is-group-mode":!0},null,8,["variant","field-key","product-edit-model"]),e.productEditModel.isTaxEnabled()?(r(),$(Dp,{key:0,variant:c.value,"product-edit-model":e.productEditModel,"field-key":e.fieldKey,"mode-type":"update","is-group-mode":!0},null,8,["variant","product-edit-model","field-key"])):x("",!0)]),_:1})]),o("div",hP,[o("div",_P,[n(b,{onClick:w[0]||(w[0]=k=>s("closeModal"))},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1}),n(b,{type:"primary",loading:e.productEditModel.saving,disabled:e.productEditModel.saving,onClick:y},{default:d(()=>[R(f(A(u)("Update %1$s variants",e.groupVariantIds.length)),1)]),_:1},8,["loading","disabled"])])])])}}},gP={class:"fct-adv-variant-table-wrap"},yP={class:"flex items-center flex-wrap justify-between gap-2 mb-3"},bP={class:"flex items-center flex-wrap gap-2 ml-auto"},wP=["aria-label"],CP={key:0,class:"fct-adv-filters-panel-wrap"},BP={class:"fct-adv-variant-search-row"},kP={key:0,class:"fct-adv-variant-filters"},xP=["aria-pressed"],SP={key:0,class:"fct-adv-filter-chip__count"},FP={class:"fct-adv-filter-options"},$P={class:"fct-adv-filter-options__header"},EP=["onClick"],UP={class:"fct-adv-filter-options__list"},IP={key:0,class:"fct-adv-filter-count"},QP={key:0,class:"fct-adv-variant-empty"},DP={class:"fct-adv-variant-empty__title"},VP={class:"fct-adv-variant-empty__hint"},TP=["aria-label"],MP={class:"fct-grouped-variant-skeleton"},LP={key:4,class:"fct-table-draggable fct-product-pricing-table-mobile-wrap"},RP={class:"fct-product-pricing-table-mobile-item-inner"},OP={class:"fct-product-pricing-table-item"},HP={class:"media relative"},PP={class:"absolute top-0 left-0 w-full h-full z-10 rounded opacity-0"},NP={key:0,class:"absolute top-0 left-0 w-full h-full z-0 rounded"},KP=["src","alt"],GP=["src","alt"],jP={class:"fct-product-pricing-table-item-content"},zP={class:"title"},qP={key:0,class:"fct-variant-badge fct-variant-badge-inactive"},YP={class:"fct-adv-attr-breadcrumb"},WP={key:0,class:"compare-price"},XP=["textContent"],JP={class:"price"},ZP=["textContent"],eN={class:"fct-product-pricing-table-item-action"},tN={class:"fct-btn-group sm"},aN=["aria-label"],lN={class:"fct-shared-variant-drawer__layout"},sN={key:0,class:"fct-shared-variant-nav"},nN={class:"fct-group-edit-aside"},oN={class:"fct-group-edit-aside__label flex items-center gap-2"},iN={class:"fct-group-edit-aside__title"},rN={class:"fct-group-edit-aside__hint"},dN={class:"fct-group-edit-aside__list"},uN={key:1,class:"fct-shared-variant-nav"},cN={class:"fct-shared-variant-nav__filters"},AN={key:0,class:"fct-shared-variant-nav__chips"},pN=["aria-pressed"],fN={key:0,class:"fct-adv-filter-chip__count"},mN={class:"fct-adv-filter-options"},hN={class:"fct-adv-filter-options__header"},_N=["onClick"],vN={class:"fct-adv-filter-options__list"},gN={class:"fct-shared-variant-drawer__content"},yN={key:0,class:"fct-compact-group-edit-summary"},bN={class:"fct-compact-group-edit-summary__title"},wN={class:"fct-compact-group-edit-summary__count"},CN={class:"fct-compact-group-edit-summary__list"},BN={key:0,class:"fct-compact-group-edit-bar"},kN=["disabled","aria-label","onClick"],xN={class:"fct-shared-variant-drawer__form"},SN={class:"fct-variant-dirty-dialog__header"},FN=["id"],$N={class:"dialog-footer"},EN={class:"fct-btn-group sm"},Ju=200,UN={__name:"AdvancedVariationTable",props:{product:Object,productEditModel:Object,attributeGroups:{type:Array,default:()=>[]},externalBusy:{type:Boolean,default:!1}},setup(e){var Ke,qe,mt,Je,$t,qt;const t=e,a=T([]),l=T(!1),s=T(!1),i=T(null),c=T(!1),p=T(new Set),m=T(new Set),_=T(0),g=()=>{_.value++},y=()=>{_.value=Math.max(0,_.value-1)},v=N(()=>_.value>0||l.value||t.externalBusy),w=T(((qt=($t=(Je=(mt=(qe=(Ke=t.product)==null?void 0:Ke.detail)==null?void 0:qe.other_info)==null?void 0:mt.attribute_config)==null?void 0:Je[0])==null?void 0:$t.variants)==null?void 0:qt.length)||6),C=T(!1),b=T(null),k=T(null),F=T(!1),M=T(!1),E=T(!1),S=T(null),Q=T(""),U=T(""),V=T(null),D=T(""),I=T(!1),O=T({}),L=()=>{I.value=!I.value},P=()=>{O.value={},D.value="",I.value=!1},G=Ae=>{Ae.style.opacity="0",Ae.style.overflow="hidden"},j=Ae=>{const he=Ae.scrollHeight+"px";Ae.style.height="0",Ae.offsetHeight,Ae.style.transition="height 0.25s ease, opacity 0.2s ease",Ae.style.height=he,Ae.style.opacity="1"},z=Ae=>{Ae.style.height="",Ae.style.overflow="",Ae.style.transition="",Ae.style.opacity=""},Z=Ae=>{Ae.style.height=Ae.scrollHeight+"px",Ae.style.overflow="hidden",Ae.offsetHeight,Ae.style.transition="height 0.25s ease, opacity 0.2s ease",Ae.style.height="0",Ae.style.opacity="0"},oe=Ae=>{Ae.style.height="",Ae.style.overflow="",Ae.style.transition="",Ae.style.opacity=""},de=N(()=>{var he,Le,De;const Ae=(De=(Le=(he=t.product)==null?void 0:he.detail)==null?void 0:Le.other_info)==null?void 0:De.attribute_config;return!Ae||!Array.isArray(Ae)?[]:Ae.map(te=>{const He=parseInt(te.group_id,10),ut=t.attributeGroups.find(Be=>parseInt(Be.id,10)===He);return ut?{id:parseInt(ut.id,10),title:ut.title}:null}).filter(Boolean)}),K=N(()=>de.value.map(Ae=>{const he=t.attributeGroups.find(Le=>Le.id===Ae.id);return he?{id:he.id,title:he.title,terms:he.terms||[]}:null}).filter(Boolean)),q=(Ae,he)=>{const Le=O.value[Ae];return Le?Le.has(he):!1},X=(Ae,he)=>{const Le={...O.value},De=Le[Ae]?new Set(Le[Ae]):new Set;De.has(he)?De.delete(he):De.add(he),De.size===0?delete Le[Ae]:Le[Ae]=De,O.value=Le},W=Ae=>{var he;return((he=O.value[Ae])==null?void 0:he.size)||0},re=Ae=>{if(!O.value[Ae])return;const he={...O.value};delete he[Ae],O.value=he},ye=()=>{O.value={},D.value=""},me=N(()=>Object.keys(O.value).length>0||D.value.trim()!==""),ge=N(()=>me.value&&t.product.variants.length>0&&se.value.length===0),se=N(()=>{let Ae=t.product.variants;const he=Object.keys(O.value);he.length>0&&(Ae=Ae.filter(De=>he.every(te=>{const He=O.value[te];if(!He||He.size===0)return!0;const ut=(De.attr_map||[]).find(Be=>parseInt(Be.group_id)===parseInt(te));return ut&&He.has(parseInt(ut.term_id))})));const Le=D.value.trim().toLowerCase();return Le&&(Ae=Ae.filter(De=>(De.variation_title||"").toLowerCase().includes(Le)?!0:(De.attr_map||[]).map(ut=>{const Be=t.attributeGroups.find(ba=>ba.id===parseInt(ut.group_id));if(!Be)return"";const wt=(Be.terms||[]).find(ba=>ba.id===parseInt(ut.term_id));return wt?wt.title.toLowerCase():""}).join(" ").includes(Le))),Ae}),fe=N(()=>{if(!V.value)return null;const Ae=parseInt(V.value,10),he=t.attributeGroups.find(te=>parseInt(te.id,10)===Ae);if(!he)return null;const Le=[],De={};for(const te of se.value){const He=(te.attr_map||[]).find(Be=>parseInt(Be.group_id,10)===Ae);if(!He)continue;const ut=parseInt(He.term_id,10);if(!De[ut]){const Be=(he.terms||[]).find(wt=>parseInt(wt.id,10)===ut);De[ut]={termId:ut,title:Be?Be.title:"Unknown",variants:[]},Le.push(De[ut])}De[ut].variants.push(te)}return Le}),$e=N(()=>!!V.value&&fe.value&&fe.value.length>0);be(fe,Ae=>{Array.isArray(Ae)&&Ae.length>0&&(w.value=Ae.length)},{immediate:!0});const tt=Ae=>t.productEditModel.validateComparePrice(Ae),_e=(Ae,he)=>{const Le=fe.value?fe.value.find(ut=>ut.termId===Ae):null;if(!Le||he===""||he===null||he===void 0)return;const De=parseFloat(he);if(isNaN(De)||De<0){Y.error(u("Please enter a valid price."));return}const te=Le.variants.filter(ut=>a.value.includes(ut.id));(te.length?te:Le.variants).forEach(ut=>{const Be=t.product.variants.findIndex(wt=>wt.id===ut.id);Be!==-1&&(t.productEditModel.onChangePricing("item_price",Be,De),tt(Be))})},Xe=Ae=>{const he=t.product.variants.findIndex(De=>De.id===Ae.id);if(he===-1)return;tt(he)||Y.error(u("Compare price must be greater than or equal to item price."))};be(()=>t.product.variants,Ae=>{Array.isArray(Ae)&&(Ae.forEach(he=>{const Le=he.media?he.media.meta_value||he.media:[];he.media=Array.isArray(Le)?Le:[]}),c.value&&(c.value=!1,Ft()))},{immediate:!0,deep:!1});const ht=[];Ie(async()=>{await xe(),document.querySelectorAll(".fct-adv-variant-table-wrap .el-input__wrapper input[type='number']").forEach(he=>{const Le=De=>{document.activeElement===he&&De.preventDefault()};he.addEventListener("wheel",Le),ht.push({input:he,handler:Le})})}),kt(()=>{ht.forEach(({input:Ae,handler:he})=>{Ae.removeEventListener("wheel",he)}),ht.length=0}),be(()=>{var Ae;return(Ae=de.value[0])==null?void 0:Ae.id},Ae=>{if(de.value.length<2||!Ae){V.value=null;return}V.value=parseInt(Ae,10)},{immediate:!0}),be(()=>de.value.length,Ae=>{Ae<2&&(V.value=null)}),be([V,de],([Ae,he])=>{var te;if(!Array.isArray(he)||he.length<2)return;const Le=(te=he[0])==null?void 0:te.id;if(!Le)return;const De=he.map(He=>parseInt(He.id,10));(Ae==null||!De.includes(parseInt(Ae,10)))&&(V.value=parseInt(Le,10))},{deep:!0});const Ye=(Ae,he,Le)=>{const De=parseFloat(Le)||0,te=t.product.variants.findIndex(He=>He.id===Ae.id);te!==-1&&t.productEditModel.onChangePricing(he,te,De)},Se=(Ae,he)=>{const Le=Ae.media;Ae.media=he,g(),ce.post(`products/variants/${Ae.id}/setMedia`,{media:he}).then(De=>{Y.success(De.message||u("Thumbnail set successfully"))}).catch(De=>{var te;Ae.media=Le,Y.error(((te=De==null?void 0:De.data)==null?void 0:te.message)||(De==null?void 0:De.message)||u("Failed to save thumbnail"))}).finally(y)},Ee=async(Ae,he)=>{const Le=Ae.variants.filter(Be=>a.value.includes(Be.id)),De=Le.length?Le:Ae.variants;De.forEach(Be=>{Be.media=he});const te=De.map(Be=>Be.id),He=5;let ut=0;g();try{for(let Be=0;Bece.post(`products/variants/${ba}/setMedia`,{media:he})));ut+=wt.filter(ba=>ba.status==="rejected").length}}finally{y()}ut===0?Y.success(u("Thumbnail applied to %1$s variants",De.length)):Y.error(u("Failed to apply thumbnail to %1$s variants",ut))},Oe=N({get(){const Ae=se.value.map(he=>he.id);return Ae.length===0?!1:Ae.every(he=>a.value.includes(he))},set(Ae){const he=se.value.map(Le=>Le.id);if(Ae){const Le=new Set([...a.value,...he]);a.value=Array.from(Le)}else{const Le=new Set(he);a.value=a.value.filter(De=>!Le.has(De))}}}),Me=N(()=>{const Ae=se.value.map(Le=>Le.id);if(Ae.length===0)return!1;const he=Ae.filter(Le=>a.value.includes(Le)).length;return he>0&&he{if(l.value||!Q.value||a.value.length===0)return;if(Q.value==="delete"){Fn.confirmDeleteWithInput("delete",u("Are you sure you want to delete %1$s variants?",a.value.length)).then(()=>{vt()}).catch(()=>{});return}const Ae=Q.value==="set_price";let he=null;if(Ae&&(he=parseFloat(U.value),U.value===""||isNaN(he)||he<0)){Y.error(u("Please enter a valid price."));return}if(Ae&&a.value.slice(0,Ju).map(te=>t.product.variants.find(He=>He.id===te)).filter(te=>{if(!te)return!1;const He=parseFloat(te.compare_price);return!isNaN(He)&&He>0&&He{const te={id:De};return Q.value==="set_price"?te.item_price=he:Q.value==="set_status_active"?te.item_status="active":Q.value==="set_status_inactive"&&(te.item_status="inactive"),te});l.value=!0,t.productEditModel.bulkUpdateVariants(Le).then(De=>{Y.success((De==null?void 0:De.message)||u("Variants updated successfully")),t.productEditModel.data.reloader(),a.value=[],Q.value="",U.value=""}).catch(De=>{var te;Y.error(((te=De==null?void 0:De.data)==null?void 0:te.message)||u("Bulk action failed"))}).finally(()=>{l.value=!1})},vt=async()=>{const Ae=[...a.value],he=5;g();try{for(let Le=0;Lece.delete(`products/variants/${De}`)));Y.success(u("Variants deleted successfully")),t.productEditModel.data.reloader(),a.value=[]}catch{Y.error(u("Failed to delete some variants"))}finally{y()}},Lt=Ae=>{if(!Ae||!Ae.id)return;const he=Ae.item_status==="inactive"?"active":"inactive";g(),t.productEditModel.bulkUpdateVariants([{id:Ae.id,item_status:he}]).then(Le=>{Ae.item_status=he,Y.success((Le==null?void 0:Le.message)||u("Variant updated successfully")),t.productEditModel.data.reloader()}).catch(Le=>{var De;Y.error(((De=Le==null?void 0:Le.data)==null?void 0:De.message)||u("Failed to update variant"))}).finally(y)},Et=Ae=>{const he=Ae.attr_map||[];return he.length?he.map(De=>{const te=t.attributeGroups.find(ut=>ut.id===parseInt(De.group_id));if(!te)return null;const He=(te.terms||[]).find(ut=>ut.id===parseInt(De.term_id));return He?He.title:null}).filter(Boolean).join(" / "):""},Dt=(Ae,he)=>{const Le=Ae.attr_map||[];if(!Le.length)return"";const De=parseInt(he);return Le.filter(He=>parseInt(He.group_id)!==De).map(He=>{const ut=t.attributeGroups.find(wt=>wt.id===parseInt(He.group_id));if(!ut)return null;const Be=(ut.terms||[]).find(wt=>wt.id===parseInt(He.term_id));return Be?Be.title:null}).filter(Boolean).join(" / ")},dt=Ae=>{const he=t.product.variants.findIndex(Le=>Le.id===Ae.id);he!==-1&&(t.productEditModel.setValidationErrors({}),b.value=he,C.value=!0)},Ut=()=>{t.productEditModel.setValidationErrors({}),E.value=!1,C.value=!1,b.value=null,s.value=!1,i.value=null,c.value=!1},Ft=()=>{t.productEditModel.setValidationErrors({}),E.value=!1,s.value=!1,i.value=null,p.value=new Set},It=N(()=>!i.value||!i.value.items?[]:i.value.items.filter(Ae=>p.value.has(Ae.key)).map(Ae=>Ae.variant&&Ae.variant.id?Ae.variant.id:null).filter(Boolean)),Qt=Ae=>{const he=new Set(p.value);he.has(Ae)?he.delete(Ae):he.add(Ae),p.value=he},Tt=()=>{F.value=!1,M.value=!1,S.value=null},Wt=()=>{var Ae,he;return((he=(Ae=k.value)==null?void 0:Ae.hasDirtyDrafts)==null?void 0:he.call(Ae))??!1},Bt=Ae=>{E.value=Ae},sa=()=>{const Ae=S.value;if(Tt(),!!Ae&&Ae.type==="close"){if(typeof Ae.done=="function"){Ae.done();return}Ut()}},ve=()=>{Tt()},Fe=async()=>{var Ae,he;await((he=(Ae=k.value)==null?void 0:Ae.discardDrafts)==null?void 0:he.call(Ae)),E.value=!1,sa()},ot=async()=>{var he;if(!((he=k.value)!=null&&he.saveCurrentDraft)||M.value)return;if(M.value=!0,await k.value.saveCurrentDraft()){E.value=!1,sa();return}M.value=!1,ve()},gt=Ae=>{if(!Wt()){Ae();return}S.value={type:"close",done:Ae},F.value=!0},Ct=()=>{if(s.value){gt(Ft);return}gt(Ut)},jt=Ae=>{if(E.value=!1,t.productEditModel.setValidationErrors({}),s.value){c.value=!0,t.productEditModel.data.reloader();return}Ae&&typeof Ae.index=="number"&&Ae.index>=0&&(b.value=Ae.index)},yt=Ae=>{const he=Ra.value?Ra.value.find(Le=>Le.termId===Ae.termId):null;he&&ca(he)},ca=Ae=>{if(!Ae||!Ae.items||!Ae.items.length||E.value)return;i.value=Ae,p.value=new Set(Ae.items.map(Le=>Le.key)),s.value=!0;const he=Ae.items[0];t.productEditModel.setValidationErrors({}),b.value=typeof he.index=="number"?he.index:null,C.value=!0},ta=T(typeof window<"u"?window.innerWidth:1280);let Ht=null;Ie(()=>{typeof window>"u"||(Ht=()=>{ta.value=window.innerWidth},window.addEventListener("resize",Ht))}),kt(()=>{Ht&&(window.removeEventListener("resize",Ht),Ht=null)});const na=N(()=>ta.value<=900),Za=N(()=>ta.value<=640?"100%":ta.value<=900?"95%":"920px"),Ql=N(()=>{const Ae=new Map;return(t.product.variants||[]).forEach((he,Le)=>{he&&he.id!=null&&Ae.set(he.id,Le)}),(se.value||[]).map(he=>{var De,te;const Le=Ae.get(he==null?void 0:he.id);return{key:(he==null?void 0:he.id)??`variant-${Le}`,index:Le,variant:he,label:Et(he)||(he==null?void 0:he.variation_title)||`${u("Variant")} ${Le+1}`,meta:(he==null?void 0:he.item_price)!==void 0&&(he==null?void 0:he.item_price)!==null&&(he==null?void 0:he.item_price)!==""?`${((te=(De=window.appVars)==null?void 0:De.shop)==null?void 0:te.currency_sign)||"$"} ${he.item_price}`:u("No price set"),modeType:"update",isDraft:!1}})}),Ra=N(()=>{if(!fe.value||fe.value.length===0)return null;const Ae=new Map;(t.product.variants||[]).forEach((De,te)=>{De&&De.id!=null&&Ae.set(De.id,te)});const he=V.value,Le=De=>{var ut,Be;const te=Ae.get(De==null?void 0:De.id),He=he?Dt(De,he):Et(De);return{key:(De==null?void 0:De.id)??`variant-${te}`,index:te,variant:De,label:He||(De==null?void 0:De.variation_title)||`${u("Variant")} ${te+1}`,meta:(De==null?void 0:De.item_price)!==void 0&&(De==null?void 0:De.item_price)!==null&&(De==null?void 0:De.item_price)!==""?`${((Be=(ut=window.appVars)==null?void 0:ut.shop)==null?void 0:Be.currency_sign)||"$"} ${De.item_price}`:u("No price set"),modeType:"update",isDraft:!1}};return fe.value.map(De=>({termId:De.termId,title:De.title,count:De.variants.length,items:De.variants.map(Le)}))}),aa=N(()=>{var he;const Ae=(he=t.product.variants)==null?void 0:he[b.value];return(Ae==null?void 0:Ae.id)??`variant-${b.value??0}`}),ee=(Ae,he)=>{const Le=parseInt(he,10),De=(Ae.attr_map||[]).find(Be=>parseInt(Be.group_id,10)===Le);if(!De)return"";const te=t.attributeGroups.find(Be=>parseInt(Be.id,10)===Le);if(!te)return"";const He=parseInt(De.term_id,10),ut=(te.terms||[]).find(Be=>parseInt(Be.id,10)===He);return ut?ut.title:""},we=N(()=>{var he;if(b.value===null)return{group:"",detail:""};const Ae=(he=t.product.variants)==null?void 0:he[b.value];return Ae?V.value?{group:ee(Ae,V.value),detail:Dt(Ae,V.value)}:{group:"",detail:Et(Ae)}:{group:"",detail:""}}),le=Ae=>{Ae&&(E.value&&aa.value!==Ae.key||typeof Ae.index=="number"&&(t.productEditModel.setValidationErrors({}),b.value=Ae.index))},pe=Ae=>{var he,Le;return!!((he=Ae==null?void 0:Ae.variant)!=null&&he.id)&&["publish","private"].includes((Le=t.product)==null?void 0:Le.post_status)},Ge=Ae=>`${je.get("frontend_url")}=instant_checkout&item_id=${Ae.variant.id}&quantity=1`,st=(Ae,he)=>{var Le,De;if(!(!he||!Ae)){if(Ae==="copy_variation_id"&&((Le=he.variant)!=null&&Le.id)){Yl.copy(String(he.variant.id),{successMessage:u("Variation ID copied to clipboard")});return}if(Ae==="copy_direct_checkout"&&pe(he)){Yl.copy(Ge(he),{successMessage:u("Direct checkout link copied to clipboard")});return}Ae==="toggle_status"&&((De=he.variant)!=null&&De.id)&&Lt(he.variant)}};return(Ae,he)=>{const Le=B("el-button"),De=B("el-input"),te=B("el-checkbox"),He=B("el-popover"),ut=B("el-dropdown-item"),Be=B("el-dropdown-menu"),wt=B("el-dropdown"),ba=B("el-drawer"),ue=B("el-dialog");return r(),h("div",gP,[o("div",yP,[n(RO,{product:e.product,"attribute-groups":e.attributeGroups,modelValue:V.value,"onUpdate:modelValue":he[0]||(he[0]=ne=>V.value=ne)},null,8,["product","attribute-groups","modelValue"]),o("div",bP,[I.value?(r(),$(Le,{key:1,onClick:P},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1})):(r(),h("button",{key:0,type:"button",class:"fct-adv-filter-panel-toggle","aria-label":A(u)("Search and filter variants"),onClick:L},[n(J,{name:"Search"}),n(J,{name:"Filter"})],8,wP))])]),n(Gl,{onBeforeEnter:G,onEnter:j,onAfterEnter:z,onLeave:Z,onAfterLeave:oe},{default:d(()=>[I.value?(r(),h("div",CP,[o("div",BP,[n(De,{modelValue:D.value,"onUpdate:modelValue":he[1]||(he[1]=ne=>D.value=ne),placeholder:A(u)("Search variants"),size:"small",clearable:""},{prefix:d(()=>[n(J,{name:"Search"})]),_:1},8,["modelValue","placeholder"])]),K.value.length>0?(r(),h("div",kP,[(r(!0),h(H,null,ae(K.value,ne=>(r(),$(He,{key:ne.id,placement:"bottom-start",width:220,trigger:"click","popper-class":"fct-adv-filter-popover"},{reference:d(()=>[o("button",{class:ie(["fct-adv-filter-chip",{"is-active":W(ne.id)>0}]),"aria-pressed":W(ne.id)>0,type:"button"},[o("span",null,f(ne.title),1),W(ne.id)>0?(r(),h("span",SP,f(W(ne.id)),1)):x("",!0),n(J,{name:"ChevronDown"})],10,xP)]),default:d(()=>[o("div",FP,[o("div",$P,[o("span",null,f(A(u)("Filter by %1$s",ne.title)),1),W(ne.id)>0?(r(),h("button",{key:0,type:"button",class:"fct-adv-filter-clear",onClick:Ue=>re(ne.id)},f(A(u)("Clear")),9,EP)):x("",!0)]),o("ul",UP,[(r(!0),h(H,null,ae(ne.terms,Ue=>(r(),h("li",{key:Ue.id},[n(te,{"model-value":q(ne.id,Ue.id),onChange:Te=>X(ne.id,Ue.id)},{default:d(()=>[R(f(Ue.title),1)]),_:2},1032,["model-value","onChange"])]))),128))])])]),_:2},1024))),128)),me.value&&!ge.value?(r(),h("span",IP,f(A(u)("Showing %1$s of %2$s variants",se.value.length,e.product.variants.length)),1)):x("",!0),me.value?(r(),h("button",{key:1,type:"button",class:"fct-adv-filter-clear-all",onClick:ye},f(A(u)("Clear filters")),1)):x("",!0)])):x("",!0)])):x("",!0)]),_:1}),n(NO,{"selected-count":a.value.length,"bulk-action":Q.value,"onUpdate:bulkAction":he[2]||(he[2]=ne=>Q.value=ne),"bulk-value":U.value,"onUpdate:bulkValue":he[3]||(he[3]=ne=>U.value=ne),saving:l.value,onApply:_t,onClear:he[4]||(he[4]=ne=>a.value=[])},null,8,["selected-count","bulk-action","bulk-value","saving"]),ge.value?(r(),h("div",QP,[n(J,{name:"Search"}),o("p",DP,f(A(u)("No variants match your filters")),1),o("p",VP,f(A(u)("Try a different search term or clear some filters.")),1),n(Le,{size:"small",onClick:ye},{default:d(()=>[R(f(A(u)("Clear filters")),1)]),_:1})])):x("",!0),v.value&&!ge.value?(r(),h("div",{key:1,class:"fct-grouped-variant-table hide-on-mobile",role:"status","aria-live":"polite","aria-label":Ae.$t("Updating variants")},[o("table",null,[he[16]||(he[16]=o("colgroup",null,[o("col",{width:"40"}),o("col",{width:"50"}),o("col"),o("col",{width:"160"}),o("col",{width:"160"}),o("col",{width:"100"})],-1)),o("thead",null,[o("tr",null,[he[13]||(he[13]=o("th",null,[o("span",{class:"fct-skel-block fct-skel-row-check"})],-1)),o("th",null,f(Ae.$t("Image")),1),o("th",null,f(Ae.$t("Variant")),1),o("th",null,f(Ae.$t("Price")),1),o("th",null,f(Ae.$t("Compare at price")),1),he[14]||(he[14]=o("th",null,null,-1))])]),o("tbody",MP,[(r(!0),h(H,null,ae(Math.min(w.value,8),ne=>(r(),h("tr",{key:"wrap-skel-"+ne},he[15]||(he[15]=[o("td",null,[o("span",{class:"fct-skel-block fct-skel-row-check"})],-1),o("td",null,[o("span",{class:"fct-skel-block fct-skel-row-img"})],-1),o("td",null,[o("span",{class:"fct-skel-block fct-skel-row-title"})],-1),o("td",null,[o("span",{class:"fct-skel-block fct-skel-row-price"})],-1),o("td",null,[o("span",{class:"fct-skel-block fct-skel-row-price"})],-1),o("td",null,[o("span",{class:"fct-skel-block fct-skel-row-action"})],-1)])))),128))])])],8,TP)):$e.value&&!ge.value?(r(),$(jH,{key:2,product:e.product,"product-edit-model":e.productEditModel,"attribute-groups":e.attributeGroups,"grouped-variants":fe.value,"selected-variants":a.value,"is-all-selected":Oe.value,"is-selection-indeterminate":Me.value,"group-by-id":V.value,"expanded-groups":m.value,"onUpdate:selectedVariants":he[5]||(he[5]=ne=>a.value=ne),"onUpdate:isAllSelected":he[6]||(he[6]=ne=>Oe.value=ne),"onUpdate:expandedGroups":he[7]||(he[7]=ne=>m.value=ne),onEditVariant:dt,onEditGroup:yt,onToggleStatus:Lt,onInlinePriceChange:Ye,onInlinePriceCommit:Xe,onMediaUploaded:Se,onGroupPriceApply:_e,onGroupMediaUploaded:Ee},null,8,["product","product-edit-model","attribute-groups","grouped-variants","selected-variants","is-all-selected","is-selection-indeterminate","group-by-id","expanded-groups"])):!$e.value&&!ge.value?(r(),$(pP,{key:3,product:e.product,"product-edit-model":e.productEditModel,variants:se.value,"attribute-groups":e.attributeGroups,"selected-variants":a.value,"is-all-selected":Oe.value,"is-selection-indeterminate":Me.value,"onUpdate:selectedVariants":he[8]||(he[8]=ne=>a.value=ne),"onUpdate:isAllSelected":he[9]||(he[9]=ne=>Oe.value=ne),onEditVariant:dt,onToggleStatus:Lt,onInlinePriceChange:Ye,onInlinePriceCommit:Xe,onMediaUploaded:Se},null,8,["product","product-edit-model","variants","attribute-groups","selected-variants","is-all-selected","is-selection-indeterminate"])):x("",!0),$e.value?x("",!0):(r(),h("div",LP,[(r(!0),h(H,null,ae(se.value,ne=>{var Ue,Te;return r(),h("div",{key:ne.id,class:"fct-product-pricing-table-mobile-row"},[o("div",RP,[o("div",OP,[o("div",HP,[o("div",PP,[n(pp,{previewImage:!1,showList:!1,multiple:!1,showDeleteButton:!1,attachments:[],onMediaUploaded:Pe=>Se(ne,Pe)},null,8,["onMediaUploaded"])]),((Ue=ne==null?void 0:ne.media)==null?void 0:Ue.length)>0?(r(),h("div",NP,[o("img",{src:(Te=ne.media[0])==null?void 0:Te.url,alt:ne.variation_title,class:"!object-contain rounded border border-solid border-gray-outline dark:border-dark-400"},null,8,KP)])):(r(),h("img",{key:1,src:Ae.appVars.asset_url+"images/empty-image.svg",alt:A(u)("No Image")},null,8,GP))]),o("div",jP,[o("div",zP,[R(f(ne.variation_title)+" ",1),ne.item_status==="inactive"?(r(),h("span",qP,f(A(u)("Inactive")),1)):x("",!0)]),o("div",YP,f(Et(ne)||"—"),1),o("ul",null,[o("li",null,[ne.compare_price?(r(),h("div",WP,[o("span",{textContent:f(Ae.appVars.shop.currency_sign)},null,8,XP),R(" "+f(ne.compare_price),1)])):x("",!0),o("div",JP,[o("span",{textContent:f(Ae.appVars.shop.currency_sign)},null,8,ZP),R(" "+f(ne.item_price),1)])])])])]),o("div",eN,[o("div",tN,[n(Ze,{size:"small",tag:"button",onClick:Pe=>dt(ne)},{default:d(()=>[n(J,{name:"Edit"})]),_:2},1032,["onClick"]),n(wt,{class:"fct-more-option-wrap","popper-class":"fct-dropdown",trigger:"click",onCommand:Pe=>{Pe==="toggle_status"&&Lt(ne)}},{dropdown:d(()=>[n(Be,null,{default:d(()=>[n(ut,null,{default:d(()=>[ne.id?(r(),$(Ia,{key:0,class:"fct-copy-wrap-inline",text:String(ne.id),showMode:"icon_with_text",buttonText:A(u)("Copy Variation ID")},null,8,["text","buttonText"])):x("",!0)]),_:2},1024),ne.id?(r(),$(ut,{key:0,command:"toggle_status",class:ie({"item-destructive":ne.item_status!=="inactive"})},{default:d(()=>[n(J,{name:ne.item_status==="inactive"?"CheckCircle":"InActive"},null,8,["name"]),R(" "+f(ne.item_status==="inactive"?A(u)("Set Active"):A(u)("Set Inactive")),1)]),_:2},1032,["class"])):x("",!0)]),_:2},1024)]),default:d(()=>[o("button",{type:"button",class:"more-btn","aria-label":A(u)("Variation actions")},[n(J,{name:"More"})],8,aN)]),_:2},1032,["onCommand"])])])])])}),128))])),n(ba,{modelValue:C.value,"onUpdate:modelValue":he[11]||(he[11]=ne=>C.value=ne),title:A(u)("Pricing"),size:Za.value,"append-to-body":!0,"close-on-click-modal":!0,"close-on-press-escape":!1,"destroy-on-close":!0,"before-close":gt,class:"fct-shared-variant-drawer",onClose:Ut},{default:d(()=>{var ne,Ue,Te,Pe,pt,ft;return[o("div",lN,[!na.value&&s.value?(r(),h("aside",sN,[n(Tr,{product:e.product},null,8,["product"]),o("div",nN,[o("p",oN,[R(f(A(u)("Editing group"))+": ",1),o("span",iN,f((ne=i.value)==null?void 0:ne.title),1)]),o("p",rN,f(A(u)("Changes will apply to %1$s of %2$s variants in this group.",It.value.length,(Ue=i.value)==null?void 0:Ue.count)),1),o("ul",dN,[(r(!0),h(H,null,ae((Te=i.value)==null?void 0:Te.items,ct=>(r(),h("li",{key:ct.key,class:"fct-group-edit-aside__item"},[n(te,{"model-value":p.value.has(ct.key),onChange:Rt=>Qt(ct.key)},{default:d(()=>[R(f(ct.label),1)]),_:2},1032,["model-value","onChange"])]))),128))])])])):na.value?x("",!0):(r(),h("aside",uN,[n(Tr,{product:e.product},null,8,["product"]),o("div",cN,[n(De,{modelValue:D.value,"onUpdate:modelValue":he[10]||(he[10]=ct=>D.value=ct),placeholder:A(u)("Search variants"),size:"small",clearable:"",class:"fct-shared-variant-nav__search"},{prefix:d(()=>[n(J,{name:"Search"})]),_:1},8,["modelValue","placeholder"]),K.value.length>0?(r(),h("div",AN,[(r(!0),h(H,null,ae(K.value,ct=>(r(),$(He,{key:"nav-chip-"+ct.id,placement:"bottom-start",width:220,trigger:"click","popper-class":"fct-adv-filter-popover"},{reference:d(()=>[o("button",{class:ie(["fct-adv-filter-chip",{"is-active":W(ct.id)>0}]),"aria-pressed":W(ct.id)>0,type:"button"},[o("span",null,f(ct.title),1),W(ct.id)>0?(r(),h("span",fN,f(W(ct.id)),1)):x("",!0),n(J,{name:"ChevronDown"})],10,pN)]),default:d(()=>[o("div",mN,[o("div",hN,[o("span",null,f(A(u)("Filter by %1$s",ct.title)),1),W(ct.id)>0?(r(),h("button",{key:0,type:"button",class:"fct-adv-filter-clear",onClick:Rt=>re(ct.id)},f(A(u)("Clear")),9,_N)):x("",!0)]),o("ul",vN,[(r(!0),h(H,null,ae(ct.terms,Rt=>(r(),h("li",{key:Rt.id},[n(te,{"model-value":q(ct.id,Rt.id),onChange:$a=>X(ct.id,Rt.id)},{default:d(()=>[R(f(Rt.title),1)]),_:2},1032,["model-value","onChange"])]))),128))])])]),_:2},1024))),128))])):x("",!0),me.value?(r(),h("button",{key:1,type:"button",class:"fct-shared-variant-nav__clear",onClick:ye},f(A(u)("Clear filters")),1)):x("",!0)]),n(Vp,{items:Ql.value,"grouped-items":Ra.value,"active-key":aa.value,"is-dirty":E.value,"is-saving":M.value,"drawer-mode":"update",product:e.product,"product-edit-model":e.productEditModel,"can-copy-direct-checkout":pe,onSelect:le,onSave:ot,onCommand:st,onEditGroup:ca},null,8,["items","grouped-items","active-key","is-dirty","is-saving","product","product-edit-model"])])),o("div",gN,[na.value&&s.value?(r(),h("div",yN,[o("div",bN,[R(f(A(u)("Editing group"))+": ",1),o("span",null,f((Pe=i.value)==null?void 0:Pe.title),1)]),o("div",wN,f(A(u)("Changes will apply to %1$s of %2$s variants in this group.",It.value.length,(pt=i.value)==null?void 0:pt.count)),1),o("ul",CN,[(r(!0),h(H,null,ae((ft=i.value)==null?void 0:ft.items,ct=>(r(),h("li",{key:ct.key},[n(te,{"model-value":p.value.has(ct.key),onChange:Rt=>Qt(ct.key)},{default:d(()=>[R(f(ct.label),1)]),_:2},1032,["model-value","onChange"])]))),128))])])):na.value?(r(),h(H,{key:1},[Ra.value&&Ra.value.length?(r(),h("div",BN,[(r(!0),h(H,null,ae(Ra.value,ct=>(r(),h("button",{key:"cge-"+ct.termId,type:"button",class:"fct-compact-group-edit-bar__btn",disabled:E.value,"aria-label":A(u)("Edit group %1$s",ct.title),onClick:Rt=>ca(ct)},[n(J,{name:"Edit"}),o("span",null,f(ct.title),1)],8,kN))),128))])):x("",!0),n(Tp,{items:Ql.value,"active-key":aa.value,"is-dirty":E.value,onSelect:le},null,8,["items","active-key","is-dirty"])],64)):x("",!0),o("div",xN,[C.value&&b.value!==null&&!s.value?(r(),$(Sd,{ref_key:"pricingFormRef",ref:k,key:aa.value,index:b.value,modeType:"update",fieldKey:"variants",product:e.product,productEditModel:e.productEditModel,"variant-title-info":we.value,onCreateOrUpdateVariant:jt,onCloseModal:Ct,onDirtyStateChange:Bt},null,8,["index","product","productEditModel","variant-title-info"])):C.value&&s.value&&i.value?(r(),$(vP,{ref_key:"pricingFormRef",ref:k,key:`group-${i.value.termId}`,"group-variant-ids":It.value,fieldKey:"variants",product:e.product,productEditModel:e.productEditModel,onCreateOrUpdateVariant:jt,onCloseModal:Ct,onDirtyStateChange:Bt},null,8,["group-variant-ids","product","productEditModel"])):x("",!0)])])])]}),_:1},8,["modelValue","title","size"]),n(ue,{modelValue:F.value,"onUpdate:modelValue":he[12]||(he[12]=ne=>F.value=ne),"close-on-click-modal":!1,"close-on-press-escape":!M.value,"show-close":!M.value,class:"fct-variant-dirty-dialog",onClose:ve},{header:d(({titleId:ne})=>[o("div",SN,[o("h3",{id:ne},f(A(u)("Unsaved changes")),9,FN)])]),default:d(()=>[o("p",null,f(A(u)("You have unsaved variation changes. Discard them or save before continuing.")),1),o("div",$N,[o("div",EN,[n(Le,{disabled:M.value,size:"small",onClick:ve},{default:d(()=>[R(f(A(u)("Continue editing")),1)]),_:1},8,["disabled"]),n(Le,{disabled:M.value,size:"small",onClick:Fe},{default:d(()=>[R(f(A(u)("Discard")),1)]),_:1},8,["disabled"]),n(Le,{type:"primary",loading:M.value,size:"small",onClick:ot},{default:d(()=>[R(f(A(u)("Save")),1)]),_:1},8,["loading"])])])]),_:1},8,["modelValue","close-on-press-escape","show-close"])])}}},IN=["src","alt"],QN={class:"fct-swatch-tag-label"},DN=["aria-label","onClick","onKeydown"],Wi={__name:"DraggableOptionValues",props:{modelValue:{type:Array,default:()=>[]},terms:{type:Array,default:()=>[]},type:{type:String,default:"options"}},emits:["update:modelValue"],setup(e,{emit:t}){const a=e,l=t,s=(y,v)=>String(y)===String(v),i=N({get:()=>a.modelValue,set:y=>l("update:modelValue",y)}),c=y=>a.terms.find(v=>s(v.id,y))||null,p=y=>{if(typeof y=="string")return y;const v=c(y);return v?v.title:String(y)},m=y=>{const v=c(y);return v&&v.settings&&v.settings.color?{background:v.settings.color}:{}},_=y=>{const v=c(y);return v&&v.settings&&v.settings.image?v.settings.image:""},g=y=>{l("update:modelValue",a.modelValue.filter(v=>!s(v,y)))};return(y,v)=>(r(),$(A(Js),{modelValue:i.value,"onUpdate:modelValue":v[2]||(v[2]=w=>i.value=w),handle:".fct-value-tag-handle",disabled:i.value.length<2,class:"fct-value-tag-list",tag:"div"},{default:d(()=>[(r(!0),h(H,null,ae(i.value,w=>(r(),h("span",{key:String(w),class:"fct-swatch-tag"},[i.value.length>1?(r(),h("span",{key:0,class:"fct-value-tag-handle",onMousedown:v[0]||(v[0]=Ne(()=>{},["stop"]))},[n(J,{name:"ReorderDotsVertical"})],32)):x("",!0),e.type==="color"?(r(),h("span",{key:1,class:"fct-swatch-tag-dot",style:ra(m(w))},null,4)):e.type==="image"?(r(),h("img",{key:2,class:"fct-swatch-tag-img",src:_(w),alt:p(w)},null,8,IN)):x("",!0),o("span",QN,f(p(w)),1),o("span",{class:"fct-swatch-tag-close",role:"button",tabindex:"0","aria-label":A(u)("Remove"),onMousedown:v[1]||(v[1]=Ne(()=>{},["stop"])),onClick:Ne(C=>g(w),["stop"]),onKeydown:xa(Ne(C=>g(w),["prevent"]),["enter","space"])},"×",40,DN)]))),128))]),_:1},8,["modelValue","disabled"]))}},VN={class:"fct-add-term-modal"},TN={class:"dialog-footer"},MN={__name:"AddTermModal",props:{groupId:{type:[String,Number],required:!0},group:{type:Object,default:()=>({})},initialTitle:{type:String,default:""}},emits:["isTermCreatingDone"],setup(e,{emit:t}){const a=e,l=t,s=T(!1),i=T({}),c=T(null),p=N(()=>{const y=a.group&&a.group.settings;return y&&y.type?y.type:"options"}),m=T({title:(a.initialTitle||"").trim(),settings:{color:"",image:""}}),_=N(()=>(m.value.title||"").trim()!==""),g=()=>{if(!_.value||s.value)return;s.value=!0,i.value={};const y={terms:[{title:m.value.title.trim(),settings:{color:m.value.settings.color||"",image:m.value.settings.image||""}}]};ce.post("options/attr/group/"+a.groupId+"/terms",y).then(v=>{Xs(v.message);const w=Array.isArray(v.data)?v.data[0]:v.data;l("isTermCreatingDone",w)}).catch(v=>{var w;(v==null?void 0:v.status_code)==422&&v.data?i.value=v.data:Y.error(((w=v==null?void 0:v.data)==null?void 0:w.message)||(v==null?void 0:v.message)||u("Failed to add the term."))}).finally(()=>{s.value=!1})};return(y,v)=>{const w=B("el-button");return r(),h("div",VN,[n(ho,{ref_key:"formRef",ref:c,term:m.value,"group-type":p.value,"show-remove-button":!1,"validation-errors":i.value,"field-key":"terms.0",onSubmit:g,onRemove:v[0]||(v[0]=C=>l("isTermCreatingDone"))},null,8,["term","group-type","validation-errors"]),o("div",TN,[n(w,{disabled:!_.value||s.value,loading:s.value,type:"primary",onClick:g},{default:d(()=>[R(f(A(u)("Add term")),1)]),_:1},8,["disabled","loading"])])])}}},LN={class:"fct-advanced-variation-config"},RN={class:"fct-adv-var-attributes"},ON={key:0,class:"fct-adv-var-loading"},HN={key:1,class:"fct-adv-var-empty-hint"},PN={key:2,class:"fct-adv-var-empty-state"},NN={class:"fct-adv-var-empty-state__icon","aria-hidden":"true"},KN={class:"fct-adv-var-empty-state__copy"},GN=["aria-expanded","onClick","onKeydown"],jN={class:"fct-option-card-summary"},zN={class:"fct-option-card-summary-header"},qN={key:0,class:"fct-option-card-chips"},YN=["src","alt"],WN={class:"fct-option-value-chip-label"},XN=["aria-label","title","onClick"],JN={key:0,class:"fct-option-card-body"},ZN={class:"fct-option-label"},eK={key:0,class:"mt-2"},tK={key:1,class:"fct-option-error"},aK={class:"fct-option-label"},lK={key:0,class:"fct-select-all-header"},sK={class:"fct-option-item"},nK={class:"fct-option-item"},oK={key:1,class:"fct-picker-inline-form-body"},iK={class:"fct-picker-inline-form-actions"},rK={key:1,class:"fct-option-field-values"},dK={class:"fct-option-empty-default"},uK={key:0,class:"fct-select-all-header"},cK={class:"fct-color-option"},AK={key:1,class:"fct-picker-inline-form-body"},pK={class:"fct-picker-inline-form-actions"},fK={key:2,class:"fct-option-field-values"},mK={class:"fct-option-empty-default"},hK={key:0,class:"fct-select-all-header"},_K={class:"fct-image-option"},vK=["src"],gK={key:1,class:"fct-picker-inline-form-body"},yK={class:"fct-picker-inline-form-actions"},bK={key:3,class:"fct-option-error"},wK={class:"fct-option-card-actions"},CK=["title"],BK={key:5,class:"fct-adv-order-save-bar"},kK={class:"fct-adv-order-save-bar__msg"},xK={class:"fct-adv-order-save-bar__actions"},SK={key:6},FK={key:0,class:"fct-adv-var-generate-info fct-adv-var-generate-error"},$K={key:1,class:"fct-adv-var-generate-info fct-adv-var-generate-error"},EK={key:2,class:"fct-adv-var-generate-info fct-adv-var-generate-error"},UK={key:3,class:"fct-adv-var-generate-info fct-adv-var-generate-error"},Ao=200,Xi=10,Ji=100,Zu=200,IK={__name:"AdvancedVariationConfig",props:{product:Object,productEditModel:Object},setup(e){const t=e,a=T([]),l=T([]),s=T(!1),i=T(!1),c=T(!1),p=T(null),m=T(!1),_=T(null),g=T(!1),y=T(null),v=T(null),w=T([]),C=T([]),b=T(""),k=ue=>JSON.stringify(ue.map(ne=>({group_id:ne.group_id||null,variants:[...ne.variants||[]].map(Ue=>String(Ue))}))),F=()=>{C.value=l.value.map(ue=>({group_id:ue.group_id||null,title:ue.title||"",variants:Array.isArray(ue.variants)?[...ue.variants]:[]})),b.value=k(l.value)},M=N(()=>{const ue=l.value.filter(ne=>ne.group_id&&Array.isArray(ne.variants)&&ne.variants.length>0);return ue.length===0?b.value!==k([]):k(ue)!==b.value}),E=N(()=>l.value.length===0?u("All options removed. Save to delete all variations."):u("Option config changed. Save to update variants.")),S=N(()=>{if(p.value===null||!v.value)return!1;const ue=l.value[p.value];if(!ue)return!1;if(String(ue.group_id||"")!==String(v.value.group_id||"")||(ue.title||"")!==(v.value.title||""))return!0;const ne=Array.isArray(ue.variants)?ue.variants:[],Ue=Array.isArray(v.value.variants)?v.value.variants:[];if(ne.length!==Ue.length)return!0;const Te=ne.map(pt=>String(pt)),Pe=Ue.map(pt=>String(pt));return Te.some((pt,ft)=>pt!==Pe[ft])});Ie(()=>{U(),Q()}),kt(()=>{He()});const Q=()=>{c.value=!0,ce.get("options/attr/groups/library").then(ue=>{a.value=(ue.groups||[]).slice(0,Zu),l.value.forEach(ne=>O(ne.group_id))}).catch(ue=>{var ne;Y.error(((ne=ue==null?void 0:ue.data)==null?void 0:ne.message)||u("Failed to load attribute groups"))}).finally(()=>{c.value=!1})},U=()=>{var Ue,Te;const ue=(Te=(Ue=t.product)==null?void 0:Ue.detail)==null?void 0:Te.other_info,ne=ue==null?void 0:ue.attribute_config;ne&&Array.isArray(ne)&&(l.value=ne.map(Pe=>({group_id:/^\d+$/.test(String(Pe.group_id))?parseInt(Pe.group_id,10):Pe.group_id,title:Pe.title||"",variants:(Pe.variants||[]).map(pt=>parseInt(pt,10)).filter(Number.isFinite),errors:{name:"",values:""}}))),oe(),F()},V=new Set,D=T({}),I=N(()=>{if(!v.value||!v.value.group_id)return!1;const ue=parseInt(v.value.group_id,10);return!!D.value[ue]}),O=ue=>{if(!/^\d+$/.test(String(ue)))return;const ne=parseInt(ue,10),Ue=a.value.find(Pe=>Ee(Pe.id,ne));if(!Ue||Array.isArray(Ue.terms)||V.has(ne))return;V.add(ne),D.value[ne]=!0;const Te=Math.min(Math.max(parseInt(Ue.terms_count,10)||0,50),200);ce.get("options/attr/group/"+ne+"/terms",{per_page:Te}).then(Pe=>{Ue.terms=Pe.terms&&Pe.terms.data||[]}).catch(Pe=>{var pt;Y.error(((pt=Pe==null?void 0:Pe.data)==null?void 0:pt.message)||u("Failed to load option values"))}).finally(()=>{V.delete(ne),delete D.value[ne]})},L=new Set;let P=null;const G=(ue,ne)=>{const Ue=(ne||"").trim();if(!Ue||!/^\d+$/.test(String(ue)))return;const Te=parseInt(ue,10),Pe=a.value.find(ct=>Ee(ct.id,Te));if(!Pe)return;const pt=Array.isArray(Pe.terms)?Pe.terms.length:0,ft=parseInt(Pe.terms_count,10)||0;ft&&pt>=ft||Array.isArray(Pe.terms)&&Pe.terms.some(ct=>(ct.title||"").trim().toLowerCase()===Ue.toLowerCase())||(P&&clearTimeout(P),P=setTimeout(()=>{const ct=Te+":"+Ue.toLowerCase();L.has(ct)||(L.add(ct),ce.get("options/attr/group/"+Te+"/terms",{search:Ue,per_page:50}).then(Rt=>{const $a=Rt.terms&&Rt.terms.data||[];if(!$a.length)return;Array.isArray(Pe.terms)||(Pe.terms=[]);const Kt=new Set(Pe.terms.map(Sa=>Sa.id)),ma=$a.filter(Sa=>!Kt.has(Sa.id));ma.length&&(Pe.terms=[...Pe.terms,...ma])}).catch(()=>{}).finally(()=>{L.delete(ct)}))},250))},j=ue=>{if(!/^\d+$/.test(String(ue)))return;const ne=parseInt(ue,10),Ue=a.value.find(Pe=>Ee(Pe.id,ne));if(!Ue||V.has(ne))return;V.add(ne);const Te=Math.min(Math.max(parseInt(Ue.terms_count,10)||0,50),200);ce.get("options/attr/group/"+ne+"/terms",{per_page:Te}).then(Pe=>{const pt=Pe.terms&&Pe.terms.data||[],ft=new Map((Array.isArray(Ue.terms)?Ue.terms:[]).map(Rt=>[Rt.id,Rt]));pt.forEach(Rt=>ft.set(Rt.id,Rt)),Ue.terms=Array.from(ft.values());const ct=Pe.terms&&Pe.terms.total;typeof ct=="number"&&(Ue.terms_count=ct)}).catch(()=>{}).finally(()=>{V.delete(ne)})};let z=!1;const Z=()=>{z||(z=!0,ce.get("options/attr/groups/library").then(ue=>{const ne=(ue.groups||[]).slice(0,Zu),Ue=new Map(a.value.map(Te=>[Te.id,Te]));ne.forEach(Te=>{const Pe=Ue.get(Te.id);Ue.set(Te.id,Pe&&Array.isArray(Pe.terms)?{...Te,terms:Pe.terms}:Te)}),a.value=Array.from(Ue.values())}).catch(()=>{}).finally(()=>{z=!1}))},oe=()=>{w.value=l.value.map(ue=>ue.group_id).filter(Boolean)},de=()=>{v.value=null,p.value=null,l.value=C.value.map(ue=>({group_id:ue.group_id,title:ue.title,variants:[...ue.variants],errors:{name:"",values:""}}))},K=async()=>{if(p.value!==null&&(await me(p.value),p.value!==null))return;if(i.value=!0,!await ot()){i.value=!1;return}sa({silent:!1})},q=ue=>{const ne=l.value.filter((Ue,Te)=>Te!==ue).map(Ue=>Ue.group_id).filter(Boolean);return a.value.filter(Ue=>!ne.includes(Ue.id))},X=async()=>{if(p.value!==null&&(await me(p.value),p.value!==null))return;l.value.push({group_id:null,title:"",variants:[],errors:{name:"",values:""}});const ue=l.value.length-1;ye(ue)},W=ue=>{l.value.splice(ue,1),p.value===ue?(p.value=null,v.value=null):p.value!==null&&p.value>ue&&p.value--},re=ue=>{p.value===ue?me(ue):ye(ue)},ye=ue=>{const ne=l.value[ue];v.value={group_id:ne.group_id||null,title:ne.title||"",variants:Array.isArray(ne.variants)?[...ne.variants]:[],errors:{name:"",values:""}},p.value=ue,O(ne.group_id)},me=async ue=>{if(!v.value||(v.value.errors.name=v.value.group_id?"":u("Option name is required."),v.value.errors.values=!v.value.variants||v.value.variants.length===0?u("Please add at least one option value."):"",v.value.errors.name||v.value.errors.values))return;const ne=l.value[ue];ne.group_id=v.value.group_id,ne.title=v.value.title,ne.variants=[...v.value.variants],ne.errors={name:"",values:""},v.value=null,p.value=null},ge=T(""),se=ue=>{ge.value=ue||""},fe=ue=>{if(ue){Z();return}ge.value=""},$e=ue=>{const ne=q(ue),Ue=ge.value.trim().toLowerCase();return Ue?ne.filter(Te=>typeof Te.title=="string"&&Te.title.toLowerCase().includes(Ue)):ne},tt=N(()=>{const ue=ge.value.trim().toLowerCase();return ue?!a.value.some(ne=>typeof ne.title=="string"&&ne.title.trim().toLowerCase()===ue):!0}),_e=ue=>{if(v.value){if(typeof ue=="string"&&ue!==""){const ne=ue.trim().toLowerCase(),Ue=a.value.find(Te=>typeof Te.title=="string"&&Te.title.trim().toLowerCase()===ne);Ue?(v.value.group_id=Ue.id,v.value.title=Ue.title,v.value.variants=[],O(Ue.id)):(v.value.title=ue,v.value.variants=[])}else{const ne=a.value.find(Ue=>Ee(Ue.id,ue));ne&&(v.value.title=ne.title,v.value.variants=[]),O(ue)}v.value.errors&&(v.value.errors.name="")}},Xe=N(()=>v.value?typeof v.value.group_id=="string"&&v.value.group_id.trim()!=="":!1),ht=T(!1),Ye=async ue=>{var Pe;if(!ue||typeof ue.group_id!="string"||ue.group_id.trim()==="")return ue?ue.group_id:null;const ne=ue.group_id.trim(),Ue=ne.toLowerCase(),Te=a.value.find(pt=>typeof pt.title=="string"&&pt.title.trim().toLowerCase()===Ue);if(Te)return ue.group_id=Te.id,ue.title=Te.title,O(Te.id),Te.id;ht.value=!0;try{const pt=await ce.post("options/attr/group/",{title:ne,slug:ne}),ft=pt.data||pt.group||pt;if(!ft||!ft.id)return Y.error(u("Failed to create attribute group")),null;a.value=[...a.value,{...ft,terms:ft.terms||[]}];const ct=parseInt(ft.id,10);return ue.group_id=ct,ue.title=ft.title||ne,ct}catch(pt){let ft="";if((pt==null?void 0:pt.status_code)===422||(pt==null?void 0:pt.status)===422){Y.validationErrors(pt);const ct=pt!=null&&pt.data&&typeof pt.data=="object"?pt.data:{},Rt=Object.values(ct)[0],$a=Rt&&typeof Rt=="object"?Object.values(Rt)[0]:Rt;ft=typeof $a=="string"?$a:u("Failed to create attribute group")}else ft=((Pe=pt==null?void 0:pt.data)==null?void 0:Pe.message)||u("Failed to create attribute group"),Y.error(ft);return ue.errors&&(ue.errors.name=ft),null}finally{ht.value=!1}},Se=async()=>!v.value||!Xe.value?!0:await Ye(v.value)!==null,Ee=(ue,ne)=>String(ue)===String(ne),Oe=ue=>{const ne=a.value.find(Ue=>Ee(Ue.id,ue));return ne?ne.terms||[]:[]},Me=ue=>{if(!v.value||!Ee(v.value.group_id,ue))return[];const ne=Oe(ue).map(Ue=>Ue.title.toLowerCase());return(v.value.variants||[]).filter(Ue=>typeof Ue=="string"&&Ue.trim()!==""&&!ne.includes(Ue.toLowerCase()))},_t=N(function(){if(!v.value||!v.value.group_id)return!1;var ue=Oe(v.value.group_id);return ue.length?ue.every(function(ne){return v.value.variants.some(function(Ue){return Ee(Ue,ne.id)})}):!1}),vt=N(function(){if(!v.value||!v.value.group_id)return!1;var ue=Oe(v.value.group_id),ne=ue.filter(function(Ue){return v.value.variants.some(function(Te){return Ee(Te,Ue.id)})}).length;return ne>0&&ne{const Ue=p.value===ne&&v.value?v.value:ue;if(Ue.title)return Ue.title;const Te=a.value.find(Pe=>Ee(Pe.id,Ue.group_id));return Te&&Te.title?Te.title:u("Untitled option")},dt=N(()=>{const ue=l.value.map(ne=>ne.group_id).filter(Boolean);return new Set(ue).size!==ue.length}),Ut=N(()=>l.value.length>Xi),Ft=N(()=>l.value.length>0&&l.value.length<=Xi&&!dt.value&&l.value.every(ue=>ue.group_id&&ue.variants&&ue.variants.length>0&&ue.variants.every(ne=>typeof ne=="number"))),It=N(()=>Ft.value?l.value.reduce((ue,ne)=>ue*(ne.variants?ne.variants.length:0),1):0),Qt=N(()=>It.value>Ao),Tt=N(()=>{const ue=l.value.filter(ne=>ne.group_id&&Array.isArray(ne.variants)&&ne.variants.length>0);return ue.length?ue.reduce((ne,Ue)=>ne*Ue.variants.length,1):0}),Wt=N(()=>{const ue=l.value.filter(Ue=>Array.isArray(Ue.variants)&&Ue.variants.length>0);if(!ue.length)return 0;let ne=ue.length-1;return ue.forEach(Ue=>{const Te=Ue.variants.map(pt=>parseInt(pt,10)).filter(Number.isFinite),Pe=Te.length?Math.max(...Te):0;ne+=String(Pe).length}),ne}),Bt=N(()=>Wt.value>Ji),sa=({silent:ue=!1}={})=>{if(s.value)return;if(l.value.length===0){s.value=!0,ce.post(`products/${t.product.ID}/update-variant-option`,{variation_type:"advanced_variations",options:[]}).then(()=>{const Te=t.productEditModel&&t.productEditModel.data?t.productEditModel.data.product:null;Te&&(Te.variants=[]),oe(),F(),t.productEditModel&&t.productEditModel.data&&typeof t.productEditModel.data.reloader=="function"&&t.productEditModel.data.reloader(),t.productEditModel&&typeof t.productEditModel.triggerProductUpdated=="function"&&t.productEditModel.triggerProductUpdated(["bundle"])}).catch(Te=>{var Pe;Y.error(((Pe=Te==null?void 0:Te.data)==null?void 0:Pe.message)||u("Failed to clear variations"))}).finally(()=>{s.value=!1,i.value=!1});return}if(!Ft.value){ue||Y.error(u("Please select at least one term for each attribute.")),i.value=!1;return}if(Qt.value){ue||Y.error(u("Too many combinations (%1$s). Maximum allowed is %2$s.",It.value,Ao)),i.value=!1;return}if(Bt.value){ue||Y.error(u("These options would create variant identifiers longer than %1$s characters. Use fewer attribute groups.",Ji)),i.value=!1;return}s.value=!0;const ne=l.value.map(Te=>({group_id:Te.group_id,title:Te.title,variants:[...new Set((Te.variants||[]).map(Pe=>parseInt(Pe,10)).filter(Number.isFinite))]}));let Ue=null;ce.post(`products/${t.product.ID}/update-variant-option`,{variation_type:"advanced_variations",options:ne}).then(Te=>{ue||(Ue=Te.message||u("Variations generated successfully!")),oe(),F();const Pe=Te&&Array.isArray(Te.data)?Te.data:null,pt=t.productEditModel&&t.productEditModel.data?t.productEditModel.data.product:null;Pe&&pt&&(pt.variants=Pe),t.productEditModel.data.reloader(),typeof t.productEditModel.triggerProductUpdated=="function"&&t.productEditModel.triggerProductUpdated(["bundle"])}).catch(Te=>{var Pe;Y.error(((Pe=Te==null?void 0:Te.data)==null?void 0:Pe.message)||u("Failed to generate variations"))}).finally(async()=>{var ct,Rt;await xe();const Te=(Rt=(ct=t.productEditModel)==null?void 0:ct.data)==null?void 0:Rt.product,Pe=()=>{const $a=Te?Te.variants:null;return Array.isArray($a)&&$a.some(Kt=>Array.isArray(Kt.attr_map)&&Kt.attr_map.length>0)},pt=2500,ft=Date.now();for(;!Pe()&&Date.now()-ftsetTimeout($a,50));await xe(),s.value=!1,await xe(),await xe(),i.value=!1,Ue&&(Y.success(Ue),Ue=null)})},ve=ue=>{v.value&&v.value.errors&&ue&&ue.length>0&&(v.value.errors.values="")},Fe=async(ue,{silent:ne=!1}={})=>{var pt;const Ue=Oe(ue.group_id).map(ft=>ft.title.toLowerCase()),Te=(ue.variants||[]).filter(ft=>typeof ft=="string"&&!Ue.includes(ft.toLowerCase()));if(!Te.length)return!0;const Pe=a.value.find(ft=>Ee(ft.id,ue.group_id));try{const ft=await ce.post("options/attr/group/"+ue.group_id+"/terms",{terms:Te.map(Rt=>({title:Rt}))}),ct=ft.data;Pe&&(Array.isArray(Pe.terms)||(Pe.terms=[]),Pe.terms=[...Pe.terms,...ct]),ct.forEach(Rt=>{ue.variants=ue.variants.map($a=>typeof $a=="string"&&$a.toLowerCase()===Rt.title.toLowerCase()?Rt.id:$a)}),ue.variants=ue.variants.filter(Rt=>typeof Rt!="string"),ne||Y.success(ft.message||u("Option values created successfully"))}catch(ft){return ue.variants=ue.variants.filter(ct=>typeof ct!="string"),Y.error(((pt=ft==null?void 0:ft.data)==null?void 0:pt.message)||u("Failed to create option values")),!1}return!0},ot=async()=>{for(const ue of l.value)if(typeof ue.group_id=="string"&&ue.group_id.trim()!==""&&!await Ye(ue)||!await Fe(ue,{silent:!0}))return!1;return!0},gt=ue=>{const ne=a.value.find(Ue=>Ee(Ue.id,ue));return ne&&ne.settings&&ne.settings.type?ne.settings.type:"options"},Ct=ue=>({options:u("Text"),color:u("Color"),image:u("Image")})[gt(ue)]||gt(ue),jt=ue=>({options:"info",color:"warning",image:"success"})[gt(ue)]||"info",yt=ue=>{if(!ue.variants||ue.variants.length===0)return[];const ne=Oe(ue.group_id);return ue.variants.map(Ue=>typeof Ue=="string"?{id:Ue,title:Ue}:ne.find(Te=>Ee(Te.id,Ue))).filter(Boolean)},ca=ue=>ue.title?u("Add %1$s",ue.title.toLowerCase()):u("Add more value"),ta=T(""),Ht=T(""),na=T("");let Za=null;const Ql=ue=>{Za=ue},Ra=T(!1),aa=T({title:"",settings:{color:"",image:""}}),ee=T(!1),we=T({}),le=ue=>{Ht.value=ue||"",v.value&&G(v.value.group_id,ue)},pe=N(()=>{if(!v.value||!v.value.group_id)return[];const ue=Oe(v.value.group_id),ne=Ht.value.trim().toLowerCase();return ne?ue.filter(Ue=>(Ue.title||"").toLowerCase().includes(ne)):ue}),Ge=()=>{const ue=Ht.value.trim();if(!ue||!v.value||!v.value.group_id)return;const ne=gt(v.value.group_id);ne!=="color"&&ne!=="image"||te(ue)},st=(ue,ne)=>{if(!ue||ue.key!=="Enter"||!v.value||!v.value.group_id)return;const Ue=gt(v.value.group_id);if(Ue!=="color"&&Ue!=="image")return;const Te=ue.target,Pe=(Te&&typeof Te.value=="string"?Te.value:"").trim();!Pe||Oe(v.value.group_id).find(ft=>typeof ft.title=="string"&&ft.title.trim().toLowerCase()===Pe.toLowerCase())||(ue.preventDefault(),ue.stopPropagation(),te(Pe))};let Ke=null,qe=null,mt=null,Je=null;const $t=ue=>{Ke=ue},qt=ue=>{y.value=ue,g.value=!0},Ae=ue=>{if(!ue||!ue.id){g.value=!1,y.value=null;return}const ne=y.value;a.value=[...a.value,{...ue,terms:ue.terms||[]}],ne!==null&&v.value&&p.value===ne&&(v.value.group_id=parseInt(ue.id,10),v.value.title=ue.title||"",v.value.variants=[],v.value.errors&&(v.value.errors.name=""),O(parseInt(ue.id,10))),g.value=!1,y.value=null},he=ue=>{na.value=ue||"",v.value&&G(v.value.group_id,ue)},Le=N(()=>{if(!v.value||!v.value.group_id)return[];const ue=Oe(v.value.group_id),ne=na.value.trim().toLowerCase();return ne?ue.filter(Ue=>(Ue.title||"").toLowerCase().includes(ne)):ue}),De=N(()=>{if(!v.value||!v.value.group_id)return[];const ue=Me(v.value.group_id),ne=na.value.trim().toLowerCase();return ne?ue.filter(Ue=>(Ue||"").toLowerCase().includes(ne)):ue}),te=ue=>{aa.value={title:(ue||"").trim(),settings:{color:"",image:""}},Ra.value=!0,we.value={},qe||(qe=function(ne){var Ue=document.querySelector(".fct-option-values-select");if(!(Ue&&Ue.contains(ne.target))){var Te=document.querySelector(".el-color-picker__panel");Te&&Te.contains(ne.target)||ne.stopPropagation()}},document.addEventListener("mousedown",qe,!0),mt=function(ne){var Ue=document.querySelector(".el-color-picker__panel");Ue&&Ue.contains(ne.target)&&ne.stopPropagation()},document.body.addEventListener("mousedown",mt)),Je&&document.removeEventListener("keyup",Je,!0),Je=function(ne){ne.key==="Enter"&&(ne.stopPropagation(),document.removeEventListener("keyup",Je,!0),Je=null)},document.addEventListener("keyup",Je,!0),xe(()=>{var ne=document.querySelector(".fct-option-values-select");if(ne){var Ue=Ke||Za;if(Ue){var Te=Ue.$el||Ue,Pe=Te?Te.getBoundingClientRect().width:0;Pe>0&&(ne.style.maxWidth=Pe+"px")}}})},He=()=>{Ra.value=!1,aa.value={title:"",settings:{color:"",image:""}},we.value={},qe&&(document.removeEventListener("mousedown",qe,!0),qe=null),mt&&(document.body.removeEventListener("mousedown",mt),mt=null),Je&&(document.removeEventListener("keyup",Je,!0),Je=null);var ue=document.querySelector(".fct-option-values-select");ue&&(ue.style.maxWidth="")},ut=async ue=>{const ne=(aa.value.title||"").trim();if(!ne||ee.value||!v.value||!v.value.group_id)return;ee.value=!0,we.value={};const Ue={terms:[{title:ne,settings:{color:aa.value.settings.color||"",image:aa.value.settings.image||""}}]};try{if(Xe.value&&!await Se())return;const Te=await ce.post("options/attr/group/"+v.value.group_id+"/terms",Ue),Pe=Array.isArray(Te.data)?Te.data[0]:Te.data;_.value=ue,ba(Pe),He(),Ht.value="",na.value=""}catch(Te){Te&&Te.status_code===422&&Te.data?we.value=Te.data:Y.error(Te&&Te.data&&Te.data.message||Te&&Te.message||u("Failed to add the term."))}finally{ee.value=!1}},Be=ue=>{if(ue){v.value&&j(v.value.group_id);return}He(),Ht.value=""},wt=ue=>{if(ue){v.value&&j(v.value.group_id);return}He(),na.value=""},ba=ue=>{const ne=_.value,Ue=l.value[ne];if(Ue){const Te=v.value?v.value.group_id:Ue.group_id;if(Te&&/^\d+$/.test(String(Te))){const Pe=parseInt(Te,10),pt=a.value.find(ft=>Ee(ft.id,Pe));if(pt&&ue&&Array.isArray(pt.terms)?pt.terms.push(ue):(pt&&delete pt.terms,O(Pe)),ue&&v.value&&Array.isArray(v.value.variants)){const ft=(ue.title||"").trim().toLowerCase();v.value.variants=v.value.variants.filter(function(ct){return!(typeof ct=="string"&&ct.trim().toLowerCase()===ft)}),v.value.variants.some(function(ct){return String(ct)===String(ue.id)})||v.value.variants.push(ue.id)}}Y.success(u("Term created successfully"))}m.value=!1,_.value=null,ta.value=""};return(ue,ne)=>{var $a;const Ue=B("router-link"),Te=B("el-tag"),Pe=B("el-option"),pt=B("el-select"),ft=B("el-button"),ct=B("el-checkbox"),Rt=B("el-dialog");return r(),h("div",LN,[o("div",RN,[c.value?(r(),h("div",ON,[(r(!0),h(H,null,ae(l.value.length||3,Kt=>(r(),h("div",{key:Kt,class:"fct-adv-var-loading-card"},ne[26]||(ne[26]=[o("span",{class:"fct-skel-block fct-adv-var-loading-handle"},null,-1),o("span",{class:"fct-skel-block fct-adv-var-loading-title"},null,-1),o("span",{class:"fct-skel-block fct-adv-var-loading-badge"},null,-1)])))),128))])):x("",!0),l.value.length===0&&!c.value&&a.value.length===0?(r(),h("div",HN,[R(f(A(u)("No attribute groups found."))+" ",1),n(Ue,{to:{name:"attributes"}},{default:d(()=>[R(f(A(u)("Create attribute groups")),1)]),_:1})])):l.value.length===0&&!c.value?(r(),h("div",PN,[o("span",NN,[n(J,{name:"Information"})]),o("div",KN,[o("strong",null,f(A(u)("No options added yet.")),1),o("span",null,f(A(u)("Add options like Color, Size etc. to create variations.")),1)])])):x("",!0),l.value.length>0&&!c.value?(r(),$(A(Js),{key:3,modelValue:l.value,"onUpdate:modelValue":ne[22]||(ne[22]=Kt=>l.value=Kt),handle:".fct-option-drag-handle",disabled:l.value.length<=1||p.value!==null,class:"fct-option-card-list"},{default:d(()=>[(r(!0),h(H,null,ae(l.value,(Kt,ma)=>(r(),h("div",{key:Kt.group_id||"new-"+ma,class:"fct-option-card"},[o("div",{class:"fct-option-card-collapsed",role:"button",tabindex:"0","aria-expanded":p.value===ma,onClick:Sa=>re(ma),onKeydown:xa(Ne(Sa=>re(ma),["prevent"]),["enter","space"])},[l.value.length>1?(r(),h("span",{key:0,class:"fct-option-drag-handle",onClick:ne[0]||(ne[0]=Ne(()=>{},["stop"]))},[n(J,{name:"ReorderDotsVertical"})])):x("",!0),o("div",jN,[o("div",zN,[o("strong",null,f(Dt(Kt,ma)),1),Kt.group_id?(r(),$(Te,{key:0,size:"small",type:jt(Kt.group_id),class:"fct-group-type-badge"},{default:d(()=>[R(f(Ct(Kt.group_id)),1)]),_:2},1032,["type"])):x("",!0)]),yt(Kt).length?(r(),h("div",qN,[(r(!0),h(H,null,ae(yt(Kt),Sa=>(r(),h("span",{key:Sa.id,class:ie(["fct-option-value-chip",`fct-option-value-chip--${gt(Kt.group_id)}`])},[gt(Kt.group_id)==="color"?(r(),h("span",{key:0,class:"fct-option-value-swatch",style:ra({background:Sa.settings&&Sa.settings.color?Sa.settings.color:""})},null,4)):gt(Kt.group_id)==="image"&&Sa.settings&&Sa.settings.image?(r(),h("img",{key:1,src:Sa.settings.image,alt:Sa.title,class:"fct-option-value-img"},null,8,YN)):x("",!0),o("span",WN,f(Sa.title),1)],2))),128))])):x("",!0)]),p.value===ma?(r(),h("button",{key:1,type:"button",class:"fct-option-card-toggle fct-option-card-toggle--open","aria-label":A(u)("Done"),title:A(u)("Done"),onClick:Ne(Sa=>me(ma),["stop"])},ne[27]||(ne[27]=[o("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[o("path",{d:"M6 4l4 4-4 4",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1)]),8,XN)):x("",!0)],40,GN),n(va,{accordion:"",visible:p.value===ma},{default:d(()=>{var Sa,We,Xt,Ka;return[p.value===ma&&v.value?(r(),h("div",JN,[o("div",{class:ie(["fct-option-field",{"fct-option-field--error":(Sa=v.value.errors)==null?void 0:Sa.name}])},[o("label",ZN,f(A(u)("Option name")),1),n(pt,{modelValue:v.value.group_id,"onUpdate:modelValue":ne[1]||(ne[1]=ze=>v.value.group_id=ze),filterable:"","allow-create":tt.value,"default-first-option":"","filter-method":se,"popper-class":"fct-option-name-select",placeholder:A(u)("Select or type a new option"),onChange:ne[2]||(ne[2]=ze=>_e(ze)),onVisibleChange:fe},{default:d(()=>[(r(!0),h(H,null,ae($e(ma),ze=>(r(),$(Pe,{key:ze.id,label:ze.title,value:ze.id},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","allow-create","placeholder"]),v.value.group_id?x("",!0):(r(),h("div",eK,[n(ft,{type:"primary",size:"small",text:"",class:"fct-option-create-group",onClick:ze=>qt(ma)},{default:d(()=>[n(J,{name:"Plus"}),R(" "+f(A(u)("Create new attribute group")),1)]),_:2},1032,["onClick"])])),(We=v.value.errors)!=null&&We.name?(r(),h("div",tK,[n(J,{name:"AlertIcon"}),o("span",null,f(v.value.errors.name),1)])):x("",!0)],2),o("div",{class:ie(["fct-option-field",{"fct-option-field--error":(Xt=v.value.errors)==null?void 0:Xt.values}])},[o("label",aK,f(A(u)("Option values")),1),gt(v.value.group_id)==="options"?(r(),$(pt,{key:0,ref_for:!0,ref:Ql,modelValue:v.value.variants,"onUpdate:modelValue":ne[8]||(ne[8]=ze=>v.value.variants=ze),multiple:"",filterable:"","allow-create":"","default-first-option":"","filter-method":he,"reserve-keyword":!1,"tag-type":"info","popper-class":"fct-option-values-select",placeholder:ca(v.value),disabled:!v.value.group_id,loading:I.value,"loading-text":A(u)("Loading..."),onChange:ne[9]||(ne[9]=ze=>ve(ze)),onVisibleChange:wt},{tag:d(()=>[n(Wi,{modelValue:v.value.variants,"onUpdate:modelValue":ne[3]||(ne[3]=ze=>v.value.variants=ze),terms:Oe(v.value.group_id),type:gt(v.value.group_id)},null,8,["modelValue","terms","type"])]),header:d(()=>[Oe(v.value.group_id).length>0?(r(),h("div",lK,[n(ct,{"model-value":_t.value,indeterminate:vt.value,onChange:Et},null,8,["model-value","indeterminate"]),o("span",null,f(A(u)("Select all")),1)])):x("",!0)]),footer:d(()=>[o("div",{class:"fct-picker-inline-form",onMousedown:ne[7]||(ne[7]=Ne(()=>{},["self","prevent"]))},[Ra.value?(r(),h("div",oK,[n(ho,{term:aa.value,"group-type":"options","show-remove-button":!1,"validation-errors":we.value,"field-key":"terms.0",onSubmit:ze=>ut(ma),onRemove:He},null,8,["term","validation-errors","onSubmit"]),o("div",iK,[n(ft,{type:"primary",size:"small",loading:ee.value,disabled:!aa.value.title.trim()||ee.value,onClick:ze=>ut(ma)},{default:d(()=>[R(f(A(u)("Add")),1)]),_:2},1032,["loading","disabled","onClick"]),n(ft,{size:"small",onClick:He},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1})])])):(r(),h(H,{key:0},[na.value.trim()&&!Oe(v.value.group_id).some(function(ze){return ze.title.toLowerCase()===na.value.trim().toLowerCase()})?(r(),$(ft,{key:0,type:"primary",size:"small",text:"",class:"fct-inline-add-btn",onClick:ne[6]||(ne[6]=ze=>te(na.value))},{default:d(()=>[n(J,{name:"Plus"}),R(" "+f(A(u)('Add "%1$s" as new value',na.value.trim())),1)]),_:1})):x("",!0)],64))],32)]),default:d(()=>[(r(!0),h(H,null,ae(Le.value,ze=>(r(),$(Pe,{key:ze.id,label:ze.title,value:ze.id},{default:d(()=>[o("div",sK,[n(ct,{"model-value":v.value.variants.some(function(Mt){return Ee(Mt,ze.id)}),tabindex:"-1",onClick:ne[4]||(ne[4]=Ne(()=>{},["stop"])),onChange:Mt=>Lt(ze.id)},null,8,["model-value","onChange"]),o("span",null,f(ze.title),1)])]),_:2},1032,["label","value"]))),128)),(r(!0),h(H,null,ae(De.value,ze=>(r(),$(Pe,{key:ze,label:ze,value:ze},{default:d(()=>[o("div",nK,[n(ct,{"model-value":!0,tabindex:"-1",onClick:ne[5]||(ne[5]=Ne(()=>{},["stop"])),onChange:Mt=>Lt(ze)},null,8,["onChange"]),o("span",null,f(ze),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["modelValue","placeholder","disabled","loading","loading-text"])):gt(v.value.group_id)==="color"?(r(),h("div",rK,[n(pt,{ref_for:!0,ref:$t,modelValue:v.value.variants,"onUpdate:modelValue":ne[15]||(ne[15]=ze=>v.value.variants=ze),multiple:"",filterable:"","filter-method":le,"reserve-keyword":!1,"tag-type":"info","popper-class":"fct-option-values-select",placeholder:ca(v.value),disabled:!v.value.group_id,loading:I.value,"loading-text":A(u)("Loading..."),onKeydownCapture:ze=>st(ze,ma),onVisibleChange:Be},{empty:d(()=>[o("div",dK,f(A(u)("No matching data")),1)]),header:d(()=>[Oe(v.value.group_id).length>0?(r(),h("div",uK,[n(ct,{"model-value":_t.value,indeterminate:vt.value,onChange:Et},null,8,["model-value","indeterminate"]),o("span",null,f(A(u)("Select all")),1)])):x("",!0)]),tag:d(()=>[n(Wi,{modelValue:v.value.variants,"onUpdate:modelValue":ne[10]||(ne[10]=ze=>v.value.variants=ze),terms:Oe(v.value.group_id),type:"color"},null,8,["modelValue","terms"])]),footer:d(()=>[o("div",{class:"fct-picker-inline-form",onMousedown:ne[14]||(ne[14]=Ne(()=>{},["self","prevent"]))},[Ra.value?(r(),h("div",AK,[n(ho,{term:aa.value,"group-type":"color","show-remove-button":!1,"validation-errors":we.value,"field-key":"terms.0",onSubmit:ze=>ut(ma),onRemove:He},null,8,["term","validation-errors","onSubmit"]),o("div",pK,[n(ft,{type:"primary",size:"small",loading:ee.value,disabled:!aa.value.title.trim()||ee.value,onClick:ze=>ut(ma)},{default:d(()=>[R(f(A(u)("Add")),1)]),_:2},1032,["loading","disabled","onClick"]),n(ft,{size:"small",onClick:He},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1})])])):(r(),h(H,{key:0},[Ht.value.trim()&&!pe.value.some(function(ze){return ze.title.toLowerCase()===Ht.value.trim().toLowerCase()})?(r(),$(ft,{key:0,type:"primary",size:"small",text:"",class:"fct-inline-add-btn",onClick:ne[12]||(ne[12]=ze=>Ge())},{default:d(()=>[n(J,{name:"Plus"}),R(" "+f(A(u)('Add "%1$s" as new value',Ht.value.trim())),1)]),_:1})):(r(),$(ft,{key:1,type:"primary",size:"small",text:"",class:"fct-inline-add-btn",onClick:ne[13]||(ne[13]=ze=>te(""))},{default:d(()=>[n(J,{name:"Plus"}),R(" "+f(A(u)("Add new value")),1)]),_:1}))],64))],32)]),default:d(()=>[(r(!0),h(H,null,ae(pe.value,ze=>(r(),$(Pe,{key:ze.id,label:ze.title,value:ze.id},{default:d(()=>[o("div",cK,[n(ct,{"model-value":v.value.variants.some(function(Mt){return Ee(Mt,ze.id)}),tabindex:"-1",onClick:ne[11]||(ne[11]=Ne(()=>{},["stop"])),onChange:Mt=>Lt(ze.id)},null,8,["model-value","onChange"]),o("span",{class:"fct-color-dot",style:ra({background:ze.settings&&ze.settings.color?ze.settings.color:""})},null,4),R(" "+f(ze.title),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["modelValue","placeholder","disabled","loading","loading-text","onKeydownCapture"])])):gt(v.value.group_id)==="image"?(r(),h("div",fK,[n(pt,{ref_for:!0,ref:$t,modelValue:v.value.variants,"onUpdate:modelValue":ne[21]||(ne[21]=ze=>v.value.variants=ze),multiple:"",filterable:"","filter-method":le,"reserve-keyword":!1,"tag-type":"info","popper-class":"fct-option-values-select",placeholder:ca(v.value),disabled:!v.value.group_id,loading:I.value,"loading-text":A(u)("Loading..."),onKeydownCapture:ze=>st(ze,ma),onVisibleChange:Be},{empty:d(()=>[o("div",mK,f(A(u)("No matching data")),1)]),header:d(()=>[Oe(v.value.group_id).length>0?(r(),h("div",hK,[n(ct,{"model-value":_t.value,indeterminate:vt.value,onChange:Et},null,8,["model-value","indeterminate"]),o("span",null,f(A(u)("Select all")),1)])):x("",!0)]),tag:d(()=>[n(Wi,{modelValue:v.value.variants,"onUpdate:modelValue":ne[16]||(ne[16]=ze=>v.value.variants=ze),terms:Oe(v.value.group_id),type:"image"},null,8,["modelValue","terms"])]),footer:d(()=>[o("div",{class:"fct-picker-inline-form",onMousedown:ne[20]||(ne[20]=Ne(()=>{},["self","prevent"]))},[Ra.value?(r(),h("div",gK,[n(ho,{term:aa.value,"group-type":"image","show-remove-button":!1,"validation-errors":we.value,"field-key":"terms.0",onSubmit:ze=>ut(ma),onRemove:He},null,8,["term","validation-errors","onSubmit"]),o("div",yK,[n(ft,{type:"primary",size:"small",loading:ee.value,disabled:!aa.value.title.trim()||ee.value,onClick:ze=>ut(ma)},{default:d(()=>[R(f(A(u)("Add")),1)]),_:2},1032,["loading","disabled","onClick"]),n(ft,{size:"small",onClick:He},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1})])])):(r(),h(H,{key:0},[Ht.value.trim()&&!pe.value.some(function(ze){return ze.title.toLowerCase()===Ht.value.trim().toLowerCase()})?(r(),$(ft,{key:0,type:"primary",size:"small",text:"",class:"fct-inline-add-btn",onClick:ne[18]||(ne[18]=ze=>te(Ht.value))},{default:d(()=>[n(J,{name:"Plus"}),R(" "+f(A(u)('Add "%1$s" as new value',Ht.value.trim())),1)]),_:1})):(r(),$(ft,{key:1,type:"primary",size:"small",text:"",class:"fct-inline-add-btn",onClick:ne[19]||(ne[19]=ze=>te(""))},{default:d(()=>[n(J,{name:"Plus"}),R(" "+f(A(u)("Add new value")),1)]),_:1}))],64))],32)]),default:d(()=>[(r(!0),h(H,null,ae(pe.value,ze=>(r(),$(Pe,{key:ze.id,label:ze.title,value:ze.id},{default:d(()=>[o("div",_K,[n(ct,{"model-value":v.value.variants.some(function(Mt){return Ee(Mt,ze.id)}),tabindex:"-1",onClick:ne[17]||(ne[17]=Ne(()=>{},["stop"])),onChange:Mt=>Lt(ze.id)},null,8,["model-value","onChange"]),o("img",{src:ze.settings&&ze.settings.image?ze.settings.image:"",alt:""},null,8,vK),R(" "+f(ze.title),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["modelValue","placeholder","disabled","loading","loading-text","onKeydownCapture"])])):x("",!0),(Ka=v.value.errors)!=null&&Ka.values?(r(),h("div",bK,[n(J,{name:"AlertIcon"}),o("span",null,f(v.value.errors.values),1)])):x("",!0)],2),o("div",wK,[n(ft,{class:"fct-adv-var-del-button",type:"default",size:"small",onClick:ze=>W(ma)},{default:d(()=>[R(f(A(u)("Delete")),1)]),_:2},1032,["onClick"])])])):x("",!0)]}),_:2},1032,["visible"])]))),128))]),_:1},8,["modelValue","disabled"])):x("",!0),a.value.length>0?(r(),h("div",{key:4,class:ie(["fct-option-add-wrap",{"fct-option-add-wrap--empty":l.value.length===0}])},[n(ft,{class:ie(["fct-option-add",{"fct-option-add--empty":l.value.length===0}]),size:"small",onClick:X},{default:d(()=>[ne[28]||(ne[28]=o("svg",{fill:"currentColor",width:"14",height:"14",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},[o("path",{d:"M4.25 8a.75.75 0 0 1 .75-.75h2.25v-2.25a.75.75 0 0 1 1.5 0v2.25h2.25a.75.75 0 0 1 0 1.5h-2.25v2.25a.75.75 0 0 1-1.5 0v-2.25h-2.25a.75.75 0 0 1-.75-.75"}),o("path",{"fill-rule":"evenodd",d:"M8 15a7 7 0 1 0 0-14 7 7 0 0 0 0 14m0-1.5a5.5 5.5 0 1 0 0-11 5.5 5.5 0 1 0 0 11"})],-1)),R(" "+f(l.value.length===0?A(u)("Add options like size or color"):A(u)("Add more")),1)]),_:1,__:[28]},8,["class"]),Tt.value>0?(r(),h("span",{key:0,class:"fct-adv-var-combinations-chip",title:A(u)("Variant combinations the current options will generate (max %1$s)",Ao)},f(A(u)("%1$s combinations",Tt.value)),9,CK)):x("",!0)],2)):x("",!0),(M.value||S.value)&&!i.value?(r(),h("div",BK,[o("span",kK,f(E.value),1),o("div",xK,[n(ft,{size:"small",disabled:s.value,onClick:de},{default:d(()=>[R(f(A(u)("Discard")),1)]),_:1},8,["disabled"]),n(ft,{size:"small",type:"primary",loading:s.value,onClick:K},{default:d(()=>[R(f(A(u)("Save")),1)]),_:1},8,["loading"])])])):x("",!0),Qt.value||Ut.value||dt.value||Bt.value?(r(),h("div",SK,[Ut.value?(r(),h("div",FK,[o("span",null,f(A(u)("Too many attribute groups. Maximum allowed is %1$s. Remove some groups.",Xi)),1)])):dt.value?(r(),h("div",$K,[o("span",null,f(A(u)("The same attribute group is selected more than once. Remove the duplicate.")),1)])):Qt.value?(r(),h("div",EK,[o("span",null,f(A(u)("Too many combinations (%1$s). Maximum allowed is %2$s. Remove some option values.",It.value,Ao)),1)])):Bt.value?(r(),h("div",UK,[o("span",null,f(A(u)("These options would create variant identifiers longer than %1$s characters. Use fewer attribute groups.",Ji)),1)])):x("",!0)])):x("",!0)]),l.value.some(Kt=>Kt.group_id&&Kt.variants&&Kt.variants.length>0)&&e.product.variants&&e.product.variants.length>0&&(($a=e.product.detail)==null?void 0:$a.variation_type)==="advanced_variations"?(r(),$(UN,{key:0,product:e.product,productEditModel:e.productEditModel,attributeGroups:a.value,"external-busy":i.value||s.value||c.value},null,8,["product","productEditModel","attributeGroups","external-busy"])):x("",!0),n(Rt,{"append-to-body":!0,modelValue:m.value,"onUpdate:modelValue":ne[23]||(ne[23]=Kt=>m.value=Kt),title:A(u)("Add new attribute term"),onClose:ne[24]||(ne[24]=Kt=>ta.value="")},{default:d(()=>[m.value&&_.value!==null&&v.value?(r(),$(MN,{key:0,"group-id":v.value.group_id,group:a.value.find(Kt=>Ee(Kt.id,v.value.group_id)),"initial-title":ta.value,onIsTermCreatingDone:ba},null,8,["group-id","group","initial-title"])):x("",!0)]),_:1},8,["modelValue","title"]),n(Rt,{"append-to-body":!0,width:"50%",modelValue:g.value,"onUpdate:modelValue":ne[25]||(ne[25]=Kt=>g.value=Kt),title:A(u)("Add new attribute group")},{default:d(()=>[g.value?(r(),$(tm,{key:0,onWhenGroupCreateIsDone:Ae})):x("",!0)]),_:1},8,["modelValue","title"])])}}},QK={class:"fct-product-pricing-wrap"},DK={class:"w-[150px] fct-select-gray"},VK={key:1,class:"fct-simple-product-actions"},TK={__name:"ProductPricing",props:{product:Object,productEditModel:Object,productDownloadableModel:Object},setup(e){var p,m;const t=e;T(!1);const a=T((m=(p=t.product)==null?void 0:p.detail)==null?void 0:m.variation_type),l=T(null),s=_=>{var v;const g=t.product.detail.variation_type,y=((v=t.product.variants)==null?void 0:v.length)??0;if(_==="advanced_variations"&&g!=="advanced_variations"){l.value=_,a.value=g,Fn.confirmDeleteWithInput("proceed",u("Switching to Advanced Variations will delete all current variations for this product and cannot be undone. You won't be able to switch back to Simple Variations.")).then(()=>{i()}).catch(()=>{l.value||(l.value=null)});return}_==="simple"&&g==="simple_variations"&&y>1?(l.value=_,a.value=g,Fn.confirmDeleteWithInput("proceed",u("Switching to 'Simple' will permanently delete all variations except the first one.")).then(()=>{i()}).catch(()=>{l.value||(l.value=null)})):c(_)},i=()=>{l.value&&c(l.value),l.value=null},c=_=>{const g=t.product.detail.variation_type;a.value=_;const y=t.productEditModel.updateVariationType("variation_type",_);Promise.resolve(y).catch(()=>{a.value=g})};return(_,g)=>{var w,C;const y=B("el-option"),v=B("el-select");return r(),h("div",QK,[n(ke,{class:ie(((C=(w=e.product)==null?void 0:w.detail)==null?void 0:C.variation_type)==="simple_variations"?"overflow-hidden":"")},{default:d(()=>{var b,k;return[n(Qe,{title:_.$t("Pricing"),border_bottom:""},{action:d(()=>[o("div",DK,[e.product.detail?(r(),$(v,{key:0,size:"small",class:ie(e.productEditModel.hasValidationError("detail.variation_type")?"is-error":""),modelValue:a.value,"onUpdate:modelValue":g[0]||(g[0]=F=>a.value=F),placeholder:_.$t("Select Variation"),onChange:s},{default:d(()=>[(r(!0),h(H,null,ae(_.appVars.variation_types,(F,M)=>{var E,S;return r(),$(y,{key:M,label:F,value:M,disabled:((S=(E=e.product)==null?void 0:E.detail)==null?void 0:S.variation_type)==="advanced_variations"&&M!=="advanced_variations"},null,8,["label","value","disabled"])}),128))]),_:1},8,["class","modelValue","placeholder"])):x("",!0)])]),_:1},8,["title"]),n(Ce,{class:ie(((k=(b=e.product)==null?void 0:b.detail)==null?void 0:k.variation_type)==="simple_variations"?"pb-0":"")},{default:d(()=>{var F,M,E,S,Q,U,V,D,I,O,L,P,G,j,z,Z,oe;return[((M=(F=e.product)==null?void 0:F.detail)==null?void 0:M.variation_type)==="simple"?(r(),$(Sd,{key:0,class:"simple-product-pricing",index:0,modeType:"add",fieldKey:"variants.0",product:e.product,productEditModel:e.productEditModel},null,8,["product","productEditModel"])):x("",!0),((S=(E=e.product)==null?void 0:E.detail)==null?void 0:S.variation_type)==="simple"&&((U=(Q=e.product)==null?void 0:Q.variants[0])!=null&&U.id)?(r(),h("div",VK,[n(Ia,{class:"fct-copy-wrap-inline",text:String(e.product.variants[0].id),showMode:"icon_with_text",buttonText:_.$t("Copy Variation ID")},null,8,["text","buttonText"]),((D=(V=e.product)==null?void 0:V.detail)==null?void 0:D.variation_type)==="simple"&&(((I=e.product)==null?void 0:I.post_status)==="publish"||((O=e.product)==null?void 0:O.post_status)==="private")&&((P=(L=e.product)==null?void 0:L.variants[0])!=null&&P.id)?(r(),$(Ia,{key:0,class:"fct-copy-wrap-inline mt-3",text:((G=_.appVars)==null?void 0:G.frontend_url)+"=instant_checkout&item_id="+e.product.variants[0].id+"&quantity=1",showMode:"icon_with_text",placement:"top",buttonText:_.$t("Direct Checkout"),tooltipContent:_.$t("Share direct checkout link to let customers buy this variation directly.")},null,8,["text","buttonText","tooltipContent"])):x("",!0)])):x("",!0),((z=(j=e.product)==null?void 0:j.detail)==null?void 0:z.variation_type)==="simple_variations"?(r(),$(TO,{key:2,product:e.product,productEditModel:e.productEditModel},null,8,["product","productEditModel"])):x("",!0),((oe=(Z=e.product)==null?void 0:Z.detail)==null?void 0:oe.variation_type)==="advanced_variations"?(r(),$(IK,{key:3,product:e.product,productEditModel:e.productEditModel},null,8,["product","productEditModel"])):x("",!0)]}),_:1},8,["class"])]}),_:1},8,["class"])])}}},MK={class:"fct-sku-input-wrap"},LK={class:"fct-sku-edit-actions"},ec={__name:"SkuInput",props:{variant:{type:Object,required:!0},productTitle:{type:String,default:""}},emits:["saved"],setup(e,{emit:t}){const a=e,l=t,s=T(a.variant.sku||""),i=T(a.variant.sku||""),c=T(!1),p=T(!1),m=T(!1),_=()=>{c.value=!0},g=()=>{i.value=s.value,c.value=!1},y=()=>{p.value=!0,ce.post("products/variants/group-bulk-update",{variant_ids:[a.variant.id],sku:i.value}).then(w=>{s.value=i.value,l("saved",i.value),c.value=!1,Y.success(w.message)}).catch(w=>{var C;w.status_code=="422"?Y.validationErrors(w):Y.error((C=w.data)==null?void 0:C.message)}).finally(()=>{p.value=!1})},v=()=>{m.value=!0,ce.get("products/suggest-sku",{title:a.productTitle,variant_title:a.variant.variation_title||"",exclude_id:a.variant.id}).then(w=>{i.value=w.sku,c.value=!0}).catch(w=>{var C;Y.error((C=w.data)==null?void 0:C.message)}).finally(()=>{m.value=!1})};return(w,C)=>{const b=B("el-input"),k=B("el-button");return r(),h("div",MK,[n(b,{modelValue:i.value,"onUpdate:modelValue":C[0]||(C[0]=F=>i.value=F),size:"small",placeholder:A(u)("No SKU"),onInput:_,onKeydown:[C[1]||(C[1]=xa(Ne(F=>c.value&&y(),["prevent"]),["enter"])),xa(g,["escape"])]},null,8,["modelValue","placeholder"]),o("div",LK,[c.value?(r(),h(H,{key:0},[n(k,{size:"small",type:"primary",title:A(u)("Save SKU"),"aria-label":A(u)("Save SKU"),loading:p.value,onClick:y},{default:d(()=>[n(J,{name:"Check"})]),_:1},8,["title","aria-label","loading"]),n(k,{size:"small",type:"danger",title:A(u)("Discard changes"),"aria-label":A(u)("Discard changes"),onClick:g},{default:d(()=>[n(J,{name:"Close"})]),_:1},8,["title","aria-label"])],64)):(r(),$(k,{key:1,size:"small",class:"fct-sku-suggest-btn",loading:m.value,title:A(u)("Generate SKU"),onClick:v},{default:d(()=>[n(J,{name:"Generate"})]),_:1},8,["loading","title"]))])])}}},RK={key:0,class:"fct-product-inventory-wrap"},OK={class:"fct-product-inventory-inner-wrap hide-on-mobile"},HK={key:0,class:"fct-variant-badge fct-variant-badge--light"},PK={class:"fct-inventory-cell-text pl-5"},NK={class:"fct-inventory-cell-text pl-5"},KK={class:"fct-inventory-cell-text pl-5"},GK={class:"fct-product-inventory-inner-wrap-mobile"},jK={class:"fct-product-inventory-mobile-col"},zK={class:"title"},qK={class:"fct-product-inventory-mobile-col"},YK={class:"fct-product-inventory-mobile-col"},WK={__name:"ProductInventory",props:{product:Object,productEditModel:Object},emits:["update:modelValue"],setup(e,{emit:t}){const a=e,l=je.get("modules_settings.stock_management.active"),s=T([]),i=T({}),c=(y,v)=>{y&&(i.value[v]=y.scrollWidth>y.clientWidth)};Ie(()=>{a.product.variants.forEach(y=>{y.new_stock=y.total_stock,y.adjusted_quantity=0})});const p=y=>a.product.detail.variation_type==="simple_variations"&&y.row.manage_stock==0?"disable_inventory_row":"",m=y=>a.product.detail.variation_type==="simple_variations"&&y.manage_stock==0?"disable_inventory_row":"",_=y=>{let v=parseInt(a.product.variants[y].new_stock);a.product.variants[y].total_stock=v<0?0:v;let w=parseInt(a.product.variants[y].total_stock)-parseInt(a.product.variants[y].committed)-parseInt(a.product.variants[y].on_hold);a.product.variants[y].available=w<0?0:w,a.product.variants[y].adjusted_quantity=0,a.product.variants[y].new_stock=a.product.variants[y].total_stock,ce.put(`products/${a.product.ID}/update-inventory/${a.product.variants[y].id}`,{total_stock:a.product.variants[y].total_stock,available:a.product.variants[y].available}).then(C=>{Y.success(C.message)}).catch(C=>{var b;C.status_code=="422"?Y.validationErrors(C):Y.error((b=C.data)==null?void 0:b.message)})},g=y=>{ce.put(`products/${a.product.ID}/update-manage-stock`,{manage_stock:a.product.detail.manage_stock}).then(v=>{Y.success(v.message),a.product.variants.forEach(w=>{w.manage_stock=y})}).catch(v=>{var w;v.status_code=="422"?Y.validationErrors(v):Y.error((w=v.data)==null?void 0:w.message)})};return(y,v)=>{const w=B("el-switch"),C=B("el-tooltip"),b=B("el-table-column"),k=B("el-input"),F=B("el-table");return A(l)==="yes"?(r(),h("div",RK,[n(ke,{class:"overflow-hidden"},{default:d(()=>{var M,E;return[n(Qe,{class:ie(((M=e.product.detail)==null?void 0:M.manage_stock.toString())==="0"?"pb-5":"")},{action:d(()=>{var S;return[(S=e.product.detail)!=null&&S.manage_stock?(r(),$(w,{key:0,modelValue:e.product.detail.manage_stock,"onUpdate:modelValue":v[0]||(v[0]=Q=>e.product.detail.manage_stock=Q),onChange:g,"active-value":"1","inactive-value":"0","active-text":A(u)("Inventory Management")},null,8,["modelValue","active-text"])):x("",!0)]}),_:1},8,["class"]),n(va,{visible:((E=e.product.detail)==null?void 0:E.manage_stock.toString())==="1",accordion:""},{default:d(()=>[n(Ce,{class:"px-0 pb-0"},{default:d(()=>[o("div",OK,[n(F,{data:e.product.variants,"row-class-name":p},{default:d(()=>[n(b,{label:A(u)("Title"),width:"180"},{default:d(S=>{var Q,U;return[o("div",{class:ie(["relative",{"fct-inventory-title-cell--has-badge":((Q=S.row.other_info)==null?void 0:Q.payment_type)==="subscription"}])},[n(C,{content:S.row.variation_title,placement:"top","show-after":300,disabled:!i.value[`title_${S.$index}`]},{default:d(()=>[o("span",{class:"fct-inventory-cell-text truncate block",ref:V=>c(V,`title_${S.$index}`)},f(S.row.variation_title||"--"),513)]),_:2},1032,["content","disabled"]),((U=S.row.other_info)==null?void 0:U.payment_type)==="subscription"?(r(),h("span",HK,f(S.row.other_info.repeat_interval),1)):x("",!0)],2)]}),_:1},8,["label"]),n(b,{label:A(u)("SKU"),width:"220"},{default:d(S=>[n(ec,{variant:S.row,"product-title":e.product.post_title,onSaved:Q=>S.row.sku=Q},null,8,["variant","product-title","onSaved"])]),_:1},8,["label"]),n(b,{label:A(u)("Total Stock"),width:"120"},{default:d(S=>[o("div",null,[n(k,{modelValue:S.row.total_stock,"onUpdate:modelValue":Q=>S.row.total_stock=Q,class:"input-with-total-stock fct-input-group",readonly:"",size:"small",onClick:Q=>{var U;return(U=s.value[S.$index])==null?void 0:U.toggle()}},{append:d(()=>[n(Vr,{ref:Q=>s.value[S.$index]=Q,variant:S.row,"field-key":S.$index,"product-edit-model":e.productEditModel,onSave:Q=>_(S.$index),onClick:v[1]||(v[1]=Ne(()=>{},["stop"]))},null,8,["variant","field-key","product-edit-model","onSave"])]),_:2},1032,["modelValue","onUpdate:modelValue","onClick"])])]),_:1},8,["label"]),n(b,{label:A(u)("Available"),width:"100"},{default:d(S=>[o("span",PK,f(A(u)(S.row.available)),1)]),_:1},8,["label"]),n(b,{label:A(u)("On hold"),width:"100"},{default:d(S=>[o("span",NK,f(A(u)(S.row.on_hold)),1)]),_:1},8,["label"]),n(b,{label:A(u)("Delivered"),width:"100"},{default:d(S=>[o("span",KK,f(A(u)(S.row.committed)),1)]),_:1},8,["label"])]),_:1},8,["data"])]),o("div",GK,[(r(!0),h(H,null,ae(e.product.variants,(S,Q)=>(r(),h("div",{key:Q,class:ie(["fct-product-inventory-mobile-row",m(S)])},[o("div",jK,[o("div",zK,f(S.variation_title||"--"),1),n(ec,{variant:S,"product-title":e.product.post_title,class:"mt-1 mb-2",onSaved:U=>S.sku=U},null,8,["variant","product-title","onSaved"])]),o("div",qK,[n(k,{modelValue:S.total_stock,"onUpdate:modelValue":U=>S.total_stock=U,class:"input-with-total-stock fct-input-group",readonly:"",size:"small"},{append:d(()=>[n(Vr,{variant:S,"field-key":Q,"product-edit-model":e.productEditModel,onSave:U=>_(Q)},null,8,["variant","field-key","product-edit-model","onSave"])]),_:2},1032,["modelValue","onUpdate:modelValue"])]),o("div",YK,[o("ul",null,[o("li",null,[o("span",null,f(A(u)("Available"))+":",1),R(" "+f(S.available.toString()),1)]),o("li",null,[o("span",null,f(A(u)("On Hold"))+":",1),R(" "+f(S.on_hold.toString()),1)]),o("li",null,[o("span",null,f(A(u)("Delivered"))+":",1),R(" "+f(S.committed.toString()),1)])])])],2))),128))])]),_:1})]),_:1},8,["visible"])]}),_:1})])):x("",!0)}}},XK={class:"el-form el-form--default el-form--label-top"},Mp={__name:"SingleFileForm",props:{product:Object,file:Object,index:Number,productDownloadableModel:Object,singleMode:{type:Boolean,default:!1},isEditing:{type:Boolean,default:!1}},setup(e){const t=e,a=N(()=>Oo(t.product));return Ss(()=>{var l;if(t.file&&typeof t.file.product_variation_id=="string")try{t.file.product_variation_id=JSON.parse(t.file.product_variation_id),t.file.product_variation_id=t.file.product_variation_id.map(s=>parseInt(s))}catch{}if(t.file&&Array.isArray(t.file.product_variation_id)&&((l=t.product)!=null&&l.variants)){const s=Array.isArray(t.product.variants)?t.product.variants:[],i=new Set(s.map(p=>parseInt(p.id,10))),c=t.file.product_variation_id.filter(p=>i.has(parseInt(p,10)));c.length!==t.file.product_variation_id.length&&(t.file.product_variation_id=c)}}),(l,s)=>{const i=B("el-option"),c=B("el-select"),p=B("el-form-item"),m=B("el-input");return r(),h("div",XK,[n(p,{label:l.$t("Choose variant")},{default:d(()=>[n(c,{class:"",size:"small",modelValue:e.file.product_variation_id,"onUpdate:modelValue":s[0]||(s[0]=_=>e.file.product_variation_id=_),multiple:"",id:`downloadable_files.${e.index}.product_variation_id`,placeholder:l.$t("Keep empty for all"),"popper-class":"fct-choose-variant-popover","collapse-tags":"","collapse-tags-tooltip":""},{default:d(()=>[(r(!0),h(H,null,ae(e.productDownloadableModel.generateVariantOptions(e.product),_=>(r(),$(i,{key:_.id,label:A(Qn)(_,a.value),value:_.id},{default:d(()=>[n(Ho,{variant:_,"group-order":a.value},null,8,["variant","group-order"])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","id","placeholder"]),n(oa,{"validation-errors":e.productDownloadableModel.data.validationErrors,"field-key":`downloadable_files.${e.index}.product_variation_id`},null,8,["validation-errors","field-key"])]),_:1},8,["label"]),e.isEditing||e.productDownloadableModel.insertableFiles.length===1?(r(),$(p,{key:0},{default:d(()=>[n(Gc,{isMultiple:!e.singleMode,onOnFileSelected:s[1]||(s[1]=_=>{const g=e.index,y=_;y.forEach((v,w)=>{e.isEditing?(y[w].serial=g+1,y[w].settings.download_limit=e.productDownloadableModel.data.downloadableFiles[g].settings.download_limit,y[w].settings.download_expiry=e.productDownloadableModel.data.downloadableFiles[g].settings.download_expiry,y.length>1?(y[w].product_variation_id=e.productDownloadableModel.data.downloadableFiles[g].product_variation_id,e.file=y[w]):(y[w].product_variation_id=e.productDownloadableModel.data.downloadableFiles[g].product_variation_id,e.file.file_name=y[w].file_name,e.file.file_path=y[w].file_path,e.file.file_size=y[w].file_size,e.file.file_url=y[w].file_url,e.file.title=y[w].title,e.file.type=y[w].type,e.file.settings=y[w].settings)):(y[w].serial=g+1,y[w].settings.download_limit=e.productDownloadableModel.insertableFiles[g].settings.download_limit,y[w].settings.download_expiry=e.productDownloadableModel.insertableFiles[g].settings.download_expiry,y.length>1?(y[w].product_variation_id=e.productDownloadableModel.insertableFiles[g].product_variation_id,e.productDownloadableModel.insertableFiles[g+w]=y[w]):(y[w].product_variation_id=e.productDownloadableModel.insertableFiles[g].product_variation_id,e.productDownloadableModel.insertableFiles[g]=y[w]))})})},null,8,["isMultiple"]),n(oa,{"validation-errors":e.productDownloadableModel.data.validationErrors,"field-key":`downloadable_files.${e.index}.file_url`},null,8,["validation-errors","field-key"])]),_:1})):x("",!0),e.file.title?(r(),$(p,{key:1,label:l.$t("File Title")},{default:d(()=>[o("p",null,f(e.file.title),1),x("",!0),n(oa,{"validation-errors":e.productDownloadableModel.data.validationErrors,"field-key":`downloadable_files.${e.index}.title`},null,8,["validation-errors","field-key"])]),_:1},8,["label"])):x("",!0),e.file.driver?(r(),$(p,{key:2},{default:d(()=>[o("p",null,f(A(u)("Driver: %s",e.file.driver)),1)]),_:1})):x("",!0)])}}},JK={key:0,class:"text-right"},ZK={key:1,class:"px-6 py-3"},eG={class:"fct-product-download-inner-wrap flex flex-col gap-4"},tG={class:"fct-product-download-form-box"},aG={key:1},lG={__name:"ProductDownloadAddModal",props:{product:Object,productEditModel:Object,productDownloadableModel:Object},setup(e){const t=N(()=>window.innerWidth<=768?"90%":"34%");return(a,l)=>{const s=B("el-button"),i=B("el-drawer");return r(),h(H,null,[o("div",{class:ie(["add-download-btn",e.productDownloadableModel.hasVariationOption(e.product)?"px-6 py-3 border border-solid border-gray-divider border-x-0 border-b-0 dark:border-dark-400":""])},[e.productDownloadableModel.hasVariationOption(e.product)?(r(),h("div",JK,[n(s,{text:"",type:"primary",onClick:l[0]||(l[0]=()=>{e.productDownloadableModel.openAddModal()})},{default:d(()=>[n(J,{name:"Plus"}),R(" "+f(a.$t("Add")),1)]),_:1})])):(r(),h("div",ZK,f(a.$t("No pricing added yet")),1))],2),n(i,{modelValue:e.productDownloadableModel.data.addModal.isModalOpen,"onUpdate:modelValue":l[4]||(l[4]=c=>e.productDownloadableModel.data.addModal.isModalOpen=c),size:t.value,onClose:l[5]||(l[5]=()=>{e.productDownloadableModel.clearInsertableFile()}),onOpen:l[6]||(l[6]=()=>{e.productDownloadableModel.addDummyInsertableFile()})},{header:d(()=>[n(pa,{title:a.$t("Add Downloadable Asset(s)"),content:a.$t("Attach the WordPress-supported digital files that customers will receive after purchasing this product. If this downloadable file is only for a specific product variation (e.g., 'eBook Version' or 'Audiobook Version'), please select that variant. Otherwise, you may leave the 'Choose variant' field empty to make the file available for all variants of this product. Please note that any additional files added after any sell will be accessible to both existing and new orders."),placement:"bottom"},null,8,["title","content"])]),footer:d(()=>[o("div",null,[n(s,{onClick:l[2]||(l[2]=c=>e.productDownloadableModel.data.addModal.isModalOpen=!1)},{default:d(()=>[R(f(a.$t("Cancel")),1)]),_:1}),n(s,{type:"primary",onClick:l[3]||(l[3]=()=>{e.productDownloadableModel.attachInsertableFiles(e.product.ID)}),loading:e.productDownloadableModel.data.saving},{default:d(()=>[R(f(a.$t("Save Asset")),1)]),_:1},8,["loading"])])]),default:d(()=>[o("div",eG,[e.productDownloadableModel.insertableFiles.length?(r(!0),h(H,{key:0},ae(e.productDownloadableModel.insertableFiles,(c,p)=>(r(),h("div",tG,[e.productDownloadableModel.insertableFiles.length>1?(r(),$(s,{key:0,onClick:m=>e.productDownloadableModel.deleteInsertableFile(p),size:"small",plain:"",class:"absolute right-2 top-2 p-0 border-none hover:text-red-500"},{default:d(()=>[n(J,{name:"Delete"})]),_:2},1032,["onClick"])):x("",!0),n(Mp,{product:e.product,file:c,index:p,productDownloadableModel:e.productDownloadableModel},null,8,["product","file","index","productDownloadableModel"])]))),256)):x("",!0),e.productDownloadableModel.insertableFiles.length>1?(r(),h("div",aG,[n(Gc,{uploadBtnText:A(u)("Add More Files"),onOnFileSelected:l[1]||(l[1]=c=>{const p=e.productDownloadableModel.insertableFiles.length-1,m=c;m.value.forEach((_,g)=>{m.value[g].serial=p+1,m.value[g].settings.download_limit=e.productDownloadableModel.insertableFiles[p].settings.download_limit,m.value[g].settings.download_expiry=e.productDownloadableModel.insertableFiles[p].settings.download_expiry,m.value[g].product_variation_id=e.productDownloadableModel.insertableFiles[p].product_variation_id,e.productDownloadableModel.insertableFiles.push(m.value[g])})})},null,8,["uploadBtnText"])])):x("",!0),(r(!0),h(H,null,ae(e.product.variants,(c,p)=>(r(),h("div",{key:p},[n(oa,{"validation-errors":e.productDownloadableModel.data.validationErrors,"field-key":`variants.${p}.downloadable`},null,8,["validation-errors","field-key"])]))),128))])]),_:1},8,["modelValue","size"])],64)}}},sG={class:"fct-product-download-form-wrap"},nG={class:"fct-product-download-form-box"},oG={__name:"ProductDownloadEditModal",props:{product:Object,productDownloadable:Object,productEditModel:Object,productDownloadableModel:Object,index:Number|String},setup(e){const t=e,a=N(()=>window.innerWidth<=768?"90%":"40%"),l=T({...t.productDownloadable}),s=t.productDownloadableModel.data.editModal.states;return Ss(()=>{s[t.index]={},s[t.index].visible=!1}),(i,c)=>{const p=B("el-button"),m=B("el-drawer");return r(),h(H,null,[n(m,{"append-to-body":"",modelValue:A(s)[e.index].visible,"onUpdate:modelValue":c[1]||(c[1]=_=>A(s)[e.index].visible=_),size:a.value,title:A(u)("Edit Downloadable Asset"),onClose:c[2]||(c[2]=()=>{e.productDownloadableModel.closeEditModal(e.index)})},{footer:d(()=>[n(p,{type:"primary",loading:e.productDownloadableModel.saving,onClick:c[0]||(c[0]=()=>{e.productDownloadableModel.updateDownloadableFile()})},{default:d(()=>[R(f(A(u)("Update")),1)]),_:1},8,["loading"])]),default:d(()=>[o("div",sG,[o("div",nG,[n(Mp,{product:e.product,file:l.value,index:e.index,productDownloadableModel:e.productDownloadableModel,singleMode:!0,"is-editing":""},null,8,["product","file","index","productDownloadableModel"])])])]),_:1},8,["modelValue","size","title"]),o("div",{class:"el-dropdown-menu__item w-full",onClick:c[3]||(c[3]=Ne(()=>{A(s)[e.index].visible=!0,e.productDownloadableModel.openEditModal(e.index,l.value)},["prevent"]))},[n(J,{name:"Edit"}),R(" "+f(A(u)("Edit")),1)])],64)}}},iG={class:"fct-product-download-wrap"},rG={key:0,class:"fct-product-download-inner-wrap border border-x-0 border-b-0 border-solid border-gray-divider dark:border-dark-400"},dG={class:"fct-media-content-list"},uG={class:"product-thumbnail bg-gray-100 rounded flex items-center justify-center dark:bg-dark-500"},cG={class:"product-details"},AG={class:"product-details-content-row"},pG={class:"product-details-content-first"},fG={class:"product-title text-sm font-medium text-system-dark dark:text-gray-50"},mG={key:0,class:"font-normal text-system-mid"},hG={class:"product-variation-title inline-flex"},_G={key:1,class:"product-variation-title"},vG={class:"product-details-content-second"},gG={class:"more-btn"},yG={__name:"ProductDownload",props:{product:Object,productEditModel:Object,productDownloadableModel:Object},setup(e){const t=e,a=function(s){ce.get(`products/getDownloadableUrl/${s.id}`).then(i=>{Yl.copy(i.url)}).catch(i=>{Y.error({title:u("Error"),message:u("Failed to copy file URL")})})},l=s=>{s.action==="copy-download-link"?a(s.data):s.action==="delete"&&t.productDownloadableModel.deleteDownloadableFile(s.data.id,s.idx)};return(s,i)=>{const c=B("el-switch"),p=B("el-popover"),m=B("el-dropdown-item"),_=B("el-dropdown-menu"),g=B("el-dropdown");return r(),h("div",iG,[n(ke,null,{default:d(()=>{var y;return[n(Qe,{class:"pb-5"},{action:d(()=>[e.product.detail?(r(),$(c,{key:0,modelValue:e.product.detail.manage_downloadable,"onUpdate:modelValue":i[0]||(i[0]=v=>e.product.detail.manage_downloadable=v),"active-value":"1","inactive-value":"0","active-text":s.$t("Downloadable Asset(s)"),onChange:i[1]||(i[1]=v=>{(v.toString()==="0"||e.productDownloadableModel.hasDownloadableFiles())&&e.productEditModel.setHasChange(!0)})},null,8,["modelValue","active-text"])):x("",!0)]),_:1}),n(va,{visible:((y=e.product.detail)==null?void 0:y.manage_downloadable.toString())==="1",accordion:""},{default:d(()=>[n(Ce,{class:"p-0"},{default:d(()=>[e.productDownloadableModel.hasDownloadableFiles()?(r(),h("div",rG,[o("div",dG,[(r(!0),h(H,null,ae(e.productDownloadableModel.downloadableFiles,(v,w)=>(r(),h("div",{class:"fct-media-content-list-item",key:w},[o("div",uG,f(v.type),1),o("div",cG,[o("div",AG,[o("div",pG,[o("div",fG,[R(f(v.title)+" ",1),v.driver!=="local"?(r(),h("span",mG," - "+f(v.driver),1)):x("",!0)]),e.productDownloadableModel.getHiddenVariationNames(v.product_variation_id,e.product).length?(r(),$(p,{key:0,placement:"top",trigger:"hover",width:200},{reference:d(()=>[o("div",hG," – "+f(e.productDownloadableModel.generateDownloadableVariationName(v.product_variation_id,e.product)),1)]),default:d(()=>[(r(!0),h(H,null,ae(e.productDownloadableModel.getHiddenVariationNames(v.product_variation_id,e.product),(C,b)=>(r(),h("div",{style:{"margin-top":"4px"},key:b},f(C),1))),128))]),_:2},1024)):(r(),h("div",_G," – "+f(e.productDownloadableModel.generateDownloadableVariationName(v.product_variation_id,e.product)),1))]),o("div",vG,[n(g,{trigger:"click",class:"fct-more-option-wrap","popper-class":"fct-dropdown",placement:"bottom-end",onCommand:l},{dropdown:d(()=>[n(_,null,{default:d(()=>[n(m,{class:"item-link"},{default:d(()=>[n(oG,{product:e.product,productDownloadableModel:e.productDownloadableModel,productEditModel:e.productEditModel,productDownloadable:v,index:w},null,8,["product","productDownloadableModel","productEditModel","productDownloadable","index"])]),_:2},1024),n(m,{command:{action:"copy-download-link",data:v}},{default:d(()=>[n(J,{name:"Copy"}),R(" "+f(A(u)("Copy Download Link")),1)]),_:2},1032,["command"]),n(m,{command:{action:"delete",data:v,idx:w},class:"item-destructive"},{default:d(()=>[n(J,{name:"Delete"}),R(" "+f(A(u)("Delete")),1)]),_:2},1032,["command"])]),_:2},1024)]),default:d(()=>[o("span",gG,[n(J,{name:"More"})])]),_:2},1024)])])])]))),128))])])):x("",!0),n(lG,{product:e.product,productEditModel:e.productEditModel,productDownloadableModel:e.productDownloadableModel},null,8,["product","productEditModel","productDownloadableModel"])]),_:1})]),_:1},8,["visible"])]}),_:1})])}}},bG={class:"fct-product-status-wrap"},wG={class:"fct-admin-summary-item-list"},CG={class:"fct-admin-summary-item"},BG={class:"fct-admin-summary-item-title"},kG={class:"fct-product-status-chosen-wrap",id:"fct-product-status-chosen-wrap"},xG={id:"fct-product-status-chosen-dropdown",class:"fct-product-status-chosen-dropdown"},SG={key:0,style:{"margin-top":"20px"}},FG={class:"title"},$G={key:1},EG={class:"text-sm text-gray-500 mt-4"},UG={class:"capitalize"},IG={key:1},QG={class:"fct-admin-summary-item"},DG={class:"fct-admin-summary-item-title flex items-center gap-1"},VG=["href"],TG={class:"fct-product-url-slug-container"},MG={class:"filter-popover-item fct-admin-summary-popover-item"},LG={class:"filter-popover-title"},RG={class:"filter-popover-input-group"},OG={class:"fct-product-url-label"},HG=["href"],PG={class:"fct-product-url-slug"},NG={key:0,class:"fct-admin-summary-item"},KG={class:"fct-admin-summary-item-title"},GG={class:"fct-admin-summary-item-select"},jG={key:1,class:"fct-admin-summary-item"},zG={class:"fct-admin-summary-item-title"},qG={key:0,class:"fct-admin-summary-item-select"},YG={key:0,class:"mt-4 pt-4"},tc={__name:"ProductStatus",props:{product:Object,productEditModel:Object},setup(e){const t=e,a=T(""),l=T(""),s=T(""),i=T(!1),c=v=>Qn(v,Oo(t.product))||v.variation_title;be(()=>{var v,w,C;return[(w=(v=t.product)==null?void 0:v.detail)==null?void 0:w.default_variation_id,(C=t.product)==null?void 0:C.variants]},([v,w])=>{var k;if(!v||!((k=t.product)!=null&&k.detail))return;(Array.isArray(w)?w:[]).some(F=>String(F.id)===String(v))||(t.product.detail.default_variation_id="",t.productEditModel&&typeof t.productEditModel.onChangeInputField=="function"&&t.productEditModel.onChangeInputField("default_variation_id",""))},{immediate:!0,deep:!1});const p=u("Customize the product's URL ending. Remember, this will affect SEO and readability. The URL will be activated when publish. Check Google's %s Structure Best Practices.",''+u("URL")+""),m=()=>t.product.variants.filter(w=>w.created_at).length>0,_=v=>{t.productEditModel.onChangeInputField("post_status",v),(v==="draft"||v==="publish")&&(i.value=!1)},g=()=>u("Status controls the product's visibility on the public page and its purchasability. 'Publish' indicates that it is live and can be purchased, 'Draft' signifies that it is in private editing, and 'Schedule' means it will be publish on a specified date. 'Private' means, Only visible to adminstrators but can be purchased via direct purchase link. The status can only be changed once pricing is set."),y={use_pricing_table:"no",group_pricing_by:"payment_type",sold_individually:"no"};return be(()=>t.product.detail,v=>{v&&(!v.other_info||Object.keys(v.other_info).length===0)&&(t.product.detail.other_info={...y})},{immediate:!0}),Ie(()=>{a.value=window.location.protocol,l.value=window.location.hostname,s.value=`${a.value}//${l.value}`}),(v,w)=>{const C=B("el-radio"),b=B("el-radio-group"),k=B("el-date-picker"),F=B("el-button"),M=B("el-popover"),E=B("el-input"),S=B("el-option"),Q=B("el-select"),U=B("el-checkbox");return r(),h("div",bG,[n(ke,null,{default:d(()=>[n(Qe,{title:A(u)("Publishing"),border_bottom:"",title_size:"small"},null,8,["title"]),n(Ce,null,{default:d(()=>{var V,D;return[o("ul",wG,[o("li",CG,[o("span",BG,[n(pa,{title:A(u)("Status"),content:g()},null,8,["title","content"])]),o("div",kG,[m()?(r(),$(M,{key:0,trigger:"click",placement:"bottom-end",width:"300","popper-class":"filter-popover"},{reference:d(()=>[m()?(r(),$(F,{key:0,id:"fct-product-status-toggle",type:"primary",class:"is-tertiary el-button--x-small"},{default:d(()=>[o("span",UG,f(e.product.post_status==="future"?A(u)("Scheduled"):e.product.post_status),1),n(J,{name:"ChevronUpDown"})]),_:1})):(r(),h("span",IG,f(A(da).headline(e.product.post_status)),1))]),default:d(()=>[o("div",xG,[n(b,{class:"fct-radios-blocks",modelValue:e.product.post_status,"onUpdate:modelValue":w[0]||(w[0]=I=>e.product.post_status=I),onChange:_},{default:d(()=>[n(C,{value:"draft"},{default:d(()=>[R(f(A(u)("Draft")),1)]),_:1}),n(C,{value:"future"},{default:d(()=>[R(f(A(u)("Scheduled")),1)]),_:1}),n(C,{value:"private"},{default:d(()=>[R(f(A(u)("Private (Invisible except Admin)")),1)]),_:1}),n(C,{value:"publish"},{default:d(()=>[R(f(A(u)("Publish")),1)]),_:1})]),_:1},8,["modelValue"]),e.product.post_status==="future"?(r(),h("div",SG,[o("h3",FG,f(A(u)("Scheduled Date")),1),n(k,{clearable:!1,modelValue:e.product.post_date,"onUpdate:modelValue":w[1]||(w[1]=I=>e.product.post_date=I),type:"datetime",placeholder:A(u)("Schedule Date"),"value-format":"YYYY-MM-DDTHH:mm:ssZ",onChange:w[2]||(w[2]=I=>{e.productEditModel.onChangeInputField("post_date",I)})},null,8,["modelValue","placeholder"])])):e.product.post_status==="private"?(r(),h("div",$G,[o("p",EG,f(A(u)("Note: Private products are only visible to administrators but can be purchased via direct purchase link.")),1)])):x("",!0)])]),_:1})):x("",!0)])]),o("li",QG,[o("span",DG,[R(f(A(u)("URL Slug"))+" ",1),o("a",{href:e.product.view_url,class:"focus:outline-none focus:shadow-none",target:"_blank"},[n(J,{name:"Redirect",class:"w-3 h-3 text-primary-500 dark:text-gray-200"})],8,VG)]),o("div",TG,[n(M,{trigger:"click",placement:"bottom-end",width:"250","popper-class":"filter-popover"},{reference:d(()=>[n(F,{type:"primary",class:"is-tertiary el-button--x-small"},{default:d(()=>[o("span",null,f(e.product.post_name),1),n(J,{name:"ChevronUpDown"})]),_:1})]),default:d(()=>[o("div",MG,[o("h3",LG,f(A(u)("URL")),1),o("div",RG,[n(pa,{title:A(u)("Permalink"),content:A(p),hideAfter:300},null,8,["title","content"]),n(E,{placeholder:A(u)("Slug"),type:"text",modelValue:e.product.post_name,"onUpdate:modelValue":w[3]||(w[3]=I=>e.product.post_name=I),onInput:w[4]||(w[4]=I=>{e.productEditModel.onChangeInputField("post_name",I)})},null,8,["placeholder","modelValue"])]),o("div",OG,f(A(u)("View Product")),1),o("a",{class:"fct-product-url-slug-wrap",target:"_blank",href:e.product.view_url,rel:"external noreferrer noopener"},[o("span",PG,f(e.product.view_url),1),n(Ia,{text:e.product.view_url,showMode:"basic_copy_btn",tooltipText:A(u)("Copy Link")},null,8,["text","tooltipText"])],8,HG)])]),_:1})])]),((V=e.product.detail)==null?void 0:V.variation_type)==="simple_variations"||((D=e.product.detail)==null?void 0:D.variation_type)==="advanced_variations"?(r(),h("li",NG,[o("span",KG,[n(pa,{title:A(u)("Default Variant"),content:A(u)("Select the default variant that users will see pre-selected on the product page.")},null,8,["title","content"])]),o("div",GG,[n(Q,{class:"el-select--x-small",modelValue:e.product.detail.default_variation_id,"onUpdate:modelValue":w[5]||(w[5]=I=>e.product.detail.default_variation_id=I),placeholder:A(u)("Select Default Variant"),onChange:w[6]||(w[6]=I=>{e.productEditModel.onChangeInputField("default_variation_id",I)}),clearable:""},{default:d(()=>[(r(!0),h(H,null,ae(e.product.variants,I=>(r(),$(S,{key:I.id,label:c(I),value:I.id.toString()},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])):x("",!0),e.product.detail&&e.product.detail.variation_type==="simple_variations"?(r(),h("li",jG,[o("span",zG,[n(pa,{title:A(u)("Pricing Table Layout"),content:A(u)("Organize product variations by repeat interval (Monthly, Yearly) or payment term (One time, Subscription).")},null,8,["title","content"])]),e.product.detail?(r(),h("div",qG,[n(Q,{class:"el-select--x-small",clearable:"",modelValue:e.product.detail.other_info.group_pricing_by,"onUpdate:modelValue":w[7]||(w[7]=I=>e.product.detail.other_info.group_pricing_by=I),placeholder:A(u)("Pricing Table Layout"),onChange:w[8]||(w[8]=I=>{e.productEditModel.onChangeInputField("group_pricing_by",I)})},{default:d(()=>[n(S,{label:A(u)("Payment Term"),value:"payment_type"},null,8,["label"]),n(S,{label:A(u)("Repeat Interval"),value:"repeat_interval"},null,8,["label"]),n(S,{label:A(u)("None"),value:"none"},null,8,["label"])]),_:1},8,["modelValue","placeholder"])])):x("",!0)])):x("",!0)]),e.product.detail?(r(),h("div",YG,[n(U,{onChange:w[9]||(w[9]=I=>{e.productEditModel.onChangeInputField("sold_individually",I)}),modelValue:e.product.detail.other_info.sold_individually,"onUpdate:modelValue":w[10]||(w[10]=I=>e.product.detail.other_info.sold_individually=I),"true-value":"yes","false-value":"no"},{default:d(()=>[R(f(A(u)("Limit purchases to 1 item per order")),1)]),_:1},8,["modelValue"])])):x("",!0)]}),_:1})]),_:1})])}}},WG={class:"fct-product-media-wrap"},XG={class:"fct-admin-summary-item"},ac={__name:"ProductMedia",props:{product:Object,productEditModel:Object},setup(e){return(t,a)=>(r(),h("div",WG,[n(ke,null,{default:d(()=>[n(Qe,{title:t.$t("Media"),border_bottom:"",title_size:"small"},null,8,["title"]),n(Ce,null,{default:d(()=>[o("div",XG,[n(hl,{modelValue:e.product.gallery,"onUpdate:modelValue":a[0]||(a[0]=l=>e.product.gallery=l),compact:!1,title:t.$t("Product Gallery"),onChange:a[1]||(a[1]=l=>e.productEditModel.updateMedia("gallery",l))},null,8,["modelValue","title"])])]),_:1})]),_:1})]))}},JG={class:"fct-term-input-item"},ZG={class:"el-tag__content"},ej=["innerHTML"],tj=["innerHTML"],aj={class:"pt-1.5 text-right"},lj={class:"relative w-3 h-3"},sj={class:"fct-term-add-input-wrap"},nj={__name:"TermInput",props:{modelValue:Array,taxonomy:Object,product_id:Number},emits:["update:modelValue","onChanged"],setup(e,{emit:t}){zt().ctx;const a=e,l=t,s=T([]),i=T(!1),c=T(),p=T(""),m=T([]),_=T(""),g=T(!1);Ie(()=>{s.value=a.modelValue,m.value=a.taxonomy.terms,be(()=>a.taxonomy.terms,(Q,U)=>{m.value=Q}),be(()=>a.modelValue,(Q,U)=>{g.value=!0,s.value=Q})});const y=Q=>{Q.stopPropagation(),Q.preventDefault(),k()},v=()=>{g.value&&ce.post("products/sync-taxonomy-term/"+a.product_id,{taxonomy:a.taxonomy.name,terms:s.value}).then(Q=>{Y.success(Q.message),l("update:modelValue",s.value)}).catch(Q=>{var U;Q.status_code=="422"?Y.validationErrors(Q):Y.error((U=Q.data)==null?void 0:U.message)}).finally(()=>{g.value=!1})},w=ld.debounce(Q=>{b(Q)},1200),C=()=>{l("update:modelValue",s.value)},b=Q=>{g.value=!1,ce.post("products/delete-taxonomy-term/"+a.product_id,{taxonomy:a.taxonomy.name,term:Q}).then(U=>{Xs(U.message),l("update:modelValue",s.value)}).catch(U=>{var V;U.status_code=="422"?Y.validationErrors(U):Y.error((V=U.data)==null?void 0:V.message)}).finally(()=>{g.value=!1})};[...s.value];const k=()=>{g.value=!0,ce.post("products/add-product-terms",{term:{name:p.value,taxonomy:a.taxonomy.name,parent:_.value}}).then(Q=>{i.value=!1,p.value="",Q.term_ids.forEach(function(U,V){m.value.push({value:U,label:Q.names[V]}),s.value.push(U)}),v()}).catch(Q=>{})},F=()=>{i.value=!i.value,i.value&&xe(()=>{c.value.focus()})},M={categories:"Category",types:"Type"};N(()=>{let Q=a.taxonomy.label.replace(/product\s*/i,"").trim();return Object.keys(M).forEach(U=>{Q.toLowerCase().includes(U)&&(Q=Q.replace(new RegExp(U,"i"),M[U]))}),Q});const E=Q=>{const U=s.value.indexOf(Q);U>-1&&s.value.splice(U,1),g.value=!1,w(Q)},S=Q=>{const U=V=>{for(const D of V){if(D.value==Q)return D.label;if(D.children&&D.children.length>0){const I=U(D.children);if(I)return I}}return null};return U(m.value)};return(Q,U)=>{const V=B("el-tag"),D=B("el-tree-select"),I=B("el-button"),O=B("el-input");return r(),h("div",JG,[n(D,{modelValue:s.value,"onUpdate:modelValue":U[0]||(U[0]=L=>s.value=L),data:m.value,multiple:"","render-after-expand":!1,"show-checkbox":"","check-strictly":"","check-on-click-node":"",onCheck:U[1]||(U[1]=()=>{g.value=!0}),onBlur:v,onChange:C,onRemoveTag:U[2]||(U[2]=L=>{g.value=!1,A(w)(L)})},{tag:d(()=>[(r(!0),h(H,null,ae(s.value,(L,P)=>(r(),$(V,{key:P,closable:"",onClose:G=>E(L)},{default:d(()=>[o("span",ZG,[o("span",{class:"el-select__tags-text",innerHTML:S(L)},null,8,ej)])]),_:2},1032,["onClose"]))),128))]),default:d(({data:L})=>[o("span",{innerHTML:L.label},null,8,tj)]),_:1},8,["modelValue","data"]),o("div",aj,[n(I,{text:"",onClick:F,size:"small"},{default:d(()=>[o("span",lj,[n(va,{visible:i.value,fade:""},{default:d(()=>[n(J,{name:"Cross",class:"absolute justify-center inset-0 w-full he-full"})]),_:1},8,["visible"]),n(va,{visible:!i.value,fade:""},{default:d(()=>[n(J,{name:"Plus",class:"absolute justify-center inset-0 w-full he-full"})]),_:1},8,["visible"])]),R(" "+f(A(u)("Add %s",a.taxonomy.labels.singular_name)),1)]),_:1})]),n(va,{visible:i.value,accordion:""},{default:d(()=>[o("div",sj,[n(O,{modelValue:p.value,"onUpdate:modelValue":U[3]||(U[3]=L=>p.value=L),ref_key:"inputRef",ref:c,onKeydown:xa(y,["enter"])},null,8,["modelValue"]),n(I,{type:"info",plain:"",onClick:k,class:"el-button--x-small"},{default:d(()=>[R(f(A(u)("Add")),1)]),_:1})])]),_:1},8,["visible"])])}}},oj={class:"fct-product-simple-wrap"},ij={__name:"ProductTermTaxonomy",props:{product:Object,productEditModel:Object},setup(e){return(t,a)=>(r(),h("div",oj,[n(ke,null,{default:d(()=>[n(Qe,{title:t.$t("Product Taxonomies"),border_bottom:"",title_size:"small"},null,8,["title"]),n(Ce,null,{default:d(()=>[(r(!0),h(H,null,ae(e.product.taxonomies,l=>(r(),h("div",{class:"fct-admin-summary-item",key:l.id},[o("h4",null,f(l.labels.name),1),n(nj,{product_id:e.product.ID,taxonomy:l,modelValue:e.product.product_terms[l.name],"onUpdate:modelValue":s=>e.product.product_terms[l.name]=s},null,8,["product_id","taxonomy","modelValue","onUpdate:modelValue"])]))),128))]),_:1})]),_:1})]))}};class rj extends nl{constructor(){super(...arguments);Re(this,"data",{downloadableFiles:{},sourceProduct:null,addModal:{files:[],isModalOpen:!1},editModal:{file:{},isCurrentlyEditing:!1,states:{},currentIndex:-1},validationErrors:{},saving:!1});Re(this,"generateDownloadableVariationName",(a,l)=>{if(!a)return u("For all variants");let s=[];if(typeof a=="string")try{s=JSON.parse(a)}catch{}else typeof a=="object"&&(s=Object.values(a));if(s.length===0)return u("For all variants");const i=Oo(l),c=l.variants.reduce((m,_)=>(m[_.id]=Qn(_,i),m),{}),p=s.map(m=>c[m]).filter(Boolean);return p.length===0?"--":p.length===1?p[0]:`${p[0]} +${p.length-1}`});Re(this,"deleteDownloadableFile",(a,l)=>{Fn.ofDelete(u("Deleting this asset will break the download link in existing purchase emails. To update the file, edit the asset instead of deleting it.")).then(()=>{ce.delete(`products/${a}/delete`).then(()=>{Y.success(u("Downloadable File Deleted Successfully")),this.downloadableFiles.splice(l,1)}).catch(s=>{Y.error(u("Failed To Delete"))})}).catch(()=>{})});Re(this,"addDummyDownloadableFileForAllVariant",a=>{this.data.addModal.files=this.data.addModal.files.filter(l=>Object.values(l).every(s=>s!=null&&s!=="")),Object.values(this.generateVariantOptions(a)).forEach(l=>{l.id>0&&this.addDummyInsertableFile(l.id)})});Re(this,"deleteInsertableFile",a=>{this.insertableFiles.splice(a,1)});Re(this,"clearInsertableFile",()=>{this.data.addModal.files=[]});Re(this,"attachInsertableFiles",a=>{this.setSaving(!0),ce.post(`products/${a}/sync-downloadable-files`,{downloadable_files:this.insertableFiles}).then(l=>{this.setDownloadableFiles(l.downloadable_files),this.syncToSourceProduct(),this.closeAddModal(),Y.success(u("Variations Synced Successfully"))}).catch(l=>{this.setSaving(!1),l.status_code=="422"?this.setValidationError(l.data):Y.error(u("Please fill up all the fields"))}).finally(()=>{this.setSaving(!1)})});Re(this,"openAddModal",()=>{this.data.addModal.isModalOpen=!0});Re(this,"closeAddModal",()=>{this.data.addModal.isModalOpen=!1,this.resetValidationError()});Re(this,"openEditModal",(a,l)=>{this.data.editModal.isCurrentlyEditing=!0,this.data.editModal.states[a].visible=!0,this.data.editModal.states[a].file=l,this.data.editModal.currentIndex=a});Re(this,"closeEditModal",a=>{this.data.editModal.isCurrentlyEditing=!1,this.data.editModal.states[a].visible=!1,this.data.editModal.states[a].file=null,this.data.editModal.currentIndex=-1,this.resetValidationError()});Re(this,"isEditModalOpen",()=>this.data.editModal.isCurrentlyEditing===!0);Re(this,"setValidationError",a=>{this.data.validationErrors=a});Re(this,"hasValidationError",a=>this.data.validationErrors.hasOwnProperty(a));Re(this,"clearValidationError",()=>{this.data.validationErrors={}});Re(this,"deleteValidationError",a=>{this.data.validationErrors.hasOwnProperty(a)&&delete this.data.validationErrors[a]})}setDownloadableFiles(a,l=null){a=a.map(s=>{if(typeof s.settings=="string")try{s.settings=JSON.parse(s.settings)}catch{}return s}),this.data.downloadableFiles=a,l&&(this.data.sourceProduct=l)}syncToSourceProduct(){this.data.sourceProduct&&Array.isArray(this.data.downloadableFiles)&&(this.data.sourceProduct.downloadable_files=[...this.data.downloadableFiles])}get downloadableFiles(){return this.data.downloadableFiles}get saving(){return this.data.saving}setSaving(a){this.data.saving=a}hasDownloadableFiles(){return Array.isArray(this.data.downloadableFiles)&&this.data.downloadableFiles.length>0}getHiddenVariationNames(a,l){if(!a)return[];let s=[];if(typeof a=="string")try{s=JSON.parse(a)}catch{return[]}else typeof a=="object"&&(s=Object.values(a));const i=Oo(l),c=l.variants.reduce((m,_)=>(m[_.id]=Qn(_,i),m),{});return s.map(m=>c[m]).filter(Boolean).slice(1)}generateVariantOptions(a){return[...a.variants.filter(s=>s.created_at)]}hasVariationOption(a){return Object.values(this.generateVariantOptions(a)).length>0}get downloadableFileSchema(){return{product_variation_id:[],title:"",type:"",driver:"",file_name:"",file_path:"",file_url:"",file_size:"",settings:{download_limit:"",download_expiry:"",bucket:""},serial:""}}setInsertableFiles(a){this.data.addModal.files=a}get insertableFiles(){return this.data.addModal.files}addDummyInsertableFile(a=null){const l=this.downloadableFileSchema;a&&(l.product_variation_id=[a]),this.data.addModal.files.push(l)}getCurrentEditableIndex(){return this.data.editModal.currentIndex}getCurrentEditableFile(){var a;return((a=this.data.editModal.states[this.getCurrentEditableIndex()])==null?void 0:a.file)??null}updateDownloadableFile(){const a=this.getCurrentEditableFile(),l=this.getCurrentEditableIndex();!a||l<0||(this.setSaving(!0),ce.put("products/"+a.id+"/update",a).then(s=>{this.closeEditModal(l),Y.success(s.message),this.downloadableFiles[l]={...a},this.syncToSourceProduct()}).catch(s=>{s.hasOwnProperty("message")?Y.error(s.message):Y.error(u("Failed To Update"))}).finally(()=>{this.setSaving(!1)}))}resetValidationError(){this.data.validationErrors={}}isAddModalOpen(){return this.data.addModal.isModalOpen}}function dj(){return rj.init()}const uj={class:"fct-product-simple-wrap"},cj={class:"flex items-center gap-1 justify-between w-full"},Aj={class:"fct-shipping-class-select-wrap relative"},pj={class:"fct-select-option-with-leftright-value"},fj={class:"text-sm text-gray-500"},mj={class:"pt-1.5 text-right"},hj={key:0},_j={class:"mb-0 mt-2"},vj={__name:"ShippingClass",props:{product:Object,productEditModel:Object},setup(e){const t=e,a=T(rt.get(t,"product.detail.other_info.shipping_class")),l=T(),s=T(!1),i=T(!1),c=T([]),p=je.get("admin_url")+"settings/shipping/shipping_classes",m=(C="")=>{i.value=!0,c.value=[],ce.get("shipping/classes",{search:C}).then(b=>{c.value=b.shipping_classes.data,g()}).finally(()=>{i.value=!1})},_=C=>{m(),C.id&&(a.value=C.id,t.productEditModel.onChangeInputField("shipping_class",a.value))},g=()=>{const C=rt.where(c.value,"id",a.value);l.value=rt.get(C,"0")},y=()=>{s.value=!0},v=()=>{a.value&&ce.post("products/"+t.product.ID+"/shipping-class",{shipping_class:a.value}).then(C=>{Y.success(C.message)}).catch(C=>{var b;C.status_code=="422"?Y.validationErrors(C):Y.error((b=C.data)==null?void 0:b.message)})},w=()=>{ce.post("products/"+t.product.ID+"/shipping-class/remove").then(C=>{Y.success(C.message)}).catch(C=>{var b;C.status_code=="422"?Y.validationErrors(C):Y.error((b=C.data)==null?void 0:b.message)})};return Ie(()=>{m()}),(C,b)=>{const k=B("el-option"),F=B("el-select"),M=B("el-button");return r(),h("div",uj,[n(ke,null,{default:d(()=>[n(Qe,{border_bottom:""},{default:d(()=>[o("div",cj,[n(pa,{title:A(u)("Shipping Class"),content:A(u)("Use a shipping class to group products with similar shipping requirements. This allows you to set specific shipping rates for different types of items, such as 'Bulky Items', 'Fragile Goods'. Select an existing class from the search box or click + Add to create a new one. If no class is assigned, the product will use your store's default shipping rates.")},null,8,["title","content"]),o("a",{href:p,class:"focus:outline-none focus:shadow-none w-4 h-4 inline-flex items-center justify-center",target:"_blank"},[n(J,{name:"Redirect",class:"w-3 h-3 text-primary-500 dark:text-gray-200"})])])]),_:1}),n(Ce,null,{default:d(()=>[o("div",Aj,[n(F,{modelValue:a.value,"onUpdate:modelValue":b[0]||(b[0]=E=>a.value=E),remote:"",placeholder:A(u)("Search Shipping Class"),"remote-method":m,loading:i.value,filterable:"",clearable:"",onChange:v,onClear:w,"popper-class":"fct-shipping-class-select"},{default:d(()=>[(r(!0),h(H,null,ae(c.value,E=>(r(),$(k,{key:E.id,label:E.name,value:E.id},{default:d(()=>[o("div",pj,[R(f(E.name)+" ",1),o("span",fj,f(E.type==="percentage"?E.cost+"%":A(et).formatNumber(E.cost*100,!0)),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),o("div",mj,[n(M,{onClick:Ne(y,["stop"]),size:"small",text:""},{default:d(()=>[n(J,{name:"Plus",class:"w-3 h-3"}),R(" "+f(A(u)("Add Shipping Class")),1)]),_:1})])]),l.value?(r(),h("div",hj,[o("p",_j,f(A(u)("Cost: %s",l.value.type==="percentage"?l.value.cost+"%":A(et).formatNumber(l.value.cost*100,!0))),1)])):x("",!0)]),_:1})]),_:1}),n(Jf,{modelValue:s.value,"onUpdate:modelValue":b[1]||(b[1]=E=>s.value=E),onSaved:_},null,8,["modelValue"])])}}},gj={key:0,class:"fct-product-inventory-wrap"},yj={class:"fct-product-inventory-inner-wrap hide-on-mobile"},bj={class:"space-x-5"},wj={key:0,class:"fct-variant-badge bg-white border border-solid border-gray-outline text-primary-500 rounded-xs dark:bg-primary-700 dark:text-gray-50 dark:border-primary-500"},Cj={key:1},Bj={class:"fct-card-header-title"},kj={class:"fct-product-inventory-pro-text"},xj={class:"m-0"},Sj={__name:"ProductBundleSelector",props:{product:Object,productEditModel:Object},emits:["update:modelValue"],setup(e,{emit:t}){const a=e,l=je.get("app_config.isProActive"),s=T([]);Ie(()=>{a.productEditModel.addOnProductUpdatedListener("bundle",function(){p()}),p()});const i=(m,_)=>{ce.post(`products/save-bundle-info/${m}`,{bundle_child_ids:_}).then(g=>{Y.success(u("Bundle info saved successfully"))}).catch(g=>{(g==null?void 0:g.status_code)=="422"?Y.validationErrors(g):Y.error(g==null?void 0:g.message)})},c=T(!0),p=()=>{c.value=!0,ce.get(`products/get-bundle-info/${a.product.ID}`).then(m=>{s.value=m,c.value=!1})};return(m,_)=>{const g=B("el-table-column"),y=B("el-table");return A(l)?(r(),h("div",gj,[n(ke,{class:"overflow-hidden"},{default:d(()=>[n(Qe,{title:A(u)("Map bundle items")},null,8,["title"]),n(va,{visible:!0,accordion:""},{default:d(()=>[n(Ce,{class:"px-0 pb-0"},{default:d(()=>[o("div",yj,[c.value?x("",!0):(r(),$(y,{key:0,data:s.value},{default:d(()=>[e.product.detail.variation_type!=="simple"?(r(),$(g,{key:0,label:A(u)("Title"),width:"140"},{default:d(v=>{var w;return[o("div",bj,[o("span",null,f(v.row.variation_title),1),((w=v.row.other_info)==null?void 0:w.payment_type)==="subscription"?(r(),h("span",wj,f(v.row.other_info.repeat_interval),1)):x("",!0)])]}),_:1},8,["label"])):x("",!0),n(g,{label:A(u)("Bundle Items"),width:"140"},{default:d(v=>[n(Kc,{modelValue:v.row.bundle_child_ids,"onUpdate:modelValue":w=>v.row.bundle_child_ids=w,is_multiple:!0,popoverClass:"fct-create-new-order-bump-modal-popover",onVisibleChange:w=>{w||i(v.row.id,v.row.bundle_child_ids)},scopes:["nonBundle"]},null,8,["modelValue","onUpdate:modelValue","onVisibleChange"])]),_:1},8,["label"])]),_:1},8,["data"]))])]),_:1})]),_:1})]),_:1})])):(r(),h("div",Cj,[n(ke,null,{default:d(()=>[n(Qe,{border_bottom:""},{title:d(()=>[o("h2",Bj,[R(f(A(u)("Map bundle items"))+" ",1),n(J,{name:"Crown",class:"w-4 h-4 text-warning-500"})])]),_:1}),n(Ce,null,{default:d(()=>[o("div",kj,[o("p",xj,f(A(u)("This feature is only available for pro version.")),1)])]),_:1})]),_:1})]))}}},Fj={class:"fct-edit-product-wrapper fct-layout-width"},$j={class:"fct-btn-group sm"},Ej={class:"hide-on-mobile"},Uj={class:"show-on-mobile"},Ij=["href"],Qj={key:1,class:"single-page-body"},Dj=["innerHTML"],Vj={class:"fct-product-edit"},Tj={class:"fct-product-main"},Mj={class:"fct-show-on-tablet fct-product-publish-and-media-widgets el-form el-form--default el-form--label-top"},Lj={class:"fct-product-aside"},Rj={class:"el-form el-form--default el-form--label-top"},Oj={key:1},Hj={__name:"EditProduct",props:{product:Object,product_id:String,taxonomies:Object},setup(e){const t=e,a=T(),l=yM();let s=null;const i=dj();l.setProductDownloadableModel(i);const c=T(!1),p=w=>{var C,b;c.value=!1,l.setProduct(w),s=l.data.product,i.setDownloadableFiles(w.downloadable_files,w),s.gallery=((b=(C=s==null?void 0:s.detail)==null?void 0:C.gallery_image)==null?void 0:b.meta_value)??[],s.taxonomies=t.taxonomies,s.product_terms={},Object.keys(s.taxonomies).map(k=>{s.product_terms[k]=s[k]??[]}),l.saveSnapshot(),c.value=!0};bM().onSave(()=>{var w;l.data.metaValue=(w=a.value)==null?void 0:w.getFormStates(),l.update()});const _=ps();_.bind(["mod+s"],w=>{var C;w.preventDefault(),l.data.hasChange&&(i.isAddModalOpen()?i.attachInsertableFiles(t.product.ID):i.isEditModalOpen()?i.updateDownloadableFile():(l.data.metaValue=(C=a.value)==null?void 0:C.getFormStates(),l.update()))});const g=()=>{l.setHasChange(!0)},y=w=>{w==="delete"&&l.delete()};jr("triggerChange",g);const v=Gr("reload");return be(()=>t.product,(w,C)=>{w!==C&&p(w)}),Ie(()=>{p(t.product),l.setReloader(v);const w=document.querySelector(".fct-admin-product-header");w&&document.querySelector("#fluent_cart_plugin_app").prepend(w),l.addOnProductUpdatedListener("formreset",function(){var C;(C=a.value)==null||C.resetForms()})}),Fc(()=>{_.unbind("mod+s")}),(w,C)=>{const b=B("el-button"),k=B("el-dropdown-item"),F=B("el-dropdown-menu"),M=B("el-dropdown");return r(),h("div",Fj,[(r(),$(Xo,{to:"#fct-admin-product-header-buttons"},[o("div",$j,[n(M,{trigger:"click",class:"fct-more-option-wrap","popper-class":"fct-dropdown",onCommand:y},{dropdown:d(()=>[n(F,null,{default:d(()=>[n(k,{command:"preview",class:"item-link"},{default:d(()=>[o("a",{href:A(l).viewUrl(),target:"_blank"},[n(J,{name:"Eye"}),R(" "+f(A(u)("Preview")),1)],8,Ij)]),_:1}),n(k,{command:"delete",class:"item-destructive"},{default:d(()=>[n(J,{name:"Delete"}),R(" "+f(A(u)("Delete")),1)]),_:1})]),_:1})]),default:d(()=>[n(b,null,{default:d(()=>[o("span",Ej,[R(f(A(u)("More Actions"))+" ",1),n(J,{name:"ChevronDown"})]),o("span",Uj,[n(J,{name:"More"})])]),_:1})]),_:1})])])),c.value?(r(),$(an,{key:0,isActive:A(l).data.hasChange?"is-active":"",loading:A(l).data.saving,onDiscard:A(l).discard,onSave:C[0]||(C[0]=()=>{var E;A(l).data.metaValue=(E=a.value)==null?void 0:E.getFormStates(),A(l).update()}),saveButtonText:A(u)("Update"),"show-cmnd-icon":!0},null,8,["isActive","loading","onDiscard","saveButtonText"])):x("",!0),c.value?(r(),h("div",Qj,[A(l).shouldShowShippingMethodAlert()?(r(),$(Ja,{key:0,class:"mb-3",type:"warning",icon:"InformationFill"},{default:d(()=>[o("span",{innerHTML:A(u)("This Product has physical variants. Please %s",''+A(u)("Add Shipping")+"")},null,8,Dj)]),_:1})):x("",!0),A(l).isInDraft()?(r(),$(Ja,{key:1,class:"mb-3",type:"warning",icon:"InformationFill",content:A(u)("This product is currently in draft and cannot be sold to customers. Please publish the product to make it available for purchase.")},null,8,["content"])):x("",!0),o("div",Vj,[o("div",Tj,[n(NM,{product:A(s),productEditModel:A(l),reload:A(v)},null,8,["product","productEditModel","reload"]),o("div",Mj,[(r(),$(tc,{key:A(l).data.discardKey,product:A(s),productEditModel:A(l)},null,8,["product","productEditModel"])),n(ac,{product:A(s),productEditModel:A(l)},null,8,["product","productEditModel"])]),n(TK,{product:A(s),productEditModel:A(l),productDownloadableModel:A(i)},null,8,["product","productEditModel","productDownloadableModel"]),n(WK,{product:A(s),productEditModel:A(l)},null,8,["product","productEditModel"]),A(l).isBundleProduct()?(r(),$(Sj,{key:0,product:A(s),productEditModel:A(l)},null,8,["product","productEditModel"])):x("",!0),A(l).isBundleProduct()?x("",!0):(r(),$(yG,{key:1,product:A(s),productEditModel:A(l),productDownloadableModel:A(i)},null,8,["product","productEditModel","productDownloadableModel"]))]),o("div",Lj,[o("div",Rj,[(r(),$(tc,{class:"fct-hide-on-tablet",key:"aside-"+A(l).data.discardKey,product:A(s),productEditModel:A(l)},null,8,["product","productEditModel"])),n(ac,{class:"fct-hide-on-tablet",product:A(s),productEditModel:A(l)},null,8,["product","productEditModel"]),n(ij,{product:A(s),productEditModel:A(l)},null,8,["product","productEditModel"]),A(l).hasPhysicalVariation()?(r(),$(vj,{key:0,product:A(s),productEditModel:A(l)},null,8,["product","productEditModel"])):x("",!0),A(s)?(r(),h("div",Oj,[n(nn,{ref_key:"dynamicTemplates",ref:a,filter:"single_product_page","widgets-query":{product_id:A(s).ID},data:{editableProduct:A(s)}},null,8,["widgets-query","data"])])):x("",!0)])])])])):x("",!0)])}}},Pj={class:"fct-upgrade-path-drawer-content"},Nj={class:"fct-form-group"},Kj={class:"fct-form-group"},Gj={class:"fct-form-group"},jj={class:"fct-form-group"},zj={__name:"AddModal",props:{pathOptions:Object,allVariants:Object,existingUpgradePathMap:Object,productId:{type:[Number,String]}},emits:["pathGenerated"],setup(e,{expose:t,emit:a}){const l=e,s=a,i=T(!1),c=()=>{i.value=!0},p={from_variant:"",to_variants:[],is_prorate:"0",discount_amount:"0"},m=T({...p}),_=T({}),g=je.get("shop.currency_sign"),y=()=>{_.value={};const C={...m.value};(!Array.isArray(C.to_variants)||C.to_variants.length===0)&&(C.to_variants=[]),ce.post(`products/${l.productId}/upgrade-path`,{...C}).then(b=>{Y.success(b.message),m.value={...p},i.value=!1,s("pathGenerated")}).catch(b=>{if(_.value=b,b.message)return Y.error(b.message)})},v=()=>m.value.from_variant?l.allVariants.filter(C=>{var b,k;return!((b=l.existingUpgradePathMap[m.value.from_variant])!=null&&b.includes(C.id)||(k=l.existingUpgradePathMap[m.value.from_variant])!=null&&k.includes(C.id.toString()))&&C.id!==m.value.from_variant}):[],w=C=>{let b=C==null?void 0:C.toString().replace(/^0+(?=\d)/,"");b===""&&(b="0"),parseInt(b)<0&&(b="0"),m.value.discount_amount=b};return t({openModal:c}),(C,b)=>{const k=B("el-option"),F=B("el-select"),M=B("el-checkbox"),E=B("el-input"),S=B("el-button"),Q=B("el-drawer");return r(),$(Q,{title:A(u)("Add Upgrade Path"),modelValue:i.value,"onUpdate:modelValue":b[5]||(b[5]=U=>i.value=U),onClosed:b[6]||(b[6]=()=>{i.value=!1,m.value={...p}}),"append-to-body":"",class:ie(A(Ve).isAdminBarEnabled()?"admin-bar-enable":""),"close-on-click-modal":!1},{footer:d(()=>[n(S,{onClick:b[4]||(b[4]=U=>i.value=!1)},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1}),n(S,{onClick:y,type:"primary"},{default:d(()=>[R(f(A(u)("Save")),1)]),_:1})]),default:d(()=>[o("div",Pj,[o("div",Nj,[o("label",null,f(A(u)("From Plan")),1),n(F,{modelValue:m.value.from_variant,"onUpdate:modelValue":b[0]||(b[0]=U=>m.value.from_variant=U),placeholder:A(u)("Select"),"popper-class":"fct-variation-select"},{default:d(()=>[(r(!0),h(H,null,ae(e.pathOptions,U=>(r(),$(k,{key:U.id,label:U.variation_title,value:U.id,disabled:m.value.to_variants.includes(U.id)},{default:d(()=>[n(Ho,{variant:U},null,8,["variant"])]),_:2},1032,["label","value","disabled"]))),128))]),_:1},8,["modelValue","placeholder"]),_.value.hasOwnProperty("from_variant")?(r(),$(oa,{key:0,"validation-errors":_.value,"field-key":"from_variant"},null,8,["validation-errors"])):x("",!0)]),o("div",Kj,[o("label",null,f(A(u)("To Plan(s)")),1),n(F,{disabled:!m.value.from_variant,modelValue:m.value.to_variants,"onUpdate:modelValue":b[1]||(b[1]=U=>m.value.to_variants=U),multiple:"",placeholder:A(u)("Select"),clearable:"","popper-class":"fct-variation-select"},{default:d(()=>[(r(!0),h(H,null,ae(v(),U=>(r(),$(k,{key:U.id,label:U.variation_title,value:U.id,disabled:U.id==m.value.from_variant},{default:d(()=>[n(Ho,{variant:U},null,8,["variant"])]),_:2},1032,["label","value","disabled"]))),128))]),_:1},8,["disabled","modelValue","placeholder"]),_.value.hasOwnProperty("to_variants")?(r(),$(oa,{key:0,"validation-errors":_.value,"field-key":"to_variants"},null,8,["validation-errors"])):x("",!0)]),o("div",Gj,[n(M,{"true-value":"1","false-value":"0",modelValue:m.value.is_prorate,"onUpdate:modelValue":b[2]||(b[2]=U=>m.value.is_prorate=U)},{default:d(()=>[R(f(A(u)("Prorate")),1)]),_:1},8,["modelValue"])]),o("div",jj,[o("label",null,f(A(u)("Discount Amount")),1),n(E,{modelValue:m.value.discount_amount,"onUpdate:modelValue":b[3]||(b[3]=U=>m.value.discount_amount=U),type:"number",min:0,onInput:w},{prepend:d(()=>[R(f(A(g)),1)]),_:1},8,["modelValue"]),_.value.hasOwnProperty("discount_amount")?(r(),$(oa,{key:0,"validation-errors":_.value,"field-key":"discount_amount"},null,8,["validation-errors"])):x("",!0)])])]),_:1},8,["title","modelValue","class"])}}},qj={class:"fct-upgrade-path-drawer-content"},Yj={class:"fct-form-group"},Wj={class:"text"},Xj={class:"fct-form-group"},Jj={class:"fct-form-group"},Zj={class:"fct-form-group"},lc={__name:"EditModal",props:{fromName:String,preSelectedFromVariant:{type:[String,Number]},preSelectedToVariants:{type:Array},preSelectedIsProrate:{type:[String,Number]},preSelectedDiscountAmount:{type:[String,Number]},pathOptions:Object,allVariants:Object,existingUpgradePathMap:Object,pathId:{type:[Number,String]}},emits:["pathGenerated"],setup(e,{emit:t}){const a=e,l=T({...a.existingUpgradePathMap}),s=t,i=T(!1),c={from_variant:"",to_variants:[],is_prorate:"0",discount_amount:"0"},p=T({...c}),m=T({}),_=()=>{m.value={};const w={...p.value};(!Array.isArray(w.to_variants)||w.to_variants.length===0)&&(w.to_variants=[]),ce.post(`products/upgrade-path/${a.pathId}/update`,{...w}).then(C=>{Y.success(C.message),p.value={...c},i.value=!1,s("pathGenerated")}).catch(C=>{if(m.value=C,C.message)return Y.error(C.message)})},g=()=>p.value.from_variant?a.allVariants.filter(w=>{var C,b;return!((C=l[p.value.from_variant])!=null&&C.includes(w.id)||(b=l[p.value.from_variant])!=null&&b.includes(w.id.toString()))&&w.id.toString()!==p.value.from_variant.toString()}):[],y=()=>{p.value.from_variant=a.preSelectedFromVariant,p.value.is_prorate=a.preSelectedIsProrate,p.value.discount_amount=a.preSelectedDiscountAmount,p.value.to_variants=[];for(const w of a.preSelectedToVariants)p.value.to_variants.push(parseInt(w))},v=w=>{let C=w==null?void 0:w.toString().replace(/^0+(?=\d)/,"");C===""&&(C="0"),parseInt(C)<0&&(C="0"),p.value.discount_amount=C};return Ss(()=>{y()}),(w,C)=>{const b=B("el-option"),k=B("el-select"),F=B("el-checkbox"),M=B("el-input"),E=B("el-button"),S=B("el-drawer");return r(),h(H,null,[n(Ze,{size:"x-small",tag:"button",onClick:C[0]||(C[0]=()=>{i.value=!0})},{default:d(()=>[n(J,{name:"Edit"})]),_:1}),n(S,{modelValue:i.value,"onUpdate:modelValue":C[5]||(C[5]=Q=>i.value=Q),title:w.$t("Update Upgrade Path"),onClosed:C[6]||(C[6]=()=>{i.value=!1,p.value={...c}}),onOpen:y,"append-to-body":""},{footer:d(()=>[n(E,{onClick:C[4]||(C[4]=Q=>i.value=!1),size:"small"},{default:d(()=>[R(f(w.$t("Cancel")),1)]),_:1}),n(E,{onClick:_,size:"small",type:"primary"},{default:d(()=>[R(f(w.$t("Update")),1)]),_:1})]),default:d(()=>[o("div",qj,[o("div",Yj,[o("label",null,f(w.$t("From Plan")),1),o("div",Wj,f(e.fromName),1)]),o("div",Xj,[o("label",null,f(w.$t("To Plan(s)")),1),n(k,{disabled:!p.value.from_variant,modelValue:p.value.to_variants,"onUpdate:modelValue":C[1]||(C[1]=Q=>p.value.to_variants=Q),multiple:"",placeholder:w.$t("Select"),clearable:""},{default:d(()=>[(r(!0),h(H,null,ae(g(),Q=>(r(),$(b,{key:Q.id,label:Q.variation_title,value:Q.id,disabled:Q.id==p.value.from_variant},null,8,["label","value","disabled"]))),128))]),_:1},8,["disabled","modelValue","placeholder"]),m.value.hasOwnProperty("to_variants")?(r(),$(oa,{key:0,"validation-errors":m.value,"field-key":"to_variants"},null,8,["validation-errors"])):x("",!0)]),o("div",Jj,[n(F,{class:"m-2","true-value":"1","false-value":"0",modelValue:p.value.is_prorate,"onUpdate:modelValue":C[2]||(C[2]=Q=>p.value.is_prorate=Q)},{default:d(()=>[n(pa,{class:"flex items-center",title:w.$t("Prorate"),content:`The prorated amount, based on the remaining days, will be credited to the new plan. Upgrading from one-time payment, the full amount will be credited.
`},null,8,["title"])]),_:1},8,["modelValue"])]),o("div",Zj,[o("label",null,f(w.$t("Discount Amount")),1),n(M,{modelValue:p.value.discount_amount,"onUpdate:modelValue":C[3]||(C[3]=Q=>p.value.discount_amount=Q),type:"number",min:"0",onInput:v},null,8,["modelValue"]),m.value.hasOwnProperty("discount_amount")?(r(),$(oa,{key:0,"validation-errors":m.value,"field-key":"discount_amount"},null,8,["validation-errors"])):x("",!0)])])]),_:1},8,["modelValue","title"])],64)}}},ez={__name:"UpgradePathsLoader",setup(e){return(t,a)=>{const l=B("el-skeleton-item"),s=B("el-skeleton"),i=B("el-table-column"),c=B("el-table");return r(),$(c,{data:[1,2,3,4,5]},{default:d(()=>[n(i,{label:A(u)("From Plan"),prop:"object_id",width:300},{default:d(()=>[n(s,{animated:"",class:"flex items-center min-h-[28px]"},{template:d(()=>[n(l,{varient:"p",class:"w-4/5"})]),_:1})]),_:1},8,["label"]),n(i,{label:A(u)("To Plan"),width:200},{default:d(()=>[n(s,{animated:"",class:"flex items-center min-h-[28px]"},{template:d(()=>[n(l,{varient:"p",class:"w-4/5"})]),_:1})]),_:1},8,["label"]),n(i,{label:A(u)("Discount Amount"),width:110},{default:d(()=>[n(s,{animated:"",class:"flex items-center min-h-[28px]"},{template:d(()=>[n(l,{varient:"p",class:"w-4/5"})]),_:1})]),_:1},8,["label"]),n(i,{label:A(u)("Is Prorate"),width:100},{default:d(()=>[n(s,{animated:"",class:"flex items-center min-h-[28px]"},{template:d(()=>[n(l,{varient:"p",class:"w-4/5"})]),_:1})]),_:1},8,["label"]),n(i,{width:100},{default:d(()=>[n(s,{animated:"",class:"flex items-center min-h-[28px]"},{template:d(()=>[n(l,{varient:"p",class:"w-3/5"})]),_:1})]),_:1})]),_:1})}}},tz={class:"fct-upgrade-paths-wrap fct-layout-width"},az={class:"grid gap-1"},lz={class:"text-system-dark dark:text-gray-50"},sz={class:"text-xs text-system-mid dark:text-gray-300"},nz={class:"flex gap-1 flex-wrap"},oz={key:0},iz={key:1},rz={class:"fct-btn-group sm"},dz={key:2,class:"fct-upgrade-paths-mobile"},uz={class:"from-plan"},cz={class:"title"},Az={class:"plan-title"},pz={key:0,class:"plan-billing-summary"},fz={class:"to-plan"},mz={class:"title"},hz={class:"discount-amount"},_z={class:"title"},vz={key:0},gz={key:1},yz={class:"is-prorate"},bz={class:"title"},wz={class:"path-actions"},Cz={class:"title"},Bz={class:"fct-btn-group sm mt-3"},kz={key:0,class:"py-6 text-center"},xz={key:1},Sz={key:1,class:"border border-solid border-gray-divider mt-5 pt-5 border-x-0 border-b-0 dark:border-dark-400"},Fz={key:2,class:"border border-solid border-gray-divider mt-5 border-x-0 border-b-0 dark:border-dark-400"},$z={__name:"UpgradePaths",props:{product:{type:Object,required:!0},product_id:{type:[String,Number],required:!0}},setup(e){const t=e,a=N(()=>rt.get(t.product,"detail.other_info.is_bundle_product")==="yes"),l=T(!1),s=T(null);T([]),T({status:"yes",paths:{}});const i=je.get("app_config.isProActive"),c=T([]),p=N(()=>t.product.variants.filter(k=>{var M;return(((M=w.value[k.id])==null?void 0:M.length)||0){_()},_=async()=>{l.value=!0,ce.get(`products/${t.product_id}/upgrade-paths`).then(function(k){c.value=k.data,C()}).catch(function(k){}).finally(()=>{l.value=!1})},g=T({}),y=T({}),v=T(rt.get(t.product,"variants",[]).length),w=T({}),C=()=>{t.product.variants.entries().forEach(([k,F])=>{g.value[F.id]=F.variation_title,y.value[F.id]=F.other_info.billing_summary}),w.value={},c.value.forEach(k=>{w.value.hasOwnProperty(k.object_id)?(w.value[k.object_id]=[...w.value[k.object_id].concat([...k.meta_value.to_variants])],w.value[k.object_id]=[...new Set(w.value[k.object_id])]):w.value[k.object_id]=[...k.meta_value.to_variants]})},b=k=>{ce.delete(`products/upgrade-path/${k}/delete`).then(function(F){_(),Y.success(F.message)}).catch(function(F){})};return Ie(()=>{_();const k=document.querySelector("#fct_admin_menu_holder .fct-admin-product-header");k&&document.querySelector("#fluent_cart_plugin_app").prepend(k)}),(k,F)=>{const M=B("el-table-column"),E=B("el-tag"),S=B("el-table"),Q=B("el-button");return r(),h(H,null,[o("div",tz,[n(A(ke),null,{default:d(()=>[n(A(Qe),{title:A(u)("Upgrade Paths")},null,8,["title"]),A(i)&&!a.value?(r(),h(H,{key:0},[n(A(Ce),{class:"px-0 pb-0"},{default:d(()=>[l.value?(r(),$(ez,{key:0})):x("",!0),l.value?x("",!0):(r(),$(S,{key:1,class:"hide-on-mobile",data:c.value},{empty:d(()=>[R(f(A(u)("Control available upgrade options and offer tailored discounts when moving between plans.")),1)]),default:d(()=>[n(M,{label:A(u)("From Plan"),prop:"object_id",width:300},{default:d(U=>[o("div",az,[o("div",lz,f(A(rt).get(g.value,U.row.object_id,"")),1),o("div",sz,f(A(rt).get(y.value,U.row.object_id,"")),1)])]),_:1},8,["label"]),n(M,{label:A(u)("To Plan"),width:200},{default:d(U=>[o("div",nz,[(r(!0),h(H,null,ae(A(rt).get(U.row,"meta_value.to_variants",[]),V=>(r(),h(H,{key:V},[A(rt).get(g.value,V)?(r(),$(E,{key:0},{default:d(()=>[R(f(A(rt).get(g.value,V)),1)]),_:2},1024)):x("",!0)],64))),128))])]),_:1},8,["label"]),n(M,{label:A(u)("Discount Amount"),width:110},{default:d(U=>[U.row.meta_value.discount_amount>0?(r(),h("span",oz,f(A(rt).get(U.row,"meta_value.discount_amount","0")),1)):(r(),h("span",iz,"--"))]),_:1},8,["label"]),n(M,{label:A(u)("Is Prorate"),width:100},{default:d(U=>[R(f(A(rt).get(U.row,"meta_value.is_prorate","0")==="1"?"Yes":"No"),1)]),_:1},8,["label"]),n(M,{width:100},{default:d(U=>[o("div",rz,[n(lc,{pathId:U.row.id,preSelectedToVariants:A(rt).get(U.row,"meta_value.to_variants",[]),preSelectedIsProrate:A(rt).get(U.row,"meta_value.is_prorate","0"),preSelectedDiscountAmount:A(rt).get(U.row,"meta_value.discount_amount","0"),pathOptions:p.value,"all-variants":e.product.variants,existingUpgradePathMap:w.value,fromName:A(rt).get(g.value,U.row.object_id,""),preSelectedFromVariant:U.row.object_id,onPathGenerated:m},null,8,["pathId","preSelectedToVariants","preSelectedIsProrate","preSelectedDiscountAmount","pathOptions","all-variants","existingUpgradePathMap","fromName","preSelectedFromVariant"]),n(Ze,{size:"x-small",tag:"button",outline:"",onClick:()=>b(U.row.id)},{default:d(()=>[n(J,{name:"Delete"})]),_:2},1032,["onClick"])])]),_:1})]),_:1},8,["data"])),l.value?x("",!0):(r(),h("div",dz,[(r(!0),h(H,null,ae(c.value,(U,V)=>(r(),h("div",{class:"fct-upgrade-paths-mobile-row",key:V},[o("div",uz,[o("div",cz,f(A(u)("From Plan"))+": ",1),o("div",null,[o("div",Az,f(A(rt).get(g.value,U.object_id,"")),1),A(rt).get(y.value,U.object_id,"")?(r(),h("div",pz,f(A(rt).get(y.value,U.object_id,"")),1)):x("",!0)])]),o("div",fz,[o("div",mz,f(A(u)("To Plan"))+": ",1),(r(!0),h(H,null,ae(A(rt).get(U,"meta_value.to_variants",[]),D=>(r(),h(H,{key:D},[A(rt).get(g.value,D)?(r(),$(E,{key:0},{default:d(()=>[R(f(A(rt).get(g.value,D)),1)]),_:2},1024)):x("",!0)],64))),128))]),o("div",hz,[o("div",_z,f(A(u)("Discount Amount"))+": ",1),U.meta_value.discount_amount>0?(r(),h("span",vz,f(A(rt).get(U,"meta_value.discount_amount","0")),1)):(r(),h("span",gz,"--"))]),o("div",yz,[o("div",bz,f(A(u)("Is Prorate"))+": ",1),o("span",null,f(A(rt).get(U,"meta_value.is_prorate","0")==="1"?"Yes":"No"),1)]),o("div",wz,[o("div",Cz,f(A(u)("Actions"))+": ",1),o("div",Bz,[n(lc,{pathId:U.id,preSelectedToVariants:A(rt).get(U,"meta_value.to_variants",[]),preSelectedIsProrate:A(rt).get(U,"meta_value.is_prorate","0"),preSelectedDiscountAmount:A(rt).get(U,"meta_value.discount_amount","0"),pathOptions:p.value,"all-variants":e.product.variants,existingUpgradePathMap:w.value,fromName:A(rt).get(g.value,U.object_id,""),preSelectedFromVariant:U.object_id,onPathGenerated:m},null,8,["pathId","preSelectedToVariants","preSelectedIsProrate","preSelectedDiscountAmount","pathOptions","all-variants","existingUpgradePathMap","fromName","preSelectedFromVariant"]),n(Ze,{size:"x-small",tag:"button",outline:"",onClick:()=>b(U.id)},{default:d(()=>[n(J,{name:"Delete"})]),_:2},1032,["onClick"])])])]))),128)),c.value.length==0?(r(),h("div",kz,f(A(u)("No upgrade paths found.")),1)):x("",!0)]))]),_:1}),l.value?x("",!0):(r(),$(A(sd),{key:0},{default:d(()=>[p.value.length?(r(),$(Q,{key:0,text:"",onClick:F[0]||(F[0]=()=>{var U;return(U=s.value)==null?void 0:U.openModal()})},{default:d(()=>[n(J,{name:"Plus"}),R(" "+f(A(u)("Add Path")),1)]),_:1})):(r(),h("span",xz,f(A(u)("No more upgrade paths available")),1))]),_:1}))],64)):A(i)?a.value?(r(),h("div",Fz,[n(bt,{icon:"Empty/WebPage",title:A(u)("Upgrade Paths Temporarily Unavailable for Bundle Products"),text:A(u)("Upgrade paths feature is temporarily disabled for bundle products. This feature will be enabled in a future update.")},null,8,["title","text"])])):x("",!0):(r(),h("div",Sz,[n(Vn,{class:"py-7.5",title:A(u)("Get access to this feature by Upgrading to FluentCart Pro"),text:A(u)("This feature is only available in FluentCart Pro.")},null,8,["title","text"])]))]),_:1})]),a.value?x("",!0):(r(),$(zj,{key:0,productId:e.product.ID,onPathGenerated:m,ref_key:"addModalRef",ref:s,pathOptions:p.value,"all-variants":e.product.variants,existingUpgradePathMap:w.value},null,8,["productId","pathOptions","all-variants","existingUpgradePathMap"]))],64)}}},Ez={name:"ProductIntegrations",components:{IconButton:Ze,Empty:bt,DynamicIcon:J,CardFooter:sd,CardBody:Ce,CardHeader:Qe,CardContainer:ke},props:["product","product_id"],data(){return{product_id:this.product_id,selectedIntegrationType:"",integrationLists:[],showIntegrationDialog:!1,feeds:[],available_integrations:{},all_module_config_url:{},totalActiveModules:0,loading:!1}},computed:{Str(){return da},hasActiveModules(){return Object.values(this.available_integrations).some(e=>e.enabled)}},mounted(){this.fetchIntegrations();const e=document.querySelector("#fct_admin_menu_holder .fct-admin-product-header");e&&document.querySelector("#fluent_cart_plugin_app").prepend(e)},methods:{isEmpty:ad,fetchIntegrations(){this.loading=!0,this.$get(`products/${this.product_id}/integrations`).then(e=>{this.available_integrations=e.available_integrations,this.feeds=e.feeds,this.all_module_config_url=e.all_module_config_url}).catch(e=>{this.handleError(e.message||"Failed to load integrations")}).finally(()=>{this.loading=!1})},add(e){let t=this.available_integrations[e];if(!t.enabled){this.$confirm(t.configure_message,t.configure_title,{confirmButtonText:t.configure_button_text,cancelButtonText:"Cancel",cancelButtonClass:"el-button--info is-plain",type:"warning"}).then(()=>{window.location.href=t.global_configure_url});return}this.$router.push({name:"product_integration_feed_editor",params:{integration_id:0,integration_name:e}})},edit(e){this.$router.push({name:"product_integration_feed_editor",params:{integration_id:e.id,integration_name:e.provider}})},handleActive(e){let t={status:e.enabled,notification_id:e.id};this.$post(`products/${this.product_id}/integrations/feed/change-status`,t).then(a=>{this.handleSuccess(a.message)}).catch(a=>{this.handleError(a.responseJSON.data.message)})},remove(e,t){let a=t.$index,l={integration_id:e};this.$confirm("Are you sure you want to delete this integration?","Confirm Delete!",{confirmButtonText:"Yes, Delete!",cancelButtonText:"Cancel",confirmButtonClass:"el-button--primary",cancelButtonClass:"el-button--info is-plain",type:"warning"}).then(()=>{this.$del(`products/${this.product_id}/integrations/${e}`,l).then(s=>{this.handleSuccess(s.message),this.feeds.splice(a,1)}).catch(()=>{})}).catch(()=>{})},handleSuccess(e){this.$notify({type:"success",message:e,offset:40})},handleError(e){this.$notify({type:"error",message:e,offset:40})}}},Uz={class:"fct-integration-settings fct-layout-width"},Iz={key:0,class:"integration-actions"},Qz={key:0,class:"fct-empty-integration-wrap px-4 text-center mx-auto mb-5 md:max-w-[600px]"},Dz={class:"text-sm"},Vz={key:1,class:"fct-integrations-table-wrap"},Tz={class:"fct-integration-logo-wrap"},Mz=["src","alt"],Lz={class:"text-xs text-gray-700"},Rz=["onClick"],Oz={class:"fct-event-triggers"},Hz={class:"fct-event-triggers"},Pz={class:"fct-btn-group sm"},Nz={class:"fct-integration-table-footer"},Kz=["href"],Gz={target:"_blank",rel:"noopener",href:"https://docs.fluentcart.com"};function jz(e,t,a,l,s,i){const c=B("DynamicIcon"),p=B("el-button"),m=B("el-dropdown-item"),_=B("el-dropdown-menu"),g=B("el-dropdown"),y=B("CardHeader"),v=B("el-skeleton"),w=B("el-switch"),C=B("el-table-column"),b=B("el-tag"),k=B("el-popover"),F=B("IconButton"),M=B("el-tooltip"),E=B("Empty"),S=B("el-table"),Q=B("CardBody"),U=B("CardContainer"),V=Ma("loading");return r(),h("div",Uz,[n(U,null,{default:d(()=>[n(y,{title:e.$t("Product Integrations")},{action:d(()=>[i.hasActiveModules?(r(),h("div",Iz,[n(g,{onCommand:i.add,trigger:"click","popper-class":"fct-dropdown"},{dropdown:d(()=>[n(_,null,{default:d(()=>[(r(!0),h(H,null,ae(s.available_integrations,(D,I)=>(r(),$(m,{key:I,command:I},{default:d(()=>[R(f(D.title),1)]),_:2},1032,["command"]))),128))]),_:1})]),default:d(()=>[n(p,{type:"info",plain:"",size:"small"},{default:d(()=>[R(f(e.$t("Add Integration"))+" ",1),n(c,{name:"ChevronDown"})]),_:1})]),_:1},8,["onCommand"])])):x("",!0)]),_:1},8,["title"]),n(Q,{class:"px-0 pb-0 pt-4"},{default:d(()=>[n(v,{class:"px-5 pb-5",loading:s.loading,animated:"",rows:6},null,8,["loading"]),s.loading?x("",!0):(r(),h(H,{key:0},[i.hasActiveModules?(r(),h("div",Vz,[Gt((r(),$(S,{data:s.feeds},{empty:d(()=>[n(E,{icon:"Folder",text:e.$t("No Integrations Available.")},null,8,["text"])]),default:d(()=>[n(C,{label:e.$t("Status"),width:90},{default:d(D=>[n(w,{"active-value":"yes","inactive-value":"no",onChange:I=>i.handleActive(D.row),modelValue:D.row.enabled,"onUpdate:modelValue":I=>D.row.enabled=I},null,8,["onChange","modelValue","onUpdate:modelValue"])]),_:1},8,["label"]),n(C,{width:160,label:e.$t("Integration")},{default:d(D=>{var I,O;return[o("div",Tz,[(I=s.available_integrations[D.row.provider])!=null&&I.logo?(r(),h("img",{key:0,style:{"min-width":"24px"},class:"fct-integration-logo",src:s.available_integrations[D.row.provider].logo,alt:D.row.provider},null,8,Mz)):x("",!0),o("span",Lz,f(((O=s.available_integrations[D.row.provider])==null?void 0:O.title)||D.row.provider),1)])]}),_:1},8,["label"]),n(C,{"min-width":150,label:e.$t("Title")},{default:d(D=>[o("a",{class:"fct-action-link-btn",onClick:Ne(I=>i.edit(D.row),["prevent"]),href:"#"},f(D.row.name),9,Rz)]),_:1},8,["label"]),n(C,{"min-width":150,label:e.$t("Triggers")},{default:d(D=>[o("div",Oz,[(r(!0),h(H,null,ae((D.row.feed.event_trigger||[]).slice(0,2),(I,O)=>(r(),$(b,{key:I},{default:d(()=>[n(c,{name:"Trigger"}),R(" "+f(i.Str.headline(I)),1)]),_:2},1024))),128)),(D.row.feed.event_trigger||[]).length>2?(r(),$(k,{key:0,placement:"bottom",width:"300",trigger:"hover"},{reference:d(()=>[n(b,{type:"info"},{default:d(()=>[R(" +"+f((D.row.feed.event_trigger||[]).length-2),1)]),_:2},1024)]),default:d(()=>[o("div",Hz,[(r(!0),h(H,null,ae((D.row.feed.event_trigger||[]).slice(2),(I,O)=>(r(),$(b,{key:I+O},{default:d(()=>[n(c,{name:"Trigger"}),R(" "+f(i.Str.headline(I)),1)]),_:2},1024))),128))])]),_:2},1024)):x("",!0)])]),_:1},8,["label"]),n(C,{width:90},{default:d(D=>[o("div",Pz,[n(M,{effect:"dark",content:e.$t("Edit"),placement:"top","popper-class":"fct-tooltip"},{default:d(()=>[n(F,{tag:"button",onClick:I=>i.edit(D.row),size:"x-small",hover:"primary"},{default:d(()=>[n(c,{name:"Edit"})]),_:2},1032,["onClick"])]),_:2},1032,["content"]),n(M,{effect:"dark",content:e.$t("Delete"),placement:"top","popper-class":"fct-tooltip"},{default:d(()=>[n(F,{tag:"button",size:"x-small",onClick:I=>i.remove(D.row.id,D),hover:"danger"},{default:d(()=>[n(c,{name:"Delete"})]),_:2},1032,["onClick"])]),_:2},1032,["content"])])]),_:1})]),_:1},8,["data"])),[[V,s.loading]])])):(r(),h("div",Qz,[o("p",Dz,f(e.$t("You don't have any integration module enabled. Please go to integration modules and enable and configured from available modules")),1),n(p,{tag:"a",type:"primary",href:s.all_module_config_url},{default:d(()=>[R(f(e.$t("Configure Modules")),1)]),_:1},8,["href"])])),o("div",Nz,[o("a",{href:s.all_module_config_url},f(e.$t("Check Global Integration Settings")),9,Kz),o("a",Gz,f(e.$t("View Documentations")),1)])],64))]),_:1})]),_:1})])}const sc=at(Ez,[["render",jz]]),zz={name:"SingleIntegration",components:{CardFooter:sd,CardBody:Ce,CardHeader:Qe,CardContainer:ke},props:["product","product_id","integration_id","integration_type"],data(){return{integration_id:this.integration_id,product_id:this.product_id,integration_type:this.integration_type||"",saving:!1,formData:{values:{name:"",integrationName:this.integration_type||"",description:""},fields:{integrationName:{type:"select",label:"Integration Type",placeholder:"Select Integration",options:[]}}}}},mounted(){this.fetchIntegrationData()},methods:{saveIntegration(){if(!this.formData.values.name){this.$notify({type:"error",message:"Integration name is required",offset:40});return}this.saving=!0;const e=this.integration_id?`products/${this.product_id}/integrations/${this.integration_id}`:`products/${this.product_id}/integrations`,t=this.integration_id?"put":"post";this[`$${t}`](e,{integration:this.formData.values}).then(a=>{this.saving=!1,this.$notify({type:"success",message:a.message||"Integration saved successfully",offset:40}),this.$router.push({name:"ProductIntegrations",params:{product_id:this.product_id}})}).catch(a=>{this.saving=!1,this.$notify({type:"error",message:(a==null?void 0:a.message)||"Failed to save integration",offset:40})})},fetchIntegrationData(){if(!this.integration_id){this.fetchIntegrationType();return}this.$get(`products/${this.product_id}/integrations/${this.integration_id}`).then(e=>{e.integration&&(this.formData.values={...e.integration},this.integration_type=e.integration.integrationName,this.fetchIntegrationType())}).catch(e=>{this.$notify({type:"error",message:e.message||"Failed to load integration data",offset:40})})},fetchIntegrationType(){this.integration_type&&this.$get(`integration/settings?integration_name=${this.integration_type}`).then(e=>{e.settings_fields&&(this.formData.fields=e.settings_fields),Object.keys(this.formData.fields).forEach(t=>{this.formData.values[t]===void 0&&(this.formData.values[t]="")})}).catch(e=>{this.$notify({type:"error",message:e.message||"Failed to load integration fields",offset:40})})},compare(e,t,a){switch(t){case"=":return e===a;case"!=":return e!==a;default:return!0}},dependancyPass(e){if(e.dependency){const a=e.dependency.depends_on.split("/").reduce((l,s)=>l[s],this.formData.values);return this.compare(a,e.dependency.operator,e.dependency.value)}return!0}}},qz={class:"fct-integration-settings fct-layout-width"};function Yz(e,t,a,l,s,i){const c=B("el-button"),p=B("CardHeader"),m=B("el-input"),_=B("el-form-item"),g=B("el-option"),y=B("el-select"),v=B("el-form"),w=B("CardBody"),C=B("CardContainer");return r(),h("div",qz,[n(C,null,{default:d(()=>[n(p,{border_bottom:"",title:s.integration_id?e.$t("Edit Integration"):e.$t("Add Integration")},{action:d(()=>[n(c,{onClick:i.saveIntegration,type:"primary",loading:s.saving},{default:d(()=>[R(f(e.$t("Save")),1)]),_:1},8,["onClick","loading"])]),_:1},8,["title"]),n(w,null,{default:d(()=>[n(v,{"label-position":"top",model:s.formData.values,class:"integration-form"},{default:d(()=>[n(_,{label:e.$t("Integration Name"),required:""},{default:d(()=>[n(m,{modelValue:s.formData.values.name,"onUpdate:modelValue":t[0]||(t[0]=b=>s.formData.values.name=b),placeholder:e.$t("Enter a name for this integration")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s.integration_id?x("",!0):(r(),$(_,{key:0,label:e.$t("Integration Type")},{default:d(()=>[n(y,{modelValue:s.formData.values.integrationName,"onUpdate:modelValue":t[1]||(t[1]=b=>s.formData.values.integrationName=b),disabled:"",class:"fct-select"},{default:d(()=>[(r(!0),h(H,null,ae(s.formData.fields.integrationName.options,b=>(r(),$(g,{key:b.value,label:b.label,value:b.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["label"])),(r(!0),h(H,null,ae(s.formData.fields,(b,k)=>(r(),h(H,{key:k},[k!=="integrationName"&&i.dependancyPass(b)?(r(),$(_,{key:0,label:b.label},{default:d(()=>[b.type==="text"?(r(),$(m,{key:0,modelValue:s.formData.values[k],"onUpdate:modelValue":F=>s.formData.values[k]=F,placeholder:b.placeholder},null,8,["modelValue","onUpdate:modelValue","placeholder"])):b.type==="select"?(r(),$(y,{key:1,modelValue:s.formData.values[k],"onUpdate:modelValue":F=>s.formData.values[k]=F,placeholder:b.placeholder,class:"fct-select"},{default:d(()=>[(r(!0),h(H,null,ae(b.options,F=>(r(),$(g,{key:F.value,label:F.label,value:F.value},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","placeholder"])):b.type==="textarea"?(r(),$(m,{key:2,type:"textarea",modelValue:s.formData.values[k],"onUpdate:modelValue":F=>s.formData.values[k]=F,placeholder:b.placeholder},null,8,["modelValue","onUpdate:modelValue","placeholder"])):x("",!0)]),_:2},1032,["label"])):x("",!0)],64))),128))]),_:1},8,["model"])]),_:1})]),_:1})])}const Wz=at(zz,[["render",Yz],["__scopeId","data-v-486bb338"]]),Xz={class:"fct-reason-dropdown-wrap"},Jz={class:"fct-reason-label"},Lp=Object.assign({name:"ReasonDropdown"},{__name:"ReasonDropdown",props:{modelValue:{type:String,default:""}},emits:["update:modelValue","update:customReason"],setup(e,{expose:t,emit:a}){const l=e,s=a,i=T(l.modelValue),c=T("");be(()=>l.modelValue,_=>{i.value=_});const p=()=>{s("update:modelValue",i.value),i.value==="other"&&s("update:customReason",c.value)},m=_=>{i.value=_,p()};return t({getValue:()=>i.value,getCustomReason:()=>c.value,setValue:_=>m(_),setCustomReason:_=>{c.value=_}}),(_,g)=>{const y=B("el-option"),v=B("el-select"),w=B("el-input");return r(),h("div",Xz,[o("label",Jz,f(A(u)("Reason")),1),n(v,{modelValue:i.value,"onUpdate:modelValue":g[0]||(g[0]=C=>i.value=C),placeholder:A(u)("Select reason"),class:"w-full",onChange:p},{default:d(()=>[n(y,{label:A(u)("Received Stock"),value:"received"},null,8,["label"]),n(y,{label:A(u)("Damage/Loss"),value:"damage"},null,8,["label"]),n(y,{label:A(u)("Return/Refund"),value:"return"},null,8,["label"]),n(y,{label:A(u)("Count Correction"),value:"correction"},null,8,["label"]),n(y,{label:A(u)("Inventory Transfer"),value:"transfer"},null,8,["label"]),n(y,{label:A(u)("Other"),value:"other"},null,8,["label"])]),_:1},8,["modelValue","placeholder"]),n(va,{visible:i.value==="other",accordion:"",duration:300},{default:d(()=>[n(w,{modelValue:c.value,"onUpdate:modelValue":g[1]||(g[1]=C=>c.value=C),type:"textarea",rows:3,placeholder:A(u)("Please describe the reason"),class:"fct-custom-reason-textarea",onInput:p},null,8,["modelValue","placeholder"])]),_:1},8,["visible"])])}}}),Zz={class:"fct-adjust-by-wrap"},eq={class:"fct-adjust-by-row"},tq={class:"fct-adjust-by-col"},aq={class:"title"},lq={class:"fct-adjust-by-col"},sq={class:"title"},nq={class:"fct-stock-info"},oq={class:"fct-adjust-reason-wrap"},iq={class:"fct-adjust-by-action"},Rp=Object.assign({name:"InventoryStockAdjuster"},{__name:"InventoryStockAdjuster",props:{variant:{type:Object,required:!0}},emits:["save"],setup(e,{emit:t}){const a=e,l=t,s=T(!1),i=T(0),c=T(a.variant.total_stock),p=T(""),m=T(""),_=T(null),g=T(null);be(s,b=>{b&&xe(()=>{var k,F,M;(k=_.value)==null||k.focus(),(M=(F=_.value)==null?void 0:F.select)==null||M.call(F)})});const y=()=>{const b=i.value||0;let F=(parseInt(a.variant.total_stock)||0)+parseInt(b);c.value=F<0?0:F},v=()=>{const b=c.value||0,k=parseInt(a.variant.total_stock)||0;i.value=parseInt(b)-k},w=()=>{i.value=0,c.value=a.variant.total_stock,p.value="",m.value="",s.value=!1},C=()=>{l("save",{variant:a.variant,newStock:c.value,adjustedQuantity:i.value,reason:p.value,customReason:p.value==="other"?m.value:""}),s.value=!1,w()};return(b,k)=>{const F=B("el-input"),M=B("el-button"),E=B("el-popover");return r(),$(E,{visible:s.value,"popper-class":"fct-stock-dropdown fct-inventory-stock-dropdown",trigger:"click",placement:"bottom-end"},{reference:d(()=>[o("div",{class:"fct-stock-adjuster-trigger",onClick:k[4]||(k[4]=S=>s.value=!s.value)},[n(J,{name:"Configuration"})])]),default:d(()=>[o("div",Zz,[o("div",eq,[o("div",tq,[o("span",aq,f(A(u)("Adjust by")),1),n(F,{ref_key:"adjustByInput",ref:_,size:"small",placeholder:A(u)("Quantity"),type:"number",modelValue:i.value,"onUpdate:modelValue":k[0]||(k[0]=S=>i.value=S),modelModifiers:{number:!0},onInput:y},null,8,["placeholder","modelValue"])]),o("div",lq,[o("span",sq,f(A(u)("New Stock")),1),n(F,{size:"small",placeholder:A(u)("New Stock"),type:"number",modelValue:c.value,"onUpdate:modelValue":k[1]||(k[1]=S=>c.value=S),modelModifiers:{number:!0},onInput:v},null,8,["placeholder","modelValue"])])]),n(va,{visible:!!i.value,accordion:""},{default:d(()=>[o("div",nq,[k[5]||(k[5]=R(" (Original quantity: ",-1)),o("strong",null,f(e.variant.total_stock),1),k[6]||(k[6]=R(") ",-1))])]),_:1},8,["visible"]),o("div",oq,[n(Lp,{ref_key:"reasonDropdownRef",ref:g,modelValue:p.value,"onUpdate:modelValue":k[2]||(k[2]=S=>p.value=S),"onUpdate:customReason":k[3]||(k[3]=S=>m.value=S)},null,8,["modelValue"])]),o("div",iq,[n(M,{size:"small",type:"info",soft:"",onClick:w},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1}),n(M,{size:"small",type:"primary",onClick:C,disabled:!p.value},{default:d(()=>[R(f(A(u)("Apply")),1)]),_:1},8,["disabled"])])])]),_:1},8,["visible"])}}}),rq={class:"fct-inventory-row"},dq={width:"50"},uq={class:"flex items-center gap-1"},cq=["src","alt"],Aq=["src","alt"],pq={class:"fct-inventory-product-content"},fq={class:"fct-inventory-product-title"},mq={key:0},hq={key:0},_q={key:1,class:"text-system-mid dark:text-gray-300"},vq={key:1},gq={key:2},yq={key:3},bq=Object.assign({name:"InventoryTableRow"},{__name:"InventoryTableRow",props:{row:{type:Object,required:!0},inventoryTable:Object,isRowSelected:{type:Function,required:!0},toggleRowSelection:{type:Function,required:!0},navigateToProduct:{type:Function,required:!0},getPlaceholderImage:{type:Function,required:!0}},emits:["stock-save","open-history"],setup(e){return(t,a)=>{var i,c,p,m;const l=B("el-checkbox"),s=B("el-input");return r(),h("tr",rq,[o("td",dq,[o("div",uq,[n(l,{"model-value":e.isRowSelected(e.row.variants[0]),onChange:a[0]||(a[0]=_=>e.toggleRowSelection(e.row.variants[0]))},null,8,["model-value"])])]),o("td",null,[o("div",{class:"fct-inventory-product-info cursor-pointer",onClick:a[1]||(a[1]=_=>e.navigateToProduct(e.row.ID))},[e.row.thumbnail!==null?(r(),h("img",{key:0,src:e.row.thumbnail,alt:e.row.post_title,class:"inventory-thumbnail"},null,8,cq)):(r(),h("img",{key:1,src:e.getPlaceholderImage(),alt:e.row.post_title},null,8,Aq)),o("div",pq,[o("span",fq,f(e.row.post_title),1)])])]),(i=e.inventoryTable)!=null&&i.isColumnVisible("sku")?(r(),h("td",mq,[e.row.variants[0].sku?(r(),h("span",hq,f(e.row.variants[0].sku),1)):(r(),h("span",_q,f(A(u)("No SKU")),1))])):x("",!0),o("td",null,[n(s,{modelValue:e.row.variants[0].total_stock,"onUpdate:modelValue":a[3]||(a[3]=_=>e.row.variants[0].total_stock=_),class:"el-input--x-small input-with-total-stock fct-input-group",readonly:"",size:"small"},{append:d(()=>[n(Rp,{variant:e.row.variants[0],onSave:a[2]||(a[2]=_=>t.$emit("stock-save",_))},null,8,["variant"])]),_:1},8,["modelValue"])]),(c=e.inventoryTable)!=null&&c.isColumnVisible("available")?(r(),h("td",vq,[o("span",null,f(e.row.variants[0].available),1)])):x("",!0),(p=e.inventoryTable)!=null&&p.isColumnVisible("on_hand")?(r(),h("td",gq,[o("span",null,f(e.row.variants[0].on_hold),1)])):x("",!0),(m=e.inventoryTable)!=null&&m.isColumnVisible("committed")?(r(),h("td",yq,[o("span",null,f(e.row.variants[0].committed),1)])):x("",!0),o("td",null,[n(Ze,{tag:"button",size:"small",onClick:a[4]||(a[4]=_=>t.$emit("open-history",e.row.variants[0]))},{default:d(()=>a[5]||(a[5]=[o("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[o("path",{d:"M10 2.5C14.1422 2.5 17.5 5.85775 17.5 10C17.5 14.1422 14.1422 17.5 10 17.5C5.85775 17.5 2.5 14.1422 2.5 10H4C4 13.3135 6.6865 16 10 16C13.3135 16 16 13.3135 16 10C16 6.6865 13.3135 4 10 4C7.9375 4 6.118 5.04025 5.03875 6.625H7V8.125H2.5V3.625H4V5.5C5.368 3.6775 7.54675 2.5 10 2.5ZM10.75 6.25V9.68875L13.1823 12.121L12.121 13.1823L9.25 10.3098V6.25H10.75Z",fill:"currentColor"})],-1)])),_:1,__:[5]})])])}}}),wq={class:"fct-inventory-row fct-inventory-parent-row"},Cq={width:"50"},Bq={class:"fct-inventory-row-selection"},kq=["src","alt"],xq=["src","alt"],Sq={class:"fct-inventory-product-content"},Fq={class:"fct-inventory-product-title"},$q={key:0},Eq={class:"!pl-5"},Uq={key:1},Iq={key:2},Qq={key:3},Dq={class:"fct-inventory-variant-item"},Vq={class:"fct-inventory-product-info"},Tq=["src","alt"],Mq=["src","alt"],Lq={class:"fct-inventory-product-content"},Rq={key:0},Oq={key:1},Hq={key:2},Pq={key:3},Nq=Object.assign({name:"InventoryParentTableRow"},{__name:"InventoryParentTableRow",props:{row:{type:Object,required:!0},inventoryTable:Object,navigateToProduct:{type:Function,required:!0},getPlaceholderImage:{type:Function,required:!0},isRowSelected:{type:Function,required:!0},toggleRowSelection:{type:Function,required:!0},expanded:{type:Boolean,default:!0}},emits:["stock-save","open-history"],setup(e){al();const t=e,a=T(!0),l=N(()=>a.value);be(()=>t.expanded,w=>{a.value=w});const s=()=>{a.value=!a.value},i=()=>l.value,c=N(()=>{var w;return((w=t.row.variants)==null?void 0:w.reduce((C,b)=>C+(b.total_stock||0),0))||0}),p=N(()=>{var w;return((w=t.row.variants)==null?void 0:w.reduce((C,b)=>C+(b.available||0),0))||0}),m=N(()=>{var w;return((w=t.row.variants)==null?void 0:w.reduce((C,b)=>C+(b.on_hold||0),0))||0}),_=N(()=>{var w;return((w=t.row.variants)==null?void 0:w.reduce((C,b)=>C+(b.committed||0),0))||0}),g=()=>{const w=t.row.variants||[];return w.length>0&&w.every(C=>t.isRowSelected(C))},y=()=>{const w=t.row.variants||[],C=w.filter(b=>t.isRowSelected(b)).length;return C>0&&C{var C;(C=t.row.variants)==null||C.forEach(b=>{w!==t.isRowSelected(b)&&t.toggleRowSelection(b)})};return(w,C)=>{var M,E,S,Q;const b=B("el-checkbox"),k=B("router-link"),F=B("el-input");return r(),h(H,null,[o("tr",wq,[o("td",Cq,[o("div",Bq,[n(b,{"model-value":g(),indeterminate:y(),onChange:v,onClick:C[0]||(C[0]=Ne(()=>{},["stop"]))},null,8,["model-value","indeterminate"]),o("div",{onClick:C[1]||(C[1]=U=>s()),class:"fct-inventory-row-toggle"},[n(J,{name:i()?"ChevronDown":"ChevronRight"},null,8,["name"])])])]),o("td",null,[o("div",{class:"fct-inventory-product-info cursor-pointer",onClick:C[2]||(C[2]=U=>e.navigateToProduct(e.row.ID))},[e.row.thumbnail!==null?(r(),h("img",{key:0,src:e.row.thumbnail,alt:e.row.post_title,class:"inventory-thumbnail"},null,8,kq)):(r(),h("img",{key:1,class:"inventory-thumbnail",src:e.getPlaceholderImage(),alt:e.row.post_title},null,8,xq)),o("div",Sq,[o("span",Fq,f(e.row.post_title),1)])])]),(M=e.inventoryTable)!=null&&M.isColumnVisible("sku")?(r(),h("td",$q,[Gt(o("span",null,"--",512),[[Vl,!i()]])])):x("",!0),o("td",Eq,[Gt(o("span",null,f(c.value),513),[[Vl,!i()]])]),(E=e.inventoryTable)!=null&&E.isColumnVisible("available")?(r(),h("td",Uq,[Gt(o("span",null,f(p.value),513),[[Vl,!i()]])])):x("",!0),(S=e.inventoryTable)!=null&&S.isColumnVisible("on_hand")?(r(),h("td",Iq,[Gt(o("span",null,f(m.value),513),[[Vl,!i()]])])):x("",!0),(Q=e.inventoryTable)!=null&&Q.isColumnVisible("committed")?(r(),h("td",Qq,[Gt(o("span",null,f(_.value),513),[[Vl,!i()]])])):x("",!0),C[4]||(C[4]=o("td",null,null,-1))]),(r(!0),h(H,null,ae(e.row.variants,U=>{var V,D,I,O,L;return Gt((r(),h("tr",{key:`child-${U.id}`,class:"fct-inventory-child-row"},[C[6]||(C[6]=o("td",null,null,-1)),o("td",null,[o("div",Dq,[n(b,{"model-value":e.isRowSelected(U),onChange:P=>e.toggleRowSelection(U)},null,8,["model-value","onChange"]),o("div",Vq,[U.thumbnail!==null?(r(),h("img",{key:0,src:U.thumbnail,alt:U.variation_title,class:"inventory-thumbnail"},null,8,Tq)):(r(),h("img",{key:1,class:"inventory-thumbnail",src:e.getPlaceholderImage(),alt:U.variation_title},null,8,Mq)),o("div",Lq,[n(k,{to:`/products/${U.post_id}`,class:"fct-inventory-product-title"},{default:d(()=>[R(f(U.variation_title),1)]),_:2},1032,["to"])])])])]),(V=e.inventoryTable)!=null&&V.isColumnVisible("sku")?(r(),h("td",Rq,f(U.sku),1)):x("",!0),o("td",null,[n(F,{modelValue:U.total_stock,"onUpdate:modelValue":P=>U.total_stock=P,class:"el-input--x-small input-with-total-stock fct-input-group",readonly:"",size:"small"},{append:d(()=>[n(Rp,{variant:U,onSave:C[3]||(C[3]=P=>w.$emit("stock-save",P))},null,8,["variant"])]),_:2},1032,["modelValue","onUpdate:modelValue"])]),(D=e.inventoryTable)!=null&&D.isColumnVisible("available")?(r(),h("td",Oq,f(U.available),1)):x("",!0),(I=e.inventoryTable)!=null&&I.isColumnVisible("on_hand")?(r(),h("td",Hq,f(U.on_hold),1)):x("",!0),(O=e.inventoryTable)!=null&&O.isColumnVisible("committed")?(r(),h("td",Pq,f(U.committed),1)):x("",!0),o("td",null,[n(Ze,{tag:"button",size:"small",onClick:P=>w.$emit("open-history",U)},{default:d(()=>C[5]||(C[5]=[o("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[o("path",{d:"M10 2.5C14.1422 2.5 17.5 5.85775 17.5 10C17.5 14.1422 14.1422 17.5 10 17.5C5.85775 17.5 2.5 14.1422 2.5 10H4C4 13.3135 6.6865 16 10 16C13.3135 16 16 13.3135 16 10C16 6.6865 13.3135 4 10 4C7.9375 4 6.118 5.04025 5.03875 6.625H7V8.125H2.5V3.625H4V5.5C5.368 3.6775 7.54675 2.5 10 2.5ZM10.75 6.25V9.68875L13.1823 12.121L12.121 13.1823L9.25 10.3098V6.25H10.75Z",fill:"currentColor"})],-1)])),_:2,__:[5]},1032,["onClick"])])])),[[Vl,((L=e.row.variants)==null?void 0:L.length)>0&&i()]])}),128))],64)}}}),Kq={class:"fct-adjustment-header"},Gq={class:"fct-adjustment-product-name"},jq={key:0,class:"fct-adjustment-timeline-wrap"},zq={key:0,class:"fct-adjustment-timeline"},qq={class:"fct-timeline-node"},Yq={class:"fct-timeline-content"},Wq={class:"fct-timeline-header"},Xq={class:"fct-timeline-time"},Jq={class:"fct-stock-flow"},Zq={class:"fct-stock-flow-item"},eY={class:"fct-stock-entry"},tY={class:"fct-stock-label"},aY={class:"fct-stock-value"},lY={class:"fct-stock-entry new-stock-entry"},sY={class:"fct-stock-label"},nY={class:"fct-stock-value"},oY={class:"fct-stock-flow-item"},iY={class:"fct-stock-label"},rY={key:0,class:"fct-custom-reason-section"},dY={class:"fct-stock-label"},uY={class:"fct-custom-reason-text"},cY={key:1,class:"fct-timeline-empty"},AY={key:1,class:"fct-timeline-loading"},pY=Object.assign({name:"InventoryAdjustmentHistory"},{__name:"InventoryAdjustmentHistory",setup(e,{expose:t}){const a=T(!1),l=T(!1),s=T({id:null,name:""}),i=T([]),c=()=>{a.value=!1,i.value=[]},p=y=>{s.value=y,a.value=!0,m(y.id)},m=y=>{y&&(l.value=!0,ce.get("inventory/adjustment-history",{variant_id:y}).then(v=>{i.value=(v==null?void 0:v.adjustments)||[]}).catch(()=>{Y.error(u("Failed to load adjustment history"))}).finally(()=>{l.value=!1}))},_=y=>y>0?"positive":y<0?"negative":"",g=y=>y>0?`+${y}`:`${y}`;return t({openHistory:p}),(y,v)=>{const w=B("el-drawer");return r(),$(w,{modelValue:a.value,"onUpdate:modelValue":v[0]||(v[0]=C=>a.value=C),title:A(u)("Stock Adjustment History"),onClose:c},{default:d(()=>[o("div",Kq,[o("h3",Gq,f(s.value.name),1)]),l.value?(r(),h("div",AY,[o("p",null,f(A(u)("Loading adjustment history...")),1)])):(r(),h("div",jq,[i.value.length>0?(r(),h("div",zq,[(r(!0),h(H,null,ae(i.value,(C,b)=>(r(),h("div",{key:b,class:"fct-timeline-item"},[o("div",qq,[o("span",{class:ie(["fct-node-dot",`node-${C.reason}`])},null,2)]),o("div",Yq,[o("div",Wq,[o("span",Xq,[n(Na,{"date-time":C.created_at},null,8,["date-time"]),R(" (by "+f(C.user_name)+") ",1)]),o("span",{class:ie(["fct-timeline-reason-badge",`badge-${C.reason}`])},f(C.reason_label),3)]),o("div",Jq,[o("div",Zq,[o("div",eY,[o("span",tY,f(A(u)("Previous Stock:")),1),o("span",aY,f(C.old_stock),1)]),v[1]||(v[1]=o("span",{class:"fct-stock-arrow"},"→",-1)),o("div",lY,[o("span",sY,f(A(u)("New Stock:")),1),o("span",nY,f(C.new_stock),1)])]),o("div",oY,[o("span",iY,f(A(u)("Change:")),1),o("span",{class:ie(["fct-stock-value fct-stock-change",_(C.change)])},f(g(C.change))+" "+f(A(u)("units")),3)]),C.reason==="other"&&C.custom_reason?(r(),h("div",rY,[o("span",dY,f(A(u)("Details:")),1),o("p",uY,f(C.custom_reason),1)])):x("",!0)])])]))),128))])):(r(),h("div",cY,[n(bt,{icon:"Empty/ListView","has-dark":!0,text:A(u)("No changes recorded")},null,8,["text"])]))]))]),_:1},8,["modelValue","title"])}}}),fY={class:"fct-bulk-modal-content"},mY={class:"fct-inventory-mode-selection"},hY={class:"fct-inventory-input-section"},_Y={key:0,class:"fct-inventory-mode-hint"},vY={class:"fct-inventory-selected-items"},gY={class:"fct-inventory-selected-items-count"},yY={key:0,class:"fct-inventory-selected-items-preview"},bY={class:"fct-inventory-selected-item-header"},wY={class:"variant-title"},CY={class:"total-stock"},BY={class:"fct-inventory-selected-item-list"},kY={class:"fct-inventory-selected-item-info"},xY={class:"fct-inventory-selected-item-title"},SY=["innerHTML"],FY={class:"fct-inventory-selected-item-stock-action"},$Y={class:"total-stock"},EY={class:"stock-arrow"},UY={class:"bulk-stock-value"},IY={class:"fct-inventory-adjustment-reason"},QY={class:"dialog-footer"},DY=Object.assign({name:"InventoryBulkAdjustModal"},{__name:"InventoryBulkAdjustModal",props:{selectedItems:{type:Array,required:!0}},emits:["bulk-update-success","close"],setup(e,{expose:t,emit:a}){const l=e,s=a,i=T(!1),c=T("add"),p=T(null),m=T(""),_=T(""),g=k=>c.value==="add"?k.total_stock+p.value:p.value,y=k=>p.value!==null&&p.value!==""&&g(k)!==k.total_stock,v=()=>{C(),i.value=!1},w=()=>{const k={mode:c.value,value:p.value,reason:m.value,customReason:m.value==="other"?_.value:"",items:l.selectedItems.map(F=>({id:F.id,post_id:F.post_id}))};ce.post("inventory/bulk-update",k).then(()=>{Y.success(u("Stock updated successfully")),C(),i.value=!1,s("bulk-update-success")}).catch(F=>{var M;F.status_code===422?Y.validationErrors(F):Y.error(((M=F.data)==null?void 0:M.message)||u("Failed to update stock"))})},C=()=>{p.value=null,c.value="add",m.value="",_.value=""};return t({openModal:()=>{C(),i.value=!0}}),(k,F)=>{const M=B("el-radio"),E=B("el-radio-group"),S=B("el-input"),Q=B("el-button"),U=B("el-dialog");return r(),$(U,{modelValue:i.value,"onUpdate:modelValue":F[4]||(F[4]=V=>i.value=V),title:A(u)("Update Stocks")},{default:d(()=>{var V;return[o("div",fY,[o("div",mY,[n(E,{modelValue:c.value,"onUpdate:modelValue":F[0]||(F[0]=D=>c.value=D),class:"fct-mode-radio-group"},{default:d(()=>[n(M,{value:"add"},{default:d(()=>[R(f(A(u)("Increase Stock")),1)]),_:1}),n(M,{value:"set"},{default:d(()=>[R(f(A(u)("Set Exact Stock")),1)]),_:1})]),_:1},8,["modelValue"])]),o("div",hY,[n(pa,{title:c.value==="add"?A(u)("Increase Stock by"):A(u)("Exact new stock"),content:c.value==="add"?A(u)("Increase stock by value (e.g. 10 + 5 = 15)"):A(u)("Set stock to exact value (e.g. 10 → 20)")},null,8,["title","content"]),n(S,{modelValue:p.value,"onUpdate:modelValue":F[1]||(F[1]=D=>p.value=D),modelModifiers:{number:!0},type:"number",placeholder:c.value==="add"?A(u)("Enter amount to add"):A(u)("Enter exact stock value")},null,8,["modelValue","placeholder"]),c.value==="set"?(r(),h("div",_Y,[n(J,{name:"Warning"}),R(" "+f(A(u)("Replaces current inventory")),1)])):x("",!0)]),o("div",vY,[o("div",gY,f(e.selectedItems.length)+" "+f(A(u)("variants will be changed:")),1),(V=e.selectedItems)!=null&&V.length?(r(),h("div",yY,[o("div",bY,[o("span",wY,f(A(u)("Variant")),1),o("span",CY,f(A(u)("Stock Change")),1)]),o("ul",BY,[(r(!0),h(H,null,ae(e.selectedItems,D=>(r(),h("li",{key:D.id},[o("div",kY,[o("span",xY,f(D.variation_title),1),o("span",{class:"fct-inventory-selected-item-price",innerHTML:D.formatted_total},null,8,SY)]),o("div",FY,[o("span",$Y,f(D.total_stock),1),y(D)?(r(),h(H,{key:0},[o("span",EY,[n(J,{name:"ArrowRight"})]),o("span",UY,f(g(D)),1)],64)):x("",!0)])]))),128))])])):x("",!0)]),o("div",IY,[n(Lp,{modelValue:m.value,"onUpdate:modelValue":F[2]||(F[2]=D=>m.value=D),"onUpdate:customReason":F[3]||(F[3]=D=>_.value=D)},null,8,["modelValue"])]),o("div",QY,[n(Q,{onClick:v},{default:d(()=>[R(f(A(u)("Cancel")),1)]),_:1}),n(Q,{type:"primary",onClick:w,disabled:!m.value},{default:d(()=>[R(f(A(u)("Update Stocks")),1)]),_:1},8,["disabled"])])])]}),_:1},8,["modelValue","title"])}}}),VY={class:"fct-advanced-inventory-table"},TY={class:"fct-inventory-toolbar-wrap"},MY={key:0,class:"fct-inventory-toolbar-selected"},LY={class:"fct-inventory-toolbar-actions ml-auto"},RY={key:0,class:"fct-advanced-inventory-table-wrap"},OY={class:"fct-advanced-inventory-table"},HY={key:0,width:"150"},PY={key:1,width:"100"},NY={key:2,width:"100"},KY={key:3,width:"100"},GY={width:"50"},jY={key:0},zY={key:1},qY={key:2},YY={key:3},nc=Object.assign({name:"InventoryTable"},{__name:"InventoryTable",props:{data:{type:Array,default:()=>[]},inventoryTable:Object},emits:["stock-save","bulk-update-success","selection-changed"],setup(e,{emit:t}){const a=al(),l=e,s=t,i=T([]),c=T(!1),p=T(!1),m=T(null),_=T(null),g=T(!0);be(i,U=>{s("selection-changed",{selectedItems:U,count:U.length})},{deep:!0});const y=U=>U.post_id?`variant-${U.id}`:`product-${U.id}`,v=U=>{a.push({name:"product_edit",params:{product_id:U}})},w=()=>{_.value&&_.value.openModal()},C=()=>{i.value=[],E(),s("bulk-update-success")},b=()=>l.data.flatMap(U=>U.variants&&U.variants.length>0?U.variants:[U]),k=U=>{U?i.value=b():i.value=[],E()},F=U=>{const V=i.value.findIndex(D=>D.id===U.id);V>-1?i.value.splice(V,1):i.value.push(U),E()},M=U=>i.value.some(V=>V.id===U.id),E=()=>{const U=b(),V=i.value.length;V===0?(c.value=!1,p.value=!1):V===U.length?(c.value=!0,p.value=!1):(c.value=!1,p.value=!0)},S=U=>{m.value&&m.value.openHistory({id:U.id,name:U.variation_title||U.post_title})},Q=()=>{g.value=!g.value};return(U,V)=>{var O,L,P,G,j,z,Z,oe;const D=B("el-button"),I=B("el-checkbox");return r(),h("div",VY,[o("div",TY,[i.value.length>0?(r(),h("div",MY,f(i.value.length)+" "+f(A(u)("selected")),1)):x("",!0),o("div",LY,[i.value.length>0?(r(),$(D,{key:0,type:"primary",size:"small",onClick:w},{default:d(()=>[R(f(A(u)("Update Stocks")),1)]),_:1})):x("",!0),n(D,{class:"fct-expand-row-button",size:"small",onClick:Q},{default:d(()=>[n(J,{name:g.value?"Expand":"Collapse"},null,8,["name"]),R(" "+f(g.value?A(u)("Collapse All"):A(u)("Expand All")),1)]),_:1})])]),e.data.length>0?(r(),h("div",RY,[o("table",OY,[o("colgroup",null,[V[3]||(V[3]=o("col",{width:"50"},null,-1)),V[4]||(V[4]=o("col",null,null,-1)),(O=e.inventoryTable)!=null&&O.isColumnVisible("sku")?(r(),h("col",HY)):x("",!0),V[5]||(V[5]=o("col",{width:"160"},null,-1)),(L=e.inventoryTable)!=null&&L.isColumnVisible("available")?(r(),h("col",PY)):x("",!0),(P=e.inventoryTable)!=null&&P.isColumnVisible("on_hand")?(r(),h("col",NY)):x("",!0),(G=e.inventoryTable)!=null&&G.isColumnVisible("committed")?(r(),h("col",KY)):x("",!0),V[6]||(V[6]=o("col",{width:"40"},null,-1))]),o("thead",null,[o("tr",null,[o("th",GY,[n(I,{modelValue:c.value,"onUpdate:modelValue":V[0]||(V[0]=de=>c.value=de),indeterminate:p.value,onChange:k},null,8,["modelValue","indeterminate"])]),o("th",null,f(A(u)("Products")),1),(j=e.inventoryTable)!=null&&j.isColumnVisible("sku")?(r(),h("th",jY,f(A(u)("SKU")),1)):x("",!0),o("th",null,f(A(u)("Total Stock")),1),(z=e.inventoryTable)!=null&&z.isColumnVisible("available")?(r(),h("th",zY,f(A(u)("Available")),1)):x("",!0),(Z=e.inventoryTable)!=null&&Z.isColumnVisible("on_hand")?(r(),h("th",qY,f(A(u)("On hold")),1)):x("",!0),(oe=e.inventoryTable)!=null&&oe.isColumnVisible("committed")?(r(),h("th",YY,f(A(u)("Delivered")),1)):x("",!0),V[7]||(V[7]=o("th",null,null,-1))])]),o("tbody",null,[(r(!0),h(H,null,ae(e.data,de=>(r(),h(H,{key:y(de)},[!de.variants||de.variants.length===1?(r(),$(bq,{key:0,row:de,"inventory-table":e.inventoryTable,"is-row-selected":M,"toggle-row-selection":F,"navigate-to-product":v,"get-placeholder-image":U.getPlaceholderImage,onStockSave:V[1]||(V[1]=K=>s("stock-save",K)),onOpenHistory:S},null,8,["row","inventory-table","get-placeholder-image"])):x("",!0),de.variants&&de.variants.length>1?(r(),$(Nq,{key:1,row:de,"inventory-table":e.inventoryTable,"navigate-to-product":v,"get-placeholder-image":U.getPlaceholderImage,"is-row-selected":M,"toggle-row-selection":F,expanded:g.value,onStockSave:V[2]||(V[2]=K=>s("stock-save",K)),onOpenHistory:S},null,8,["row","inventory-table","get-placeholder-image","expanded"])):x("",!0)],64))),128))])])])):(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("No inventory data")},null,8,["text"])),n(DY,{ref_key:"bulkAdjustModalRef",ref:_,"selected-items":i.value,onBulkUpdateSuccess:C},null,8,["selected-items"]),n(pY,{ref_key:"historyRef",ref:m},null,512)])}}}),WY={class:"fct-advanced-inventory-table"},XY={class:"fct-inventory-toolbar-wrap"},JY={class:"fct-inventory-toolbar-actions ml-auto"},ZY={class:"fct-advanced-inventory-table-wrap"},eW={class:"fct-advanced-inventory-table"},tW={key:0,width:"150"},aW={key:1,width:"100"},lW={key:2,width:"100"},sW={key:3,width:"100"},nW={width:"50"},oW={key:0},iW={key:1},rW={key:2},dW={key:3},uW={class:"fct-product-info-card"},cW={class:"fct-product-info-media"},AW={class:"fct-product-info-details"},pW={key:0},fW={key:1},mW={key:2},hW={key:3},_W={__name:"InventoryLoader",props:{nextPageCount:{type:Number,default:10},inventoryTable:{type:Object,default:()=>({})}},setup(e){const t=e,a=N(()=>Array.from({length:t.nextPageCount/2},(l,s)=>s+1));return(l,s)=>{const i=B("el-skeleton-item"),c=B("el-skeleton");return r(),$(c,{animated:""},{template:d(()=>{var p,m,_,g,y,v,w,C;return[o("div",WY,[o("div",XY,[o("div",JY,[n(i,{variant:"button",class:"w-28 h-8 rounded"})])]),o("div",ZY,[o("table",eW,[o("colgroup",null,[s[0]||(s[0]=o("col",{width:"50"},null,-1)),s[1]||(s[1]=o("col",null,null,-1)),(p=e.inventoryTable)!=null&&p.isColumnVisible("sku")?(r(),h("col",tW)):x("",!0),s[2]||(s[2]=o("col",{width:"160"},null,-1)),(m=e.inventoryTable)!=null&&m.isColumnVisible("available")?(r(),h("col",aW)):x("",!0),(_=e.inventoryTable)!=null&&_.isColumnVisible("on_hand")?(r(),h("col",lW)):x("",!0),(g=e.inventoryTable)!=null&&g.isColumnVisible("committed")?(r(),h("col",sW)):x("",!0),s[3]||(s[3]=o("col",{width:"40"},null,-1))]),o("thead",null,[o("tr",null,[o("th",nW,[n(i,{variant:"p",class:"w-4 h-4"})]),o("th",null,[n(i,{variant:"p",class:"w-20"})]),(y=e.inventoryTable)!=null&&y.isColumnVisible("sku")?(r(),h("th",oW,[n(i,{variant:"p",class:"w-10"})])):x("",!0),o("th",null,[n(i,{variant:"p",class:"w-24"})]),(v=e.inventoryTable)!=null&&v.isColumnVisible("available")?(r(),h("th",iW,[n(i,{variant:"p",class:"w-20"})])):x("",!0),(w=e.inventoryTable)!=null&&w.isColumnVisible("on_hand")?(r(),h("th",rW,[n(i,{variant:"p",class:"w-16"})])):x("",!0),(C=e.inventoryTable)!=null&&C.isColumnVisible("committed")?(r(),h("th",dW,[n(i,{variant:"p",class:"w-20"})])):x("",!0),s[4]||(s[4]=o("th",null,null,-1))])]),o("tbody",null,[(r(!0),h(H,null,ae(a.value,b=>{var k,F,M,E;return r(),h("tr",{key:b},[o("td",null,[n(i,{variant:"p",class:"w-4 h-4"})]),o("td",null,[o("div",uW,[o("div",cW,[n(i,{variant:"image",class:"w-10 h-10 rounded flex-none"})]),o("div",AW,[n(i,{variant:"p",class:"max-w-[180px]"})])])]),(k=e.inventoryTable)!=null&&k.isColumnVisible("sku")?(r(),h("td",pW,[n(i,{variant:"p",class:"w-20"})])):x("",!0),o("td",null,[n(i,{variant:"p",class:"w-16"})]),(F=e.inventoryTable)!=null&&F.isColumnVisible("available")?(r(),h("td",fW,[n(i,{variant:"p",class:"w-10"})])):x("",!0),(M=e.inventoryTable)!=null&&M.isColumnVisible("on_hand")?(r(),h("td",mW,[n(i,{variant:"p",class:"w-10"})])):x("",!0),(E=e.inventoryTable)!=null&&E.isColumnVisible("committed")?(r(),h("td",hW,[n(i,{variant:"p",class:"w-10"})])):x("",!0),s[5]||(s[5]=o("td",null,null,-1))])}),128))])])])])]}),_:1})}}},vW={class:"fct-module-disabled-notice"},gW={class:"fct-disabled-notice-title"},yW={class:"fct-disabled-notice-text"},bW=Object.assign({name:"ModuleDisabledNotice"},{__name:"ModuleDisabledNotice",setup(e){return(t,a)=>{const l=B("el-icon"),s=B("router-link");return r(),h("div",vW,[n(l,{class:"fct-disabled-notice-icon"},{default:d(()=>[n(A(Hf))]),_:1}),o("h3",gW,f(A(u)("Stock Management Inactive")),1),o("p",yW,[R(f(A(u)("Stock Management module is currently disabled. Please enable it in "))+" ",1),n(s,{to:"/settings/addons",target:"_blank",rel:"noopener noreferrer"},{default:d(()=>[R(f(A(u)("module settings")),1)]),_:1}),R(" "+f(A(u)(" to use inventory features.")),1)])])}}});class wW extends Fs{getTabs(){return{all:u("All"),low_stock:u("Low Stock"),out_of_stock:u("Out of Stock")}}getToggleableColumns(){return[{label:u("SKU"),value:"sku"},{label:u("Available"),value:"available"},{label:u("On hold"),value:"on_hand"},{label:u("Committed"),value:"committed"}]}getSortableColumns(){return[{label:u("Product ID"),value:"id"},{label:u("Product Title"),value:"post_title"}]}getSearchHint(){return u("Search by product name, variation name or SKU")}getFetchUrl(){return"inventory"}parseResponse(t){return t.products||[]}getTableName(){return"inventory_table"}getAdvanceFilterOptions(){var t,a,l;return((l=(a=(t=window.fluentCartAdminApp)==null?void 0:t.filter_options)==null?void 0:a.product_filter_options)==null?void 0:l.advance)||null}getSearchGuideOptions(){return{}}getCustomColumns(){return{}}with(){return["detail","variants"]}}function CW(e){return wW.init(e)}const BW={class:"fct-all-inventory-page fct-layout-width"},kW={class:"fct-inventory-wrap"},xW={key:2,class:"py-10"},SW={class:"fct-pro-feature-text"},FW=Object.assign({name:"Inventory"},{__name:"Inventory",setup(e){const t=je.get("app_config"),a=N(()=>t==null?void 0:t.isProActive),l=je.get("modules_settings"),s=N(()=>{var w;return((w=l==null?void 0:l.stock_management)==null?void 0:w.active)==="yes"}),i=N(()=>{var w;return((w=l==null?void 0:l.stock_management)==null?void 0:w.enable_advanced_inventory)==="yes"}),c=N(()=>a.value&&s.value&&i.value),p=CW({instance:zt(),fetch:!1}),m=T(0),_=T([]),g=w=>{m.value=w.count,_.value=w.selectedItems||[]},y=()=>{p.fetch()},v=w=>{const{variant:C,newStock:b,reason:k,customReason:F}=w;let M=parseInt(b);C.total_stock=M<0?0:M;let E=parseInt(C.total_stock)-parseInt(C.committed)-parseInt(C.on_hold);C.available=E<0?0:E,ce.post("inventory/update-stock",{variant_id:C.id,post_id:C.post_id,new_stock:C.total_stock,reason:k,customReason:F||""}).then(S=>{Y.success(u(S.message))}).catch(S=>{var Q;S.status_code=="422"?Y.validationErrors(S):Y.error((Q=S.data)==null?void 0:Q.message)})};return Ie(()=>{c.value&&p.fetch()}),(w,C)=>{const b=B("router-link");return r(),h("div",BW,[n(sl,{title:A(u)("Inventory")},{action:d(()=>[n(Nt,{permission:"products/view"})]),_:1},8,["title"]),c.value?(r(),$(Nt,{key:0,permission:"products/view"},{default:d(()=>[o("div",kW,[n($s,{table:A(p),classicTabStyle:!0,"has-mobile-slot":!0},{mobile:d(()=>[n(nc,{data:A(p).getTableData(),"inventory-table":A(p),onStockSave:v,onBulkUpdateSuccess:y,onSelectionChanged:g},null,8,["data","inventory-table"])]),default:d(()=>[A(p).isLoading()?(r(),$(_W,{key:0,"next-page-count":A(p).nextPageCount,"inventory-table":A(p)},null,8,["next-page-count","inventory-table"])):(r(),$(nc,{key:1,data:A(p).getTableData(),"inventory-table":A(p),onStockSave:v,onBulkUpdateSuccess:y,onSelectionChanged:g},null,8,["data","inventory-table"]))]),_:1},8,["table"])])]),_:1})):s.value?(r(),h("div",xW,[n(Vn,{title:A(u)("Advanced Inventory")},{default:d(()=>[o("p",SW,[R(f(A(u)("This feature is only available in FluentCart Pro with "))+" ",1),n(b,{to:"/settings/addons",target:"_blank",rel:"noopener noreferrer"},{default:d(()=>[R(f(A(u)("Advanced Inventory enabled")),1)]),_:1})])]),_:1},8,["title"])])):(r(),$(bW,{key:1}))])}}}),$W={class:"setting-wrap"},EW={class:"setting-wrap-inner"},UW={key:0,class:"fct-all-notification-table-wrap"},IW={class:"fct-card-header"},QW={class:"w-full pb-2"},DW={class:"flex items-center justify-between gap-2 pb-2"},VW={class:"flex-1"},TW={style:{width:"120px"}},MW={class:"flex items-center justify-between gap-3",style:{width:"220px"}},LW={key:1,class:"fct-all-notification-table-wrap"},RW=["id"],OW={class:"fct-card-header"},HW={class:"w-full pb-2"},PW={class:"flex items-center justify-between gap-2 pb-2"},NW={class:"fct-card-header-title"},KW={class:"text-xs text-system-mid dark:text-gray-300"},GW={key:0,class:"m-0 mt-0 leading-5 text-system-mid dark:text-gray-300"},jW={class:"fct-card-body px-0 pb-0 pt-0"},zW={class:"m-0 mb-1"},qW={class:"m-0 text-xs leading-5 text-system-mid dark:text-gray-300"},YW={class:"m-0 text-sm"},WW={class:"fct-all-notification-actions flex items-center justify-between gap-3"},XW={key:1,class:"text-system-mid text-xs leading-5 dark:text-gray-300"},JW={class:"fct-btn-group sm flex-shrink-0"},ZW={__name:"EmailNotificationSettings",setup(e){const t=ll(),a=T(!0),l=T([]),s=N(()=>{if(!l.value.length)return[];const p={};return l.value.forEach(m=>{const _=(m==null?void 0:m.group)||"other";p[_]||(p[_]={key:_,label:(m==null?void 0:m.group_label)||u("Other Actions"),items:[]}),p[_].items.push(m)}),Object.values(p)}),i=()=>{a.value=!0,ce.get("email-notification").then(p=>{l.value=Object.values(p.data)}).catch(p=>{}).finally(()=>{a.value=!1,xe(()=>{requestAnimationFrame(()=>Zs.scrollToHashSection(t.hash))})})},c=(p,m)=>{ce.post("email-notification/enable-notification/"+m,{active:p}).then(_=>{Y.success(_.message)}).catch(_=>{var g;_.status_code=="422"?Y.validationErrors(_):Y.error((g=_.data)==null?void 0:g.message)}).finally(()=>{})};return Ie(()=>{i()}),(p,m)=>{const _=B("el-skeleton-item"),g=B("el-skeleton"),y=B("router-link"),v=B("el-table-column"),w=B("el-switch"),C=B("el-tooltip"),b=B("el-table");return r(),h("div",$W,[n(Qa,{heading:A(u)("Email Notifications"),"show-save-button":!1},null,8,["heading"]),o("div",EW,[n(Da),a.value?(r(),h("div",UW,[(r(),h(H,null,ae(2,k=>o("div",{key:k,class:"fct-card fct-notification-group mb-4 rounded border border-solid border-gray-divider overflow-hidden dark:border-dark-400"},[n(g,{animated:""},{template:d(()=>[o("div",IW,[o("div",QW,[o("div",DW,[n(_,{variant:"text",style:{width:"140px",height:"16px"}}),n(_,{variant:"text",style:{width:"100px",height:"14px"}})])])]),(r(),h(H,null,ae(4,F=>o("div",{key:F,class:"flex items-center gap-4 px-4 py-4 border-t border-solid border-x-0 border-b-0 border-gray-divider dark:border-dark-400"},[o("div",VW,[n(_,{variant:"text",style:{width:"50%",height:"14px",display:"block","margin-bottom":"8px"}}),n(_,{variant:"text",style:{width:"75%",height:"12px",display:"block"}})]),o("div",TW,[n(_,{variant:"text",style:{width:"70px",height:"14px",display:"block"}})]),o("div",MW,[n(_,{variant:"text",style:{width:"40px",height:"20px","border-radius":"10px",display:"block"}}),n(_,{variant:"text",style:{width:"28px",height:"28px","border-radius":"6px",display:"block"}})])])),64))]),_:1})])),64))])):(r(),h("div",LW,[s.value.length?(r(!0),h(H,{key:0},ae(s.value,k=>(r(),h("div",{key:k.key,id:k.key,class:"fct-card fct-notification-group overflow-hidden"},[o("div",OW,[o("div",HW,[o("div",PW,[o("h4",NW,f(k.label),1),o("span",KW,f(k.items.length)+" "+f(A(u)("Notifications")),1)]),k.key==="scheduler"?(r(),h("p",GW,[R(f(A(u)("This notification trigger is controlled from the Reminders section. You can configure it from"))+" ",1),n(y,{to:{path:"/settings/email_mailing_settings/reminders"},class:"underline hover:no-underline font-medium text-inherit hover:text-inherit"},{default:d(()=>[R(f(A(u)("reminder settings")),1)]),_:1})])):x("",!0)])]),o("div",jW,[n(b,{data:k.items,"show-header":!0},{default:d(()=>[n(v,{prop:"title",label:A(u)("Notification Name"),"min-width":"320"},{default:d(F=>[o("h4",zW,f(F.row.title),1),o("p",qW,f(F.row.description),1)]),_:1},8,["label"]),n(v,{prop:"recipient",label:A(u)("Recipient"),"min-width":"120"},{default:d(F=>[o("p",YW,f(A(da).headline(F.row.recipient)),1)]),_:1},8,["label"]),n(v,{label:A(u)("Enabled"),"min-width":"220"},{default:d(F=>{var M,E,S;return[o("div",WW,[((M=F.row)==null?void 0:M.manage_toggle)!=="no"?(r(),$(w,{key:0,onChange:Q=>c(Q,F.row.name),modelValue:F.row.settings.active,"onUpdate:modelValue":Q=>F.row.settings.active=Q,"active-value":"yes","inactive-value":"no"},null,8,["onChange","modelValue","onUpdate:modelValue"])):x("",!0),((E=F.row)==null?void 0:E.manage_toggle)==="no"?(r(),h("span",XW,f(((S=F.row)==null?void 0:S.toggle_label)||A(u)("Auto-enabled")),1)):x("",!0),o("div",JW,[n(C,{effect:"dark",content:A(u)("Edit"),placement:"top","popper-class":"fct-tooltip"},{default:d(()=>[n(Ze,{to:{name:"email_notifications/edit",params:{name:F.row.name}},size:"x-small",hover:"primary"},{default:d(()=>[n(J,{name:"Edit"})]),_:2},1032,["to"])]),_:2},1032,["content"])])])]}),_:1},8,["label"])]),_:2},1032,["data"])])],8,RW))),128)):(r(),$(bt,{key:1,icon:"Empty/EmailNotification","has-dark":!0,text:A(u)("No email notifications available! Please reactivate FluentCart!")},null,8,["text"]))]))])])}}},eX={__name:"ProVersionGuard",props:{minVersion:{type:String,required:!0},featureTitle:{type:String,default:""},featureText:{type:String,default:""}},setup(e){const t=e,a=je.get("app_config.isProActive"),l=je.get("app_config.proVersion"),s=a&&l&&l.localeCompare(t.minVersion,void 0,{numeric:!0})<0,i=u("This feature requires FluentCart Pro v%s or later. Please update FluentCart Pro to use this feature.").replace("%s",t.minVersion);return(c,p)=>{const m=B("el-alert");return A(a)&&!A(s)?ka(c.$slots,"default",{key:0}):A(s)?(r(),$(m,{key:1,type:"warning","show-icon":"",closable:!1,title:A(u)("Update Required"),description:A(i)},null,8,["title","description"])):(r(),$(Vn,{key:2,title:e.featureTitle,text:e.featureText},null,8,["title","text"]))}}},tX={class:"setting-wrap fct-edit-email-notification-wrapper"},aX={class:"capitalize"},lX={class:"setting-wrap-inner"},sX={class:"mb-5"},nX={class:"setting-switcher flex items-center gap-3"},oX={class:"text-sm text-system-dark dark:text-gray-50"},iX={class:"fct-card p-6"},rX={class:"mb-5"},dX={class:"el-form-item__label block mb-2"},uX={class:"mb-5"},cX={class:"el-form-item__label block mb-2"},AX={class:"el-form-item__label block mb-2"},pX={class:"mb-5"},fX={key:0,class:"setting-switcher"},mX={key:1,class:"setting-switcher text-system-mid text-sm dark:text-gray-300"},hX={class:"fct-seg-wrap"},_X={key:0,class:"fct-default-template-preview"},vX={class:"el-form-item__label"},gX={key:1,class:"fct-default-template-frame"},yX=["srcdoc"],bX={key:0,class:"el-form-item__label"},wX={key:1,class:"text-system-mid mb-3"},CX={key:2,class:"mb-4"},BX={class:"setting-save-action"},kX={key:0,style:{height:"300px"}},xX={class:"fct-preview-toolbar"},SX={class:"fct-preview-device-toggle"},FX={__name:"EditEmailNotification",props:{name:{type:String,required:!0}},setup(e){const t=je.get("app_config.isProActive"),a=e,l=T(!1),s=T(!1),i=T(a.name),c=T({title:"",description:"",event:"",name:"",recipient:"",smartcode_groups:[],template_path:"",is_async:!1,settings:{active:"",is_default_body:"yes",email_body:"",subject:"",attach_pdf_template:""}}),p=T(null),m=T({}),_=T([]),g=T(),y=(z,Z={})=>!z||typeof z!="object"?[]:(z.schema?[[z.form_name||"form",z]]:Object.entries(z)).filter(([,de])=>(de==null?void 0:de.schema)&&Object.keys(de.schema).length).map(([de,K])=>({...K,form_key:de,values:{...K.values||{},...Z[de]||{}}})),v=()=>{const Z=[].concat(g.value||[]).reduce((oe,de)=>typeof(de==null?void 0:de.getState)=="function"?{...oe,...de.getState()}:oe,{});return Object.keys(Z).length?{[i.value]:Z}:null},w=T(!1),C=T(!1),b=T([]),k=T(!1),F=T(!1),M=T(""),E=T("desktop"),S=T(null),Q=()=>{k.value=!0,F.value=!0,M.value="",ce.post("email-notification/preview",{notification_name:i.value,block_content:c.value.settings.email_body||""}).then(z=>{M.value=z.html,F.value=!1,xe(()=>U())}).catch(z=>{var Z;Y.error(((Z=z.data)==null?void 0:Z.message)||"Failed to generate preview"),k.value=!1,F.value=!1})},U=()=>{const z=S.value;if(!z||!M.value)return;const Z=z.contentDocument||z.contentWindow&&z.contentWindow.document;Z&&(Z.open(),Z.write(M.value),Z.close())},V=()=>{xe(()=>{M.value&&U()})},D=()=>{k.value=!1,M.value="",E.value="desktop"},I=T(""),O=T(!1),L=()=>{var Z;const z=(Z=c.value)==null?void 0:Z.template_path;!z||I.value||(O.value=!0,ce.post("email-notification/preview-default-template",{template:z}).then(oe=>{var de;I.value=((de=oe.data)==null?void 0:de.content)||""}).catch(()=>{}).finally(()=>{O.value=!1}))};be(()=>c.value.settings.is_default_body,z=>{z==="yes"&&!I.value&&L()});const P=z=>{c.value.settings.subject+=z},G=()=>{l.value=!0,ce.get("email-notification/"+i.value).then(z=>{var oe;c.value=z.data,m.value=z.shortcodes,C.value=z.has_fluent_pdf||!1,b.value=z.pdf_templates||[];const Z=((oe=c.value.settings.extra)==null?void 0:oe[i.value])||{};_.value=y(c.value.extra_fields,Z),c.value.settings.is_default_body==="yes"&&L()}).catch(z=>{var Z;z.status_code=="422"?Y.validationErrors(z):Y.error((Z=z.data)==null?void 0:Z.message)}).finally(()=>{l.value=!1})},j=()=>{s.value=!0;const z=JSON.parse(JSON.stringify(c.value)),Z=v();Z&&(z.settings.extra=Z),z.settings.is_default_body==="no"&&p.value&&p.value.forceAutosave(),ce.put("email-notification/"+i.value,z).then(oe=>{Y.success(oe.message)}).catch(oe=>{var de;oe.status_code=="422"?Y.validationErrors(oe):Y.error((de=oe.data)==null?void 0:de.message)}).finally(()=>{s.value=!1})};return Ie(()=>{G()}),(z,Z)=>{var tt;const oe=B("el-breadcrumb-item"),de=B("el-breadcrumb"),K=B("el-skeleton-item"),q=B("el-skeleton"),X=B("el-switch"),W=B("el-input"),re=B("el-form-item"),ye=B("el-form"),me=B("el-option"),ge=B("el-select"),se=B("el-button"),fe=B("el-drawer"),$e=Ma("loading");return r(),h("div",tX,[n(Qa,{loading:s.value,"loading-text":A(u)("Updating"),"save-button-text":A(u)("Update"),onOnSave:j},{heading:d(()=>[n(de,{class:"mb-0","separator-icon":A(dl)},{default:d(()=>[n(oe,{to:{path:"/settings/email_notifications"}},{default:d(()=>[R(f(z.$t("Email Notifications")),1)]),_:1}),n(oe,null,{default:d(()=>[o("span",aX,f(c.value.title),1)]),_:1})]),_:1},8,["separator-icon"])]),_:1},8,["loading","loading-text","save-button-text"]),o("div",lX,[n(Da),l.value?(r(),$(q,{key:0,animated:""},{template:d(()=>[o("div",sX,[o("div",nX,[n(K,{variant:"text",style:{width:"40px",height:"20px","border-radius":"10px"}}),o("span",oX,f(A(u)("Enable this email notification!")),1)])]),o("div",iX,[o("div",rX,[o("label",dX,f(A(u)("Email Subject")),1),n(K,{variant:"text",style:{width:"100%",height:"36px","border-radius":"4px",display:"block"}})]),o("div",uX,[o("label",cX,f(A(u)("Email Body Type")),1),n(K,{variant:"text",style:{width:"260px",height:"34px","border-radius":"6px",display:"block"}})]),o("div",null,[o("label",AX,f(A(u)("Email Body")),1),n(or)])])]),_:1})):x("",!0),l.value?x("",!0):(r(),h(H,{key:1},[o("div",pX,[((tt=c.value)==null?void 0:tt.manage_toggle)!=="no"?(r(),h("div",fX,[n(X,{modelValue:c.value.settings.active,"onUpdate:modelValue":Z[0]||(Z[0]=_e=>c.value.settings.active=_e),"active-value":"yes","inactive-value":"no","active-text":A(u)("Enable this email notification!")},null,8,["modelValue","active-text"])])):(r(),h("div",mX,f(A(u)("Auto-enabled for offline payments")),1))]),n(ke,null,{default:d(()=>[n(Ce,null,{default:d(()=>[n(ye,{"label-position":"top"},{default:d(()=>[n(re,{label:A(u)("Email Subject")},{default:d(()=>[n(W,{modelValue:c.value.settings.subject,"onUpdate:modelValue":Z[1]||(Z[1]=_e=>c.value.settings.subject=_e),autocomplete:"rutjfkde",class:ie({"is-focus":w.value}),onFocus:Z[2]||(Z[2]=_e=>w.value=!0),onBlur:Z[3]||(Z[3]=_e=>w.value=!1),label:A(u)("Email Subject")},{append:d(()=>[n(Pc,{data:m.value,onCommand:P,btnType:"info",btnSize:"small",plain:"",placement:"bottom"},{default:d(()=>[R(f(A(u)("Add ShortCodes")),1)]),_:1},8,["data"])]),_:1},8,["modelValue","class","label"])]),_:1},8,["label"]),n(re,{label:A(u)("Email Body Type")},{default:d(()=>[o("div",hX,[o("button",{type:"button",class:ie(["fct-seg-btn",{active:c.value.settings.is_default_body==="yes"}]),onClick:Z[4]||(Z[4]=_e=>c.value.settings.is_default_body="yes")},[Z[13]||(Z[13]=o("svg",{class:"fct-seg-icon",width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.2","stroke-linecap":"round","stroke-linejoin":"round"},[o("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),o("path",{d:"M9 9h6M9 13h6M9 17h4"})],-1)),R(" "+f(A(u)("Default Body")),1)],2),o("button",{type:"button",class:ie(["fct-seg-btn",{active:c.value.settings.is_default_body==="no"}]),onClick:Z[5]||(Z[5]=_e=>c.value.settings.is_default_body="no")},[Z[14]||(Z[14]=o("svg",{class:"fct-seg-icon",width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.2","stroke-linecap":"round","stroke-linejoin":"round"},[o("path",{d:"M12 20h9"}),o("path",{d:"M16.5 3.5a2.121 2.121 0 013 3L7 19l-4 1 1-4L16.5 3.5z"})],-1)),R(" "+f(A(u)("Customized Body"))+" ",1),A(t)?x("",!0):(r(),$(J,{key:0,name:"Crown",class:"fct-pro-icon",style:{"margin-left":"4px",display:"inline-flex"}}))],2)])]),_:1},8,["label"]),c.value.settings.is_default_body==="yes"?(r(),h("div",_X,[o("label",vX,f(A(u)("Email Body")),1),O.value?(r(),$(or,{key:0})):I.value?(r(),h("div",gX,[n(_o,{type:"warning",class:"mb-3","show-icon":"",description:A(u)("The preview shown here use sample data. Actual emails will be populated with real information.")},null,8,["description"]),o("iframe",{srcdoc:I.value,frameborder:"0",scrolling:"auto",style:{width:"100%",height:"600px",border:"1px solid #e4e7ed","border-radius":"6px",display:"block"}},null,8,yX)])):x("",!0)])):x("",!0),c.value.settings.is_default_body==="no"&&!l.value?(r(),$(eX,{key:1,"min-version":"1.3.15","feature-title":A(u)("Custom Email Templates"),"feature-text":A(u)("Design beautiful email templates with a drag-and-drop block editor, shortcodes, and conditional content.")},{default:d(()=>[n(re,{label:A(u)("Email Body")},{default:d(()=>[n(_o,{class:"mb-3",type:"warning","show-icon":"",description:A(u)("Shortcodes/Blocks shown here use sample data. Actual emails will be populated with real information.")},null,8,["description"]),n(Yc,{ref_key:"editorFrameRef",ref:p,editorParams:{block_type:"template",campaign_title:c.value.settings.subject,bid:c.value.name},frameHeight:"calc(100vh - 60px)",documentTitle:c.value.settings.subject,onTitleUpdated:Z[6]||(Z[6]=_e=>{c.value.settings.subject=_e}),onPreviewRequest:Q,modelValue:c.value.settings.email_body,"onUpdate:modelValue":Z[7]||(Z[7]=_e=>c.value.settings.email_body=_e)},null,8,["editorParams","documentTitle","modelValue"])]),_:1},8,["label"])]),_:1},8,["feature-title","feature-text"])):x("",!0)]),_:1})]),_:1})]),_:1}),(r(!0),h(H,null,ae(_.value,_e=>(r(),$(ke,{key:_e.form_key,class:"mt-4"},{default:d(()=>[n(Ce,null,{default:d(()=>[_e.title?(r(),h("h3",bX,f(_e.title),1)):x("",!0),_e.sub_title?(r(),h("p",wX,f(_e.sub_title),1)):x("",!0),n(mp,{schema:_e.schema,values:_e.values,form_name:_e.form_key,ref_for:!0,ref_key:"extraFormRefs",ref:g},null,8,["schema","values","form_name"])]),_:2},1024)]),_:2},1024))),128))],64)),C.value&&b.value.length?(r(),h("div",CX,[n(ke,null,{default:d(()=>[n(Ce,null,{default:d(()=>[n(ye,{"label-position":"top"},{default:d(()=>[n(re,{label:A(u)("Attach PDF Template")},{default:d(()=>[n(ge,{modelValue:c.value.settings.attach_pdf_template,"onUpdate:modelValue":Z[8]||(Z[8]=_e=>c.value.settings.attach_pdf_template=_e),placeholder:A(u)("No PDF attachment"),clearable:"",style:{width:"100%","max-width":"360px"}},{default:d(()=>[(r(!0),h(H,null,ae(b.value,_e=>(r(),$(me,{key:_e.id,label:_e.title,value:_e.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1})]),_:1})]),_:1})])):x("",!0),o("div",BX,[n(se,{onClick:j,type:"primary",disabled:s.value,loading:s.value},{default:d(()=>[R(f(A(u)("Update")),1)]),_:1},8,["disabled","loading"])])]),n(fe,{modelValue:k.value,"onUpdate:modelValue":Z[12]||(Z[12]=_e=>k.value=_e),direction:"rtl",size:"70%",title:A(u)("Email Preview"),"append-to-body":!0,"close-on-click-modal":!0,onOpen:V},{footer:d(()=>[n(se,{onClick:D},{default:d(()=>[R(f(A(u)("Close")),1)]),_:1})]),default:d(()=>[F.value?Gt((r(),h("div",kX,null,512)),[[$e,!0]]):x("",!0),!F.value&&M.value?(r(),h(H,{key:1},[o("div",xX,[o("div",SX,[o("button",{type:"button",class:ie(["fct-device-btn",{active:E.value==="desktop"}]),onClick:Z[9]||(Z[9]=_e=>E.value="desktop")},[Z[15]||(Z[15]=o("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[o("rect",{x:"2",y:"3",width:"20",height:"14",rx:"2"}),o("path",{d:"M8 21h8"}),o("path",{d:"M12 17v4"})],-1)),o("span",null,f(A(u)("Desktop")),1)],2),o("button",{type:"button",class:ie(["fct-device-btn",{active:E.value==="tablet"}]),onClick:Z[10]||(Z[10]=_e=>E.value="tablet")},[Z[16]||(Z[16]=o("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[o("rect",{x:"4",y:"2",width:"16",height:"20",rx:"2"}),o("path",{d:"M12 18h.01"})],-1)),o("span",null,f(A(u)("Tablet")),1)],2),o("button",{type:"button",class:ie(["fct-device-btn",{active:E.value==="mobile"}]),onClick:Z[11]||(Z[11]=_e=>E.value="mobile")},[Z[17]||(Z[17]=o("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[o("rect",{x:"5",y:"2",width:"14",height:"20",rx:"2"}),o("path",{d:"M12 18h.01"})],-1)),o("span",null,f(A(u)("Mobile")),1)],2)])]),n(_o,{class:"mb-3",type:"warning","show-icon":"",description:A(u)("The preview shown here uses sample data. Actual emails will be populated with real information.")},null,8,["description"]),o("div",{class:ie(["fct-preview-stage","fct-preview-stage--"+E.value])},[o("div",{class:ie(["fct-device-frame","fct-device-frame--"+E.value])},[o("iframe",{ref_key:"previewIframe",ref:S,frameborder:"0",scrolling:"auto",style:{width:"100%",height:"80vh",border:"none",display:"block"}},null,512)],2)],2)],64)):x("",!0)]),_:1},8,["modelValue","title"])])}}},$X={name:"StorageSettings",components:{Badge:fa,CardBody:Ce,CardContainer:ke,SettingsHeader:Qa,AdminNotice:Da},props:["settings"],data(){return{loading:!1,availableDrivers:[]}},mounted(){this.getStorageDrivers()},methods:{translate:u,getLogo(e){return e},getDarkLogo(e){return e||null},getRowLabel(e){return`${this.translate("Manage storage provider")}: ${e.title}`},getToggleLabel(e){return`${this.translate("Toggle storage driver status")}: ${e.title}`},canToggle(e){return!e.has_bucket&&!e.requires_pro},canManage(e){return!!e.route||!!e.upgrade_url},handleDriverAction(e){if(e.upgrade_url&&!e.route){window.open(e.upgrade_url,"_blank","noopener,noreferrer");return}e.route&&this.$router.push({name:e.route})},toggleStatus(e){const t=e.is_active_input,a=t==="yes"?"no":"yes";e.saving=!0,this.$post("settings/storage-drivers/change-status",{driver:e.route,status:t}).then(l=>{e.status=t==="yes",this.$notify({type:"success",title:this.translate("Success"),message:l.message})}).catch(l=>{e.is_active_input=a,this.handleError(l)}).finally(()=>{e.saving=!1})},getStorageDrivers(){this.loading=!0,this.$get("settings/storage-drivers").then(e=>{this.availableDrivers=Object.values(e.drivers||{}).map(t=>({...t,is_active_input:t.status?"yes":"no",saving:!1}))}).catch(e=>{this.handleError(e)}).finally(()=>{this.loading=!1})}}},EX={class:"setting-wrap"},UX={class:"setting-wrap-inner"},IX={key:0,class:"storage-setting-list fct-content-card-list"},QX=["role","tabindex","aria-label","onClick","onKeydown"],DX={class:"flex items-start gap-3"},VX=["src","alt"],TX=["src","alt"],MX={class:"flex-1 min-w-0 pl-15"},LX={class:"fct-content-card-list-head"},RX={class:"title-wrap"},OX={class:"fct-content-card-list-content"},HX=["src","alt"];function PX(e,t,a,l,s,i){const c=B("SettingsHeader"),p=B("AdminNotice"),m=B("el-skeleton"),_=B("Badge"),g=B("el-switch"),y=B("el-button"),v=B("CardBody"),w=B("CardContainer");return r(),h("div",EX,[n(c,{heading:i.translate("Storage Providers"),"show-save-button":!1},null,8,["heading"]),o("div",UX,[n(p),n(w,null,{default:d(()=>[n(v,null,{default:d(()=>[n(m,{loading:s.loading,animated:"",rows:6},null,8,["loading"]),s.loading?x("",!0):(r(),h("div",IX,[(r(!0),h(H,null,ae(s.availableDrivers,(C,b)=>(r(),h("div",{key:C.route||b,class:ie(["fct-content-card-list-item",i.canManage(C)?"cursor-pointer":""]),role:i.canManage(C)?"button":void 0,tabindex:i.canManage(C)?0:-1,"aria-label":i.getRowLabel(C),onClick:k=>i.handleDriverAction(C),onKeydown:[xa(Ne(k=>i.handleDriverAction(C),["prevent"]),["enter"]),xa(Ne(k=>i.handleDriverAction(C),["prevent"]),["space"])]},[o("div",DX,[o("div",{class:ie(`fct-content-card-list-icon ${C.title.toLowerCase()}`)},[o("img",{class:ie({"dark:hidden":i.getDarkLogo(C.dark_logo)}),src:i.getLogo(C.logo),alt:C.title},null,10,VX),i.getDarkLogo(C.dark_logo)?(r(),h("img",{key:0,src:i.getDarkLogo(C.dark_logo),alt:C.title,class:"hidden dark:block"},null,8,TX)):x("",!0)],2),o("div",MX,[o("div",LX,[o("div",RX,[o("h6",null,f(C.title),1)]),n(_,{size:"small",status:C.status?"active":"inactive","hide-icon":!0},null,8,["status"])]),o("div",OX,[o("p",null,f(C.description),1)])]),i.canToggle(C)?(r(),h("div",{key:0,class:"fct-content-card-list-action",onClick:t[0]||(t[0]=Ne(()=>{},["stop"])),onKeydown:t[1]||(t[1]=Ne(()=>{},["stop"]))},[n(g,{modelValue:C.is_active_input,"onUpdate:modelValue":k=>C.is_active_input=k,"active-value":"yes","inactive-value":"no",loading:C.saving,"aria-label":i.getToggleLabel(C),onChange:k=>i.toggleStatus(C)},null,8,["modelValue","onUpdate:modelValue","loading","aria-label","onChange"])],32)):i.canManage(C)?(r(),h("div",{key:1,class:"fct-content-card-list-action",onClick:t[2]||(t[2]=Ne(()=>{},["stop"])),onKeydown:t[3]||(t[3]=Ne(()=>{},["stop"]))},[n(y,{class:"el-button--x-small",onClick:k=>i.handleDriverAction(C)},{default:d(()=>{var k;return[C.requires_pro?(r(),h("img",{key:0,src:((k=e.appVars)==null?void 0:k.asset_url)+"images/crown.svg",alt:i.translate("Pro feature"),class:"pro-feature-icon"},null,8,HX)):x("",!0),R(" "+f(i.translate("Manage")),1)]}),_:2},1032,["onClick"])],32)):x("",!0)])],42,QX))),128))]))]),_:1})]),_:1})])])}const NX=at($X,[["render",PX]]),KX={class:"fct-setting-header"},GX={key:0,class:"fct-setting-header-action"},jX={class:"setting-wrap-inner"},oc={__name:"GlobalStorageComponents",setup(e){const t=T({}),a=T(""),l=T({}),s=T(!1),i=T(!1),c=T(""),p=pd(),m=T({}),_=N(()=>!!a.value),g=ll(),y=fs(),v=()=>{i.value=!0,ce.get("settings/storage-drivers/"+c.value).then(b=>{t.value=b.settings||{},a.value=b.template||"",l.value=b.template_payload||{},m.value={},b.template||p.setSchema(b.fields).setDefaults(b.settings).initForm()}).catch(b=>{var k;t.value={},a.value="",l.value={},m.value={},p.setSchema({}).setDefaults({}),Y.error(((k=b==null?void 0:b.data)==null?void 0:k.message)||u("Failed to load storage settings."))}).finally(()=>{i.value=!1})},w=()=>{if(_.value)return;let b=p.values;s.value=!0,ce.post("settings/storage-drivers",{settings:{...b},driver:c.value}).then(k=>{var F;t.value.is_active=(F=k.data)==null?void 0:F.is_active,Y.success(k.message||u("Storage Settings updated!")),p.values=k.data,k.data.shouldReload&&v()}).catch(k=>{var F;k.status_code=="422"?Y.validationErrors(k):Y.error((F=k.data)==null?void 0:F.message)}).finally(()=>{s.value=!1})},C=()=>{c.value=g.name};return be(g,(b,k)=>{C(),v()}),y.onSave(()=>{_.value||w()}),Ie(()=>{C(),v()}),(b,k)=>{const F=B("el-breadcrumb-item"),M=B("el-breadcrumb"),E=B("el-button"),S=B("el-skeleton");return r(),h("div",{class:ie(["setting-wrap",c.value])},[o("div",KX,[n(M,{class:"mb-0","separator-icon":A(dl)},{default:d(()=>[n(F,{to:{name:"storage"}},{default:d(()=>[R(f(A(u)("Storage Providers")),1)]),_:1}),A(da).headline(c.value)?(r(),$(F,{key:0},{default:d(()=>[R(f(A(da).headline(c.value)),1)]),_:1})):x("",!0)]),_:1},8,["separator-icon"]),_.value?x("",!0):(r(),h("div",GX,[n(E,{type:"primary",onClick:w,loading:s.value,disabled:s.value||i.value,size:"small"},{default:d(()=>[R(f(A(u)("Save")),1)]),_:1},8,["loading","disabled"])]))]),o("div",jX,[n(Da),i.value?(r(),$(ke,{key:0},{default:d(()=>[n(Ce,null,{default:d(()=>[n(S,{loading:i.value,animated:"",rows:5},null,8,["loading"])]),_:1})]),_:1})):(r(),h(H,{key:1},[_.value?(r(),$(hp,{key:0,widget:{type:"vue-template",component:a.value,payload:l.value},data:{route_name:c.value}},null,8,["widget","data"])):(r(),$(vi,{key:1,form:A(p),showSubmitButton:!1,loading:s.value,onOnChange:k[0]||(k[0]=Q=>{}),"validation-errors":m.value},null,8,["form","loading","validation-errors"]))],64))])],2)}}},zX=["innerHTML"],qX={class:"fct-select-template-wrap"},YX={class:"fct-select-template-wrap flex gap-2 flex-row"},WX={class:"setting-save-action"},XX={__name:"AddEmailNotification",setup(e){const t=zt().ctx,a=T(),l=T(!0),s=T(!1),i=T({}),c=T(),p=T([{label:u("After Order Created"),value:"fluent_cart/order_created"},{label:u("After Order Updated"),value:"fluent_cart/order_updated"},{label:u("After Payment Paid"),value:"fluent_cart/order_paid"},{label:u("After User Created"),value:"fluent_cart/user_created"},{label:u("After Refund made"),value:"fluent_cart/order_refunded"}]),m=T({}),_=T([{label:"Admin Email",value:"{wp.admin_email}"},{label:"Customer Email",value:"{order.customer.email}"},{label:"User Email",value:"{user.user_email}"}]),g=T({}),y=T({});al(),ll();let v=null;const w=T([]),C=T([]),b=T({});fs().onSave(()=>{S()});const F=O=>{const L=O;t.$post("email-notification/getTemplate/",{template:L}).then(P=>{var G;i.value.content=P.data.content,(G=a.value)==null||G.setContent(i.value.content)}).catch(P=>{}).finally(()=>{l.value=!1})},M=()=>{var O;(O=a.value)==null||O.setContent("")},E=()=>{l.value=!0,t.$get("email-notification/get-short-codes").then(O=>{m.value=O.data.shortcodes,g.value=O.data.email_templates,y.value=Object.keys(O.data.buttons).map(L=>({[L]:O.data.buttons[L]}))}).catch(O=>{}).finally(()=>{l.value=!1})},S=O=>{O&&O.preventDefault(),b.value={},l.value=!0,t.$post("email-notification/create",i.value).then(L=>{t.handleSuccess(L)}).catch(L=>{var P;L.status_code=="422"?(Y.validationErrors(L),b.value=L.data):Y.error((P=L.data)==null?void 0:P.message)}).finally(()=>{l.value=!1})},Q=()=>{s.value=!0,c.value=i.value.content};Ie(()=>{E()});const U=O=>{v=O},V=O=>{b.value&&b.value.hasOwnProperty(O)&&delete b.value[O]},D=()=>{i.value.to=w.value},I=()=>{i.value.from=C.value};return(O,L)=>{const P=B("el-dialog"),G=B("el-input"),j=B("el-form-item"),z=B("el-option"),Z=B("el-select"),oe=B("el-col"),de=B("el-row"),K=B("el-tooltip"),q=B("el-button"),X=B("el-form");return r(),$(ke,null,{default:d(()=>[n(Qe,{title:i.value.title?i.value.title:A(u)("Add Notification"),title_size:"small",border_bottom:"",icon:"Message"},{action:d(()=>L[20]||(L[20]=[])),_:1},8,["title"]),n(Ce,null,{default:d(()=>[n(P,{modelValue:s.value,"onUpdate:modelValue":L[0]||(L[0]=W=>s.value=W),title:O.$t("Preview")},{default:d(()=>[o("div",{innerHTML:c.value},null,8,zX)]),_:1},8,["modelValue","title"]),n(X,{"label-position":"top","require-asterisk-position":"right"},{default:d(()=>[n(j,{label:O.$t("Notification Name"),required:""},{default:d(()=>{var W,re;return[n(G,{modelValue:i.value.title,"onUpdate:modelValue":L[1]||(L[1]=ye=>i.value.title=ye),onFocus:L[2]||(L[2]=ye=>V("title"))},null,8,["modelValue"]),n(fl,{"validation-errors":(re=(W=b.value)==null?void 0:W.title)==null?void 0:re.required},null,8,["validation-errors"])]}),_:1},8,["label"]),n(j,{label:O.$t("Select notification event"),required:""},{default:d(()=>{var W,re;return[n(Z,{multiple:!0,modelValue:i.value.events,"onUpdate:modelValue":L[3]||(L[3]=ye=>i.value.events=ye),placeholder:O.$t("Select Events"),onFocus:L[4]||(L[4]=ye=>V("events")),clearable:""},{default:d(()=>[(r(!0),h(H,null,ae(p.value,ye=>(r(),$(z,{key:ye.value,label:ye.label,value:ye.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"]),n(fl,{"validation-errors":(re=(W=b.value)==null?void 0:W.events)==null?void 0:re.required},null,8,["validation-errors"])]}),_:1},8,["label"]),n(de,{gutter:15},{default:d(()=>[n(oe,{lg:12},{default:d(()=>[n(j,{label:O.$t("Mail From:"),required:""},{default:d(()=>{var W,re;return[n(G,{modelValue:i.value.from,"onUpdate:modelValue":L[7]||(L[7]=ye=>i.value.from=ye),onFocus:L[8]||(L[8]=ye=>V("from")),placeholder:O.$t("Select a Field or Type Custom Value")},{append:d(()=>[n(Z,{modelValue:C.value,"onUpdate:modelValue":L[5]||(L[5]=ye=>C.value=ye),onChange:L[6]||(L[6]=ye=>I()),clearable:""},{default:d(()=>[(r(!0),h(H,null,ae(_.value,ye=>(r(),$(z,{key:ye.value,label:ye.label,value:ye.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue","placeholder"]),n(fl,{"validation-errors":(re=(W=b.value)==null?void 0:W.from)==null?void 0:re.required},null,8,["validation-errors"])]}),_:1},8,["label"])]),_:1}),n(oe,{lg:12},{default:d(()=>[n(j,{label:O.$t("Send Mail To:"),required:""},{default:d(()=>{var W,re;return[n(G,{modelValue:i.value.to,"onUpdate:modelValue":L[11]||(L[11]=ye=>i.value.to=ye),onFocus:L[12]||(L[12]=ye=>V("to"))},{append:d(()=>[n(Z,{modelValue:w.value,"onUpdate:modelValue":L[9]||(L[9]=ye=>w.value=ye),onChange:L[10]||(L[10]=ye=>D()),clearable:""},{default:d(()=>[(r(!0),h(H,null,ae(_.value,ye=>(r(),$(z,{key:ye.value,label:ye.label,value:ye.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),n(fl,{"validation-errors":(re=(W=b.value)==null?void 0:W.to)==null?void 0:re.required},null,8,["validation-errors"])]}),_:1},8,["label"])]),_:1})]),_:1}),n(j,{label:O.$t("Cc:")},{default:d(()=>[n(G,{modelValue:i.value.cc,"onUpdate:modelValue":L[13]||(L[13]=W=>i.value.cc=W)},null,8,["modelValue"])]),_:1},8,["label"]),n(j,{label:O.$t("Mail Subject:"),required:""},{default:d(()=>{var W,re;return[n(G,{modelValue:i.value.subject,"onUpdate:modelValue":L[14]||(L[14]=ye=>i.value.subject=ye),onFocus:L[15]||(L[15]=ye=>V("subject"))},null,8,["modelValue"]),n(fl,{"validation-errors":(re=(W=b.value)==null?void 0:W.subject)==null?void 0:re.required},null,8,["validation-errors"])]}),_:1},8,["label"]),o("div",null,[n(Wl,{ref_key:"wpEditor",ref:a,"short-codes":m.value,buttons:y.value,onOnEditorReady:U,onUpdate:L[18]||(L[18]=W=>{i.value.content=W}),modelValue:i.value.content,"onUpdate:modelValue":L[19]||(L[19]=W=>i.value.content=W)},{action:d(()=>[o("div",qX,[n(Z,{onChange:L[16]||(L[16]=W=>{var re;(re=a.value)==null||re.setContent(W)}),placeholder:O.$t("Select button"),clearable:""},{default:d(()=>[(r(!0),h(H,null,ae(y.value,(W,re)=>(r(),$(z,{key:re,label:Object.keys(W)[0],value:Object.values(W)[0]},null,8,["label","value"]))),128))]),_:1},8,["placeholder"])]),o("div",YX,[n(Z,{onChange:L[17]||(L[17]=W=>{F(W)}),placeholder:O.$t("Select template"),clearable:""},{default:d(()=>[(r(!0),h(H,null,ae(g.value,(W,re)=>(r(),$(z,{key:re,label:W.label,value:W.path},null,8,["label","value"]))),128))]),_:1},8,["placeholder"]),o("span",null,[n(K,{effect:"dark",content:O.$t("Reset Template"),placement:"top","popper-class":"fct-tooltip"},{default:d(()=>[n(Ze,{onClick:Ne(M,["prevent"]),tag:"button"},{default:d(()=>[n(J,{name:"Refresh"})]),_:1})]),_:1},8,["content"])])])]),preview_button:d(()=>[A(v)!==null?(r(),$(K,{key:0,effect:"dark",content:O.$t("Preview Template"),placement:"top","popper-class":"fct-tooltip"},{default:d(()=>[n(Ze,{onClick:Ne(Q,["prevent"]),tag:"button"},{default:d(()=>[n(J,{name:"Eye"})]),_:1})]),_:1},8,["content"])):x("",!0)]),_:1},8,["short-codes","buttons","modelValue"])]),o("div",WX,[n(q,{onClick:S,type:"primary",disabled:l.value,loading:l.value},{default:d(()=>[R(f(O.$t("Save Notification")),1)]),_:1},8,["disabled","loading"])])]),_:1})]),_:1})]),_:1})}}};class JX extends Fs{getTabs(){return{all:u("All"),success:u("Success"),warning:u("Warning"),error:u("Error"),failed:u("Failed"),info:u("Info"),api:u("API Only")}}getToggleableColumns(){return[{label:"Title",value:"title"},{label:"Content",value:"content"},{label:"Date",value:"date"},{label:"Actions",value:"actions"}]}getSortableColumns(){return[{label:u("ID"),value:"id"},{label:u("Title"),value:"title"},{label:u("Created At"),value:"created_at"}]}getSearchHint(){return u("Search by id, title, content or module.")}getFetchUrl(){return"activity"}parseResponse(t){return t.activities}getTableName(){return"log_table"}getAdvanceFilterOptions(){return null}getSearchGuideOptions(){return[]}}function ZX(e){return JX.init(e)}const eJ={class:"fct-table-mobile-wrap fct-logs-table-mobile-wrap"},tJ={class:"fct-table-mobile-header"},aJ={class:"fct-table-date-col"},lJ={class:"mark-read-unread-wrap"},sJ=["onClick","title"],nJ=["onClick","title"],oJ=["title"],iJ={class:"fct-table-mobile-body"},rJ={key:0,class:"fct-table-title-col"},dJ={key:1,class:"fct-table-content-col"},uJ={class:"fct-table-mobile-footer"},cJ={class:"fct-table-mobile-footer-row"},AJ={class:"fct-table-status-col"},pJ={class:"title"},fJ={class:"fct-table-module-col"},mJ={class:"title"},hJ={class:"value"},_J={key:0,class:"fct-table-actions-col"},vJ={class:"title"},gJ={__name:"LogsTableMobile",props:{table:{type:Object}},emits:["changeStatus"],setup(e,{emit:t}){const a=t,l=(s,i)=>{a("changeStatus",s,i)};return(s,i)=>{const c=B("el-icon"),p=B("router-link");return r(),h("div",eJ,[(r(!0),h(H,null,ae(e.table.getTableData(),(m,_)=>(r(),h("div",{key:m.id,class:"fct-table-mobile-row"},[o("div",tJ,[o("div",aJ,[o("div",lJ,[m.read_status!=="unread"?(r(),h("span",{key:0,onClick:g=>l(m,"unread"),title:A(u)("Mark as unread")},[n(c,null,{default:d(()=>[n(A(ko))]),_:1})],8,sJ)):(r(),h("span",{key:1,onClick:g=>l(m,"read"),title:A(u)("Mark as read")},[n(c,null,{default:d(()=>[n(A(ti))]),_:1})],8,nJ))]),o("div",{title:A(u)("Logs ID: %s",m.id),class:"invoice-no"}," #"+f(m.id),9,oJ),e.table.isColumnVisible("date")?(r(),h(H,{key:0},[i[0]||(i[0]=o("span",{class:"bullet"},"•",-1)),n(Na,{class:"date","date-time":m.created_at,"with-time":!0},null,8,["date-time"])],64)):x("",!0)])]),o("div",iJ,[e.table.isColumnVisible("title")?(r(),h("div",rJ,f(m.title),1)):x("",!0),e.table.isColumnVisible("content")?(r(),h("div",dJ,f(m.content),1)):x("",!0)]),o("div",uJ,[o("div",cJ,[o("div",AJ,[o("div",pJ,f(A(u)("Status")),1),(r(),$(fa,{status:m.status,size:"small",key:m.id},null,8,["status"]))]),o("div",fJ,[o("div",mJ,f(A(u)("Module")),1),o("div",hJ,f(m.module_name),1)]),e.table.isColumnVisible("actions")?(r(),h("div",_J,[o("div",vJ,f(A(u)("Actions")),1),m.module_id&&m.module_name.toLowerCase()==="order"?(r(),$(p,{key:0,class:"value",to:{name:"view_order",params:{order_id:m.module_id}}},{default:d(()=>[R(f(A(u)("View")),1)]),_:2},1032,["to"])):x("",!0),m.module_id&&m.module_name.toLowerCase()==="subscription"?(r(),$(p,{key:1,class:"value",to:{name:"view_subscription",params:{subscription_id:m.module_id}}},{default:d(()=>[R(f(A(u)("View")),1)]),_:2},1032,["to"])):x("",!0)])):x("",!0)])])]))),128))])}}},yJ={},bJ={class:"px-4 py-3"},wJ={class:"grid grid-cols-3 gap-5 mt-5"};function CJ(e,t){const a=B("el-skeleton-item"),l=B("el-skeleton");return r(),$(l,{animated:""},{template:d(()=>[o("div",bJ,[(r(),h(H,null,ae(2,s=>o("div",{key:s,class:"flex items-center justify-between mb-3"},[n(a,{varient:"p",class:"w-1/2"}),n(a,{varient:"p",class:"w-[100px]"})])),64)),o("div",wJ,[(r(),h(H,null,ae(3,s=>o("div",{key:s},[n(a,{varient:"p",class:"w-1/2"}),n(a,{varient:"p",class:"w-[100px]"})])),64))])])]),_:1})}const BJ=at(yJ,[["render",CJ]]),kJ={class:"table-cell"},xJ={class:"table-cell"},SJ={class:"table-cell"},FJ={class:"table-cell"},$J={class:"table-cell"},EJ={class:"table-cell"},UJ={class:"table-cell"},IJ={__name:"LogsLoader",props:{nextPageCount:{type:Number,default:0},logTable:{type:Object,default:()=>({})}},setup(e){const t=e,a=Array.from({length:t.nextPageCount},(l,s)=>s+1);return(l,s)=>{const i=B("el-skeleton-item"),c=B("el-skeleton"),p=B("el-table-column"),m=B("el-table");return r(),$(m,{data:A(a),class:"w-full compact-table full-compact"},{default:d(()=>[n(p,{width:100,label:A(u)("ID")},{default:d(()=>[o("div",kJ,[n(c,{animated:""},{template:d(()=>[n(i,{varient:"p"})]),_:1})])]),_:1},8,["label"]),e.logTable.isColumnVisible("date")?(r(),$(p,{key:0,label:A(u)("Date"),width:120},{default:d(()=>[o("div",xJ,[n(c,{animated:""},{template:d(()=>[n(i,{varient:"p"})]),_:1})])]),_:1},8,["label"])):x("",!0),e.logTable.isColumnVisible("title")?(r(),$(p,{key:1,label:A(u)("Title"),width:200},{default:d(()=>[o("div",SJ,[n(c,{animated:""},{template:d(()=>[n(i,{varient:"p"})]),_:1})])]),_:1},8,["label"])):x("",!0),e.logTable.isColumnVisible("content")?(r(),$(p,{key:2,label:A(u)("Content"),width:200},{default:d(()=>[o("div",FJ,[n(c,{animated:""},{template:d(()=>[n(i,{varient:"p"})]),_:1})])]),_:1},8,["label"])):x("",!0),n(p,{label:A(u)("Status"),width:100},{default:d(()=>[o("div",$J,[n(c,{animated:""},{template:d(()=>[n(i,{varient:"p"})]),_:1})])]),_:1},8,["label"]),n(p,{label:A(u)("Module"),width:100},{default:d(()=>[o("div",EJ,[n(c,{animated:""},{template:d(()=>[n(i,{varient:"p"})]),_:1})])]),_:1},8,["label"]),e.logTable.isColumnVisible("actions")?(r(),$(p,{key:3,label:A(u)("Actions"),width:100},{default:d(()=>[o("div",UJ,[n(c,{animated:""},{template:d(()=>[n(i,{varient:"p"})]),_:1})])]),_:1},8,["label"])):x("",!0)]),_:1},8,["data"])}}},QJ={class:"fct-all-logs-page fct-layout-width"},DJ={key:1},VJ={class:"inline-flex items-center gap-1"},TJ=["onClick","title"],MJ=["onClick","title"],LJ={__name:"Logs",setup(e){const t=zt().ctx,a=ZX(),l=T([]),s=(i,c)=>{t.$put("activity/"+i.id+"/mark-read",{id:i.id,status:c}).then(p=>{l.value.find(m=>m.id===i.id).read_status=c,t.handleSuccess(p)}).catch(p=>{var m;p.status_code=="422"?Y.validationErrors(p):Y.error((m=p.data)==null?void 0:m.message)})};return a.onDataLoaded(function(){l.value=a.getTableData()}),(i,c)=>{const p=B("el-icon"),m=B("el-table-column"),_=B("el-button"),g=B("el-table");return r(),h("div",QJ,[n(sl,{title:A(u)("Logs")},null,8,["title"]),n($s,{table:A(a),classicTabStyle:!0,"has-mobile-slot":!0},{mobile:d(()=>[A(a).isLoading()?(r(),$(BJ,{key:0})):x("",!0),A(a).isLoading()?x("",!0):(r(),$(gJ,{key:1,table:A(a),onChangeStatus:s},null,8,["table"]))]),default:d(()=>[A(a).isLoading()?(r(),$(IJ,{key:0,logTable:A(a),"next-page-count":A(a).nextPageCount},null,8,["logTable","next-page-count"])):(r(),h("div",DJ,[n(g,{class:"w-full",data:A(a).getTableData()},{empty:d(()=>[n(bt,{icon:"Empty/ListView","has-dark":!0,text:A(u)("We could't find any logs matching your filter.")},null,8,["text"])]),default:d(()=>[n(m,{label:A(u)("ID"),width:100},{default:d(y=>[o("div",VJ,[y.row.read_status!=="unread"?(r(),h("span",{key:0,onClick:v=>s(y.row,"unread"),title:A(u)("Mark as unread"),class:"cursor-pointer"},[n(p,null,{default:d(()=>[n(A(ko))]),_:1})],8,TJ)):(r(),h("span",{key:1,onClick:v=>s(y.row,"read"),title:A(u)("Mark as read"),class:"cursor-pointer"},[n(p,null,{default:d(()=>[n(A(ti))]),_:1})],8,MJ)),R(" #"+f(A(Zt)(y.row.id)),1)])]),_:1},8,["label"]),A(a).isColumnVisible("date")?(r(),$(m,{key:0,label:A(u)("Date"),width:120},{default:d(y=>[n(Na,{"date-time":y.row.created_at},null,8,["date-time"])]),_:1},8,["label"])):x("",!0),A(a).isColumnVisible("title")?(r(),$(m,{key:1,label:A(u)("Title"),width:200},{default:d(y=>[R(f(y.row.title),1)]),_:1},8,["label"])):x("",!0),A(a).isColumnVisible("content")?(r(),$(m,{key:2,label:A(u)("Content"),width:200},{default:d(y=>[R(f(y.row.content),1)]),_:1},8,["label"])):x("",!0),n(m,{label:A(u)("Status"),width:100},{default:d(y=>[(r(),$(fa,{status:y.row.status,size:"small",key:y.row.id},null,8,["status"]))]),_:1},8,["label"]),n(m,{label:A(u)("Module"),width:100},{default:d(y=>[R(f(y.row.module_name),1)]),_:1},8,["label"]),A(a).isColumnVisible("actions")?(r(),$(m,{key:3,label:A(u)("Actions"),width:80},{default:d(y=>[y.row.module_id&&y.row.module_name.toLowerCase()==="order"?(r(),$(_,{key:0,tag:"router-link",class:"el-button--x-small",to:{name:"view_order",params:{order_id:y.row.module_id}}},{default:d(()=>[R(f(A(u)("View")),1)]),_:2},1032,["to"])):x("",!0),y.row.module_id&&y.row.module_name.toLowerCase()==="subscription"?(r(),$(_,{key:1,tag:"router-link",class:"el-button--x-small",to:{name:"view_subscription",params:{subscription_id:y.row.module_id}}},{default:d(()=>[R(f(A(u)("View")),1)]),_:2},1032,["to"])):x("",!0)]),_:1},8,["label"])):x("",!0)]),_:1},8,["data"])]))]),_:1},8,["table"])])}}},RJ=["title"],OJ={__name:"RemoveButton",props:{filterKey:{type:String,required:!0},itemId:{type:[String,Number],default:null}},emits:["remove"],setup(e,{emit:t}){const a=e,l=t,s=()=>{l("remove",{filterKey:a.filterKey,itemId:a.itemId})};return(i,c)=>(r(),h("button",{class:"fct-applied-filter-remove",onClick:s,title:i.$t("Remove")},[n(J,{name:"Close"})],8,RJ))}},HJ={__name:"StatusFilter",props:{filterState:{type:[Object]},filterItem:{type:Object,required:!0},filterItemKey:{type:String,required:!0}},setup(e){const a=e.filterState;return(l,s)=>{const i=B("el-option"),c=B("el-select");return r(),$(c,{modelValue:A(a).data.selectedFilters[e.filterItemKey].value,"onUpdate:modelValue":s[0]||(s[0]=p=>A(a).data.selectedFilters[e.filterItemKey].value=p),placeholder:l.$t("Select Status"),filterable:"",onChange:A(a).applyFilterChange,"popper-class":"fct-dropdown-compact",size:"small"},{default:d(()=>[(r(!0),h(H,null,ae(e.filterItem.options,p=>(r(),$(i,{key:p.value,label:p.label,value:p.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"])}}},Op={__name:"DateRangeFilter",props:{modelValue:Array,type:{type:String,default:"daterange"},separator:{type:String,default:"-"},startPlaceholder:{type:String,default:""},endPlaceholder:{type:String,default:""},unlinkPanels:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},placement:{type:String,default:"bottom-end"},showArrow:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},filterState:{type:[Object]}},emits:["update:modelValue","change"],setup(e,{emit:t}){const a=e,l=t,s=a.filterState,i=T(null),c=N({get:()=>a.modelValue,set:g=>l("update:modelValue",g)}),p=N(()=>je.get("app_config.isProActive"));function m(g){l("change",g)}function _(){s.data.dateRange=[Aa.withTimezone(lt().subtract(1,"month").format("YYYY-MM-DD 00:00:00")),Aa.withTimezone(lt().format("YYYY-MM-DD 23:59:59"))],l("change",s.data.dateRange)}return vl(()=>{}),(g,y)=>{const v=B("el-date-picker"),w=Ma("translate-numbers");return r(),h("div",{class:ie(`fct-date-range-filter ${e.clearable?"is-clearable":""}`)},[Gt(n(v,{ref_key:"datePickerRef",ref:i,modelValue:c.value,"onUpdate:modelValue":y[0]||(y[0]=C=>c.value=C),type:e.type,"range-separator":e.separator,"start-placeholder":e.startPlaceholder||A(u)("Start date"),"end-placeholder":e.endPlaceholder||A(u)("End date"),"unlink-panels":e.unlinkPanels,clearable:e.clearable,shortcuts:A(Hc),onChange:m,placement:e.placement,disabled:e.disabled||!p.value},null,8,["modelValue","type","range-separator","start-placeholder","end-placeholder","unlink-panels","clearable","shortcuts","placement","disabled"]),[[w,"translate-numbers"]]),e.showArrow?(r(),$(J,{key:0,name:"ChevronDown",class:"fct-applied-filter-expand-icon"})):x("",!0),p.value&&e.clearable?(r(),$(J,{key:1,onClick:_,name:"CircleClose",class:"fct-applied-filter-clear-all"})):x("",!0)],2)}}},Hp={__name:"CurrencyFilter",props:{modelValue:String,currencies:{type:Array,required:!0}},emits:["update:modelValue","change"],setup(e,{emit:t}){const a=e,l=t,s=N({get:()=>a.modelValue,set:c=>l("update:modelValue",c)}),i=c=>{l("change",c)};return(c,p)=>{const m=B("el-option"),_=B("el-select");return r(),$(_,{modelValue:s.value,"onUpdate:modelValue":p[0]||(p[0]=g=>s.value=g),placeholder:c.$t("Select Currency"),filterable:"",onChange:i,"popper-class":"fct-dropdown-compact",size:"small"},{default:d(()=>[(r(!0),h(H,null,ae(e.currencies,(g,y)=>(r(),$(m,{key:y,label:g.label,value:g.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])}}},PJ={__name:"ResetFilters",props:{filterState:{type:[Object]}},setup(e){const a=e.filterState;return(l,s)=>(r(),h("button",{onClick:s[0]||(s[0]=(...i)=>A(a).resetFilters&&A(a).resetFilters(...i)),class:"reset-filters-btn"},f(l.$t("Reset Filters")),1))}},NJ={__name:"MultiselectFilter",props:{filterState:{type:[Object]},filterItem:{type:Object,required:!0},filterItemKey:{type:String,required:!0}},setup(e){const t=e,a=t.filterState,l=N({get:()=>{var s;return((s=a.data.selectedFilters[t.filterItemKey])==null?void 0:s.value)??[]},set:s=>{a.setMultiSelectChange(t.filterItemKey,s)}});return(s,i)=>{const c=B("el-option"),p=B("el-select");return r(),$(p,{modelValue:l.value,"onUpdate:modelValue":i[0]||(i[0]=m=>l.value=m),placeholder:s.$t("Select Order Type"),multiple:"",filterable:"","popper-class":"fct-dropdown-compact fct-multi-select-filter",size:"small"},{default:d(()=>[(r(!0),h(H,null,ae(e.filterItem.options,m=>(r(),$(c,{key:m.value,label:m.label,value:m},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])}}},KJ={class:"fct-compare-to-filter"},GJ={class:"fct-applied-filter-label"},jJ={class:"fct-applied-filter-actions"},zJ={class:"fct-compare-to-select"},qJ={class:"fct-compare-to-date"},YJ={__name:"CompareToFilter",props:{filterState:{type:[Object]}},emits:["selectChange","dateChange"],setup(e,{emit:t}){const a=e,l=t,s=a.filterState,i=N({get:()=>{var m;return((m=s.data.selectedFilters.compareType)==null?void 0:m.value)??s.data.compareType},set:m=>{s.setCompareTypeChange(m),l("selectChange",m)}}),c=N({get:()=>{var m;return((m=s.data.selectedFilters.compareDate)==null?void 0:m.value)??s.data.compareDate},set:m=>{s.setCompareDateChange(m),l("dateChange",m)}}),p=N(()=>je.get("app_config.isProActive"));return(m,_)=>{const g=B("el-option"),y=B("el-select"),v=B("el-date-picker");return r(),h("div",KJ,[o("div",GJ,f(A(u)("Compare to")),1),o("div",jJ,[o("div",zJ,[n(y,{modelValue:i.value,"onUpdate:modelValue":_[0]||(_[0]=w=>i.value=w),"popper-class":"fct-dropdown-compact",disabled:!p.value},{default:d(()=>[n(g,{label:A(u)("Previous Period"),value:"previous_period"},null,8,["label"]),n(g,{label:A(u)("Previous Month"),value:"previous_month"},null,8,["label"]),n(g,{label:A(u)("Previous Quarter"),value:"previous_quarter"},null,8,["label"]),n(g,{label:A(u)("Previous Year"),value:"previous_year"},null,8,["label"]),n(g,{label:A(u)("Custom"),value:"custom"},null,8,["label"]),n(g,{label:A(u)("No Comparison"),value:"no_comparison"},null,8,["label"])]),_:1},8,["modelValue","disabled"])]),o("div",qJ,[i.value==="custom"?(r(),$(v,{key:0,modelValue:c.value,"onUpdate:modelValue":_[1]||(_[1]=w=>c.value=w),type:"date",size:"small",placeholder:A(u)("Select Date")},null,8,["modelValue","placeholder"])):x("",!0)])])])}}},WJ={style:{"flex-wrap":"wrap","row-gap":"4px",display:"flex","align-items":"center"}},XJ={key:0},Pp={__name:"TreeSelectFilter",props:{filterState:{type:Object,required:!0}},setup(e){const a=e.filterState,l=T([]),s=T([]),i=T(!1),c=zt().ctx,p=v=>{const w=Ot.get("product_variations");if(w&&(l.value=w),l.value.length&&!v){s.value=[...l.value];return}if(v&&l.value.length){s.value=l.value.filter(C=>C.label.toLowerCase().includes(v.toLowerCase()));return}i.value=!0,c.$get("products/searchVariantByName",{name:v}).then(C=>{l.value=C,s.value=C,Ot.set("product_variations",C)}).catch(()=>{}).finally(()=>{i.value=!1})},m=(v,w)=>{const C=w.checkedNodes||[];a.setTreeSelectItem(C)},_=v=>{a.removeTreeSelectItem(v)},g=()=>{a.clearTreeSelect()},y=N(()=>{let v={},w={};s.value.forEach(b=>{v[b.label]=b.children,b.children.forEach(k=>{w[k.value]={productName:b.label,variationName:k.label}})});let C={};return a.data.variation_ids.forEach(b=>{if(w[b]){let k=w[b];C[k.productName]||(C[k.productName]=[]),C[k.productName].push(k.variationName)}else C.Unknown||(C.Unknown=[]),C.Unknown.push(b)}),Object.keys(C).forEach(b=>{var k;C[b].length===((k=v[b])==null?void 0:k.length)&&(C[b]=[])}),C});return Ie(()=>{const v=a.retrieveSavedReportFilters();v&&v.variation_ids&&(a.data.variation_ids=v.variation_ids),p("")}),(v,w)=>{const C=B("el-tag"),b=B("el-tree-select");return r(),$(b,{placeholder:v.$t("Select Products"),modelValue:A(a).data.variation_ids,"onUpdate:modelValue":w[0]||(w[0]=k=>A(a).data.variation_ids=k),data:s.value,"filter-method":A(ld).debounce(p),filterable:"","show-checkbox":"",multiple:"",clearable:"",loading:i.value,onCheck:m,"popper-class":"fct-tooltip-long",onRemoveTag:_,onClear:g,size:"small"},{tag:d(()=>[o("div",WJ,[(r(!0),h(H,null,ae(y.value,(k,F)=>(r(),$(C,{style:{"margin-right":"4px"}},{default:d(()=>[R(f(F)+" ",1),k.length?(r(),h("span",XJ," | "+f(k.join(", ")),1)):x("",!0)]),_:2},1024))),256))])]),_:1},8,["placeholder","modelValue","data","filter-method","loading"])}}},JJ={class:"fct-applied-filters-wrap"},ZJ={class:"fct-applied-filter-list"},eZ={class:"fct-applied-filter fct-applied-filter-date"},tZ={class:"fct-applied-filter-label"},aZ={class:"fct-applied-filter-value"},lZ={key:0,class:"fct-applied-filter fct-applied-filter-compare-to"},sZ={class:"fct-applied-filter-label"},nZ={class:"fct-applied-filter-value"},oZ={key:2,class:"fct-applied-filter-clear-wrap"},iZ={__name:"AppliedFilters",props:{filterState:{type:[Object]}},setup(e){const a=e.filterState,l=ll(),s=({filterKey:m,itemId:_})=>{a.removeFilter(m,_)},i=m=>!(["dateRange","compareType","compareDate"].includes(m)||l.name==="reports_customer"),c=N(()=>["reports_revenue","reports_subscriptions","reports_products","reports_customer","reports_sales","reports_orders","reports_refunds","reports_sources"].includes(l.name)),p=N(()=>Object.keys(a.data.selectedFilters).filter(m=>!(m==="orderTypes"&&l.name==="reports_subscriptions")).reduce((m,_)=>(m[_]=a.data.selectedFilters[_],m),{}));return be(a.data.dateRange,m=>{}),(m,_)=>(r(),h("div",JJ,[o("ul",ZJ,[o("li",eZ,[o("div",tZ,f(m.$t("Date:")),1),o("div",aZ,[n(Op,{modelValue:A(a).data.dateRange,"onUpdate:modelValue":_[0]||(_[0]=g=>A(a).data.dateRange=g),placement:"bottom-start",reRenderDate:A(a).data.reRenderDate,showArrow:!0,size:"small",onChange:A(a).setDateRange,clearable:"",filterState:A(a)},null,8,["modelValue","reRenderDate","onChange","filterState"])])]),c.value?(r(),h("li",lZ,[n(YJ,{filterState:A(a)},null,8,["filterState"])])):x("",!0),Object.keys(p.value).length?(r(!0),h(H,{key:1},ae(p.value,(g,y)=>(r(),h(H,{key:y},[i(y)?(r(),h("li",{key:0,class:ie(`fct-applied-filter ${y==="variation_ids"?"fct-applied-filter-variation":""} ${y==="orderTypes"?"fct-applied-filter-order-types":""}`)},[o("div",sZ,f(g.label)+":",1),o("div",nZ,[g.type==="list"?(r(),$(HJ,{key:0,"filter-state":A(a),"filter-item":g,"filter-item-key":y},null,8,["filter-state","filter-item","filter-item-key"])):x("",!0),g.type==="multi-list"?(r(),$(NJ,{key:1,"filter-state":A(a),"filter-item":g,"filter-item-key":y},null,8,["filter-state","filter-item","filter-item-key"])):y==="variation_ids"?(r(),$(Pp,{key:2,"filter-state":A(a)},null,8,["filter-state"])):y==="currency"?(r(),$(Hp,{key:3,modelValue:A(a).data.currency,"onUpdate:modelValue":_[1]||(_[1]=v=>A(a).data.currency=v),currencies:A(a).currencies,onChange:v=>{A(a).setSelectChange(v,{...g,value:y})}},null,8,["modelValue","currencies","onChange"])):x("",!0)]),y!=="variation_ids"?(r(),$(OJ,{key:0,filterKey:y,itemId:y==="variation_ids"?g.value[0].id:null,onRemove:s},null,8,["filterKey","itemId"])):x("",!0)],2)):x("",!0)],64))),128)):x("",!0),Object.keys(p.value).length?(r(),h("li",oZ,[n(PJ,{"filter-state":A(a)},null,8,["filter-state"])])):x("",!0)])]))}},rZ={class:"fct-filter-dropdown-header"},dZ={key:0,class:"fct-filter-back-wrapper"},uZ={class:"fct-filter-active-label"},cZ={key:1,class:"fct-filter-dropdown-search-input"},AZ={__name:"FilterHeader",props:{filterState:{type:[Object]}},setup(e){const a=e.filterState;return(l,s)=>{const i=B("el-input");return r(),h("div",rZ,[A(a).data.activeFilter!=null?(r(),h("div",dZ,[o("button",{class:"fct-filter-back-button",onClick:s[0]||(s[0]=c=>A(a).selectActiveFilter(null))},[n(J,{name:"ArrowLeft"})]),o("span",uZ,f(A(a).activeFilterOptions.label),1)])):(r(),h("div",cZ,[n(i,{modelValue:A(a).data.searchQuery,"onUpdate:modelValue":s[1]||(s[1]=c=>A(a).data.searchQuery=c),placeholder:l.$t("Search Filter..."),clearable:""},null,8,["modelValue","placeholder"])]))])}}},pZ={class:"fct-filter-dropdown-active-filter-list"},fZ=["onClick"],mZ={__name:"StatusList",props:{filterState:{type:[Object]}},setup(e){const a=e.filterState;return(l,s)=>(r(),h("ul",pZ,[(r(!0),h(H,null,ae(A(a).activeFilterOptions.options,(i,c)=>(r(),h("li",{key:c,class:ie(["fct-filter-active-option-item",{"is-selected":A(a).isFilterOptionSelected(i)}])},[o("div",{class:"fct-filter-dropdown-active-button",onClick:p=>A(a).selectFilterOption(i)},f(i.label),9,fZ)],2))),128))]))}},hZ={class:"fct-filter-dropdown-active-filter-list is-multi-list"},_Z=["onClick"],vZ={__name:"MultiList",props:{filterState:{type:[Object]}},setup(e){const a=e.filterState;return(l,s)=>(r(),h("ul",hZ,[(r(!0),h(H,null,ae(A(a).activeFilterOptions.options,(i,c)=>(r(),h("li",{key:c,class:ie(["fct-filter-active-option-item",{"is-selected":A(a).isFilterOptionSelectedMulti(i)}])},[o("div",{class:"fct-filter-dropdown-active-button",onClick:p=>A(a).selectFilterOptionMulti(i)},f(i.label),9,_Z)],2))),128))]))}},gZ={class:"fct-filter-dropdown-active-filter"},yZ={__name:"SelectedFilters",props:{filterState:{type:[Object]}},setup(e){const a=e.filterState;return(l,s)=>(r(),h("div",gZ,[A(a).activeFilterOptions.type==="list"?(r(),$(mZ,{key:0,"filter-state":A(a)},null,8,["filter-state"])):x("",!0),A(a).activeFilterOptions.type==="multi-list"?(r(),$(vZ,{key:1,"filter-state":A(a)},null,8,["filter-state"])):x("",!0),A(a).activeFilterOptions.type==="date"?(r(),$(Op,{key:2,modelValue:A(a).data.dateRange,"onUpdate:modelValue":s[0]||(s[0]=i=>A(a).data.dateRange=i),onChange:A(a).setDateRange},null,8,["modelValue","onChange"])):x("",!0),A(a).activeFilterOptions.type==="currency"?(r(),$(Hp,{key:3,modelValue:A(a).data.currency,"onUpdate:modelValue":s[1]||(s[1]=i=>A(a).data.currency=i),currencies:A(a).currencies,onChange:A(a).setSelectChange},null,8,["modelValue","currencies","onChange"])):x("",!0),A(a).activeFilterOptions.type==="tree-select"?(r(),$(Pp,{key:4,"filter-state":A(a)},null,8,["filter-state"])):x("",!0)]))}},bZ={class:"fct-filter-dropdown-list"},wZ=["onClick"],CZ={key:1,class:"fct-filter-dropdown-list-item filter-not-found"},BZ={__name:"FilterOptionList",props:{filterState:{type:[Object]}},setup(e){const a=e.filterState;return(l,s)=>(r(),h("ul",bZ,[A(a).visibleFilters.length?(r(!0),h(H,{key:0},ae(A(a).visibleFilters,(i,c)=>(r(),h("li",{class:"fct-filter-dropdown-list-item",key:c},[o("div",{class:"fct-filter-dropdown-button",onClick:p=>A(a).selectActiveFilter(i)},[n(J,{name:i.icon},null,8,["name"]),R(" "+f(i.label),1)],8,wZ)]))),128)):(r(),h("li",CZ,f(A(a).data.searchQuery?A(u)("No filter found"):A(u)("All filters selected")),1))]))}},kZ={key:0,class:"fct-filter-dropdown"},xZ={class:"fct-filter-dropdown-body"},SZ={key:1},FZ={__name:"FilterDropdown",props:{filterState:{type:[Object]}},setup(e){const t=e,a=T(null),l=t.filterState,s=je.get("app_config.isProActive"),i=[{label:u("Order Type"),icon:"AppsLine",type:"multi-list",value:"orderTypes",disableRoutes:["reports_customer","reports_subscriptions"],options:[{label:u("All"),value:"all"},{label:u("One time"),value:"payment"},{label:u("Subscription"),value:"subscription"},{label:u("Renewal"),value:"renewal"}]},{label:u("Subscription Type"),icon:"Reload",type:"list",value:"subscriptionType",disableRoutes:["reports_revenue","reports_products","reports_customer","reports_sales","reports_refunds","reports_orders","reports_sales"],options:[{label:u("Active"),value:"subscription"},{label:u("Renewal"),value:"renewal"},{label:u("Expired"),value:"expired"},{label:u("Canceled"),value:"canceled"}]},{label:u("Currency"),icon:"Currency",type:"currency",value:"currency",disableRoutes:["reports_products","reports_customer","reports_subscriptions"]},{label:u("Products"),icon:"ListView",type:"tree-select",value:"variation_ids",disableRoutes:["reports_customer"]}];l.setFilterOption(i);const c=p=>{const m=a.value,_=p.target,g=document.querySelectorAll(".el-picker-panel"),y=Array.from(g).some(v=>v.contains(_));m!=null&&m.contains(_)||y||(l.data.searchQuery="",l.dropdownOpen&&l.toggleDropdown())};return Ie(()=>{document.addEventListener("click",c)}),vl(()=>{document.removeEventListener("click",c)}),(p,m)=>(r(),h("div",{ref_key:"dropdownRef",ref:a,class:"fct-filter-dropdown-container",onClick:m[0]||(m[0]=Ne(()=>{},["stop"]))},[n(Ze,{class:"fct-filter-dropdown-toggle-button",size:"small",tag:"button",onClick:A(l).toggleDropdown},{default:d(()=>[n(J,{name:"Filter"})]),_:1},8,["onClick"]),n(Gl,{name:"fade-scale","enter-active-class":"transition ease-out duration-200","leave-active-class":"transition ease-in duration-150","enter-from-class":"opacity-0 scale-95","enter-to-class":"opacity-100 scale-100","leave-from-class":"opacity-100 scale-100","leave-to-class":"opacity-0 scale-95"},{default:d(()=>[A(l).dropdownOpen?(r(),h("div",kZ,[A(s)?(r(),h(H,{key:0},[n(AZ,{"filter-state":A(l)},null,8,["filter-state"]),o("div",xZ,[A(l).data.activeFilter!=null?(r(),$(yZ,{key:0,"filter-state":A(l)},null,8,["filter-state"])):(r(),$(BZ,{key:1,"filter-state":A(l)},null,8,["filter-state"]))])],64)):(r(),h("div",SZ,[n(Vn,{class:"py-7.5",title:A(u)("Upgrade to Pro for filtering"),text:A(u)("This feature is only available in FluentCart Pro.")},null,8,["title","text"])]))])):x("",!0)]),_:1})],512))}},$Z={class:"fct-report-nav-links-wrap"},EZ={class:"fct-settings-nav-collapse-button-wrapper"},UZ={class:"fct-menu-collapse-button-text"},IZ=["onClick"],QZ=["src","alt"],DZ=["src","alt"],VZ={class:"fct-settings-nav-link-text"},TZ={class:"fct-settings-nav-child-list"},MZ=["onClick"],LZ={__name:"ReportNavLinks",emits:["update:menuState"],setup(e,{emit:t}){const a=al(),l=ll(),s=[{route:"reports_overview",label:u("Overview"),url:"/reports/overview",icon:"Overview"},{route:"reports_sales",label:u("Sales"),url:"/reports/sales",icon:"LineChart"},{route:"reports_orders",label:u("Orders"),url:"/reports/orders",icon:"Cart"},{route:"reports_revenue",label:u("Revenue"),url:"/reports/revenue",icon:"Revenue"},{route:"reports_refunds",label:u("Refunds"),url:"/reports/refunds",icon:"Refund"},{route:"reports_subscriptions",label:u("Subscriptions"),url:"/reports/subscriptions",icon:"Subscription",always_open:!0,child:[{route:"subscriptions-retention",label:u("Retention"),url:"/reports/subscriptions/subscriptions-retention"},{route:"subscriptions-cohorts",label:u("Cohorts"),url:"/reports/subscriptions/subscriptions-cohorts"},{route:"future_renewals",label:u("Future Renewals"),url:"/reports/subscriptions/future-renewals"}]},{route:"reports_products",label:u("Products"),url:"/reports/products",icon:"Product"},{route:"reports_customer",label:u("Customers"),url:"/reports/customer",icon:"Users"},{route:"reports_sources",label:u("Sources"),url:"/reports/sources",icon:"Source"}];je.get("addon_report_sidebar",[]).forEach(Q=>s.push(Q));const i=T(!1),c=T(!1),p=T(window.innerWidth>=1024),m=t,_=T(null),g=T(null),y=Q=>!Q.child||!(!E.value||S.value)?!1:v(Q)||Q.always_open,v=Q=>{const U=l.path;return!!(Q.child&&Q.child.length&&Q.child.some(D=>U===D.url||U.includes(D.url))||U===Q.url||U.includes(Q.url))},w=(Q,U,V)=>l.path===Q.url,C=Q=>{a.push({name:Q.route}).catch(V=>{V.name});const U=document.querySelector("#fct-report-body");U&&(U.scrollTop=0)},b=()=>{if(!p.value){_.value&&_.value.classList.remove("is-nav-open"),g.value&&g.value.classList.remove("is-overlay-open");return}i.value=!i.value,c.value=!1},k=()=>{p.value||(_.value&&_.value.classList.remove("is-nav-open"),g.value&&g.value.classList.remove("is-overlay-open"))},F=()=>{const Q=window.innerWidth,U=p.value;p.value=Q>=1024,!U&&p.value&&(_.value&&_.value.classList.remove("is-nav-open"),g.value&&g.value.classList.remove("is-overlay-open")),U&&!p.value&&(i.value=!1)};be([i,c,p],()=>{m("update:menuState",{isMenuCollapsed:i.value,isMenuExpanded:c.value,isDesktopView:p.value})},{immediate:!0});const E=N(()=>i.value),S=N(()=>p.value&&i.value&&c.value);return Ie(()=>{F(),window.addEventListener("resize",F)}),kt(()=>{window.removeEventListener("resize",F)}),(Q,U)=>{const V=B("el-button"),D=B("el-tooltip");return r(),h("div",$Z,[o("div",{ref_key:"overlayRef",ref:g,class:"fct-settings-menu-overlay",onClick:k},null,512),o("div",{ref_key:"sidebarRef",ref:_,class:ie(["fct-settings-nav-container",{"is-collapsed":E.value,"is-expanded":S.value}])},[o("div",EZ,[n(D,{content:A(u)("Toggle reports"),placement:"right"},{default:d(()=>[n(V,{onClick:b},{default:d(()=>[n(J,{name:"Window"}),o("span",UZ,f(A(u)("Reports")),1)]),_:1})]),_:1},8,["content"])]),o("ul",{class:"fct-settings-nav",onMouseenter:U[0]||(U[0]=I=>p.value&&i.value&&(c.value=!0)),onMouseleave:U[1]||(U[1]=I=>c.value=!1)},[(r(),h(H,null,ae(s,(I,O)=>o("li",{key:O,class:ie(["fct-settings-nav-item",{"fct-settings-nav-item-active":v(I)}])},[o("div",{onClick:L=>C(I),class:"fct-settings-nav-link"},[I.icon_img?(r(),h(H,{key:0},[o("img",{src:I.icon_img,alt:I.label,class:ie(I.icon_img_dark?"w-5 h-5 dark:hidden":"w-5 h-5")},null,10,QZ),I.icon_img_dark?(r(),h("img",{key:0,src:I.icon_img_dark,alt:I.label,class:"w-5 h-5 hidden dark:block"},null,8,DZ)):x("",!0)],64)):I.icon?(r(),$(J,{key:1,name:I.icon,class:"w-5 h-5"},null,8,["name"])):x("",!0),o("span",VZ,[R(f(I.label)+" ",1),n(J,{name:"ChevronRight",class:"fct-settings-nav-link-icon"})])],8,IZ),n(va,{accordion:"",visible:y(I),class:"fct-settings-nav-child-wrap"},{default:d(()=>[o("ul",TZ,[(r(!0),h(H,null,ae(I.child,(L,P)=>(r(),h("li",{key:P,class:ie(["fct-settings-nav-item",{"fct-settings-nav-item-active":w(L,P,I)}])},[o("div",{onClick:G=>C(L),class:"fct-settings-nav-link"},f(L.label),9,MZ)],2))),128))])]),_:2},1032,["visible"])],2)),64))],32)],2)])}}},RZ={class:"fct-reports-view-inner"},OZ={class:"fct-report-body",id:"fct-report-body"},HZ={key:0,class:"fct-report-filter-wrap"},PZ={key:1,class:"fct-report-filter-button"},NZ={class:"fct-report-body-inner"},KZ={__name:"ReportsView",setup(e){var v;const t=T({isMenuCollapsed:!0,isMenuExpanded:!1,isDesktopView:!0}),a=_p(),l=ll(),s=T((v=l.meta)==null?void 0:v.title),i=N(()=>Ya.data);a.onFilterChanged(w=>{_(w)});const c=N(()=>!["reports_overview","reports_customer","future_renewals","reports_sources"].includes(l.name)),p=N(()=>["reports_overview","reports","future_renewals"].includes(l.name));let m=null;const _=w=>{Object.entries(w).forEach(([C,b])=>{let k=b.value;switch(b.type==="multi-list"&&(k=b.value.map(F=>F.value)),C){case"orderStatus":case"paymentStatus":case"currency":case"compareType":case"compareDate":case"subscriptionType":case"orderTypes":Ya.data[C]=k;break;case"dateRange":Ya.data.dateRange=b.value,Ya.data.rangeKey=b.rangeKey;break;case"variation_ids":Ya.data[C]=Array.isArray(b.value)?b.value.map(F=>F.id):[];break}}),Ya.onFilterChange()},g=()=>{var C,b;const w=a.retrieveSavedFilters();w?(a.data.selectedFilters={...w},((b=(C=w.dateRange)==null?void 0:C.value)==null?void 0:b.length)===2&&(a.data.dateRange=[w.dateRange.value[0],w.dateRange.value[1]])):a.data.selectedFilters={}},y=w=>{t.value=w};return be(()=>l.name,(w,C)=>{var b;s.value=((b=l.meta)==null?void 0:b.title)||"Reports"}),Ie(()=>{Ya.fetchReportMeta(),g(),m=document.getElementById("fluent_cart_plugin_app"),m&&m.classList.add("fct_report_page_plugin_app_wrap")}),kt(()=>{m&&m.classList.remove("fct_report_page_plugin_app_wrap")}),vl(()=>{Ot.remove("product_variations")}),(w,C)=>{const b=B("router-view");return r(),h("div",{class:ie(["fct-reports-view",{"is-collapsed":t.value.isMenuCollapsed,"is-expanded":t.value.isMenuExpanded&&t.value.isDesktopView}])},[o("div",RZ,[n(LZ,{"onUpdate:menuState":y}),o("div",OZ,[n(Qa,{heading:A(u)(s.value),"show-save-button":!1},null,8,["heading"]),!p.value||c.value?(r(),h("div",HZ,[p.value?x("",!0):(r(),$(iZ,{key:0,"filter-state":A(a)},null,8,["filter-state"])),!p.value&&c.value?(r(),h("div",PZ,[n(FZ,{"filter-state":A(a)},null,8,["filter-state"])])):x("",!0)])):x("",!0),o("div",NZ,[n(Da),i.value.storeMode!==i.value.filterMode&&i.value.filterMode&&i.value.filterMode!==""?(r(),$(Ja,{key:0,class:"mb-5 alert-yellow",icon:"InformationFill",content:w.$t(`Your store is in ${i.value.storeMode} mode but you are watching data in ${i.value.filterMode} mode.`)},null,8,["content"])):x("",!0),n(b,null,{default:d(({Component:k})=>[(r(),$(Cl(k),{reportFilter:A(Ya)},null,8,["reportFilter"]))]),_:1})])])])],2)}}},GZ=at(KZ,[["__scopeId","data-v-15c60072"]]),jZ={__name:"lineChart",props:{xAxis:{type:Array,default:()=>[],required:!0},yAxis:{type:Array,default:()=>[],required:!0},lineColor:{type:String,default:"#42b983"},backgroundGradient:{type:Array,required:!0},chartTitle:{type:String,default:""},hasCurrency:{type:Boolean,default:!1}},setup(e){const t=e,a=T(null),l=(y,v,w,C)=>({name:y,type:v,data:w,smooth:!0,color:C,showSymbol:!0,areaStyle:{color:new nr(0,0,0,1,t.backgroundGradient.map(b=>({offset:b.offset,color:b.color})))}}),s=()=>{const y=[];return y.push(l("","line",t.yAxis,t.lineColor)),y},i=y=>{const v=y.split("-");if(v.length===3){const[w,C,b]=v;return`${Pa[parseInt(C)-1]} ${b}, ${w}`}else if(v.length===2){const[w,C]=v;return`${Pa[parseInt(C)-1]} ${w}`}else if(v.length===1){const[w]=v;return`${w}`}},c=N(()=>t.xAxis.map(y=>i(y)));let p=null;const m=()=>{if(a.value&&p==null){p=ea(a.value);const y={title:{show:!1},tooltip:{trigger:"axis",valueFormatter:v=>t.hasCurrency?`${et.scaled(v)}`:v},grid:{show:!1,left:"10%",right:"10%",bottom:"80%"},xAxis:{type:"category",data:c.value,axisLabel:{show:!1},axisLine:{show:!1},axisTick:{show:!1}},yAxis:{type:"value",axisLabel:{show:!1},splitLine:{show:!1},axisLine:{show:!1},axisTick:{show:!1}},series:s()};p.setOption(y),window.addEventListener("resize",()=>{p.resize()})}},_=()=>{p&&p.setOption({xAxis:{data:t.xAxis},series:s()})};be(()=>[t.xAxis,t.yAxis],()=>{xe(()=>{_()})});const g=()=>{_()};return Ie(()=>{window.addEventListener("fluentCartCurrencyChange",g),xe(()=>{m()})}),kt(()=>{window.removeEventListener("fluentCartCurrencyChange",g,!1)}),(y,v)=>(r(),h("div",{style:{height:"70px"},ref_key:"chartRef",ref:a},null,512))}},zZ=at(jZ,[["__scopeId","data-v-e1491f3e"]]);function Np(e){return Number(e)>0}function is(e){return Np(e)?"text-red-500":""}function xl(e,t=null){return(t!==null?t:Np(e))?`(${et.scaled(e)})`:et.scaled(e)}const qZ=["innerHTML"],Is={__name:"ReportSummary",props:{amount:{type:[Number,String],required:!0},placement:{type:String,default:"top"},title:{type:String,default:""}},setup(e){const t=e,a=N(()=>t.title?t.title+" "+t.amount:t.amount);return(l,s)=>{const i=B("el-tooltip");return r(),$(i,{effect:"dark",placement:e.placement,"popper-class":"fct-tooltip"},{content:d(()=>[o("span",null,f(a.value),1)]),default:d(()=>[o("span",{class:"cursor-pointer",innerHTML:e.amount},null,8,qZ)]),_:1},8,["placement"])}}},ml={__name:"Fluctuation",props:{fluctuation:{type:[String,Number],required:!0},isLiability:{type:Boolean,default:!1},placement:{type:String,default:"top"},amount:{type:[String,Number],required:!1},title:{type:String,default:""},hasCurrency:{type:Boolean,default:!0},isPercentage:{type:Boolean,default:!1},fluctuationSuffix:{type:String,default:""}},setup(e){const t=e,a=N(()=>ua(t.fluctuation)),l=N(()=>(t.hasCurrency?et.scaled:ua)(t.amount)),s=N(()=>(t.title?t.title:u("Previously"))+" "+l.value+(t.isPercentage?"%":"")),i=N(()=>{if(t.fluctuation===0)return"text-system-light";const p=t.fluctuation>0;return(t.isLiability?!p:p)?"text-success-500":"text-red-500"}),c=N(()=>t.fluctuation<0?"CaretDown":"CaretUp");return(p,m)=>{const _=B("el-tooltip");return r(),h("div",{class:ie(["percentage",i.value])},[e.fluctuation!==0?(r(),$(J,{key:0,class:"w-2",name:c.value},null,8,["name"])):x("",!0),n(_,{effect:"dark",placement:e.placement,"popper-class":"fct-tooltip"},{content:d(()=>[o("span",null,f(s.value),1)]),default:d(()=>[o("span",{class:ie(["cursor-pointer",i.value])},[R(f(a.value)+"% ",1),e.fluctuationSuffix?(r(),h(H,{key:0},[R(f(e.fluctuationSuffix),1)],64)):x("",!0)],2)]),_:1},8,["placement"])],2)}}},YZ={class:"fct-report-result"},WZ={key:0,class:"fct-report-result-content"},XZ={key:1,class:"fct-report-result-content"},JZ={class:"title flex items-center gap-1"},ZZ={class:"value"},eee={class:"inline-flex"},tee={key:2,class:"fct-report-result-chart"},aee={key:3,class:"fct-report-result-chart"},lee={__name:"SummaryCards",props:{defaultReport:{type:Object,required:!0}},setup(e){const t=e;N(()=>reportFilter.currentCurrencySign),N(()=>defaultReport.data.isBusy.salesReport);const a=(m,_)=>{const g=parseInt(m.replace("#",""),16),y=g>>16&255,v=g>>8&255,w=g&255;return`rgba(${y}, ${v}, ${w}, ${_})`},l=Ve.colors.report,s=T([{title:u("Gross Sales"),key:"gross_sale",graph:"grossSaleGraph",lineColor:l.sea_green,backgroundGradient:[{offset:0,color:a(l.sea_green,.5)},{offset:1,color:"rgba(255, 255, 255, 0)"}],info:u("The total sales you had in this period.")},{title:u("Refunds"),key:"total_refunded_amount",graph:"refundsGraph",lineColor:l.medium_slate_blue,backgroundGradient:[{offset:0,color:a(l.medium_slate_blue,.5)},{offset:1,color:"rgba(255, 255, 255, 0)"}],info:u("Refunds made in this period. This is deducted from gross sales to calculate revenue."),liability:!0},{title:u("Revenue"),key:"net_revenue",graph:"netRevenueGraph",lineColor:l.royal_blue,backgroundGradient:[{offset:0,color:a(l.royal_blue,.5)},{offset:1,color:"rgba(255, 255, 255, 0)"}],info:u("Gross sales less refunds, taxes, shipping, fees.")},{title:u("Orders"),key:"order_count",graph:"orderGraph",lineColor:l.medium_turquoise,backgroundGradient:[{offset:0,color:a(l.medium_turquoise,.5)},{offset:1,color:"rgba(255, 255, 255, 0)"}],info:u("The total number of orders placed in this period.")},{title:u("Items"),key:"total_item_count",graph:"itemsSoldGraph",lineColor:l.deep_sky_blue,backgroundGradient:[{offset:0,color:a(l.deep_sky_blue,.5)},{offset:1,color:"rgba(255, 255, 255, 0)"}],info:u("The total number of items sold in this period.")},{title:u("Total Refunds"),key:"total_refunded",graph:"refundCountGraph",lineColor:l.golden_rod,backgroundGradient:[{offset:0,color:a(l.golden_rod,.5)},{offset:1,color:"rgba(255, 255, 255, 0)"}],info:u("Total refunds count including partially refunds.")}]),i=N(()=>s.value.map(m=>({...m,value:t.defaultReport.summaryData[m.key]||0,fluctuation:t.defaultReport.fluctuations[m.key]||0,graph:t.defaultReport.data.graphs[m.graph]||{},dataBusy:t.defaultReport.data.isBusy.salesReport||!1,graphBusy:t.defaultReport.data.isBusy.graphs[m.graph]||!1,liability:m.liability||!1}))),c=m=>["net_revenue","total_refunded_amount","gross_sale"].includes(m),p=m=>c(m.key)?xl(m.value,m.liability):ua(m.value);return(m,_)=>{const g=B("el-skeleton"),y=B("el-tooltip"),v=B("el-skeleton-item"),w=B("el-col"),C=B("el-row");return r(),$(Nt,{permission:"reports/view"},{default:d(()=>[n(C,{gutter:16,class:"gap-y-4"},{default:d(()=>[(r(!0),h(H,null,ae(i.value,(b,k)=>(r(),$(w,{lg:8,md:12,key:k},{default:d(()=>[n(Ln,{class:"fct-report-summary-card h-[100px]"},{default:d(()=>[o("div",YZ,[b.dataBusy?(r(),h("div",WZ,[n(g,{animated:"",rows:1})])):(r(),h("div",XZ,[o("div",JZ,[R(f(b.title)+" ",1),n(y,{"popper-class":"fct-tooltip",content:b.info,placement:"top"},{default:d(()=>[n(J,{class:"text-gray-500 w-4 cursor-pointer",name:"InformationFill"})]),_:2},1032,["content"])]),o("div",ZZ,[o("div",eee,[n(Is,{amount:p(b),title:b.title},null,8,["amount","title"])]),n(ml,{fluctuation:b.fluctuation,amount:e.defaultReport.data.previousSummary[b.key],"is-liability":b.liability,"has-currency":c(b.key)},null,8,["fluctuation","amount","is-liability","has-currency"])])])),b.dataBusy?(r(),h("div",tee,[n(g,{animated:"",class:"flex items-center justify-end"},{template:d(()=>[n(v,{variant:"circle",class:"w-12.5 h-12.5 flex-none"})]),_:1})])):x("",!0),!b.dataBusy&&Object.keys(b.graph).length>0?(r(),h("div",aee,[n(zZ,{ref_for:!0,ref:"lineChart",xAxis:Object.keys(b.graph),yAxis:Object.values(b.graph),lineColor:b.lineColor,backgroundGradient:b.backgroundGradient,"has-currency":c(b.key)},null,8,["xAxis","yAxis","lineColor","backgroundGradient","has-currency"])])):x("",!0)])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})}}};const see={key:0,class:"fct-report-sold-product-list has-scroll"},nee={class:"list-left-content"},oee={class:"list-image"},iee=["src","alt"],ree=["src"],dee={class:"list-title"},uee={class:"list-title-inner"},cee={class:"list-id"},Aee={class:"list-right-content"},pee={class:"list-value"},fee={class:"list-price"},mee={class:"inline-flex"},hee={__name:"TopSoldVariants",props:{defaultReport:{type:[Array,Object],required:!0}},setup(e){const t=$l.data,a=N(()=>$l.data.isBusy.topSoldVariants);return(l,s)=>{const i=B("el-skeleton"),c=B("router-link");return r(),$(Nt,{permission:"reports/view"},{default:d(()=>[n(Ln,{class:"top-sold-variants","card-options":{heading:A(u)("Top Sold Variants")}},{default:d(()=>{var p,m;return[a.value?(r(),$(i,{key:0,animated:"",rows:7})):(r(),h(H,{key:1},[((m=(p=A(t))==null?void 0:p.topSoldVariants)==null?void 0:m.length)>0?(r(),h("ul",see,[(r(!0),h(H,null,ae(A(t).topSoldVariants,_=>(r(),h("li",{key:_.product_id},[n(c,{to:{name:"product_edit",params:{product_id:_.product_id}}},{default:d(()=>{var g;return[o("div",nee,[o("div",oee,[_.media_url!==null?(r(),h("img",{key:0,src:_.media_url,alt:(g=_.media)==null?void 0:g.title},null,8,iee)):(r(),h("img",{key:1,src:l.getPlaceholderImage(),alt:""},null,8,ree))]),o("div",dee,[o("div",uee,f(_.variation_name),1),o("div",cee,[o("strong",null,f(_.product_name),1)])])]),o("div",Aee,[o("div",pee,f(_.quantity)+" "+f(A(u)(" Sold")),1),o("div",fee,[o("div",mee,f(A(et).scaled(_.total_amount)),1)])])]}),_:2},1032,["to"])]))),128))])):(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no item!")},null,8,["text"]))],64))]}),_:1},8,["card-options"])]),_:1})}}},_ee={key:0,class:"flex items-center gap-2 justify-between"},vee={class:"fct-btn-group sm"},gee={__name:"Sources",props:{data:{type:Object,required:!0}},setup(e){const t=e,a=Ve.colors,l=T(null),s=T(Ve.isDark()),i=T("revenue"),c=T({}),p=F=>{const M=["#F6B51E","#855EF8","#47C2FF"],E=["#E6A819","#693EE0","#35ADE9"];return(s.value?E:M)[F]},m=N(()=>{if(typeof t.data.onetime_count===void 0)return[];if((t.data.onetime_count||0)===0&&(t.data.renewal_count||0)===0&&(t.data.subscription_count||0)===0)return[];const F={onetime:u("Onetime Payments"),renewal:u("Renewals"),subscription:u("Subscriptions")},M=t.data.order_count,E=[];return Object.keys(F).forEach((S,Q)=>{E.push({name:F[S],value:t.data[S+"_count"]||0,count:t.data[S+"_count"]||0,gross:t.data[S+"_gross"]||0,net:t.data[S+"_net"]||0,percentage:M?(t.data[S+"_count"]/M*100).toFixed(2):0,color:p(Q),visible:c.value[F[S]]!==!1})}),E}),_=N(()=>!m.value.length),g=N(()=>$l.data.isBusy.salesReport),y=N(()=>m.value.filter(F=>c.value[F.name]!==!1).map((F,M)=>({value:i.value==="revenue"?F.net:F.count,count:F.count,name:F.name,gross:F.gross,net:F.net,itemStyle:{color:p(m.value.findIndex(E=>E.name===F.name))}})));let v=null;const w=()=>{v&&(v.dispose(),v=null),xe(()=>{l.value&&(v=ea(l.value),C())})},C=()=>{if(!v)return;const F={title:{text:t.chartTitle??"",left:"center"},legend:{show:!1},tooltip:{trigger:"item",formatterr:"{b}: {c} ({d}%)",formatter:function(M){const E=s.value?"#ffffff":"#565865";return`
${M.marker} ${M.name} (${M.percent}%)
${u("Orders")}
${ua(M.data.count)}
${u("Gross Sales")}
${et.scaled(M.data.gross)}
${u("Revenue")}
${et.scaled(M.data.net)}
`},borderRadius:8,backgroundColor:s.value?"#38485a":"#ffffff",textStyle:{color:s.value?a.gray[25]:a.system.mid},borderColor:s.value?"#4a5a6b":"#c0c4ca",borderWidth:1},series:[{type:"pie",radius:"70%",data:y.value,label:{show:!0,color:s.value?a.gray[25]:a.system.dark},emphasis:{itemStyle:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"}},itemStyle:{emphasis:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"}}}]};v.setOption(F,{notMerge:!0,replaceMerge:["series"]})};be([()=>m.value],()=>{xe(C)},{deep:!0}),be(_,F=>{F||w()}),be(g,F=>{F||w()}),be(i,()=>{C()});const b=F=>{s.value=Ve.isDark(),C()},k=()=>{C()};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",b),window.addEventListener("fluentCartCurrencyChange",k),xe(w)}),kt(()=>{window.removeEventListener("onFluentCartThemeChange",b),window.removeEventListener("fluentCartCurrencyChange",k,!1)}),(F,M)=>{const E=B("el-button"),S=B("el-button-group"),Q=B("el-skeleton");return r(),$(Ln,{class:"sales-sources","card-options":{heading:A(u)("Sources")}},{action:d(()=>[_.value?x("",!0):(r(),h("div",_ee,[n(S,{class:"left"},{default:d(()=>[n(E,{size:"small",onClick:M[0]||(M[0]=U=>i.value="revenue"),type:i.value==="revenue"?"primary":""},{default:d(()=>[R(f(A(u)("Revenue")),1)]),_:1},8,["type"]),n(E,{size:"small",onClick:M[1]||(M[1]=U=>i.value="orders"),type:i.value==="orders"?"primary":""},{default:d(()=>[R(f(A(u)("Orders")),1)]),_:1},8,["type"])]),_:1}),o("div",vee,[n(Fa,{targetRef:l.value},null,8,["targetRef"])])]))]),default:d(()=>[g.value?(r(),$(Q,{key:0,animated:"",rows:7})):(r(),h(H,{key:1},[_.value?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("No relevant data to plot the chart")},null,8,["text"])):(r(),h("div",{key:0,class:"fct-report-order-completion-time-chart",ref_key:"chartRef",ref:l},null,512))],64))]),_:1},8,["card-options"])}}},yee={class:"fct-default-report-page"},bee={__name:"DefaultReport",props:{reportFilter:{type:Object,required:!0}},setup(e){const t=e,a=T(t.reportFilter),l=async s=>{s&&(await $l.getSalesReport(s),await $l.getTopSoldProducts(s),await $l.getTopSoldVariants(s))};return Ie(()=>{a.value&&a.value.addListener("default-report",l)}),kt(()=>{a.value&&a.value.removeListener("default-report")}),be(()=>t.reportFilter,s=>{a.value&&a.value.removeListener("default-report"),a.value=s,a.value&&(a.value.addListener("default-report",l),l(a.value.applicableFilters))},{immediate:!0}),(s,i)=>{const c=B("el-col"),p=B("el-row");return r(),h("div",yee,[n(lee,{"default-report":A($l)},null,8,["default-report"]),n(p,{gutter:30,class:"gap-y-4 my-5"},{default:d(()=>[n(c,{lg:12},{default:d(()=>[n(gd,{data:A($l).data.topSoldProducts,loading:A($l).data.isBusy.topSoldProducts},null,8,["data","loading"])]),_:1}),n(c,{lg:12},{default:d(()=>[n(hee,{"default-report":A($l)},null,8,["default-report"])]),_:1}),x("",!0)]),_:1}),n(p,{gutter:30,class:"gap-y-4 my-5"},{default:d(()=>[n(c,{lg:12},{default:d(()=>[n(gee,{data:A($l).data.summaryData},null,8,["data"])]),_:1})]),_:1})])}}};class wee extends nl{constructor(){super(...arguments);Re(this,"data",{order:["net_revenue","gross_sale","order_count","total_item_count","average_net","average_gross","average_order_items_count"],revenue:["Revenue","Gross Sales","Refund","Taxes","Shipping","Discount"],refund:["Total Refunds","Total Refunded Amount","Avg. Refunded Amount","Refund Rate","Total Paid"],product:["average_selling_price","units_sold","gross_sale","customer_count"]});Re(this,"storageKey","report-checkbox-filter");Re(this,"listeners",{})}beforeInit(){this.mergeWithStorage()}mergeWithStorage(){const a=Ot.get(this.storageKey);this.data.order=a.order??this.data.order,this.data.revenue=a.revenue??this.data.revenue,this.data.refund=a.refund??this.data.refund}addListener(a,l){this.listeners[a]=l}async onCheckBoxChange(a,l){const s=this.data[a];s.includes(l)?this.data[a]=s.filter(i=>i!==l):this.data[a].push(l),this.syncStorage();for(let i in this.listeners)this.listeners[i](this.applicableFilters)}syncStorage(){Ot.set(this.storageKey,this.applicableFilters.checkbox)}removeListener(a){delete this.listeners[a]}get applicableFilters(){return{checkbox:{order:this.data.order,revenue:this.data.revenue,refund:this.data.refund,product:this.data.product}}}}const Ml=wee.init(),Cee={class:"fct-revenue-line-chart-wrap"},Bee={class:"flex items-center gap-2"},kee={class:"fct-card-header-title is-small"},xee={class:"fct-chart-select"},See={class:"fct-btn-group sm"},Fee={key:2,class:"chart-action-wrap"},$ee={class:"chart-change-wrap"},Eee={class:"chart-change"},Uee={class:"text"},Iee={class:"chart-change"},Qee={class:"text"},Dee={__name:"RevenueLineChart",props:{chartData:{type:Array,required:!0},compareData:{type:Array,required:!0},reportFilter:{type:Object},appliedGroupKey:{type:String},isEmpty:{type:Boolean,default:!1},loading:{type:Boolean,default:!0}},emits:["filter-data"],setup(e,{emit:t}){const a=e,l=T(null),s=T(ga.getChartType("revenue","revenue_chart")||"line"),i=T(!1),c=Ve.colors.report,p=T(Ve.isDark()),m=(V,D,I,O,L,P=!1)=>({name:V,type:D,barMaxWidth:30,yAxisIndex:I,data:O,smooth:!1,color:L,hidden:P,lineStyle:{width:3},areaStyle:{opacity:.3,color:L},symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:L,borderRadius:[4,4,0,0]},emphasis:{scale:2,itemStyle:{color:za(L)},lineStyle:{color:L},areaStyle:{opacity:.3,color:L}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}),_=T(a.appliedGroupKey);be(()=>a.appliedGroupKey,V=>{_.value=V});const g=[{label:u("Default"),value:"default"},{label:u("Monthly"),value:"monthly"},{label:u("Yearly"),value:"yearly"}],y=t,v=()=>{y("filter-data",_.value)},w=N(()=>a.reportFilter.data.compareType!=="no_comparison"),C=N(()=>{let V=[{name:u("Current Revenue"),key:"net_revenue",type:s.value,color:p.value?c.dark_cyan_blue_36:c.light_gray_cyan_blue,data:a.chartData.map(D=>D.net_revenue)}];return w.value&&V.unshift({name:u("Compare Revenue"),key:"net_revenue",type:s.value,color:p.value?c.dark_cyan_blue_16:c.light_gray,data:a.compareData.map(D=>({value:D.net_revenue,date:D.group})),hidden:!1}),V.map(D=>m(D.name,D.type,0,D.data,D.color,D.hidden))});let b=null;const k=()=>{b&&(b.dispose(),b=null),xe(()=>{l.value&&(b=ea(l.value),E())})},F=N(()=>{const V=Es(a.reportFilter.data.dateRange);return u("This report looks at the revenue you received ")+V}),M=N(()=>ul(a.chartData.length)),E=()=>{if(!b)return;const V=Il(a.chartData),D={title:{text:"",left:"center"},legend:{show:!0,itemGap:20,itemWidth:10,itemHeight:10,textStyle:{color:p.value?"#ffffff":"#000000"},selected:Object.fromEntries(C.value.map(I=>[I.name,!I.hidden]))},tooltip:{trigger:"axis",backgroundColor:p.value?"#253241":"#ffffff",borderColor:p.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:p.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:p.value?c.dark_cyan_blue_16:c.light_gray_blue}},alwaysShowContent:!1,valueFormatter:I=>`${et.scaled(I)}`,formatter:I=>{let O="";const L=p.value?"#ffffff":"#565865";return I.forEach(function(P,G){const z=typeof P.data=="object"&&P.data!==null?Us(P.data.date):P.name,Z=et.scaled(P.value),oe=I.length>1&&G===0;oe&&(O+='
'),O+=`
${z}
`,O+=`
${P.marker}
${P.seriesName}
${ua(Z)}
`,oe&&(O+="
")}),O}},grid:{show:!1},xAxis:{type:"category",data:V,axisLabel:{color:p.value?"#ffffff":"#000000",fontSize:12,interval:M.value.interval},axisLine:{lineStyle:{type:"dashed",color:p.value?"#253241":"#D6DAE1"}}},yAxis:{type:"value",axisLabel:{color:p.value?"#ffffff":"#000000",fontSize:12,formatter:I=>`${et.scaled(I)}`},splitLine:{show:!0,lineStyle:{color:p.value?"#253241":"#D6DAE1",type:"dashed"}}},series:C.value};b.setOption(D,{notMerge:!0,replaceMerge:["series"]})},S=()=>{i.value=!i.value,i.value?b.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:1,end:100},{type:"slider",show:!0,yAxisIndex:[0],left:"95%",start:1,end:100},{type:"inside",xAxisIndex:[0],start:1,end:100},{type:"inside",yAxisIndex:[0],start:1,end:100}]}):E()},Q=V=>{ga.onChange("revenue","revenue_chart",V),s.value!==V&&(i.value=!1,s.value=V,E())};be([()=>a.chartData,_],()=>{xe(E)},{deep:!0}),be(()=>Ml.data.revenue,()=>{xe(()=>{E()})},{deep:!0}),be(()=>a.isEmpty,V=>{V||k()}),be(()=>a.loading,V=>{V||k()});const U=()=>{p.value=Ve.isDark(),xe(()=>{E()})};return kt(()=>{window.removeEventListener("onFluentCartThemeChange",U,!1),window.removeEventListener("fluentCartCurrencyChange",U,!1)}),Ie(()=>{window.addEventListener("onFluentCartThemeChange",U),window.addEventListener("fluentCartCurrencyChange",U),xe(()=>{k()})}),(V,D)=>{const I=B("el-tooltip"),O=B("el-option"),L=B("el-select"),P=B("el-skeleton");return r(),h("div",Cee,[n(ke,{id:"chartContainer"},{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",Bee,[o("h5",kee,f(A(u)("Revenue Chart")),1),n(I,{"popper-class":"fct-tooltip",content:F.value,placement:"top"},{default:d(()=>[n(J,{class:"text-gray-500 w-4 h-4 cursor-pointer",name:"InformationFill"})]),_:1},8,["content"])])]),_:2},[!e.isEmpty&&!e.loading?{name:"action",fn:d(()=>[o("div",xee,[n(L,{class:"el-select--x-small",modelValue:_.value,"onUpdate:modelValue":D[0]||(D[0]=G=>_.value=G),onChange:v},{default:d(()=>[(r(),h(H,null,ae(g,G=>n(O,{key:G.value,label:A(u)(G.label),value:G.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),o("div",See,[n(Rl,{activeType:s.value,types:{line:"LineChart",bar:"BarChart"},onChange:Q},null,8,["activeType"]),n(Ze,{tag:"button",size:"small",title:A(u)("Zoom Chart"),onClick:S,class:ie(i.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:l.value},null,8,["targetRef"])])]),key:"0"}:void 0]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[e.loading?(r(),$(P,{key:0,animated:"",rows:7,class:"p-4"})):(r(),h(H,{key:1},[e.isEmpty?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h("div",{key:0,class:"fct-chart-wrap fct-revenue-line-chart mt-3",ref_key:"chartRef",ref:l},null,512)),e.isEmpty?x("",!0):(r(),h("div",Fee,[o("div",$ee,[o("div",Eee,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",Uee,f(A(u)("Data")),1)]),o("div",Iee,[o("span",Qee,f(A(u)("Timeline")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])]))],64))]),_:1})]),_:1})])}}},Vee={components:{DynamicIcon:J},props:{data:{type:Array,required:!0},filename:{type:String,default:"data.csv"}},methods:{exportCSV(){const t=(s=>{const i=_=>_.replace(/_/g," ").replace(/\b\w/g,g=>g.toUpperCase()),c=Object.keys(s[0]),m=[c.map(i).join(",")];return s.forEach(_=>{const g=c.map(y=>{let v=_[y];return typeof v=="object"&&(v=JSON.stringify(v)),typeof v=="string"&&(v=`"${v.replace(/"/g,'""')}"`),v});m.push(g.join(","))}),m.join(`
`)})(this.data),a=new Blob([t],{type:"text/csv"}),l=document.createElement("a");l.href=URL.createObjectURL(a),l.download=this.filename,l.click(),URL.revokeObjectURL(l.href)}}};function Tee(e,t,a,l,s,i){const c=B("DynamicIcon"),p=B("el-button");return r(),$(p,{onClick:i.exportCSV,size:"small"},{default:d(()=>[n(c,{name:"Download"}),R(" "+f(e.$t("Export")),1)]),_:1},8,["onClick"])}const On=at(Vee,[["render",Tee]]),Mee=["innerHTML"],Lee=["innerHTML"],Ree=["innerHTML"],Oee=["innerHTML"],Hee=["innerHTML"],Pee=["innerHTML"],Nee=["innerHTML"],Kee=["innerHTML"],Gee={name:"Revenue",props:{revenueReport:{type:Array,required:!0},appliedGroupKey:{type:String},loading:{type:Boolean,default:!0}},computed:{dateFormat(){if(!this.revenueReport.length)return"";const e=this.revenueReport[0].group.split("-");return e.length===3?"MMMM DD, YYYY":e.length===2?"MMMM YYYY":""},tableData(){const e=this.revenueReport.reduce((t,a)=>{const l=a.year;return t[l]||(t[l]={year:l,order_count:0,net_revenue:0,gross_sale:0,total_refunded_amount:0,tax_total:0,shipping_total:0,items:[]}),t[l].order_count+=Number(a.order_count),t[l].net_revenue+=Number(a.net_revenue),t[l].gross_sale+=Number(a.total_sales),t[l].total_refunded_amount+=Number(a.total_refunds),t[l].tax_total+=Number(a.total_tax),t[l].shipping_total+=Number(a.shipping_total),t[l].items.push(a),t},{});return Object.values(e)}},data(){return{}},methods:{formatDate(e){const t={year:"numeric",month:"long",day:"numeric"};return new Date(e).toLocaleDateString(void 0,t)},formatCurrency(e){return et.scaled(e)},liabilityClass:is,maybeLiability:xl}},jee=Object.assign(Gee,{setup(e){return(t,a)=>{const l=B("el-skeleton"),s=B("el-table-column"),i=B("el-table"),c=B("el-empty");return r(),$(ke,{class:"overflow-hidden"},{default:d(()=>[n(Qe,{title:A(u)("Revenue Breakdown"),title_size:"small"},la({_:2},[e.loading?void 0:{name:"action",fn:d(()=>[n(On,{data:e.revenueReport,filename:"revenue.csv"},null,8,["data"])]),key:"0"}]),1032,["title"]),n(Ce,{class:"px-0 pb-0"},{default:d(()=>[e.loading?(r(),$(l,{key:0,animated:"",rows:2,class:"p-4"})):(r(),$(i,{key:1,data:t.tableData,"row-key":"year","default-expand-all":!1,class:"w-full"},{empty:d(()=>[n(c,{description:A(u)("No data available")},null,8,["description"])]),default:d(()=>[t.dateFormat?(r(),$(s,{key:0,type:"expand"},{default:d(p=>[n(i,{data:p.row.items,"row-key":"month",size:"small",border:"",class:"w-full"},{default:d(()=>[n(s,{prop:"group",label:A(u)("Date"),"min-width":"160"},{default:d(m=>[R(f(A(lt)(m.row.group).format(t.dateFormat)),1)]),_:1},8,["label"]),n(s,{prop:"order_count",label:A(u)("Order Count"),"min-width":"140"},{default:d(m=>[R(f(A(u)(A(ua)(m.row.order_count))),1)]),_:1},8,["label"]),n(s,{prop:"total_sales",label:A(u)("Gross Sales"),"min-width":"150"},{default:d(m=>[o("div",{class:"inline-flex",innerHTML:t.formatCurrency(Number(m.row.total_sales))},null,8,Mee)]),_:1},8,["label"]),n(s,{label:A(u)("Refunds"),"min-width":"150"},{default:d(m=>[o("div",{class:ie(["inline-flex",A(is)(m.row.total_refunds)]),innerHTML:A(xl)(m.row.total_refunds)},null,10,Lee)]),_:1},8,["label"]),t.tax_total>0?(r(),$(s,{key:0,prop:"total_tax",label:A(u)("Taxes"),"min-width":"150"},{default:d(m=>[o("div",{class:ie(["inline-flex",A(is)(m.row.total_tax)])},f(A(xl)(m.row.total_tax)),3)]),_:1},8,["label"])):x("",!0),t.shipping_total>0?(r(),$(s,{key:1,prop:"shipping_total",label:A(u)("Shipping"),"min-width":"150"},{default:d(m=>[o("div",{class:ie(["inline-flex",A(is)(m.row.shipping_total)])},f(A(xl)(m.row.shipping_total)),3)]),_:1},8,["label"])):x("",!0),n(s,{prop:"net_revenue",label:A(u)("Revenue"),"min-width":"180"},{default:d(m=>[o("div",{class:"inline-flex",innerHTML:t.formatCurrency(Number(m.row.net_revenue))},null,8,Ree)]),_:1},8,["label"])]),_:2},1032,["data"])]),_:1})):x("",!0),n(s,{prop:"year",label:A(u)("Year"),"min-width":"50",fixed:""},null,8,["label"]),n(s,{prop:"order_count",label:A(u)("Order Count"),"min-width":"120"},{default:d(p=>[R(f(A(u)(A(ua)(p.row.order_count))),1)]),_:1},8,["label"]),n(s,{prop:"gross_sale",label:A(u)("Gross Sales"),"min-width":"150"},{default:d(p=>[o("div",{class:"inline-flex",innerHTML:t.formatCurrency(p.row.gross_sale)},null,8,Oee)]),_:1},8,["label"]),n(s,{label:A(u)("Refunds"),"min-width":"150"},{default:d(p=>[o("div",{class:ie(["inline-flex",A(is)(p.row.total_refunded_amount)]),innerHTML:A(xl)(p.row.total_refunded_amount)},null,10,Hee)]),_:1},8,["label"]),t.tax_total>0?(r(),$(s,{key:1,prop:"tax_total",label:A(u)("Taxes"),"min-width":"150"},{default:d(p=>[o("div",{class:"inline-flex",innerHTML:t.formatCurrency(p.row.tax_total)},null,8,Pee)]),_:1},8,["label"])):x("",!0),t.shipping_total>0?(r(),$(s,{key:2,prop:"shipping_total",label:A(u)("Shipping"),"min-width":"150"},{default:d(p=>[o("div",{class:"inline-flex",innerHTML:t.formatCurrency(p.row.shipping_total)},null,8,Nee)]),_:1},8,["label"])):x("",!0),n(s,{prop:"net_revenue",label:A(u)("Revenue"),"min-width":"180"},{default:d(p=>[o("div",{class:"inline-flex",innerHTML:t.formatCurrency(p.row.net_revenue)},null,8,Kee)]),_:1},8,["label"])]),_:1},8,["data"]))]),_:1})]),_:1})}}});function Dn(e){var t;return((t=Zf.find(a=>a.code2===e))==null?void 0:t.name)||"Uncategorized"}const zee={class:"px-5 pb-4"},qee={__name:"ReportTableLoader",props:{loading:{type:Boolean,default:!1}},setup(e){return(t,a)=>{const l=B("el-skeleton-item"),s=B("el-skeleton");return r(),$(s,{loading:e.loading,animated:""},{template:d(()=>[o("div",zee,[n(l,{class:"w-full h-7"})]),(r(),h(H,null,ae(8,i=>o("div",{key:i,class:"flex items-center gap-5 px-5"},[n(l,{class:"w-1/2 h-4 mb-3"}),n(l,{class:"w-1/2 h-4 mb-3"}),n(l,{class:"w-1/2 h-4 mb-3"}),n(l,{class:"w-1/2 h-4 mb-3"})])),64))]),_:1},8,["loading"])}}},Yee={class:"fct-btn-group sm w-[240px] gap-2"},Wee={class:"capitalize"},Xee={class:"capitalize"},Jee=["innerHTML"],Zee=["innerHTML"],ete=["innerHTML"],tte=["innerHTML"],ate=["innerHTML"],lte={__name:"RevenueGroupedBy",props:{tableData:{type:Object},reportFilter:{type:Object},revenueReport:{type:Object}},emits:["fetch-data-by-group"],setup(e,{emit:t}){const a=e,l=t;N(()=>a.reportFilter.currentCurrencySign);const s=[{label:"Billing Country",value:"billing_country"},{label:"Shipping Country",value:"shipping_country"},{label:"Payment Method",value:"payment_method"}];T({offline_payment:"Cash On Delivery",paypal:"PayPal",stripe:"Stripe"});const i=T("billing_country"),c=()=>{l("fetch-data-by-group",i.value)};return(p,m)=>{const _=B("el-option"),g=B("el-select"),y=B("el-table-column"),v=B("el-table");return r(),$(ke,{class:"overflow-hidden"},{default:d(()=>[n(Qe,{title:p.$t("Grouped by"),title_size:"small"},{action:d(()=>[o("div",Yee,[n(g,{class:"el-select--x-small",modelValue:i.value,"onUpdate:modelValue":m[0]||(m[0]=w=>i.value=w),onChange:c,placeholder:p.$t("Select Group")},{default:d(()=>[(r(),h(H,null,ae(s,w=>n(_,{key:w.value,label:p.$t(w.label),value:w.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","placeholder"]),n(On,{data:e.tableData,filename:"revenue grouped by.csv",class:"!ml-0"},null,8,["data"])])]),_:1},8,["title"]),n(Ce,{class:"px-0 pb-0"},{default:d(()=>[n(qee,{loading:e.revenueReport.data.isBusy.netRevenueByGroup},null,8,["loading"]),e.revenueReport.data.isBusy.netRevenueByGroup?x("",!0):(r(),$(v,{key:0,data:e.tableData,"max-height":"390"},{empty:d(()=>[n(bt,{icon:"Empty/ListView","has-dark":!0,text:p.$t("Currently there is no data!")},null,8,["text"])]),default:d(()=>[i.value==="country"?(r(),$(y,{key:0,prop:"country",label:p.$t("Country"),"min-width":"150"},{default:d(w=>[R(f(w.row.country),1)]),_:1},8,["label"])):x("",!0),i.value==="shipping_country"?(r(),$(y,{key:1,prop:"country",label:p.$t("Country"),"min-width":"150"},{default:d(w=>[o("span",Wee,f(A(Dn)(w.row.shipping_country)),1)]),_:1},8,["label"])):x("",!0),i.value==="billing_country"?(r(),$(y,{key:2,prop:"country",label:p.$t("Country"),"min-width":"150"},{default:d(w=>[o("span",Xee,f(A(Dn)(w.row.billing_country)),1)]),_:1},8,["label"])):x("",!0),i.value==="payment_method"?(r(),$(y,{key:3,prop:"payment_method",label:p.$t("Payment Method"),"min-width":"150"},{default:d(w=>[R(f(w.row.payment_method),1)]),_:1},8,["label"])):x("",!0),n(y,{prop:"order_count",label:p.$t("Order Count"),"min-width":"150"},{default:d(w=>[R(f(A(u)(w.row.orders)),1)]),_:1},8,["label"]),n(y,{prop:"total_sales",label:p.$t("Gross Sales"),"min-width":"150"},{default:d(w=>[o("div",{class:"inline-flex",innerHTML:A(et).scaled(w.row.gross_sale)},null,8,Jee)]),_:1},8,["label"]),n(y,{prop:"total_refunds",label:p.$t("Refunds"),"min-width":"150"},{default:d(w=>[o("div",{class:ie(["inline-flex",A(is)(w.row.total_refunds)]),innerHTML:A(xl)(w.row.total_refunds)},null,10,Zee)]),_:1},8,["label"]),p.total_tax>0?(r(),$(y,{key:4,prop:"total_tax",label:p.$t("Taxes"),"min-width":"150"},{default:d(w=>[o("div",{class:ie(["inline-flex",A(is)(w.row.total_tax)]),innerHTML:A(xl)(w.row.total_tax)},null,10,ete)]),_:1},8,["label"])):x("",!0),p.shipping_total>0?(r(),$(y,{key:5,prop:"shipping_total",label:p.$t("Shipping"),"min-width":"150"},{default:d(w=>[o("div",{class:ie(["inline-flex",A(is)(w.row.shipping_total)]),innerHTML:A(xl)(w.row.shipping_total)},null,10,tte)]),_:1},8,["label"])):x("",!0),n(y,{prop:"net_revenue",label:p.$t("Revenue"),"min-width":"150"},{default:d(w=>[o("div",{class:"inline-flex",innerHTML:A(et).scaled(w.row.net_sale)},null,8,ate)]),_:1},8,["label"])]),_:1},8,["data"]))]),_:1})]),_:1})}}};class ste extends nl{constructor(){super(...arguments);Re(this,"data",{revenueReport:[],previousMetrics:[],netRevenueByGroup:[],summary:{},previousSummary:{},fluctuations:{},isBusy:{revenueReport:!0,netRevenueByGroup:!1,revenueSummary:!1,fluctuations:!1,chartData:!1,productBarRacer:!1},chartData:[],productBarRacer:[],appliedGroupKey:"default"})}get controllerKey(){return"RevenueReportController"}makeRequest(a,l,s,i){i&&(this.data.isBusy[i]=!0),typeof l!="object"&&(l={});const c=ce.get(`reports/${a}`,l);return this.resolvePromiseResponse(c,s,i),c}resolvePromiseResponse(a,l=null,s=null){a.then(i=>{s==null||l==null?Object.assign(this.data,i):this.data[s]=i[l]}).catch(i=>{}).finally(()=>{s&&(this.data.isBusy[s]=!1)})}getReportData(a={}){return this.makeRequest("revenue",a,null,"revenueReport")}getReportByGroup(a={}){return this.makeRequest("revenue-by-group",a,"data","netRevenueByGroup")}getChartData(a={}){return this.makeRequest("revenue-chart",a,"revenueReport","chartData")}getProductBarRacer(a={}){return this.makeRequest("fetch-product-bar-racer",a,"productBarRacer","productBarRacer")}}const Va=ste.init(),Ll={__name:"SummaryLoader",props:{loading:{type:Boolean,default:!1},count:{type:Number,default:1},marginBottom:{type:Number,default:7.5},padding:{type:Number,default:4},rows:{type:Number,default:1}},setup(e){return(t,a)=>{const l=B("el-skeleton-item"),s=B("el-skeleton");return r(),$(s,{loading:"loading",animated:""},{template:d(()=>[o("div",{class:ie(["grid gap-5 bg-white rounded dark:bg-dark-700 fct-summary-loader",`mb-${e.marginBottom} p-${e.padding}`]),style:ra(`--loader-grid-cols: ${e.count};`)},[(r(!0),h(H,null,ae(e.rows,i=>(r(),h(H,{key:i},[(r(!0),h(H,null,ae(e.count,c=>(r(),h("div",{key:c},[n(l),n(l,{class:"w-[90%]"})]))),128))],64))),128))],6)]),_:1})}}},nte={class:"summary-item-inner"},ote={class:"value"},ite={class:"inner-value"},rte={class:"title"},dte={__name:"RevenueReportSummary",props:{reportFilter:{type:Object}},setup(e){const t=[{title:u("Gross Sales"),key:"gross_sale",info:u("The total sales you had in this period.")},{title:u("Refunds"),key:"total_refunded_amount",liability:!0,info:u("Refunds made in this period. This is deducted from gross sales to calculate revenue.")},{title:u("Taxes"),key:"tax_total",liability:!0,info:u("Taxes paid in orders. This is deducted from gross sales to calculate revenue.")},{title:u("Shipping"),key:"shipping_total",liability:!0,info:u("Shipping paid in orders. This is deducted from gross sales to calculate revenue.")},{title:u("Revenue"),key:"net_revenue",info:u("Gross sales less refunds, taxes, shipping, fees.")}],a=N(()=>t.map(s=>({key:s.key,title:s.title,value:Va.data.summary[s.key]||0,fluctuation:Va.data.fluctuations[s.key]||0,liability:s.liability||!1,info:s.info})).filter(s=>["tax_total","shipping_total"].includes(s.key)?s.value!==0:!0)),l=N(()=>Va.data.isBusy.revenueReport);return(s,i)=>{const c=B("el-tooltip");return l.value?(r(),$(Ll,{key:0,loading:l.value,count:a.value.length},null,8,["loading","count"])):(r(),h("div",{key:1,class:"fct-report-order-summary",style:ra(`--avg-grid-cols: ${a.value.length}`)},[(r(!0),h(H,null,ae(a.value,(p,m)=>(r(),h("div",{class:"summary-item",key:m},[o("div",nte,[o("div",ote,[o("div",ite,[n(Is,{amount:A(xl)(p.value,p.liability),title:p.title},null,8,["amount","title"])]),n(ml,{fluctuation:p.fluctuation,amount:A(Va).data.previousSummary[p.key],"is-liability":p.liability},null,8,["fluctuation","amount","is-liability"])]),o("div",rte,[R(f(p.title)+" ",1),n(c,{content:p.info,placement:"top","popper-class":"fct-tooltip",effect:"dark"},{default:d(()=>[n(J,{class:"text-gray-500 w-4 flex-shrink-0",name:"InformationFill"})]),_:2},1032,["content"])])])]))),128))],4))}}},ute={name:"Comparison",components:{CardContainer:ke,CardHeader:Qe,CardBody:Ce},props:{currentMetrics:{type:Array},previousMetrics:{type:Array},reportFilter:{type:Object},hasComparison:{type:Boolean},loading:{type:Boolean,default:!0}},data(){return{}},computed:{currencySign(){return this.reportFilter.currentCurrencySign},comparisonData(){const e=[];return this.currentMetrics.forEach((t,a)=>{const l=parseFloat(t.net_revenue);let s={group:this.formatDate(t.group),net_revenue:l};if(this.hasComparison){const i=this.previousMetrics[a];if(i){const c=parseFloat(i.net_revenue),p=c?((l-c)/c*100).toFixed(2):"n/a";s.previous_revenue=c,s.percent_change=p,s.group=`${this.formatDate(t.group)} vs ${this.formatDate(i.group)}`}}e.push(s)}),e}},methods:{translate:u,getPercentageClass(e){return e>0?"text-success-500":e<0?"text-red-500":"text-system-light"},formatDate(e){const t=e.split("-");if(t.length===3){const[a,l,s]=t;return`${Pa[parseInt(l)-1]} ${s}, ${a}`}else if(t.length===2){const[a,l]=t;return`${Pa[parseInt(l)-1]} ${a}`}else if(t.length===1){const[a]=t;return`${a}`}},formatCurrency(e){return et.scaled(e)}}},cte={class:"fct-revenue-comparison"},Ate=["innerHTML"],pte=["innerHTML"];function fte(e,t,a,l,s,i){const c=B("CardHeader"),p=B("el-skeleton"),m=B("el-table-column"),_=B("el-table"),g=B("CardBody"),y=B("CardContainer");return r(),h("div",cte,[n(y,{class:"overflow-hidden"},{default:d(()=>[n(c,{title:i.translate("Revenue Comparison"),title_size:"small"},null,8,["title"]),n(g,{class:"px-0 pb-0"},{default:d(()=>[a.loading?(r(),$(p,{key:0,animated:"",rows:7,class:"p-4"})):(r(),$(_,{key:1,data:i.comparisonData,class:"w-full",maxHeight:"390"},{default:d(()=>[n(m,{label:i.translate("Period")},{default:d(v=>[R(f(v.row.group),1)]),_:1},8,["label"]),n(m,{label:i.translate("Current Revenue")},{default:d(v=>[o("div",{class:"inline-flex",innerHTML:i.formatCurrency(v.row.net_revenue)},null,8,Ate)]),_:1},8,["label"]),a.hasComparison?(r(),h(H,{key:0},[n(m,{label:i.translate("Compare Revenue")},{default:d(v=>[o("div",{class:"inline-flex",innerHTML:i.formatCurrency(v.row.previous_revenue)},null,8,pte)]),_:1},8,["label"]),n(m,{label:i.translate("Change")+" (%)"},{default:d(v=>[o("span",{class:ie(i.getPercentageClass(v.row.percent_change))},f(v.row.percent_change),3)]),_:1},8,["label"])],64)):x("",!0)]),_:1},8,["data"]))]),_:1})]),_:1})])}const mte=at(ute,[["render",fte]]),hte={class:"fct-revenue-report-page"},_te={__name:"RevenueReport",props:{reportFilter:{type:Object,required:!0}},setup(e){const t=e,a=T("default"),l=t.reportFilter,s=l.applicableFilters,i=(g,y="default")=>{Va.getReportData({params:{...g.params,groupKey:y}})},c=g=>{Va.getReportData({params:{...s.params,groupKey:g}})},p=g=>{g!==Va.data.appliedGroupKey&&(a.value=g,i(s,a.value))},m=g=>{Va.getReportByGroup({params:{...s.params,groupKey:g}})},_=g=>{i(g,a.value),Va.getReportByGroup({params:{...g.params,groupKey:"billing_country"}})};return Ie(()=>{l.addListener("revenue-report",_),_(s)}),kt(()=>{l.removeListener("revenue-report")}),(g,y)=>(r(),$(Nt,{permission:"reports/view"},{default:d(()=>[o("div",hte,[n(dte,{reportFilter:A(l)},null,8,["reportFilter"]),n(Dee,{chartData:A(Va).data.revenueReport,compareData:A(Va).data.previousMetrics,reportFilter:A(l),appliedGroupKey:a.value,onFilterData:p,"is-empty":!A(Va).data.summary.gross_sale,loading:A(Va).data.isBusy.revenueReport},null,8,["chartData","compareData","reportFilter","appliedGroupKey","is-empty","loading"]),n(mte,{class:"my-7.5",currentMetrics:A(Va).data.revenueReport,previousMetrics:A(Va).data.previousMetrics,hasComparison:t.reportFilter.data.compareType!=="no_comparison",reportFilter:A(l),loading:A(Va).data.isBusy.revenueReport},null,8,["currentMetrics","previousMetrics","hasComparison","reportFilter","loading"]),n(jee,{revenueReport:A(Va).data.revenueReport,appliedGroupKey:a.value,onFetchData:c,loading:A(Va).data.isBusy.revenueReport},null,8,["revenueReport","appliedGroupKey","loading"]),n(lte,{tableData:A(Va).data.netRevenueByGroup,reportFilter:A(l),revenueReport:A(Va),onFetchDataByGroup:m},null,8,["tableData","reportFilter","revenueReport"])])]),_:1}))}};class vte extends nl{constructor(){super(...arguments);Re(this,"data",{summary:{},previousSummary:{},fluctuations:{},orderChartData:[],newVsReturning:[],orderByGroup:[],itemCountDistribution:[],grossSaleByDay:[],averageOrderGross:[],grossSaleByHour:[],orderCompletionTime:[],averageOrderItems:[],orderValueDistribution:[],orderByDayAndHour:[],dashBoardStats:[],isBusy:{summary:!1,fluctuations:!1,orderChartData:!0,newVsReturning:!0,orderByGroup:!1,itemCountDistribution:!1,grossSaleByDay:!1,averageOrderGross:!1,grossSaleByHour:!1,orderCompletionTime:!1,averageOrderItems:!1,orderValueDistribution:!1,orderByDayAndHour:!1,dashBoardStats:!1}})}get controllerKey(){return"OrderReportController"}makeRequest(a,l,s,i){this.data.isBusy[i]=!0,typeof l!="object"&&(l={});const c=ce.get(`reports/${a}`,l);return this.resolvePromiseResponse(c,s,i),c}resolvePromiseResponse(a,l=null,s=null){a.then(i=>{s==null||l==null?Object.assign(this.data,i):this.data[s]=i[l]}).catch(i=>{}).finally(()=>{this.data.isBusy[s]=!1})}getOrderChartData(a={}){return this.data.isBusy.orderChartData=!0,this.makeRequest("order-chart",a).then(()=>this.data.isBusy.orderChartData=!1)}getNewVsReturningCustomer(a={}){return this.data.isBusy.newVsReturning=!0,this.makeRequest("fetch-new-vs-returning-customer",a).then(()=>this.data.isBusy.newVsReturning=!1)}getOrderByGroup(a={}){return this.makeRequest("fetch-order-by-group",a,"data","orderByGroup")}getItemCountDistribution(a={}){return this.makeRequest("item-count-distribution",a,"data","itemCountDistribution")}getOrderCompletionTime(a={}){return this.makeRequest("order-completion-time",a,"data","orderCompletionTime")}getOrderValueDistribution(a={}){return this.makeRequest("order-value-distribution",a,"data","orderValueDistribution")}getReportByDayAndHour(a={}){return this.data.isBusy.orderByDayAndHour=!0,this.makeRequest("fetch-report-by-day-and-hour",a).then(()=>this.data.isBusy.orderByDayAndHour=!1)}getDashboardStats(a={}){return this.makeRequest("dashboard-stats",a,"dashBoardStats","dashBoardStats")}}const Vt=vte.init(),gte={key:1,class:"fct-report-order-summary summary-col-4"},yte={class:"summary-item-inner"},bte={class:"value"},wte={key:0,class:"summary-checkbox"},Cte={class:"inner-value"},Bte={class:"title"},kte={__name:"Summary",props:{orderReport:{type:Object,required:!0},reportFilter:{type:Object}},setup(e){const t=e,a=[{title:u("Gross Sales"),key:"gross_sale",content:u("The total sales you had in this period."),checkable:!0,hasCurrency:!0},{title:u("Refunds"),key:"total_refund",liability:!0,hasCurrency:!0,content:u("Refunds made in this period. This is deducted from gross sales to calculate revenue.")},{title:u("Revenue"),key:"net_revenue",hasCurrency:!0,content:u("Gross sales less refunds, taxes, shipping, fees."),checkable:!0},{title:u("Orders"),key:"order_count",content:u("The total number of orders placed in this period."),checkable:!0,hideCurrency:!0},{title:u("Items"),key:"total_item_count",content:u("The total number of items sold in this period."),hideCurrency:!0},{title:u("Average Gross"),key:"average_gross",hasCurrency:!0,content:u("Average gross sales per order in this period.")},{title:u("Average Revenue"),key:"average_net",hasCurrency:!0,content:u("Average revenue per order in this period.")},{title:u("Average Order Items"),key:"average_order_items_count",content:u("Average number of items per order in this period."),hideCurrency:!0}],l=N(()=>a.map(m=>({...m,value:t.orderReport.data.summary[m.key]||0,fluctuation:t.orderReport.data.fluctuations[m.key]||0,liability:m.liability||!1,hasCurrency:m.hasCurrency||!1}))),s=N(()=>a.filter(m=>!m.hideCurrency).map(m=>m.key)),i=N(()=>t.orderReport.data.isBusy.orderChartData),c=m=>{Ml.onCheckBoxChange("order",m)},p=m=>s.value.includes(m.key)?xl(m.value,m.liability):ua(m.value);return(m,_)=>{const g=B("el-checkbox"),y=B("el-tooltip");return i.value?(r(),$(Ll,{key:0,count:4,rows:2})):(r(),h("div",gte,[(r(!0),h(H,null,ae(l.value,(v,w)=>(r(),h("div",{class:"summary-item",key:w},[o("div",yte,[o("div",bte,[v.checkable?(r(),h("div",wte,[n(g,{"true-value":!0,"false-value":!1,"model-value":A(Ml).data.order.includes(v.key),onChange:()=>c(v.key)},null,8,["model-value","onChange"])])):x("",!0),o("div",Cte,[n(Is,{amount:p(v),title:v.title},null,8,["amount","title"])]),n(ml,{fluctuation:v.fluctuation,amount:e.orderReport.data.previousSummary[v.key],"is-liability":v.liability,"has-currency":v.hasCurrency},null,8,["fluctuation","amount","is-liability","has-currency"])]),o("div",Bte,[R(f(v.title)+" ",1),n(y,{content:v.content,placement:"top","popper-class":"fct-tooltip",effect:"dark"},{default:d(()=>[n(J,{class:"text-gray-500 w-4 h-4 cursor-help",name:"InformationFill"})]),_:2},1032,["content"])])])]))),128))]))}}},xte={__name:"OrderHeatMap",props:{chartData:{type:Array,required:!0},chartRef:{}},setup(e){const t=e,a=T(null);let l=null;const s=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],i=Ve.colors,c=T(Ve.isDark()),p=N(()=>{const C=[];return t.chartData.forEach((b,k)=>{s.forEach((F,M)=>{C.push([k,M,b[F]])})}),C}),m=N(()=>t.chartData.length?Math.max(...t.chartData.flatMap(C=>s.map(b=>C[b]||0))):0),_=N(()=>c.value?["#000000",i.blue[500]]:["#ffffff",i.blue[600]]),g=N(()=>Object.values(t.chartData).every(C=>C.order_count===0)),y=N(()=>Vt.data.isBusy.orderByDayAndHour),v=()=>{l&&(l.dispose(),l=null),xe(()=>{if(a.value){l=ea(a.value,null,{renderer:"svg"});const C=t.chartData.map(F=>F.hour),b=s,k={tooltip:{position:"top",backgroundColor:c.value?"#253241":"#ffffff",borderColor:c.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:c.value?"#ffffff":"#565865"},formatter:F=>{const M=c.value?"#ffffff":"#000000";let E=`
${s[F.data[1]]}, ${F.name||"-"}
`;return E+=`
${F.marker}
${F.seriesName}
${F.data[2]}
`,E+"
"}},grid:{height:"70%",top:"10%"},xAxis:{type:"category",data:C,axisLabel:{color:c.value?"#ffffff":"#000000",fontSize:12},splitArea:{show:!0}},yAxis:{type:"category",data:b,axisLabel:{color:c.value?"#ffffff":"#000000",fontSize:12},splitArea:{show:!0}},visualMap:{min:0,max:m.value,calculable:!0,orient:"horizontal",left:"center",bottom:"0%",inRange:{color:_.value}},series:[{name:u("Orders"),type:"heatmap",data:p.value,label:{show:!0},itemStyle:{borderColor:"#e0e0e0",borderWidth:1},emphasis:{itemStyle:{shadowBlur:10,shadowColor:"rgba(0, 0, 0, 0.5)"}}}]};l.setOption(k)}})};be([p,m],()=>{xe(()=>{v()})}),be(g,C=>{C||v()}),be(y,C=>{C||v()});const w=()=>{c.value=Ve.isDark(),xe(()=>{v()})};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",w),xe(()=>{v(),window.addEventListener("resize",()=>l==null?void 0:l.resize())})}),vl(()=>{l&&(window.removeEventListener("resize",()=>l==null?void 0:l.resize()),window.removeEventListener("onFluentCartThemeChange",w,!1),l.dispose(),l=null)}),(C,b)=>{const k=B("el-skeleton");return r(),$(ke,{class:"overflow-hidden"},{default:d(()=>[n(Qe,{title:A(u)("Orders by day and hour"),title_size:"small",border_bottom:""},null,8,["title"]),n(Ce,{class:"px-0 pb-0"},{default:d(()=>[y.value?(r(),$(k,{key:0,animated:"",rows:4,class:"px-3 pb-5"})):(r(),h(H,{key:1},[g.value?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h("div",{key:0,class:"fct-report-average-order-items-chart",ref_key:"chartRef",ref:a},null,512))],64))]),_:1})]),_:1})}}},Ste={class:"fct-gross-sale-vs-net-revenue-wrap"},Fte={class:"flex items-center gap-2"},$te={class:"fct-card-header-title is-small"},Ete={class:"fct-chart-select"},Ute={class:"fct-btn-group sm"},Ite={key:2,class:"chart-action-wrap"},Qte={class:"chart-change-wrap"},Dte={class:"chart-change"},Vte={class:"text"},Tte={class:"chart-change"},Mte={class:"text"},Lte={__name:"OrderLineChart",props:{chartData:{type:Array,required:!0},reportFilter:{type:Object},isEmpty:{type:Boolean,default:!1}},emits:["fetch-chart-data"],setup(e,{emit:t}){const a=e,l=T(null),s=T("default"),i=T(ga.getChartType("order","order_chart")||"line"),c=T(!1),p=Ve.colors.report,m=T(Ve.isDark()),_=[{value:"default",label:u("Default")},{value:"monthly",label:u("Monthly")},{value:"yearly",label:u("Yearly")}],g=t,y=()=>{g("fetch-chart-data",s.value)},v=N(()=>Vt.data.isBusy.orderChartData),w=N(()=>[{title:u("Orders"),key:"order_count",color:m.value?p.dark_cyan_blue_16:p.light_gray,yAxisIndex:1,type:"bar"},{title:u("Gross Sales"),key:"gross_sale",color:m.value?p.blue_dark_mode:p.blue,yAxisIndex:0,type:"line"},{title:u("Revenue"),key:"net_revenue",color:m.value?p.purple_dark_mode:p.purple,yAxisIndex:0,type:"line"}].filter(({key:I})=>Ml.data.order.includes(I)).map(({title:I,key:O,color:L,yAxisIndex:P,type:G})=>Q(I,G,P,a.chartData.map(j=>j[O]),L))),C=N(()=>a.chartData.map(I=>Us(I.group)));let b=null;const k=T(!0),F=()=>{b&&(b.dispose(),b=null),xe(()=>{l.value&&(b=ea(l.value),S(),b.on("legendselectchanged",I=>{k.value=I.selected.Orders}))})},M=N(()=>{const I=Es(a.reportFilter.data.dateRange);return u("This report looks at orders created ")+I}),E=N(()=>ul(a.chartData.length)),S=()=>{if(!b)return;const I={title:{text:a.chartTitle??"",left:"center"},legend:{show:!0,itemGap:20,itemWidth:10,itemHeight:10,textStyle:{color:m.value?"#ffffff":"#000000"}},tooltip:{trigger:"axis",backgroundColor:m.value?"#253241":"#ffffff",borderColor:m.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:m.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:m.value?p.dark_cyan_blue_16:p.light_gray_blue}},formatter:O=>{let L=O[0].axisValue;const P=m.value?"#ffffff":"#565865";return O.forEach(function(G,j){const z=j===0?G.value:et.scaled(G.value);L+=`
${G.marker}
${G.seriesName}
${z}
`}),L}},xAxis:{type:"category",data:C.value,axisLabel:{color:m.value?"#ffffff":"#696778",fontSize:12,interval:E.value.interval},axisLine:{lineStyle:{type:"dashed",color:m.value?"#253241":"#D6DAE1"}}},yAxis:[{name:u("Sales"),type:"value",position:"left",axisLabel:{color:m.value?"#ffffff":"#696778",fontSize:12,formatter:O=>`${et.scaled(O)}`},splitLine:{show:!0,lineStyle:{color:m.value?"#253241":"#D6DAE1",type:"dashed"}},minInterval:500},{name:u("Orders"),type:"value",position:"right",axisLabel:{color:m.value?"#ffffff":"#696778",fontSize:12},splitLine:{show:!1,lineStyle:{color:m.value?"#253241":"#D6DAE1",type:"dashed"}},minInterval:20}],dataZoom:[],series:w.value};b.setOption(I,{notMerge:!0,replaceMerge:["series"]})},Q=(I,O,L,P,G)=>({name:I,type:O,yAxisIndex:L,barMaxWidth:30,data:P,smooth:!1,color:G,lineStyle:{width:3},symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:G,borderRadius:[4,4,0,0]},emphasis:{scale:2,itemStyle:{color:za(G)},lineStyle:{color:G},areaStyle:{opacity:.3,color:G}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}),U=()=>{c.value=!c.value,c.value?b.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:1,end:100},{type:"slider",show:!0,yAxisIndex:[0],left:"95%",start:1,end:100},{type:"inside",xAxisIndex:[0],start:1,end:100},{type:"inside",yAxisIndex:[0],start:1,end:100}]}):S()};be([()=>a.chartData,i],()=>{xe(S)},{deep:!0}),be(()=>Ml.data.order,()=>{xe(()=>{S()})},{deep:!0}),be(()=>a.isEmpty,I=>{I||F()}),be(v,I=>{I||F()}),be(k,()=>{if(!b)return;const O=b.getOption().series.map(L=>L.type==="line"?{...L,areaStyle:k.value?void 0:{opacity:.3}}:L);xe(()=>{b.setOption({series:O})})});const V=()=>{m.value=Ve.isDark(),xe(()=>{S()})},D=()=>{xe(()=>{S()})};return kt(()=>{window.removeEventListener("onFluentCartThemeChange",V,!1),window.removeEventListener("fluentCartCurrencyChange",D,!1)}),Ie(()=>{xe(F),window.addEventListener("onFluentCartThemeChange",V),window.addEventListener("fluentCartCurrencyChange",D)}),(I,O)=>{const L=B("el-tooltip"),P=B("el-option"),G=B("el-select"),j=B("el-skeleton");return r(),h("div",Ste,[n(ke,{id:"chartContainer"},{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",Fte,[o("h5",$te,f(A(u)("Order Chart")),1),n(L,{"popper-class":"fct-tooltip",content:M.value,placement:"top"},{default:d(()=>[n(J,{class:"text-gray-500 w-4 h-4 cursor-pointer",name:"InformationFill"})]),_:1},8,["content"])])]),_:2},[e.isEmpty?void 0:{name:"action",fn:d(()=>[o("div",Ete,[n(G,{class:"el-select--x-small",modelValue:s.value,"onUpdate:modelValue":O[0]||(O[0]=z=>s.value=z),onChange:y},{default:d(()=>[(r(),h(H,null,ae(_,z=>n(P,{key:z.value,label:z.label,value:z.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),o("div",Ute,[n(Ze,{tag:"button",size:"small",title:A(u)("Zoom Chart"),onClick:U,class:ie(c.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:l.value},null,8,["targetRef"])])]),key:"0"}]),1024),n(Ce,null,{default:d(()=>[v.value?(r(),$(j,{key:0,animated:"",rows:4})):(r(),h(H,{key:1},[e.isEmpty?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h("div",{key:0,class:"fct-chart-wrap fct-order-line-chart",ref_key:"chartRef",ref:l},null,512)),e.isEmpty?x("",!0):(r(),h("div",Ite,[o("div",Qte,[o("div",Dte,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",Vte,f(A(u)("Data")),1)]),o("div",Tte,[o("span",Mte,f(A(u)("Timeline")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])]))],64))]),_:1})]),_:1})])}}},Rte={class:"fct-report-monthly-list"},Ote={class:"list-left-content"},Hte={class:"list-title"},Pte={class:"list-right-content"},Nte={class:"list-value"},Kte={__name:"MonthlySummary",props:{orderReport:{type:Object,required:!0}},setup(e){const t=e,a=N(()=>Ya.currentCurrencySign),l=[{title:u("Average Monthly Gross"),key:"monthly_gross",currencySign:a,hasCurrency:!0},{title:u("Average Monthly Revenue"),key:"monthly_net",currencySign:a,hasCurrency:!0},{title:u("Average Monthly Orders"),key:"monthly_orders"},{title:u("Average Monthly Items"),key:"monthly_items"}],s=N(()=>l.map(c=>({...c,value:t.orderReport.data.summary[c.key]||0,fluctuation:t.orderReport.data.fluctuations[c.key]||0,hasCurrency:c.hasCurrency||!1}))),i=c=>["monthly_net","monthly_gross"].includes(c.key)?et.scaled(c.value):ua(c.value);return(c,p)=>(r(),h("ul",Rte,[(r(!0),h(H,null,ae(s.value,(m,_)=>(r(),h("li",{key:_},[o("div",Ote,[o("div",Hte,f(m.title),1)]),o("div",Pte,[o("div",Nte,[n(Is,{amount:i(m),title:m.title},null,8,["amount","title"]),n(ml,{fluctuation:m.fluctuation,amount:e.orderReport.data.previousSummary[m.key],"is-liability":!1,"has-currency":m.hasCurrency},null,8,["fluctuation","amount","has-currency"])])])]))),128))]))}},Gte={class:"fct-report-result-content"},jte={class:"value"},zte={class:"inline-flex"},qte={class:"title"},Yte={__name:"AverageResults",props:{orderReport:{type:Object,required:!0},reportFilter:{type:Object}},setup(e){const t=e,a=N(()=>t.reportFilter.currentCurrencySign),l=[{title:u("Taxes"),content:u("Total amount of taxes"),key:"tax_total",currencySign:a.value},{title:u("Shipping"),content:u("Total amount of shipping costs"),key:"shipping_total",currencySign:a.value}],s=N(()=>l.map(i=>({...i,value:t.orderReport.data.summary[i.key]||0,fluctuation:t.orderReport.data.fluctuations[i.key]||0})).filter(i=>i.value>0));return(i,c)=>{const p=B("el-tooltip");return r(),h("div",{class:"fct-report-avg-wrap mb-7.5",style:ra(`--avg-grid-cols: ${s.value.length}`)},[(r(!0),h(H,null,ae(s.value,m=>(r(),h("div",{class:"fct-report-result",key:m.title},[o("div",Gte,[o("div",jte,[o("span",zte,f(A(et).scaled(m.value)),1),m.fluctuation!==0?(r(),h("div",{key:0,class:"percentage",style:ra({color:m.fluctuation>0?"green":"red"})},[m.fluctuation>0?(r(),$(J,{key:0,class:"w-2",name:"CaretUp"})):x("",!0),m.fluctuation<0?(r(),$(J,{key:1,class:"w-2",name:"CaretDown"})):x("",!0),R(" "+f(A(ua)(m.fluctuation))+"% ",1)],4)):x("",!0)]),o("div",qte,[R(f(m.title)+" ",1),m.content?(r(),$(p,{key:0,"popper-class":"fct-tooltip",content:m.content,placement:"top"},{default:d(()=>[n(J,{name:"InformationFill",class:"w-4"})]),_:2},1032,["content"])):x("",!0)])])]))),128))],4)}}},Wte={class:"flex items-center gap-2"},Xte={class:"fct-card-header-title is-small"},Jte={class:"fct-btn-group sm"},Zte=["innerHTML"],eae=["innerHTML"],tae=["innerHTML"],aae=["innerHTML"],lae={__name:"NewVsReturningCustomer",props:{tableData:{type:Object,required:!0},reportFilter:{type:Object}},setup(e){const t=e;T("number");const a=T(!1),l=N(()=>Vt.data.isBusy.newVsReturning),s=N(()=>{if(a.value===!0){const c=["customer_count","order_count","net_sales","average_net","gross_sales","average_gross"],p={customer_type:"New"},m={customer_type:"Returning"};return c.forEach(_=>{const g=parseFloat(t.tableData[0][_]),y=parseFloat(t.tableData[1][_]),v=g+y;p[_]=g*100/v,m[_]=y*100/v}),[p,m]}return t.tableData});N(()=>t.reportFilter.currentCurrencySign),Ie(()=>{});const i=c=>`${parseFloat(c).toFixed(2)}%`;return(c,p)=>{const m=B("el-tooltip"),_=B("el-checkbox"),g=B("el-skeleton"),y=B("el-table-column"),v=B("el-empty"),w=B("el-table");return r(),$(ke,{class:"overflow-hidden",id:"chartContainer"},{default:d(()=>[n(Qe,{title_size:"small"},{title:d(()=>[o("div",Wte,[o("h5",Xte,f(A(u)("New vs. Returning Customers")),1),n(m,{"popper-class":"fct-tooltip",content:A(u)("Returning customers are those who first ordered before this period."),placement:"top"},{default:d(()=>[n(J,{name:"InformationFill",class:"text-gray-500 w-4 h-4 cursor-pointer"})]),_:1},8,["content"])])]),action:d(()=>[o("div",Jte,[n(_,{modelValue:a.value,"onUpdate:modelValue":p[0]||(p[0]=C=>a.value=C),onChange:c.selectGroupKey},{default:d(()=>[R(f(A(u)("Show Percentages")),1)]),_:1},8,["modelValue","onChange"]),n(On,{data:s.value,filename:"order_report.csv"},null,8,["data"])])]),_:1}),n(Ce,{class:"px-0 pb-0"},{default:d(()=>[l.value?(r(),$(g,{key:0,animated:"",rows:3,class:"p-3"})):(r(),$(w,{key:1,data:s.value,border:""},{empty:d(()=>[n(v,{text:A(u)("No data available")},null,8,["text"])]),default:d(()=>[n(y,{prop:"customer_type",label:A(u)("Type"),"min-width":"90"},{default:d(C=>[R(f(C.row.customer_type),1)]),_:1},8,["label"]),n(y,{prop:"customer_count",label:A(u)("Customer Count"),"min-width":"120"},{default:d(C=>[R(f(a.value?i(C.row.customer_count):C.row.customer_count),1)]),_:1},8,["label"]),n(y,{prop:"order_count",label:A(u)("Order Count"),"min-width":"150"},{default:d(C=>[R(f(a.value?i(C.row.order_count):C.row.order_count),1)]),_:1},8,["label"]),n(y,{prop:"gross_sales",label:A(u)("Gross Sales"),"min-width":"150"},{default:d(C=>[o("div",{class:"inline-flex",innerHTML:a.value?i(C.row.gross_sales):A(et).scaled(C.row.gross_sales)},null,8,Zte)]),_:1},8,["label"]),n(y,{prop:"average_gross",label:A(u)("Average Gross Sales"),"min-width":"150"},{default:d(C=>[o("div",{class:"inline-flex",innerHTML:a.value?i(C.row.average_gross):A(et).scaled(C.row.average_gross)},null,8,eae)]),_:1},8,["label"]),n(y,{prop:"net_sales",label:A(u)("Revenue"),"min-width":"150"},{default:d(C=>[o("div",{class:"inline-flex",innerHTML:a.value?i(C.row.net_sales):A(et).scaled(C.row.net_sales)},null,8,tae)]),_:1},8,["label"]),n(y,{prop:"average_net",label:A(u)("Average Revenue"),"min-width":"150"},{default:d(C=>[o("div",{class:"inline-flex",innerHTML:a.value?i(C.row.average_net):A(et).scaled(C.row.average_net)},null,8,aae)]),_:1},8,["label"])]),_:1},8,["data"]))]),_:1})]),_:1})}}},sae=at(lae,[["__scopeId","data-v-7818e7a0"]]),nae={class:"w-[240px] fct-btn-group gap-1.5"},oae={class:"capitalize"},iae={class:"capitalize"},rae=["innerHTML"],dae=["innerHTML"],uae=["innerHTML"],cae=["innerHTML"],Aae={__name:"OrderGroupedBy",props:{reportFilter:{type:Object}},setup(e){const a=e.reportFilter,l=T("billing_country"),s=a.applicableFilters;N(()=>a.currentCurrencySign);const i=()=>{Vt.getOrderByGroup({params:{...s.params,groupKey:l.value}})},c=[{label:u("Billing Country"),value:"billing_country"},{label:u("Shipping Country"),value:"shipping_country"},{label:u("Payment Method"),value:"payment_method"}];return Ie(()=>{i()}),(p,m)=>{const _=B("el-option"),g=B("el-select"),y=B("el-table-column"),v=B("el-table");return r(),$(ke,{class:"overflow-hidden",id:"chartContainer"},{default:d(()=>[n(Qe,{title:A(u)("Orders grouped by"),title_size:"small"},{action:d(()=>[o("div",nae,[n(g,{class:"el-select--x-small",modelValue:l.value,"onUpdate:modelValue":m[0]||(m[0]=w=>l.value=w),onChange:i,placeholder:A(u)("Select Group")},{default:d(()=>[(r(),h(H,null,ae(c,w=>n(_,{key:w.value,label:w.label,value:w.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","placeholder"]),n(On,{data:A(Vt).data.orderByGroup,filename:"order_grouped_by.csv",class:"m-0"},null,8,["data"])])]),_:1},8,["title"]),n(Ce,{class:"px-0 pb-0"},{default:d(()=>[n(v,{data:A(Vt).data.orderByGroup,border:"",class:"max-h-[350px] overflow-y-auto"},{empty:d(()=>[n(bt,{icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!")},null,8,["text"])]),default:d(()=>[l.value==="payment_method"?(r(),$(y,{key:0,prop:"payment_method",label:A(u)("Payment Method"),"min-width":"150"},{default:d(w=>[R(f(w.row.payment_method),1)]),_:1},8,["label"])):x("",!0),l.value==="shipping_country"?(r(),$(y,{key:1,prop:"shipping_country",label:A(u)("Country"),"min-width":"150"},{default:d(w=>[o("span",oae,f(A(Dn)(w.row.shipping_country)),1)]),_:1},8,["label"])):x("",!0),l.value==="billing_country"?(r(),$(y,{key:2,prop:"billing_country",label:A(u)("Billing Country"),"min-width":"150"},{default:d(w=>[o("span",iae,f(A(Dn)(w.row.billing_country)),1)]),_:1},8,["label"])):x("",!0),n(y,{prop:"orders",label:A(u)("Orders"),"min-width":"150"},{default:d(w=>[R(f(A(u)(w.row.orders)),1)]),_:1},8,["label"]),n(y,{prop:"gross_sale",label:A(u)("Gross Sales"),"min-width":"150"},{default:d(w=>[o("div",{class:"inline-flex",innerHTML:A(et).scaled(w.row.gross_sale)},null,8,rae)]),_:1},8,["label"]),n(y,{prop:"average_order_gross",label:A(u)("Average Gross Sales"),"min-width":"150"},{default:d(w=>[o("div",{class:"inline-flex",innerHTML:A(et).scaled(w.row.average_order_gross)},null,8,dae)]),_:1},8,["label"]),n(y,{prop:"net_sale",label:A(u)("Revenue"),"min-width":"150"},{default:d(w=>[o("div",{class:"inline-flex",innerHTML:A(et).scaled(w.row.net_sale)},null,8,uae)]),_:1},8,["label"]),n(y,{prop:"average_order_net",label:A(u)("Average Revenue"),"min-width":"150"},{default:d(w=>[o("div",{class:"inline-flex",innerHTML:A(et).scaled(w.row.average_order_net)},null,8,cae)]),_:1},8,["label"])]),_:1},8,["data"])]),_:1})]),_:1})}}},pae={class:"fct-report-spend-by-day-wrap"},fae={class:"flex items-center gap-2"},mae={class:"fct-card-header-title is-small"},hae={class:"fct-btn-group sm"},_ae={key:2,class:"chart-action-wrap"},vae={class:"chart-change-wrap"},gae={class:"chart-change"},yae={class:"text"},bae={class:"chart-change"},wae={class:"text"},Cae={__name:"GrossSaleByDay",props:{reportFilter:{type:Object},chartRef:{},chartData:{type:Array,required:!0}},setup(e){const t=e,a=T(null);let l=null;T(ga.getChartType("order","gross_sale_by_day_chart")||"line");const s=T(!1),i=N(()=>{const F=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];return[...t.chartData].sort((E,S)=>E.day-S.day).map(E=>F[E.day-1])}),c=N(()=>Object.values(t.chartData).every(F=>F.order_count===0)),p=N(()=>Vt.data.isBusy.orderByDayAndHour),m=Ve.colors.report,_=T(Ve.isDark()),g=N(()=>[y("Gross Sale","line",0,t.chartData.map(F=>F.gross_sale),_.value?m.blue_dark_mode:m.blue),y("Orders","bar",1,t.chartData.map(F=>F.order_count),_.value?m.dark_cyan_blue_16:m.light_gray)]),y=(F,M,E,S,Q)=>({name:F,type:M,barMaxWidth:30,data:S,smooth:!1,color:Q,lineStyle:{width:3},symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:Q,borderRadius:[4,4,0,0]},yAxisIndex:E,emphasis:{scale:2,itemStyle:{color:za(Q)},lineStyle:{color:Q},areaStyle:{opacity:.3,color:Q}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}),v=()=>{if(!l)return;const F={title:{text:t.chartTitle,left:"center"},tooltip:{trigger:"axis",backgroundColor:_.value?"#253241":"#ffffff",borderColor:_.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:_.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:_.value?m.dark_cyan_blue_16:m.light_gray_blue}},formatter:M=>{let E=M[0].name;return M.forEach(S=>{const Q=S.seriesName==="Gross Sale"?`${et.scaled(S.value)}`:S.value,U=_.value?"#ffffff":"#565865";E+=`
${S.marker}
${S.seriesName}
${Q}
`}),E}},grid:{left:"10%",right:"10%",bottom:"15%"},xAxis:{type:"category",data:i.value,axisLabel:{color:_.value?"#FFFFFF":"#696778",fontSize:12},axisLine:{lineStyle:{type:"dashed",color:_.value?"#253241":"#D6DAE1"}}},yAxis:[{type:"value",name:"Gross Sale",axisLabel:{color:_.value?"#FFFFFF":"#696778",fontSize:12,formatter:M=>`${et.scaled(M)}`},min:0,max:"dataMax",splitLine:{show:!0,lineStyle:{color:_.value?"#253241":"#D6DAE1",type:"dashed"}}},{type:"value",name:"Orders",position:"right",axisLabel:{color:_.value?"#FFFFFF":"#696778",fontSize:12},min:0,max:"dataMax",splitLine:{show:!1,lineStyle:{color:_.value?"#253241":"#D6DAE1",type:"dashed"}}}],dataZoom:s.value?[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]:[],series:g.value};l.setOption(F)},w=()=>{l&&(l.dispose(),l=null),xe(()=>{a.value&&(l=ea(a.value),v())})},C=()=>{s.value=!s.value,s.value?l.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]}):l.setOption({dataZoom:[]},{replaceMerge:["dataZoom"]})};be(()=>[Vt.data.grossSaleByDay],()=>{xe(()=>{v()})},{deep:!0}),be(c,F=>{F||w()}),be(p,F=>{F||w()});const b=()=>{_.value=Ve.isDark(),xe(()=>{v()})},k=()=>{xe(()=>{v()})};return Ie(()=>{xe(()=>{w(),t.reportFilter.addListener("spend-by-day",w),window.addEventListener("onFluentCartThemeChange",b),window.addEventListener("fluentCartCurrencyChange",k)})}),kt(()=>{l&&(l.dispose(),window.removeEventListener("onFluentCartThemeChange",b,!1),window.removeEventListener("fluentCartCurrencyChange",k,!1),t.reportFilter.removeListener("spend-by-day",w,!1),window.removeEventListener("resize",()=>{l.resize()}))}),(F,M)=>{const E=B("el-tooltip"),S=B("el-skeleton");return r(),h("div",pae,[n(ke,{id:"chartContainer"},{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",fae,[o("h5",mae,f(A(u)("Spend by day")),1),n(E,{"popper-class":"fct-tooltip",content:A(u)("Gross sales grouped by the days of the week."),placement:"top"},{default:d(()=>[n(J,{name:"InformationFill",class:"w-4 cursor-pointer"})]),_:1},8,["content"])])]),_:2},[c.value?void 0:{name:"action",fn:d(()=>[o("div",hae,[n(Ze,{tag:"button",size:"x-small",title:F.$t("Zoom Chart"),onClick:C,class:ie(s.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:a.value,size:"x-small"},null,8,["targetRef"])])]),key:"0"}]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[p.value?(r(),$(S,{key:0,animated:"",rows:4,class:"p-3"})):(r(),h(H,{key:1},[c.value?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h("div",{key:0,class:"fct-report-spend-by-day-chart",ref_key:"chartRef",ref:a},null,512)),c.value?x("",!0):(r(),h("div",_ae,[o("div",vae,[o("div",gae,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",yae,f(F.$t("Gross Sale")),1)]),o("div",bae,[o("span",wae,f(F.$t("Days of the week")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])]))],64))]),_:1})]),_:1})])}}},Bae={class:"fct-report-item-count-distribution-wrap"},kae={class:"flex items-center gap-2"},xae={class:"fct-card-header-title is-small"},Sae={class:"fct-btn-group sm"},Fae={key:2,class:"chart-action-wrap"},$ae={class:"chart-change-wrap"},Eae={class:"chart-change"},Uae={class:"text"},Iae={class:"chart-change"},Qae={class:"text"},Dae={__name:"ItemCountDistribution",props:{chartData:{type:Array,required:!0},chartRef:{}},setup(e){const t=e,a=T(null);T(t.chartData.length<=1?"bar":ga.getChartType("order","item_count_distribtion_chart")||"bar");const l=T(!1);N(()=>{const F=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"];return[...t.chartData].sort((E,S)=>E.day-S.day).map(E=>F[E.day-1])});const s=Ve.colors,i=T(Ve.isDark());let c=null;const p=()=>{l.value=!l.value,l.value?c.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:1,end:100},{type:"slider",show:!0,yAxisIndex:[0],left:"95%",start:1,end:100},{type:"inside",xAxisIndex:[0],start:1,end:100},{type:"inside",yAxisIndex:[0],start:1,end:100}]}):c.setOption({dataZoom:[]},{replaceMerge:["dataZoom"]})},m=()=>{c&&c.resize()},_=N(()=>i.value?s.blue[500]+"52":s.blue[300]),g=N(()=>[{name:u("Orders"),type:"bar",barMaxWidth:30,data:t.chartData.map(F=>F.order_count),smooth:!1,color:_.value,symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:_.value,borderRadius:[4,4,0,0]},yAxisIndex:0,emphasis:{scale:2,itemStyle:{color:i.value?s.blue[800]:s.blue[400]},lineStyle:{color:_.value},areaStyle:{opacity:.3,color:_.value}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}]),y=N(()=>({title:{text:t.chartTitle,left:"center"},tooltip:{trigger:"axis",backgroundColor:i.value?"#253241":"#ffffff",borderColor:i.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:i.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:i.value?s.report.dark_cyan_blue_16:s.report.light_gray_cyan_blue}}},grid:{show:!1,left:"10%",right:"10%",bottom:"15%"},xAxis:{type:"category",data:t.chartData.map(F=>F.item_count),axisLabel:{color:i.value?"#FFFFFF":"#696778",fontSize:12},axisLine:{lineStyle:{type:"dashed",color:i.value?"#253241":"#D6DAE1"}}},yAxis:{type:"value",name:u("Orders"),axisLabel:{formatter:"{value}",color:i.value?"#FFFFFF":"#696778",fontSize:12},min:0,splitLine:{show:!0,lineStyle:{color:i.value?"#253241":"#D6DAE1",type:"dashed"}}},dataZoom:[],series:g.value})),v=N(()=>Object.values(t.chartData).every(F=>F.order_count===0)),w=N(()=>Vt.data.isBusy.orderByDayAndHour),C=()=>{c&&(c.dispose(),c=null),xe(()=>{a.value&&(c=ea(a.value),c.setOption(y.value),window.addEventListener("resize",m))})},b=()=>{c&&c.setOption(y.value)};be(()=>t.chartData,()=>{c?c.setOption(y.value):xe(()=>{C()})}),be(v,F=>{F||C()}),be(w,F=>{F||C()});const k=()=>{i.value=Ve.isDark(),xe(()=>{b()})};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",k,!1),xe(()=>{C()})}),kt(()=>{c&&(c.dispose(),window.removeEventListener("onFluentCartThemeChange",k,!1),window.removeEventListener("resize",m))}),(F,M)=>{const E=B("el-tooltip"),S=B("el-skeleton");return r(),h("div",Bae,[n(ke,{id:"chartContainer"},{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",kae,[o("h5",xae,f(A(u)("Item count distribution")),1),n(E,{"popper-class":"fct-tooltip",content:A(u)("Grouping the orders by the number of items in each order."),placement:"top"},{default:d(()=>[n(J,{name:"InformationFill",class:"w-4 cursor-pointer"})]),_:1},8,["content"])])]),_:2},[e.chartData.length?{name:"action",fn:d(()=>[o("div",Sae,[n(Ze,{tag:"button",size:"x-small",title:F.$t("Zoom Chart"),onClick:p,class:ie(l.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:a.value,size:"x-small"},null,8,["targetRef"])])]),key:"0"}:void 0]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[w.value?(r(),$(S,{key:0,animated:"",rows:4,class:"px-5 pb-5"})):(r(),h(H,{key:1},[v.value?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h("div",{key:0,class:"fct-report-item-count-distribution-chart",ref_key:"chartRef",ref:a},null,512)),v.value?x("",!0):(r(),h("div",Fae,[o("div",$ae,[o("div",Eae,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",Uae,f(F.$t("Order Count")),1)]),o("div",Iae,[o("span",Qae,f(F.$t("Item Count")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])]))],64))]),_:1})]),_:1})])}}},Vae={class:"fct-report-spend-by-hour-wrap"},Tae={class:"flex items-center gap-2"},Mae={class:"fct-card-header-title is-small"},Lae={class:"fct-btn-group sm"},Rae={key:2,class:"chart-action-wrap"},Oae={class:"chart-change-wrap"},Hae={class:"chart-change"},Pae={class:"text"},Nae={class:"chart-change"},Kae={class:"text"},Gae={__name:"GrossSaleByHour",props:{chartData:{type:Array,required:!0},chartTitle:{type:String,default:""}},setup(e){const t=e,a=T(null);let l=null;T(ga.getChartType("order","gross_sale_by_hour_chart")||"line");const s=T(!1),i=N(()=>t.chartData.map(F=>F.hour)),c=N(()=>Object.values(t.chartData).every(F=>F.order_count===0)),p=N(()=>Vt.data.isBusy.orderByDayAndHour),m=Ve.colors.report,_=T(Ve.isDark()),g=(F,M,E,S,Q)=>({name:F,type:M,barMaxWidth:30,data:E,smooth:!1,color:S,lineStyle:{width:3},symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:S,borderRadius:[4,4,0,0]},yAxisIndex:Q,emphasis:{scale:2,itemStyle:{color:za(S)},lineStyle:{color:S},areaStyle:{opacity:.3,color:S}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}),y=N(()=>[{name:u("Gross Sale"),type:"line",yAxisIndex:0,data:t.chartData.map(F=>F.gross_sale),color:_.value?m.purple_dark_mode:m.purple},{name:u("Orders"),type:"bar",yAxisIndex:1,data:t.chartData.map(F=>F.order_count),color:_.value?m.dark_cyan_blue_16:m.light_gray}].map(F=>g(F.name,F.type,F.data,F.color,F.yAxisIndex))),v=()=>{if(!l)return;const F={title:{text:t.chartTitle,left:"center"},tooltip:{trigger:"axis",backgroundColor:_.value?"#253241":"#ffffff",borderColor:_.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:_.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:_.value?m.dark_cyan_blue_16:m.light_gray_blue}},formatter:M=>{let E=M[0].name;return M.forEach(S=>{const Q=S.seriesName==="Gross Sale"?`${et.scaled(S.value)}`:S.value,U=_.value?"#ffffff":"#565865";E+=`
${S.marker}
${S.seriesName}
${Q}
`}),E}},grid:{left:"10%",right:"10%",bottom:"15%"},xAxis:{type:"category",data:i.value,axisLabel:{color:_.value?"#FFFFFF":"#696778",fontSize:12},axisLine:{lineStyle:{type:"dashed",color:_.value?"#253241":"#D6DAE1"}},axisTick:{alignWithLabel:!0}},yAxis:[{type:"value",name:u("Gross Sale"),axisLabel:{color:_.value?"#FFFFFF":"#696778",fontSize:12,formatter:M=>`${et.scaled(M)}`},min:0,max:"dataMax",splitLine:{show:!0,lineStyle:{color:_.value?"#253241":"#D6DAE1",type:"dashed"}}},{type:"value",name:u("Orders"),position:"right",axisLabel:{color:_.value?"#FFFFFF":"#696778",fontSize:12},min:0,max:"dataMax",splitLine:{show:!1,lineStyle:{color:_.value?"#253241":"#D6DAE1",type:"dashed"}}}],dataZoom:s.value?[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]:[],series:y.value};l.setOption(F)},w=()=>{l&&(l.dispose(),l=null),xe(()=>{a.value&&(l=ea(a.value),v())})},C=()=>{s.value=!s.value,s.value?l.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]}):l.setOption({dataZoom:[]},{replaceMerge:["dataZoom"]})};be(()=>t.chartData,()=>{xe(()=>v())}),be(c,F=>{F||w()}),be(p,F=>{F||w()});const b=()=>{_.value=Ve.isDark(),xe(()=>{v()})},k=()=>{xe(()=>{v()})};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",b,!1),window.addEventListener("fluentCartCurrencyChange",k),xe(()=>w())}),kt(()=>{l&&(l.dispose(),window.removeEventListener("onFluentCartThemeChange",b,!1),window.removeEventListener("fluentCartCurrencyChange",k,!1),window.removeEventListener("resize",()=>{l.resize()}))}),(F,M)=>{const E=B("el-tooltip"),S=B("el-skeleton");return r(),h("div",Vae,[n(ke,null,{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",Tae,[o("h5",Mae,f(A(u)("Spend by hour ")),1),n(E,{"popper-class":"fct-tooltip",content:A(u)("Gross Sales grouped by the hours of the day."),placement:"top"},{default:d(()=>[n(J,{name:"InformationFill",class:"w-4 cursor-pointer"})]),_:1},8,["content"])])]),_:2},[c.value?void 0:{name:"action",fn:d(()=>[o("div",Lae,[n(Ze,{tag:"button",size:"x-small",title:F.$t("Zoom Chart"),onClick:C,class:ie(s.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:a.value,size:"x-small"},null,8,["targetRef"])])]),key:"0"}]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[p.value?(r(),$(S,{key:0,animated:"",rows:10,class:"px-3"})):(r(),h(H,{key:1},[c.value?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h("div",{key:0,class:"fct-report-spend-by-hour-chart",ref_key:"chartRef",ref:a},null,512)),c.value?x("",!0):(r(),h("div",Rae,[o("div",Oae,[o("div",Hae,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",Pae,f(F.$t("Gross Sale")),1)]),o("div",Nae,[o("span",Kae,f(F.$t("Hour")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])]))],64))]),_:1})]),_:1})])}}},jae={class:"fct-report-order-completion-time-wrap"},zae={class:"flex items-center gap-2"},qae={class:"fct-card-header-title is-small"},Yae={class:"fct-btn-group sm"},Wae={key:2,class:"chart-action-wrap"},Xae={class:"chart-change-wrap"},Jae={class:"chart-change"},Zae={class:"text"},ele={class:"chart-change"},tle={class:"text"},ale={__name:"OrderCompletionTime",props:{chartData:{type:Array,required:!0},chartRef:{}},setup(e){const t=e,a=T(null);let l=null;T(ga.getChartType("order","order_completion_time_chart")||"bar");const s=T(!1),i=N(()=>t.chartData.map(F=>F.hour)),c=Ve.colors,p=T(Ve.isDark()),m=N(()=>p.value?c.blue[500]+"52":c.blue[300]),_=N(()=>[{name:u("Orders"),type:"bar",barMaxWidth:30,data:t.chartData.map(F=>F.orders),smooth:!1,color:m.value,symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:m.value,borderRadius:[4,4,0,0]},yAxisIndex:0,emphasis:{scale:2,itemStyle:{color:p.value?c.blue[800]:c.blue[400]},lineStyle:{color:m.value},areaStyle:{opacity:.3,color:m.value}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}]),g=N(()=>Object.values(t.chartData).every(F=>F.orders===0)),y=N(()=>Vt.data.isBusy.orderCompletionTime),v=()=>{l&&l.resize()},w=()=>{if(!l)return;const F={title:{text:"",left:"center"},tooltip:{trigger:"axis",backgroundColor:p.value?"#253241":"#ffffff",borderColor:p.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:p.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:p.value?c.report.dark_cyan_blue_16:c.report.light_gray_cyan_blue}}},grid:{show:!1,left:"10%",right:"10%",bottom:"15%"},xAxis:{type:"category",data:i.value,axisLabel:{color:p.value?"#FFFFFF":"#696778",fontSize:12},axisLine:{lineStyle:{type:"dashed",color:p.value?"#253241":"#D6DAE1"}}},yAxis:{type:"value",axisLabel:{formatter:"{value}",color:p.value?"#FFFFFF":"#696778",fontSize:12},splitLine:{show:!0,lineStyle:{color:p.value?"#253241":"#D6DAE1",type:"dashed"}},min:0,splitNumber:5},dataZoom:s.value?[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]:[],series:_.value};l.setOption(F)},C=()=>{l&&(l.dispose(),l=null),xe(()=>{a.value&&(l=ea(a.value),w())})},b=()=>{s.value=!s.value,s.value?l.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]}):l.setOption({dataZoom:[]},{replaceMerge:["dataZoom"]})};be(()=>t.chartData,()=>{l?w():xe(()=>{C()})}),be(g,F=>{F||C()}),be(y,F=>{F||C()});const k=()=>{p.value=Ve.isDark(),xe(()=>{w()})};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",k,!1),xe(()=>C())}),kt(()=>{l&&(l.dispose(),window.removeEventListener("onFluentCartThemeChange",k,!1),window.removeEventListener("resize",v))}),(F,M)=>{const E=B("el-tooltip"),S=B("el-skeleton");return r(),h("div",jae,[n(ke,{id:"chartContainer"},{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",zae,[o("h5",qae,f(A(u)("Time between an order's created & completed date")),1),n(E,{"popper-class":"fct-tooltip",content:A(u)("Orders grouped by based on their completion time in Hours."),placement:"top"},{default:d(()=>[n(J,{name:"InformationFill",class:"w-4 cursor-pointer"})]),_:1},8,["content"])])]),_:2},[e.chartData.length?{name:"action",fn:d(()=>[o("div",Yae,[n(Ze,{tag:"button",size:"x-small",title:F.$t("Zoom Chart"),onClick:b,class:ie(s.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:a.value,size:"x-small"},null,8,["targetRef"])])]),key:"0"}:void 0]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[y.value?(r(),$(S,{key:0,animated:"",rows:4,class:"px-5 pt-5"})):(r(),h(H,{key:1},[g.value?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h("div",{key:0,class:"fct-report-order-completion-time-chart",ref_key:"chartRef",ref:a},null,512)),g.value?x("",!0):(r(),h("div",Wae,[o("div",Xae,[o("div",Jae,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",Zae,f(A(u)("Order Count")),1)]),o("div",ele,[o("span",tle,f(A(u)("Hours")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])]))],64))]),_:1})]),_:1})])}}},lle={class:"fct-report-order-value-distribution-wrap"},sle={class:"flex items-center gap-2"},nle={class:"fct-card-header-title is-small"},ole={class:"fct-btn-group sm"},ile={key:2,class:"chart-action-wrap"},rle={class:"chart-change-wrap"},dle={class:"chart-change"},ule={class:"text"},cle={class:"chart-change"},Ale={class:"text"},ple={__name:"OrderValueDistribution",props:{chartData:{type:Object,required:!0},chartRef:{}},setup(e){const t=e,a=T(null);let l=null;T(ga.getChartType("order","order_value_distribution_chart")||"bar");const s=T(!1),i=N(()=>Object.keys(t.chartData)),c=Ve.colors,p=T(Ve.isDark()),m=N(()=>p.value?c.blue[500]+"52":c.blue[300]),_=N(()=>!Object.values(t.chartData).every(F=>F&&F!==0)),g=N(()=>Vt.data.isBusy.orderValueDistribution),y=N(()=>[{name:u("Orders"),type:"bar",barMaxWidth:30,data:Object.values(t.chartData),smooth:!1,color:m.value,symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:m.value,borderRadius:[4,4,0,0]},yAxisIndex:0,emphasis:{scale:2,itemStyle:{color:p.value?c.blue[800]:c.blue[400]},lineStyle:{color:m.value},areaStyle:{opacity:.3,color:m.value}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}]),v=N(()=>({title:{text:t.chartTitle,left:"center"},tooltip:{trigger:"axis",backgroundColor:p.value?"#253241":"#ffffff",borderColor:p.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:p.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:p.value?c.report.dark_cyan_blue_16:c.report.light_gray_cyan_blue}}},grid:{show:!1,left:"10%",right:"10%",bottom:"15%"},xAxis:{type:"category",data:i.value,axisLabel:{color:p.value?"#ffffff":"#000000",fontSize:12},axisLine:{lineStyle:{type:"dashed",color:p.value?"#253241":"#D6DAE1"}}},yAxis:{type:"value",name:u("Orders"),axisLabel:{formatter:"{value}",color:p.value?"#ffffff":"#000000",fontSize:12},splitLine:{show:!0,lineStyle:{color:p.value?"#253241":"#D6DAE1",type:"dashed"}},min:0,splitNumber:5},dataZoom:s.value?[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]:[],series:y.value})),w=()=>{l&&(l.dispose(),l=null),xe(()=>{a.value?(l=ea(a.value),l.setOption(v.value),window.addEventListener("resize",()=>{l.resize()})):l&&l.setOption(v.value)})},C=()=>{l&&l.setOption(v.value)},b=()=>{s.value=!s.value,s.value?l.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]}):l.setOption({dataZoom:[]},{replaceMerge:["dataZoom"]})};be(()=>t.chartData,()=>{l&&l.setOption(v.value)}),be(_,F=>{F||w()}),be(g,F=>{F||w()});const k=()=>{p.value=Ve.isDark(),xe(()=>{C()})};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",k,!1),xe(()=>{w()})}),kt(()=>{l&&(l.dispose(),window.removeEventListener("onFluentCartThemeChange",k,!1),window.removeEventListener("resize",()=>{l.resize()}))}),(F,M)=>{const E=B("el-tooltip"),S=B("el-skeleton");return r(),h("div",lle,[n(ke,{id:"chartContainer"},{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",sle,[o("h5",nle,f(A(u)("Order value distribution")),1),n(E,{"popper-class":"fct-tooltip",content:A(u)("Orders grouped by based on their order value in different ranges."),placement:"top"},{default:d(()=>[n(J,{name:"InformationFill",class:"w-4 cursor-pointer"})]),_:1},8,["content"])])]),_:2},[_.value?void 0:{name:"action",fn:d(()=>[o("div",ole,[n(Ze,{tag:"button",size:"x-small",title:F.$t("Zoom Chart"),onClick:b,class:ie(s.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:a.value,size:"x-small"},null,8,["targetRef"])])]),key:"0"}]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[g.value?(r(),$(S,{key:0,animated:"",rows:4,class:"p-3"})):(r(),h(H,{key:1},[_.value?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h("div",{key:0,class:"fct-report-order-value-distribution-chart",ref_key:"chartRef",ref:a},null,512)),_.value?x("",!0):(r(),h("div",ile,[o("div",rle,[o("div",dle,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",ule,f(F.$t("Order Count")),1)]),o("div",cle,[o("span",Ale,f(F.$t("Order Value Ranges")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])]))],64))]),_:1})]),_:1})])}}},fle={class:"fct-report-average-order-gross-wrap"},mle={class:"flex items-center gap-2"},hle={class:"fct-card-header-title is-small"},_le={class:"fct-btn-group sm"},vle={key:2,class:"chart-action-wrap"},gle={class:"chart-change-wrap"},yle={class:"chart-change"},ble={class:"text"},wle={class:"chart-change"},Cle={class:"text"},Ble={__name:"AverageOrderGross",props:{chartData:{type:Array,required:!0},isEmpty:{type:Boolean,required:!1}},setup(e){const t=e,a=T(null);let l=null;T("line");const s=T(!1),i=Ve.colors.report,c=T(Ve.isDark()),p=N(()=>c.value?i.blue_dark_mode:i.blue),m=N(()=>Vt.data.isBusy.orderChartData),_=N(()=>[{name:u("Average Order Gross"),type:"line",barMaxWidth:30,data:t.chartData.map(F=>F.average_order_gross),smooth:!1,color:p.value,symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:p.value,borderRadius:[4,4,0,0]},yAxisIndex:0,emphasis:{scale:2,itemStyle:{color:za(p.value)},lineStyle:{color:p.value},areaStyle:{opacity:.3,color:p.value}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}]),g=N(()=>ul(t.chartData.length)),y=()=>{l&&l.resize()},v=()=>{if(!l)return;const F=Il(t.chartData),M={title:{text:"",left:"center"},tooltip:{trigger:"axis",backgroundColor:c.value?"#253241":"#ffffff",borderColor:c.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:c.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:c.value?i.dark_cyan_blue_16:i.light_gray_cyan_blue}},valueFormatter:E=>et.scaled(E)},grid:{show:!1,left:"10%",right:"10%",bottom:"15%"},xAxis:{type:"category",data:F,axisLabel:{color:c.value?"#ffffff":"#000000",fontSize:12,interval:g.value.interval},axisLine:{lineStyle:{type:"dashed",color:c.value?"#253241":"#D6DAE1"}}},yAxis:{type:"value",axisLabel:{formatter:"{value}",color:c.value?"#ffffff":"#000000",fontSize:12},splitLine:{show:!0,lineStyle:{color:c.value?"#253241":"#D6DAE1",type:"dashed"}},min:0,splitNumber:5},dataZoom:s.value?[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]:[],series:_.value};l.setOption(M)},w=()=>{l&&(l.dispose(),l=null),xe(()=>{a.value&&(l=ea(a.value),v())})},C=()=>{s.value=!s.value,s.value?l.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]}):l.setOption({dataZoom:[]},{replaceMerge:["dataZoom"]})};be(()=>t.chartData,()=>{xe(()=>v())}),be(t.isEmpty,F=>{F||w()}),be(m,F=>{F||w()});const b=()=>{c.value=Ve.isDark(),xe(()=>{v()})},k=()=>{v()};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",b,!1),window.addEventListener("fluentCartCurrencyChange",k),xe(()=>w())}),kt(()=>{l&&(l.dispose(),window.removeEventListener("onFluentCartThemeChange",b,!1),window.removeEventListener("resize",y)),window.removeEventListener("fluentCartCurrencyChange",k,!1)}),(F,M)=>{const E=B("el-tooltip"),S=B("el-skeleton");return r(),h("div",fle,[n(ke,{id:"chartContainer"},{default:d(()=>[n(Qe,{border_bottom:"",title_size:"small"},la({title:d(()=>[o("div",mle,[o("h5",hle,f(A(u)("Average Order Gross ")),1),n(E,{"popper-class":"fct-tooltip",content:A(u)("Average Order Gross grouped by date period."),placement:"top"},{default:d(()=>[n(J,{name:"InformationFill",class:"w-4 cursor-pointer"})]),_:1},8,["content"])])]),_:2},[e.isEmpty?void 0:{name:"action",fn:d(()=>[o("div",_le,[n(Ze,{tag:"button",size:"x-small",title:F.$t("Zoom Chart"),onClick:C,class:ie(s.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:a.value,size:"x-small"},null,8,["targetRef"])])]),key:"0"}]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[m.value?(r(),$(S,{key:0,animated:"",rows:4,class:"px-5 pt-5"})):(r(),h(H,{key:1},[e.isEmpty?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h("div",{key:0,class:"fct-report-average-order-gross-chart",ref_key:"chartRef",ref:a},null,512)),e.isEmpty?x("",!0):(r(),h("div",vle,[o("div",gle,[o("div",yle,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",ble,f(F.$t("Average Order Gross")),1)]),o("div",wle,[o("span",Cle,f(F.$t("Timeline")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])]))],64))]),_:1})]),_:1})])}}},kle={class:"fct-report-average-order-items-wrap"},xle={class:"flex items-center gap-2"},Sle={class:"fct-card-header-title is-small"},Fle={class:"fct-btn-group sm"},$le={key:2,class:"chart-action-wrap"},Ele={class:"chart-change-wrap"},Ule={class:"chart-change"},Ile={class:"text"},Qle={class:"chart-change"},Dle={class:"text"},Vle={__name:"AverageOrderItems",props:{chartData:{type:Array,required:!0},chartRef:{},isEmpty:{type:Boolean,required:!1}},setup(e){const t=e,a=T(null);let l=null;T(ga.getChartType("order","avg_order_items_chart")||"line");const s=T(!1),i=Ve.colors.report,c=T(Ve.isDark()),p=N(()=>c.value?i.purple_dark_mode:i.purple),m=N(()=>[{name:u("Average Order Items"),type:"line",barMaxWidth:30,data:Array.isArray(t.chartData)?t.chartData.map(F=>F.average_order_items_count):[],smooth:!1,color:p.value,showSymbol:!0,symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:p.value,borderRadius:[4,4,0,0]},yAxisIndex:0,emphasis:{scale:2,itemStyle:{color:za(p.value)},lineStyle:{color:p.value},areaStyle:{opacity:.3,color:p.value}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}]),_=N(()=>ul(t.chartData.length)),g=N(()=>{const F=Il(t.chartData);return{title:{text:"",left:"center"},tooltip:{trigger:"axis",backgroundColor:c.value?"#253241":"#ffffff",borderColor:c.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:c.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:c.value?i.dark_cyan_blue_16:i.light_gray_cyan_blue}}},grid:{show:!1,left:"10%",right:"10%",bottom:"15%"},xAxis:{type:"category",data:F,axisLabel:{color:c.value?"#FFFFFF":"#696778",fontSize:12,interval:_.value.interval},axisLine:{lineStyle:{type:"dashed",color:c.value?"#253241":"#D6DAE1"}}},yAxis:{name:"Order Items",type:"value",axisLabel:{formatter:"{value}",color:c.value?"#FFFFFF":"#696778",fontSize:12},splitLine:{show:!0,lineStyle:{color:c.value?"#253241":"#D6DAE1",type:"dashed"}},min:0,splitNumber:5},dataZoom:s.value?[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]:[],series:m.value}}),y=N(()=>Vt.data.isBusy.orderChartData),v=()=>{l&&l.resize()},w=()=>{l&&(l.dispose(),l=null),xe(()=>{a.value?(l=ea(a.value),l.setOption(g.value),window.addEventListener("resize",v)):l&&l.setOption(g.value)})},C=()=>{l&&l.setOption(g.value)},b=()=>{s.value=!s.value,s.value?l.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:0,end:100},{type:"inside",xAxisIndex:[0],start:0,end:100}]}):l.setOption({dataZoom:[]},{replaceMerge:["dataZoom"]})};be(()=>t.chartData,()=>{l&&l.setOption(g.value)}),be(t.isEmpty,F=>{F||w()}),be(y,F=>{F||w()});const k=()=>{c.value=Ve.isDark(),xe(()=>{C()})};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",k),xe(()=>{w(),window.addEventListener("resize",v)})}),kt(()=>{window.removeEventListener("onFluentCartThemeChange",k,!1),l&&(window.removeEventListener("resize",v),l.dispose(),l=null)}),(F,M)=>{const E=B("el-tooltip"),S=B("el-skeleton");return r(),h("div",kle,[n(ke,null,{default:d(()=>[n(Qe,{border_bottom:"",title_size:"small"},la({title:d(()=>[o("div",xle,[o("h5",Sle,f(A(u)("Average Order Items ")),1),n(E,{"popper-class":"fct-tooltip",content:A(u)("Average Order Items grouped by date period."),placement:"top"},{default:d(()=>[n(J,{name:"InformationFill",class:"w-4 cursor-pointer"})]),_:1},8,["content"])])]),_:2},[e.isEmpty?void 0:{name:"action",fn:d(()=>[o("div",Fle,[n(Ze,{tag:"button",size:"x-small",title:F.$t("Zoom Chart"),onClick:b,class:ie(s.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:a.value,size:"x-small"},null,8,["targetRef"])])]),key:"0"}]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[y.value?(r(),$(S,{key:0,animated:"",rows:4,class:"px-5 pt-5"})):(r(),h(H,{key:1},[e.isEmpty?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h("div",{key:0,class:"fct-report-average-order-items-chart",ref_key:"chartRef",ref:a},null,512)),e.isEmpty?x("",!0):(r(),h("div",$le,[o("div",Ele,[o("div",Ule,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",Ile,f(F.$t("Average Order Items")),1)]),o("div",Qle,[o("span",Dle,f(F.$t("Timeline")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])]))],64))]),_:1})]),_:1})])}}},Tle={class:"fct-order-report-page"},Mle={__name:"OrderReport",props:{reportFilter:{type:Object,required:!0}},setup(e){const a=e.reportFilter,l=i=>{i&&(Vt.getOrderChartData({params:{...i.params,groupKey:""}}),Vt.getNewVsReturningCustomer(i),Vt.getReportByDayAndHour(i),Vt.getItemCountDistribution(i),Vt.getOrderCompletionTime(i),Vt.getOrderValueDistribution(i))},s=i=>{const c=a.applicableFilters;c&&Vt.getOrderChartData({params:{...c.params,groupKey:i}})};return Ie(()=>{a.addListener("order-report",l),l(a.applicableFilters),a.value}),kt(()=>{a.removeListener("order-report",l,!1),a.value}),(i,c)=>{const p=B("el-col"),m=B("el-row");return r(),$(Nt,{permission:"reports/view"},{default:d(()=>[o("div",Tle,[n(kte,{orderReport:A(Vt),reportFilter:A(a)},null,8,["orderReport","reportFilter"]),n(Lte,{chartData:A(Vt).data.orderChartData,reportFilter:A(a),onFetchChartData:s,"is-empty":!A(Vt).data.summary.gross_sale},null,8,["chartData","reportFilter","is-empty"]),n(Kte,{orderReport:A(Vt)},null,8,["orderReport"]),A(Vt).data.summary.tax_total||A(Vt).data.summary.shipping_total?(r(),$(Yte,{key:0,orderReport:A(Vt),reportFilter:A(a)},null,8,["orderReport","reportFilter"])):x("",!0),n(sae,{tableData:A(Vt).data.newVsReturning,reportFilter:A(a)},null,8,["tableData","reportFilter"]),n(Aae,{tableData:A(Vt).data.orderByGroup,reportFilter:A(a)},null,8,["tableData","reportFilter"]),n(xte,{chartData:A(Vt).data.orderByDayAndHour},null,8,["chartData"]),n(m,{gutter:30},{default:d(()=>[n(p,{lg:12},{default:d(()=>[n(Cae,{reportFilter:A(a),ref:"chartRef",chartData:A(Vt).data.grossSaleByDay},null,8,["reportFilter","chartData"])]),_:1}),n(p,{lg:12},{default:d(()=>[n(Gae,{chartData:A(Vt).data.grossSaleByHour},null,8,["chartData"])]),_:1}),n(p,{lg:12},{default:d(()=>[n(Dae,{ref:"chartRef",chartData:A(Vt).data.itemCountDistribution},null,8,["chartData"])]),_:1}),n(p,{lg:12},{default:d(()=>[n(ple,{chartData:A(Vt).data.orderValueDistribution},null,8,["chartData"])]),_:1}),n(p,{lg:12},{default:d(()=>[n(Ble,{chartData:A(Vt).data.orderChartData,"is-empty":!A(Vt).data.summary.gross_sale},null,8,["chartData","is-empty"])]),_:1}),n(p,{lg:12},{default:d(()=>[n(Vle,{chartData:A(Vt).data.orderChartData,"is-empty":!A(Vt).data.summary.order_count},null,8,["chartData","is-empty"])]),_:1}),n(p,{lg:12},{default:d(()=>[n(ale,{chartData:A(Vt).data.orderCompletionTime},null,8,["chartData"])]),_:1})]),_:1})])]),_:1})}}},Lle={class:"fct-gross-sale-vs-net-revenue-wrap"},Rle={class:"flex items-center gap-2"},Ole={class:"fct-card-header-title is-small"},Hle={class:"fct-chart-select"},Ple={class:"fct-btn-group sm"},Nle={class:"chart-action-wrap"},Kle={class:"chart-change-wrap"},Gle={class:"chart-change"},jle={class:"text"},zle={class:"chart-change"},qle={class:"text"},Yle={__name:"RefundLineChart",props:{chartData:{type:Array,required:!0},compareData:{type:Array,required:!1},reportFilter:{type:Object},isEmpty:{type:Boolean,default:!1},loading:{type:Boolean,default:!0}},emits:["fetch-chart-data"],setup(e,{emit:t}){const a=e,l=Ve.colors.report,s=T(Ve.isDark()),i=T(null),c=T("default"),p=T(ga.getChartType("refund","refund_chart")||"line"),m=T(!1);N(()=>a.reportFilter.currentCurrencySign);const _=[{label:u("Default"),value:"default"},{label:u("Monthly"),value:"monthly"},{label:u("Yearly"),value:"yearly"}],g=t,y=()=>{g("fetch-chart-data",c.value)},v=N(()=>a.reportFilter.data.compareType!=="no_comparison"),w=(V,D,I,O,L,P=!0)=>({name:V,type:D,barMaxWidth:30,data:I,smooth:!1,color:O,lineStyle:{width:3},symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:O,borderRadius:[4,4,0,0]},yAxisIndex:L,emphasis:{scale:2,itemStyle:{color:za(O)},lineStyle:{color:O},areaStyle:{opacity:.3,color:O}},animation:P,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}),C=N(()=>{let V=[{name:u("Refunded Amount"),key:"refunded_amount",type:"line",color:s.value?l.blue_dark_mode:l.blue,yAxisIndex:0,data:a.chartData.map(D=>D.refunded_amount),animation:!1},{name:u("Total Refunds"),key:"refund_count",type:"bar",color:s.value?l.dark_cyan_blue_36:l.light_gray_cyan_blue,yAxisIndex:1,data:a.chartData.map(D=>D.refund_count),animation:!1}];return v.value&&V.unshift({name:u("Previous Refunded Amount"),key:"refunded_amount_compare",type:"line",color:s.value?l.purple_dark_mode:l.purple,yAxisIndex:0,data:a.compareData.map(D=>D.refunded_amount),animation:!1},{name:u("Previous Total Refunds"),key:"refund_count_compare",type:"bar",color:s.value?l.dark_cyan_blue_16:l.light_gray,yAxisIndex:1,data:a.compareData.map(D=>D.refund_count),animation:!0}),V.map(D=>w(D.name,D.type,D.data,D.color,D.yAxisIndex,D.animation))});let b=null;const k=T(!0),F=()=>{b&&(b.dispose(),b=null),xe(()=>{i.value&&(b=ea(i.value),S(),b.on("legendselectchanged",V=>{k.value=V.selected["Total Refunds"]||V.selected["Previous Total Refunds"]}))})},M=N(()=>{const V=Es(a.reportFilter.data.dateRange);return u("This report looks at refunds made for successful orders created ")+V}),E=N(()=>ul(a.chartData.length)),S=()=>{if(!b)return;const V=Il(a.chartData),D={title:{text:a.chartTitle??"",left:"center"},legend:{show:!0,itemGap:20,itemWidth:10,itemHeight:10,textStyle:{color:s.value?"#ffffff":"#000000"}},tooltip:{trigger:"axis",backgroundColor:s.value?"#253241":"#ffffff",borderColor:s.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:s.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:s.value?l.dark_cyan_blue_16:l.light_gray_blue}},formatter:I=>{let O=I[0].name;return I.forEach(L=>{const P=[0,2].includes(L.seriesIndex)?`${et.scaled(L.value)}`:L.value,G=s.value?"#ffffff":"#565865";O+=`
${L.marker}
${L.seriesName}
${P}
`}),O}},xAxis:{type:"category",data:V,axisLabel:{color:s.value?"#ffffff":"#000000",fontSize:12,interval:E.value.interval},axisLine:{lineStyle:{type:"dashed",color:s.value?"#253241":"#D6DAE1"}}},yAxis:[{type:"value",axisLabel:{color:s.value?"#ffffff":"#000000",fontSize:12,formatter:I=>`${et.scaled(I)}`},splitLine:{show:!0,lineStyle:{color:s.value?"#253241":"#D6DAE1",type:"dashed"}}},{type:"value",position:"right",axisLabel:{color:s.value?"#253241":"#D6DAE1",fontSize:12},splitLine:{show:!1}}],series:C.value,animation:!0,animationThreshold:2e3,animationDurationUpdate:300,animationEasingUpdate:"cubicInOut"};b.setOption(D,{notMerge:!0,replaceMerge:["series"]})},Q=()=>{m.value=!m.value,m.value?b.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:1,end:100},{type:"slider",show:!0,yAxisIndex:[0],left:"95%",start:1,end:100},{type:"inside",xAxisIndex:[0],start:1,end:100},{type:"inside",yAxisIndex:[0],start:1,end:100}]}):S()};be([()=>a.chartData,p],()=>{xe(S)},{deep:!0}),be(()=>Ml.data.refund,()=>{xe(()=>{S()})},{deep:!0}),be(()=>a.isEmpty,V=>{V||F()}),be(()=>a.loading,V=>{V||F()}),be(k,()=>{if(!b)return;const D=b.getOption().series.map(I=>I.type==="line"?{...I,areaStyle:k.value?void 0:{opacity:.3}}:I);xe(()=>{b.setOption({series:D})})});const U=()=>{s.value=Ve.isDark(),xe(()=>{S()})};return kt(()=>{window.removeEventListener("onFluentCartThemeChange",U,!1),window.removeEventListener("fluentCartCurrencyChange",U,!1)}),Ie(()=>{window.addEventListener("onFluentCartThemeChange",U),window.addEventListener("fluentCartCurrencyChange",U),xe(F)}),(V,D)=>{const I=B("el-tooltip"),O=B("el-option"),L=B("el-select"),P=B("el-skeleton");return r(),h("div",Lle,[n(ke,{id:"chartContainer"},{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",Rle,[o("h5",Ole,f(A(u)("Refunds Chart")),1),n(I,{"popper-class":"fct-tooltip",content:M.value,placement:"top"},{default:d(()=>[n(J,{class:"text-gray-500 w-4 h-4 cursor-pointer",name:"InformationFill"})]),_:1},8,["content"])])]),_:2},[!e.isEmpty&&!e.loading?{name:"action",fn:d(()=>[o("div",Hle,[n(L,{class:"el-select--x-small",modelValue:c.value,"onUpdate:modelValue":D[0]||(D[0]=G=>c.value=G),onChange:y},{default:d(()=>[(r(),h(H,null,ae(_,G=>n(O,{key:G.value,label:V.$t(G.label),value:G.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),o("div",Ple,[n(Ze,{tag:"button",size:"small",title:V.$t("Zoom Chart"),onClick:Q,class:ie(m.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:i.value},null,8,["targetRef"])])]),key:"0"}:void 0]),1024),n(Ce,{class:"px-0"},{default:d(()=>[e.loading?(r(),$(P,{key:0,animated:"",rows:7,class:"p-4"})):(r(),h(H,{key:1},[e.isEmpty?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h(H,{key:0},[e.isEmpty?x("",!0):(r(),h("div",{key:0,class:"fct-chart-wrap fct-refund-line-chart",ref_key:"chartRef",ref:i},null,512)),o("div",Nle,[o("div",Kle,[o("div",Gle,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",jle,f(V.$t("Data")),1)]),o("div",zle,[o("span",qle,f(V.$t("Timeline")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])])],64))],64))]),_:1})]),_:1})])}}};class Wle extends nl{constructor(){super(...arguments);Re(this,"data",{refundData:[],previousMetrics:[],summary:{},previousSummary:{},fluctuations:{},chartData:[],weeksBetweenRefund:[],isBusy:{chartData:!0,weeksBetweenRefund:!0,refundData:!0}})}get controllerKey(){return"RefundReportController"}makeRequest(a,l,s,i){i&&(this.data.isBusy[i]=!0),typeof l!="object"&&(l={});const c=ce.get(`reports/${a}`,l);return this.resolvePromiseResponse(c,s,i),c}resolvePromiseResponse(a,l=null,s=null){a.then(i=>{s==null||l==null?Object.assign(this.data,i):this.data[s]=i[l]}).catch(i=>{}).finally(()=>{s&&(this.data.isBusy[s]=!1)})}getRefundChartData(a={}){return this.makeRequest("refund-chart",a,null,"chartData")}getWeeksBetweenRefund(a={}){return this.makeRequest("weeks-between-refund",a,"data","weeksBetweenRefund")}getRefundSummary(a={}){return this.makeRequest("refund-summary",a,"summaryData","summaryData")}getRefundDataByGroup(a={}){return this.makeRequest("refund-data-by-group",a,"data","refundData")}getRefundReportFluctuations(a={}){return this.makeRequest("refund-report-fluctuations",a,"data","fluctuations")}}const Ca=Wle.init(),Xle={key:1,class:"fct-report-order-summary summary-col-4"},Jle={class:"summary-item-inner"},Zle={class:"value"},ese={class:"inner-value"},tse=["innerHTML"],ase={class:"title"},lse={__name:"Summary",setup(e){const t=N(()=>[{title:u("Refunds"),value:Ca.data.summary.refund_count,key:"refund_count",percentage:Ca.data.fluctuations.refund_count,info:u("Total refunds count including partially refunds."),no_currency:!0},{title:u("Refunded"),value:Ca.data.summary.refunded_amount,key:"refunded_amount",percentage:Ca.data.fluctuations.refunded_amount,info:u("Total Refunded Amount")},{title:u("Avgerage Amount"),value:Ca.data.summary.average_refunded_amount,key:"average_refunded_amount",percentage:Ca.data.fluctuations.average_refunded_amount,info:u("Total Refunded Amount / Total Refund count")},{title:u("Refund Rate"),value:Ca.data.summary.refund_rate,key:"refund_rate",percentage:Ca.data.fluctuations.refund_rate,info:u("Total Refunded Amount / Total Order Amount"),no_currency:!0,is_percentage:!0}]),a=N(()=>Ca.data.isBusy.chartData),l=s=>{const i=s.no_currency?ua(s.value):et.scaled(s.value);return s.is_percentage?`${i}%`:i};return(s,i)=>{const c=B("el-tooltip");return a.value?(r(),$(Ll,{key:0,loading:a.value,count:4},null,8,["loading"])):(r(),h("div",Xle,[(r(!0),h(H,null,ae(t.value,(p,m)=>(r(),h("div",{class:"summary-item",key:m},[o("div",Jle,[o("div",Zle,[o("div",ese,[o("span",{innerHTML:l(p)},null,8,tse)]),n(ml,{fluctuation:p.percentage,amount:A(Ca).data.previousSummary[p.key],"is-liability":!0,"has-currency":!p.no_currency,"is-percentage":p.is_percentage},null,8,["fluctuation","amount","has-currency","is-percentage"])]),o("div",ase,[R(f(p.title)+" ",1),n(c,{content:p.info,placement:"top","popper-class":"fct-tooltip"},{default:d(()=>[n(J,{class:"text-gray-500 w-4 flex-shrink-0",name:"InformationFill"})]),_:2},1032,["content"])])])]))),128))]))}}},sse={class:"fct-report-refund-weeks-between-an-order-wrap"},nse={class:"fct-btn-group sm"},ose={class:"chart-action-wrap"},ise={class:"chart-change-wrap"},rse={class:"chart-change"},dse={class:"text"},use={class:"chart-change"},cse={class:"text"},Ase={__name:"WeeksBetweenRefundChart",props:{chartData:{type:Array,required:!0},chartTitle:{type:String,default:""},isEmpty:{type:Boolean,default:!1},loading:{type:Boolean,default:!0}},setup(e){const t=e,a=T(null),l=T("bar");let s=null;const i=Ve.colors.report,c=T(Ve.isDark()),p=N(()=>c.value?i.dark_cyan_blue_16:i.light_gray),m=N(()=>[{name:u("Refund Count"),type:l.value,data:t.chartData.map(C=>C.occurrence),smooth:!0,color:p.value,showSymbol:!1,itemStyle:{borderRadius:[4,4,0,0]},emphasis:{itemStyle:{color:za(p.value)}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,legendHoverLink:!1}]),_=N(()=>ul(t.chartData.length)),g=()=>({title:{text:t.chartTitle,left:"center"},legend:{show:!0,itemGap:20,itemWidth:10,itemHeight:10,textStyle:{color:c.value?"#ffffff":"#000000"}},tooltip:{trigger:"axis",backgroundColor:c.value?"#253241":"#ffffff",borderColor:c.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:c.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:c.value?i.dark_cyan_blue_16:i.light_gray_blue}}},xAxis:{type:"category",data:t.chartData.map(C=>C.weekBetween),axisLabel:{color:c.value?"#ffffff":"#000000",fontSize:12,interval:_.value.interval,formatter:C=>C>1?`${C} weeks`:`${C} week`},axisLine:{lineStyle:{type:"dashed",color:c.value?"#253241":"#D6DAE1"}}},yAxis:{type:"value",axisLabel:{formatter:"{value}",color:c.value?"#ffffff":"#000000",fontSize:12},splitLine:{show:!0,lineStyle:{color:c.value?"#253241":"#D6DAE1"}}},series:m.value}),y=()=>{s&&(s.dispose(),s=null),xe(()=>{a.value&&(s=ea(a.value),s.setOption(g()),window.addEventListener("resize",()=>{s.resize()}))})};be(()=>t.chartData,()=>{s&&s.setOption(g())}),be(()=>t.isEmpty,C=>{C||y()}),be(()=>t.loading,C=>{C||y()});const v=()=>{c.value=Ve.isDark(),xe(()=>{w()})};kt(()=>{window.removeEventListener("onFluentCartThemeChange",v,!1)});const w=C=>{s&&s.setOption(g(),!0)};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",v),xe(()=>{y()})}),(C,b)=>{const k=B("el-skeleton");return r(),h("div",sse,[n(ke,null,{default:d(()=>[n(Qe,{title:A(u)("Weeks between an order's created date and refund date"),title_size:"small",border_bottom:""},la({_:2},[!e.isEmpty&&!e.loading?{name:"action",fn:d(()=>[o("div",nse,[n(Fa,{targetRef:a.value,size:"x-small"},null,8,["targetRef"])])]),key:"0"}:void 0]),1032,["title"]),n(Ce,{class:"px-0"},{default:d(()=>[e.loading?(r(),$(k,{key:0,animated:"",rows:7,class:"p-4"})):(r(),h(H,{key:1},[e.isEmpty?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h(H,{key:0},[e.isEmpty?x("",!0):(r(),h("div",{key:0,class:"fct-chart-wrap fct-refund-weeks-between-an-order-chart",ref_key:"chartRef",ref:a},null,512)),o("div",ose,[o("div",ise,[o("div",rse,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",dse,f(A(u)("Refund Count")),1)]),o("div",use,[o("span",cse,f(A(u)("Weeks")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])])],64))],64))]),_:1})]),_:1})])}}},pse={class:"fct-btn-group sm w-[240px] gap-2"},fse={key:0},mse={key:1},hse={class:"inline-flex"},_se={class:"inline-flex"},vse={__name:"RefundTable",props:{tableData:{type:Array,required:!0},currencySign:{type:String},loading:{type:Boolean,default:!0}},emits:["group-data"],setup(e,{emit:t}){const a=t;T([]);const l=T([{label:u("Billing Country"),value:"billing_country"},{label:u("Shipping Country"),value:"shipping_country"},{label:u("Payment Method"),value:"payment_method"}]),s=T("billing_country"),i=N(()=>{var p;return((p=l.value.find(m=>m.value===s.value))==null?void 0:p.label)||""}),c=()=>{a("group-data",s.value)};return(p,m)=>{const _=B("el-option"),g=B("el-select"),y=B("el-skeleton"),v=B("el-table-column"),w=B("el-table");return r(),$(ke,{class:"overflow-hidden"},{default:d(()=>[n(Qe,{title:A(u)("Refunds Grouped By"),title_size:"small"},la({_:2},[e.loading?void 0:{name:"action",fn:d(()=>[o("div",pse,[n(g,{modelValue:s.value,"onUpdate:modelValue":m[0]||(m[0]=C=>s.value=C),onChange:c,class:"el-select--x-small",placeholder:A(u)("Select Group")},{default:d(()=>[(r(!0),h(H,null,ae(l.value,C=>(r(),$(_,{key:C.value,label:A(u)(C.label),value:C.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"]),n(On,{data:e.tableData,filename:"refund.csv",class:"!ml-0"},null,8,["data"])])]),key:"0"}]),1032,["title"]),n(Ce,{class:"px-0 pb-0"},{default:d(()=>[e.loading?(r(),$(y,{key:0,animated:"",rows:7,class:"p-4"})):(r(),$(w,{key:1,data:e.tableData,height:"330"},{empty:d(()=>[n(bt,{icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!")},null,8,["text"])]),default:d(()=>[n(v,{prop:s.value,label:A(u)(i.value),"min-width":"150"},{default:d(C=>[s.value!=="payment_method"?(r(),h("span",fse,f(A(Dn)(C.row[s.value])),1)):(r(),h("span",mse,f(C.row[s.value]),1))]),_:1},8,["prop","label"]),n(v,{prop:"refunds",label:A(u)("Refunds"),"min-width":"150"},{default:d(C=>m[1]||(m[1]=[])),_:1},8,["label"]),n(v,{prop:"refunded_amount",label:A(u)("Refunded Amount"),"min-width":"150"},{default:d(C=>[o("div",hse,f(A(et).scaled(C.row.totalRefundedAmount.total)),1)]),_:1},8,["label"]),n(v,{prop:"average_refund",label:A(u)("Average Refund"),"min-width":"150"},{default:d(C=>[o("div",_se,f(A(et).scaled(C.row.totalRefundedAmount.average)),1)]),_:1},8,["label"])]),_:1},8,["data"]))]),_:1})]),_:1})}}},gse={class:"fct-refund-report-page"},yse={__name:"RefundReport",props:{reportFilter:{type:Object,required:!0}},setup(e){const a=e.reportFilter,l=p=>{Ca.getRefundChartData({params:{...p.params,groupKey:"default"}}),Ca.getWeeksBetweenRefund(p),s(p)},s=p=>{Ca.getRefundDataByGroup({params:{...p.params,groupKey:"billing_country"}})},i=p=>{const m=a.applicableFilters;Ca.getRefundDataByGroup({params:{...m.params,groupKey:p}})},c=p=>{const m=a.applicableFilters;m&&Ca.getRefundChartData({params:{...m.params,groupKey:p}})};return Ie(()=>{a.addListener("refund-report",l),l(a.applicableFilters)}),kt(()=>{a.removeListener("refund-report")}),(p,m)=>(r(),$(Nt,{permission:"reports/view"},{default:d(()=>[o("div",gse,[n(lse),n(Yle,{ref:"refundChart",chartData:A(Ca).data.chartData,compareData:A(Ca).data.previousMetrics,reportFilter:A(a),onFetchChartData:c,"is-empty":!A(Ca).data.summary.refund_count,loading:A(Ca).data.isBusy.chartData},null,8,["chartData","compareData","reportFilter","is-empty","loading"]),n(Ase,{chartData:A(Ca).data.weeksBetweenRefund,"is-empty":!A(Ca).data.weeksBetweenRefund.length,loading:A(Ca).data.isBusy.weeksBetweenRefund},null,8,["chartData","is-empty","loading"]),n(vse,{tableData:A(Ca).data.refundData,currencySign:A(a).currentCurrencySign,onGroupData:i,loading:A(Ca).data.isBusy.refundData},null,8,["tableData","currencySign","loading"])])]),_:1}))}},bse={class:"fct-gross-sale-vs-net-revenue-wrap"},wse={class:"fct-chart-select"},Cse={class:"fct-btn-group sm"},Bse={class:"chart-action-wrap"},kse={class:"chart-change-wrap"},xse={class:"chart-change"},Sse={class:"text"},Fse={class:"chart-change"},$se={class:"text"},Ese={__name:"RetentionChart",props:{chartData:{type:Object,required:!0},reportFilter:{type:Object},isEmpty:{type:Boolean,default:!1},loading:{type:Boolean,default:!0}},emits:["fetch-custom-chart-data"],setup(e,{emit:t}){const a=e,l=T(null),s=T(ga.getChartType("subscription","retention_chart")||"line"),i=T(!1),c=T(null);T([]);const p=Ve.colors.report,m=T(Ve.isDark()),_=(S,Q,U,V)=>({name:S,type:Q,barMaxWidth:30,data:U,smooth:!1,color:V,lineStyle:{width:3},areaStyle:{opacity:.3,color:V},symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:V,borderRadius:[4,4,0,0]},emphasis:{scale:2,itemStyle:{color:za(V)},lineStyle:{color:V},areaStyle:{opacity:.3,color:V}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,legendHoverLink:!1}),g=N(()=>Object.keys(a.chartData).map(Q=>Q.startsWith("day_")?u("%s Days",Q.replace("day_","")):Q==="more_than_year"?u("More than Year"):Q)),y=N(()=>Object.keys(a.chartData).map(Q=>a.chartData[Q]||0)),v=N(()=>[_(u("Customers"),s.value,y.value,m.value?p.dark_cyan_blue_16:p.light_gray)]);let w=null;const C=()=>{w&&(w.dispose(),w=null),xe(()=>{l.value&&(w=ea(l.value),b())})},b=()=>{if(!w)return;const S={title:{text:a.chartTitle??"",left:"center"},legend:{show:!0,itemGap:20,itemWidth:10,itemHeight:10,textStyle:{color:m.value?"#ffffff":"#000000"}},tooltip:{trigger:"axis",backgroundColor:m.value?"#253241":"#ffffff",borderColor:m.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:m.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:m.value?p.dark_cyan_blue_16:p.light_gray_blue}}},xAxis:{type:"category",data:g.value,axisLabel:{color:m.value?"#ffffff":"#565865",fontSize:12},axisLine:{lineStyle:{type:"dashed",color:m.value?"#253241":"#D6DAE1"}}},yAxis:[{type:"value",axisLabel:{color:m.value?"#ffffff":"#565865",fontSize:12},splitLine:{show:!0,lineStyle:{color:m.value?"#253241":"#D6DAE1",type:"dashed"}}}],series:v.value};w.setOption(S,{notMerge:!0,replaceMerge:["series"]})},k=S=>{ga.onChange("subscription","retention_chart",S),s.value!==S&&(i.value=!1,s.value=S,b())},F=t,M=()=>{F("fetch-custom-chart-data",c.value)};be(()=>a.chartData,()=>{xe(b)},{deep:!0}),be(()=>Ml.data.refund,()=>{xe(b)},{deep:!0}),be(()=>a.isEmpty,S=>{S||C()}),be(()=>a.loading,S=>{S||C()});const E=()=>{m.value=Ve.isDark(),xe(()=>{b()})};return kt(()=>{window.removeEventListener("onFluentCartThemeChange",E,!1)}),Ie(()=>{window.addEventListener("onFluentCartThemeChange",E),xe(C)}),(S,Q)=>{const U=B("el-input"),V=B("el-skeleton");return r(),h("div",bse,[n(ke,{id:"chartContainer"},{default:d(()=>[n(Qe,{title:A(u)("Retention Chart"),title_size:"small",border_bottom:""},la({_:2},[!e.isEmpty&&!e.loading?{name:"action",fn:d(()=>[o("div",wse,[n(U,{type:"text",modelValue:c.value,"onUpdate:modelValue":Q[0]||(Q[0]=D=>c.value=D),placeholder:A(u)("Enter custom days"),class:"el-input--x-small",onKeyup:xa(M,["enter"])},null,8,["modelValue","placeholder"])]),o("div",Cse,[n(Rl,{activeType:s.value,types:{line:"LineChart",bar:"BarChart"},onChange:k},null,8,["activeType"]),n(Fa,{targetRef:l.value},null,8,["targetRef"])])]),key:"0"}:void 0]),1032,["title"]),n(Ce,{class:"px-0"},{default:d(()=>[e.loading?(r(),$(V,{key:0,animated:"",rows:7,class:"p-4"})):(r(),h(H,{key:1},[e.isEmpty?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h(H,{key:0},[o("div",{class:"fct-chart-wrap fct-refund-line-chart",ref_key:"chartRef",ref:l},null,512),o("div",Bse,[o("div",kse,[o("div",xse,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",Sse,f(A(u)("Data")),1)]),o("div",Fse,[o("span",$se,f(A(u)("Timeline")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])])],64))],64))]),_:1})]),_:1})])}}},Use={class:"fct-revenue-line-chart-wrap"},Ise={class:"flex items-center gap-2"},Qse={class:"fct-card-header-title is-small"},Dse={class:"w-[270px] fct-btn-group sm gap-1.5 lg:gap-0"},Vse={class:"chart-action-wrap"},Tse={class:"chart-change-wrap"},Mse={class:"chart-change"},Lse={class:"text"},Rse={class:"chart-change"},Ose={class:"text"},Hse={__name:"SubscriptionChartNew",props:{chartData:{type:Array,required:!0},compareData:{type:Array,required:!0},reportFilter:{type:Object},appliedGroupKey:{type:String},isEmpty:{type:Boolean,default:!1},loading:{type:Boolean,default:!0}},emits:["filter-data"],setup(e,{emit:t}){const a=e,l=T(null),s=T(ga.getChartType("subscription","subscription_chart")||"line"),i=T(!1),c=Ve.colors.report,p=T(Ve.isDark()),m=(V,D,I,O,L)=>({name:V,type:D,barMaxWidth:30,yAxisIndex:I,data:O,smooth:!1,color:L,lineStyle:{width:3},areaStyle:{opacity:.3,color:L},symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:L,borderRadius:[4,4,0,0]},emphasis:{scale:2,itemStyle:{color:za(L)},lineStyle:{color:L},areaStyle:{opacity:.3,color:L}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}),_=T(a.appliedGroupKey);be(()=>a.appliedGroupKey,V=>{_.value=V});const g=[{label:"Default",value:"default"},{label:"Monthly",value:"monthly"},{label:"Yearly",value:"yearly"}],y=t,v=()=>{y("filter-data",_.value)},w=N(()=>a.reportFilter.data.compareType!=="no_comparison"),C=N(()=>{let V=[{name:u("Current Range"),key:"count",type:s.value,color:p.value?c.dark_cyan_blue_36:c.light_gray_cyan_blue,data:a.chartData.map(D=>D.count)}];return w.value&&V.unshift({name:u("Compare Range"),key:"count",type:s.value,color:p.value?c.dark_cyan_blue_16:c.light_gray,data:a.compareData.map(D=>({value:D.count,date:D.group}))}),V.map(D=>m(D.name,D.type,0,D.data,D.color))});let b=null;const k=()=>{b&&(b.dispose(),b=null),xe(()=>{l.value&&(b=ea(l.value),E())})},F=N(()=>{const V=Es(a.reportFilter.data.dateRange);return u("This report looks at the subscription you received ")+V}),M=N(()=>ul(a.chartData.length)),E=()=>{if(!b)return;const V=Il(a.chartData),D={title:{text:"",left:"center"},legend:{show:!0,itemGap:20,itemWidth:10,itemHeight:10,textStyle:{color:p.value?"#ffffff":"#000000"}},tooltip:{trigger:"axis",backgroundColor:p.value?"#253241":"#ffffff",borderColor:p.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:p.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:p.value?c.dark_cyan_blue_16:c.light_gray_blue}},alwaysShowContent:!1,formatter:I=>{let O="";return I.forEach(function(L,P){const G=typeof L.data=="object"&&L.data!==null,j=G?Us(L.data.date):L.name,z=G?L.data.value:L.value,Z=I.length>1&&P===0;Z&&(O+='
`}),D}},grid:{show:!1},xAxis:{type:"category",data:Q,axisLabel:{color:i.value?"#ffffff":"#000000",fontSize:12,interval:M.value.interval},axisLine:{lineStyle:{type:"dashed",color:i.value?"#253241":"#D6DAE1"}}},yAxis:[{type:"value",axisLabel:{color:i.value?"#ffffff":"#000000",fontSize:12,formatter:V=>`${et.formatScaledChart(V)}`},splitLine:{show:!0,lineStyle:{color:i.value?"#253241":"#D6DAE1",type:"dashed"}}},{type:"value",axisLabel:{color:i.value?"#ffffff":"#000000",fontSize:12},splitLine:{show:!1}}],series:F.value};p.setOption(U,{notMerge:!0,replaceMerge:["series"]})},C=()=>{l.value=!l.value,l.value?p.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:1,end:100},{type:"slider",show:!0,yAxisIndex:[0],left:"95%",start:1,end:100},{type:"inside",xAxisIndex:[0],start:1,end:100},{type:"inside",yAxisIndex:[0],start:1,end:100}]}):w()},b=()=>{i.value=Ve.isDark(),xe(()=>{w()})},k=N(()=>{const Q=Es(m.value.period);return u("This report is calculated by looking at active subscriptions and extrapolating their renewals over time, to estimate future renewal revenue ")+Q}),F=N(()=>[{name:u("Revenue"),key:"count",type:"line",color:i.value?s.blue_dark_mode:s.blue,data:m.value.projections.map(U=>U.projected_amount)},{name:u("Count"),key:"count",type:"bar",color:i.value?s.dark_cyan_blue_16:s.light_gray,data:m.value.projections.map(U=>U.renewals_count)}].map((U,V)=>y(U.name,U.type,V,U.data,U.color))),M=N(()=>ul(m.value.projections.length)),E=N(()=>[{title:u("Renewal Revenue"),value:et.formatScaled(m.value.totalProjected),key:"renewal_revenue"},{title:u("Renewals"),value:ua(m.value.totalRenewals),key:"renewals_count",no_currency:!0}]),S=N(()=>!m.value.totalRenewals);return be([()=>m.value],()=>{xe(w)},{deep:!0}),be(S,Q=>{Q||v()}),be(_,Q=>{Q||v()}),Ie(()=>{g(a.applicableFilters),xe(()=>{v()}),window.addEventListener("onFluentCartThemeChange",b),window.addEventListener("fluentCartCurrencyChange",w)}),kt(()=>{window.removeEventListener("onFluentCartThemeChange",b,!1),window.removeEventListener("fluentCartCurrencyChange",w,!1)}),(Q,U)=>{const V=B("el-skeleton");return r(),$(Nt,{permission:"reports/view"},{default:d(()=>[o("div",pne,[n(sl,{title:A(u)("Subscription Future Revenue")},null,8,["title"])]),n(ke,null,{default:d(()=>[n(Ce,{class:"p-3"},{default:d(()=>[_.value?(r(),$(Ll,{key:0,loading:_.value,"margin-bottom":0,padding:0},null,8,["loading"])):(r(),h("div",fne,f(k.value),1))]),_:1})]),_:1}),_.value?(r(),$(Ll,{key:0,loading:_.value,count:2},null,8,["loading"])):(r(),h("div",mne,[(r(!0),h(H,null,ae(E.value,(D,I)=>(r(),h("div",{class:"summary-item",key:I},[o("div",hne,[o("div",_ne,[o("div",vne,[o("span",{innerHTML:D.value},null,8,gne)])]),o("div",yne,f(D.title),1)])]))),128))])),o("div",bne,[n(ke,null,{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",wne,[o("h4",Cne,f(A(u)("Upcoming Renewal Revenue")),1)])]),_:2},[m.value.totalRenewals&&!_.value?{name:"action",fn:d(()=>[o("div",Bne,[n(Ze,{tag:"button",size:"small",title:Q.$t("Zoom Chart"),onClick:C,class:ie(l.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:c.value},null,8,["targetRef"])])]),key:"0"}:void 0]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[_.value?(r(),$(V,{key:0,animated:"",rows:7,class:"px-4 pt-4"})):(r(),h(H,{key:1},[S.value?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h(H,{key:0},[S.value?x("",!0):(r(),h("div",{key:0,class:"fct-chart-wrap fct-revenue-line-chart mt-3",ref_key:"chartRef",ref:c},null,512)),o("div",kne,[o("div",xne,[o("div",Sne,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",Fne,f(A(u)("Data")),1)]),o("div",$ne,[o("span",Ene,f(A(u)("Timeline")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])])],64))],64))]),_:1})]),_:1})])]),_:1})}}},Ine={class:"fct-retention-lifetime"},Qne={class:"flex items-center gap-2"},Dne={class:"fct-card-header-title is-small"},Vne={key:0},Tne={class:"mt-2"},Mne={__name:"Lifetime",props:{data:{type:Object,required:!0},loading:{type:Boolean,default:!0}},setup(e){const t=e,a=N(()=>{var s;return((s=t.data)==null?void 0:s.retention_data)??[]}),l=N(()=>{const s=a.value;if(!s.length)return null;const c=s.reduce((k,F)=>k+parseFloat(F.retention_rate),0)/s.length,p=c/100;let m=0;p<1?m=1/(1-p):m=s.length;const _=s[s.length-1],g=parseInt(_.active_subscriptions),y=parseFloat(_.mrr);let v=0;g>0&&(v=y/g);const w=v*m,C=new Date(_.day),b=Pa[C.getMonth()]+" "+C.getFullYear().toString();return{expected_lifetime_text:u(`Based on an average monthly subscription retention rate of ${c.toFixed(1)}%, your expected subscription lifetime is ${m.toFixed(1)} months.`),ltv_text:u(`In ${b}, your average monthly revenue per subscriber was ${et.scaled(v)}, giving you an expected subscription lifetime value of ${et.scaled(w)}.`)}});return(s,i)=>{const c=B("el-skeleton");return r(),h("div",Ine,[n(ke,null,{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},{title:d(()=>[o("div",Qne,[o("h4",Dne,f(A(u)("Lifetime")),1)])]),_:1}),n(Ce,null,{default:d(()=>[e.loading?(r(),$(c,{key:0,animated:"",rows:1})):(r(),h(H,{key:1},[l.value?(r(),h("div",Vne,[o("div",null,f(l.value.expected_lifetime_text),1),o("div",Tne,f(l.value.ltv_text),1)])):(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Not enough data to calculate lifetime metrics."),class:"fct-report-empty-state"},null,8,["text"]))],64))]),_:1})]),_:1})])}}},Lne={class:"summary-item-inner"},Rne={class:"title text-[16px] mb-2.5"},One={class:"grid grid-cols-2 items-center"},Hne={class:"value"},Pne={class:"sub-value mt-1.5"},Nne={class:"value"},Kne={class:"sub-value mt-1.5"},Gne={class:"description leading-[1.6] mt-3.5"},jne={__name:"Summary",props:{data:{type:Object,required:!0},loading:{type:Boolean,default:!0}},setup(e){const t=e,a=Ve.colors.report,l=T(Ve.isDark()),s=N(()=>{var p;return((p=t.data)==null?void 0:p.retention_data)??[]}),i=N(()=>{const p=s.value;if(!p.length)return[];const _=(p.reduce((U,V)=>U+parseFloat(V.retention_rate),0)/p.length).toFixed(1),y=(p.reduce((U,V)=>U+parseFloat(V.retention_rate_money),0)/p.length).toFixed(1),v=p[p.length-1];let w="",C=0,b=0;if(p.length>1){const U=p[p.length-2],V=new Date(U.day);w=Pa[V.getMonth()]+" "+V.getFullYear().toString(),C=parseInt(U.active_subscriptions),b=parseFloat(U.mrr)}else{const U=new Date(v.day);U.setMonth(U.getMonth()-1),w=Pa[U.getMonth()]+" "+U.getFullYear().toString();const V=parseInt(v.active_subscriptions)-parseInt(v.new_subscriptions);C=v.retention_rate>0?Math.round(V/(v.retention_rate/100)):0;const D=parseFloat(v.mrr)-parseFloat(v.new_subscriptions_mrr);b=v.retention_rate_money>0?D/(v.retention_rate_money/100):0}const k=parseInt(v.active_subscriptions)-parseInt(v.new_subscriptions),F=parseFloat(v.mrr)-parseFloat(v.new_subscriptions_mrr),M=parseFloat(v.retention_rate),E=parseFloat(v.retention_rate_money),S=new Date(v.day),Q=Pa[S.getMonth()]+" "+S.getFullYear().toString();return[{title:u("Subscription Retention"),value:`${M}%`,average_value:`${_}%`,month_name:Q,sub_title:u("Average in period"),description:u(`You retained ${v.retention_rate}% (${ua(k)}) of your ${w} subscriptions (${ua(C)}).`),color:l.value?a.dark_cyan_blue_16:a.light_gray},{title:u("MRR Retention"),value:`${E}%`,average_value:`${y}%`,month_name:Q,sub_title:u("Average in period"),description:u(`You retained ${v.retention_rate_money}% (${et.scaled(F)}) of your ${w} subscription MRR (${et.scaled(b)}).`),color:l.value?a.dark_cyan_blue_36:a.light_gray_cyan_blue}]}),c=()=>{l.value=Ve.isDark()};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",c)}),kt(()=>{window.removeEventListener("onFluentCartThemeChange",c,!1)}),(p,m)=>{var _,g;return e.loading?(r(),$(Ll,{key:0,loading:e.loading,count:2},null,8,["loading"])):(r(),h("div",{key:1,class:ie(`fct-report-order-summary ${(_=i.value)!=null&&_.length?"summary-col-2":""}`)},[(g=i.value)!=null&&g.length?(r(!0),h(H,{key:0},ae(i.value,(y,v)=>(r(),h("div",{class:"summary-item",key:v},[o("div",Lne,[o("div",Rne,f(y.title),1),o("div",One,[o("div",null,[o("div",Hne,f(y.value),1),o("div",Pne,f(y.month_name),1)]),o("div",null,[o("div",Nne,f(y.average_value),1),o("div",Kne,f(y.sub_title),1)])]),o("div",Gne,f(y.description),1)])]))),128)):(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"]))],2))}}},zne={class:"fct-revenue-line-chart-wrap"},qne={class:"flex items-center gap-2"},Yne={class:"fct-card-header-title is-small"},Wne={class:"fct-btn-group sm"},Xne={class:"chart-action-wrap"},Jne={class:"chart-change-wrap"},Zne={class:"chart-change"},eoe={class:"text"},toe={class:"chart-change"},aoe={class:"text"},loe={__name:"RetentionChart",props:{loading:{type:Boolean,default:!0},data:{type:Object,required:!0}},setup(e){const t=e,a=T(!1),l=Ve.colors.report,s=T(Ve.isDark()),i=T(null);let c=null;const p=T(ga.getChartType("subscription","retention_chart")||"line"),m=(M,E,S,Q,U)=>({name:M,type:E,barMaxWidth:30,yAxisIndex:S,data:Q,smooth:!1,color:U,lineStyle:{width:3},symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:U,borderRadius:[4,4,0,0]},emphasis:{scale:2,itemStyle:{color:za(U)},lineStyle:{color:U}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,legendHoverLink:!1}),_=()=>{c&&(c.dispose(),c=null),xe(()=>{i.value&&(c=ea(i.value),g())})},g=()=>{if(!c)return;const M=Il(C.value),E={title:{text:"",left:"center"},legend:{show:!0,itemGap:20,itemWidth:10,itemHeight:10,textStyle:{color:s.value?"#ffffff":"#000000"}},tooltip:{trigger:"axis",backgroundColor:s.value?"#253241":"#ffffff",borderColor:s.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:s.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:s.value?l.dark_cyan_blue_16:l.light_gray_blue}},formatter:S=>{let Q=S[0].name;return S.forEach((U,V)=>{const D=ua(U.value)+"%",I=s.value?"#ffffff":"#565865";Q+=`
${U.marker}
${U.seriesName}
${D}
`}),Q}},grid:{show:!1},xAxis:{type:"category",data:M,axisLabel:{color:s.value?"#ffffff":"#000000",fontSize:12,interval:k.value.interval},axisLine:{lineStyle:{type:"dashed",color:s.value?"#253241":"#D6DAE1"}}},yAxis:[{type:"value",axisLabel:{color:s.value?"#ffffff":"#000000",fontSize:12,formatter:S=>`${S}%`},splitLine:{show:!0,lineStyle:{color:s.value?"#253241":"#D6DAE1",type:"dashed"}},splitNumber:2}],series:b.value};c.setOption(E,{notMerge:!0,replaceMerge:["series"]})},y=()=>{a.value=!a.value,a.value?c.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:1,end:100},{type:"slider",show:!0,yAxisIndex:[0],left:"95%",start:1,end:100},{type:"inside",xAxisIndex:[0],start:1,end:100},{type:"inside",yAxisIndex:[0],start:1,end:100}]}):g()},v=()=>{s.value=Ve.isDark(),xe(()=>{g()})},w=M=>{ga.onChange("subscription","retention_chart",M),p.value!==M&&(a.value=!1,p.value=M,g())},C=N(()=>{var M;return((M=t.data)==null?void 0:M.retention_data)??[]}),b=N(()=>[{name:u("Subscription Retention"),key:"count",type:p.value,color:s.value?l.dark_cyan_blue_16:l.light_gray,data:C.value.map(E=>E.retention_rate)},{name:u("MRR Retention"),key:"count",type:p.value,color:s.value?l.dark_cyan_blue_36:l.light_gray_cyan_blue,data:C.value.map(E=>E.retention_rate_money)}].map((E,S)=>m(E.name,E.type,0,E.data,E.color))),k=N(()=>ul(C.value.length)),F=N(()=>!C.value||!C.value.length);return be([()=>t.data],()=>{xe(_)},{deep:!0}),be(F,M=>{M||_()}),be(t.loading,M=>{M||_()}),Ie(()=>{xe(()=>{_()}),window.addEventListener("onFluentCartThemeChange",v)}),kt(()=>{window.removeEventListener("onFluentCartThemeChange",v,!1)}),(M,E)=>{const S=B("el-skeleton");return r(),h("div",zne,[n(ke,null,{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",qne,[o("h4",Yne,f(A(u)("Retention Rate")),1)])]),_:2},[!F.value&&!e.loading?{name:"action",fn:d(()=>[o("div",Wne,[n(Rl,{activeType:p.value,types:{line:"LineChart",bar:"BarChart"},onChange:w},null,8,["activeType"]),n(Ze,{tag:"button",size:"small",title:M.$t("Zoom Chart"),onClick:y,class:ie(a.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:i.value},null,8,["targetRef"])])]),key:"0"}:void 0]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[e.loading?(r(),$(S,{key:0,animated:"",rows:7,class:"px-4 pt-4"})):(r(),h(H,{key:1},[F.value?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h(H,{key:0},[F.value?x("",!0):(r(),h("div",{key:0,class:"fct-chart-wrap fct-revenue-line-chart mt-3",ref_key:"chartRef",ref:i},null,512)),o("div",Xne,[o("div",Jne,[o("div",Zne,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",eoe,f(A(u)("Data")),1)]),o("div",toe,[o("span",aoe,f(A(u)("Timeline")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])])],64))],64))]),_:1})]),_:1})])}}},soe={class:"summary-item-inner"},noe={class:"title text-[16px] mb-2.5"},ooe={class:"grid grid-cols-2 items-center"},ioe={class:"value"},roe={class:"sub-value mt-1.5"},doe={class:"value"},uoe={class:"sub-value mt-1.5"},coe={class:"description leading-[1.6] mt-3.5"},Aoe={__name:"ChurnSummary",props:{data:{type:Object,required:!0},loading:{type:Boolean,default:!0}},setup(e){const t=e,a=Ve.colors.report,l=T(Ve.isDark()),s=N(()=>{var p;return((p=t.data)==null?void 0:p.retention_data)??[]}),i=N(()=>{const p=s.value;if(!p.length)return[];const m=p.map((V,D)=>{const I=D>0?parseInt(p[D-1].active_subscriptions)||0:parseInt(V.active_subscriptions)-parseInt(V.new_subscriptions)||0,O=parseInt(V.churned_subscriptions)||0;return I>0?O/I*100:0}),_=p.map((V,D)=>{const I=D>0?parseFloat(p[D-1].mrr)||0:parseFloat(V.mrr)-parseFloat(V.new_subscriptions_mrr)||0,O=parseFloat(V.churned_subscriptions_mrr)||0;return I>0?O/I*100:0}),g=(m.reduce((V,D)=>V+D,0)/m.length).toFixed(1),y=(_.reduce((V,D)=>V+D,0)/_.length).toFixed(1),v=p[p.length-1],w=p.length-1,C=w>0?parseInt(p[w-1].active_subscriptions)||0:parseInt(v.active_subscriptions)-parseInt(v.new_subscriptions)||0,b=w>0?parseFloat(p[w-1].mrr)||0:parseFloat(v.mrr)-parseFloat(v.new_subscriptions_mrr)||0,k=parseInt(v.churned_subscriptions)||0,F=parseFloat(v.churned_subscriptions_mrr)||0,M=C>0?(k/C*100).toFixed(1):0,E=b>0?(F/b*100).toFixed(1):0,S=new Date(v.day),Q=Pa[S.getMonth()]+" "+S.getFullYear().toString();let U="";if(p.length>1){const V=p[p.length-2],D=new Date(V.day);U=Pa[D.getMonth()]+" "+D.getFullYear().toString()}else{const V=new Date(v.day);V.setMonth(V.getMonth()-1),U=Pa[V.getMonth()]+" "+V.getFullYear().toString()}return[{title:u("Subscription Churn"),value:`${M}%`,average_value:`${g}%`,month_name:Q,sub_title:u("Average in period"),description:u(`You lost ${M}% (${ua(k)}) of your ${U} subscriptions (${ua(C)}).`),color:l.value?a.dark_cyan_blue_16:a.light_gray},{title:u("MRR Churn"),value:`${E}%`,average_value:`${y}%`,month_name:Q,sub_title:u("Average in period"),description:u(`You lost ${E}% (${et.scaled(F)}) of your ${U} subscription MRR (${et.scaled(b)}).`),color:l.value?a.dark_cyan_blue_36:a.light_gray_cyan_blue}]}),c=()=>{l.value=Ve.isDark()};return Ie(()=>{window.addEventListener("onFluentCartThemeChange",c)}),kt(()=>{window.removeEventListener("onFluentCartThemeChange",c,!1)}),(p,m)=>{var _,g;return e.loading?(r(),$(Ll,{key:0,loading:e.loading,count:2},null,8,["loading"])):(r(),h("div",{key:1,class:ie(`fct-report-order-summary ${(_=i.value)!=null&&_.length?"summary-col-2":""}`)},[(g=i.value)!=null&&g.length?(r(!0),h(H,{key:0},ae(i.value,(y,v)=>(r(),h("div",{class:"summary-item",key:v},[o("div",soe,[o("div",noe,f(y.title),1),o("div",ooe,[o("div",null,[o("div",ioe,f(y.value),1),o("div",roe,f(y.month_name),1)]),o("div",null,[o("div",doe,f(y.average_value),1),o("div",uoe,f(y.sub_title),1)])]),o("div",coe,f(y.description),1)])]))),128)):(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"]))],2))}}},poe={class:"fct-revenue-line-chart-wrap"},foe={class:"flex items-center gap-2"},moe={class:"fct-card-header-title is-small"},hoe={class:"fct-btn-group sm"},_oe={class:"chart-action-wrap"},voe={class:"chart-change-wrap"},goe={class:"chart-change"},yoe={class:"text"},boe={class:"chart-change"},woe={class:"text"},Coe={__name:"ChurnChart",props:{loading:{type:Boolean,default:!0},data:{type:Object,required:!0}},setup(e){const t=e,a=T(!1),l=Ve.colors.report,s=T(Ve.isDark()),i=T(null);let c=null;const p=T(ga.getChartType("subscription","churn_chart")||"line"),m=(M,E,S,Q,U)=>({name:M,type:E,barMaxWidth:30,yAxisIndex:S,data:Q,smooth:!1,color:U,lineStyle:{width:3},symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:U,borderRadius:[4,4,0,0]},emphasis:{scale:2,itemStyle:{color:za(U)},lineStyle:{color:U}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,legendHoverLink:!1}),_=()=>{c&&(c.dispose(),c=null),xe(()=>{i.value&&(c=ea(i.value),g())})},g=()=>{if(!c)return;const M=Il(C.value),E={title:{text:"",left:"center"},legend:{show:!0,itemGap:20,itemWidth:10,itemHeight:10,textStyle:{color:s.value?"#ffffff":"#000000"}},tooltip:{trigger:"axis",backgroundColor:s.value?"#253241":"#ffffff",borderColor:s.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:s.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:s.value?l.dark_cyan_blue_16:l.light_gray_blue}},formatter:S=>{let Q=S[0].name;return S.forEach((U,V)=>{const D=ua(U.value)+"%",I=s.value?"#ffffff":"#565865";Q+=`
${U.marker}
${U.seriesName}
${D}
`}),Q}},grid:{show:!1},xAxis:{type:"category",data:M,axisLabel:{color:s.value?"#ffffff":"#000000",fontSize:12,interval:k.value.interval},axisLine:{lineStyle:{type:"dashed",color:s.value?"#253241":"#D6DAE1"}}},yAxis:[{type:"value",axisLabel:{color:s.value?"#ffffff":"#000000",fontSize:12,formatter:S=>`${S}%`},splitLine:{show:!0,lineStyle:{color:s.value?"#253241":"#D6DAE1",type:"dashed"}},splitNumber:2}],series:b.value};c.setOption(E,{notMerge:!0,replaceMerge:["series"]})},y=()=>{a.value=!a.value,a.value?c.setOption({dataZoom:[{type:"slider",show:!0,xAxisIndex:[0],start:1,end:100},{type:"slider",show:!0,yAxisIndex:[0],left:"95%",start:1,end:100},{type:"inside",xAxisIndex:[0],start:1,end:100},{type:"inside",yAxisIndex:[0],start:1,end:100}]}):g()},v=()=>{s.value=Ve.isDark(),xe(()=>{g()})},w=M=>{ga.onChange("subscription","churn_chart",M),p.value!==M&&(a.value=!1,p.value=M,g())},C=N(()=>{var M;return((M=t.data)==null?void 0:M.retention_data)??[]}),b=N(()=>{const M=C.value.map((Q,U)=>{const V=U>0?parseInt(C.value[U-1].active_subscriptions)||0:parseInt(Q.active_subscriptions)-parseInt(Q.new_subscriptions)||0,D=parseInt(Q.churned_subscriptions)||0;return V>0?(D/V*100).toFixed(2):0}),E=C.value.map((Q,U)=>{const V=U>0?parseFloat(C.value[U-1].mrr)||0:parseFloat(Q.mrr)-parseFloat(Q.new_subscriptions_mrr)||0,D=parseFloat(Q.churned_subscriptions_mrr)||0;return V>0?(D/V*100).toFixed(2):0});return[{name:u("Subscription Churn"),type:p.value,color:s.value?l.dark_cyan_blue_16:l.light_gray,data:M},{name:u("MRR Churn"),type:p.value,color:s.value?l.dark_cyan_blue_36:l.light_gray_cyan_blue,data:E}].map((Q,U)=>m(Q.name,Q.type,0,Q.data,Q.color))}),k=N(()=>ul(C.value.length)),F=N(()=>!C.value||!C.value.length);return be([()=>t.data],()=>{xe(_)},{deep:!0}),be(F,M=>{M||_()}),be(t.loading,M=>{M||_()}),Ie(()=>{xe(()=>{_()}),window.addEventListener("onFluentCartThemeChange",v)}),kt(()=>{window.removeEventListener("onFluentCartThemeChange",v,!1)}),(M,E)=>{const S=B("el-skeleton");return r(),h("div",poe,[n(ke,null,{default:d(()=>[n(Qe,{title_size:"small",border_bottom:""},la({title:d(()=>[o("div",foe,[o("h4",moe,f(A(u)("Churn Rate")),1)])]),_:2},[!F.value&&!e.loading?{name:"action",fn:d(()=>[o("div",hoe,[n(Rl,{activeType:p.value,types:{line:"LineChart",bar:"BarChart"},onChange:w},null,8,["activeType"]),n(Ze,{tag:"button",size:"small",title:M.$t("Zoom Chart"),onClick:y,class:ie(a.value?"primary":"")},{default:d(()=>[n(J,{name:"SearchAdd"})]),_:1},8,["title","class"]),n(Fa,{targetRef:i.value},null,8,["targetRef"])])]),key:"0"}:void 0]),1024),n(Ce,{class:"px-0 pt-0"},{default:d(()=>[e.loading?(r(),$(S,{key:0,animated:"",rows:7,class:"px-4 pt-4"})):(r(),h(H,{key:1},[F.value?(r(),$(bt,{key:1,icon:"Empty/ListView","has-dark":!0,text:A(u)("Currently there is no data!"),class:"fct-report-empty-state"},null,8,["text"])):(r(),h(H,{key:0},[F.value?x("",!0):(r(),h("div",{key:0,class:"fct-chart-wrap fct-revenue-line-chart mt-3",ref_key:"chartRef",ref:i},null,512)),o("div",_oe,[o("div",voe,[o("div",goe,[n(J,{name:"ArrowUp",class:"arrow-up"}),o("span",yoe,f(A(u)("Data")),1)]),o("div",boe,[o("span",woe,f(A(u)("Timeline")),1),n(J,{name:"ArrowRight",class:"arrow-right"})])])])],64))],64))]),_:1})]),_:1})])}}},Boe={class:"fct-retention-report-page"},koe={class:"page-title"},xoe={__name:"RetentionReport",props:{reportFilter:{type:Object,required:!0}},setup(e){const a=e.reportFilter,l=T({retention_data:[]}),s=T(!0),i=(c,p="monthly")=>{s.value=!0,ce.get("reports/subscription-retention",{params:{...c.params,groupKey:p}}).then(m=>{l.value=m}).finally(()=>s.value=!1)};return Ie(()=>{i(a.applicableFilters),a.addListener("retention-report",i)}),(c,p)=>{const m=B("el-tooltip");return r(),$(Nt,{permission:"reports/view"},{default:d(()=>[o("div",Boe,[n(sl,null,{title:d(()=>[o("h1",koe,[R(f(A(u)("Subscription Retention"))+" ",1),n(m,{"popper-class":"fct-tooltip",content:A(u)("Retention is calculated by looking at the active subscriptions at the end of each month, compared to the active subscriptions at the end of the start of each month."),placement:"top"},{default:d(()=>[n(J,{class:"text-gray-500 w-4 h-4 cursor-pointer",name:"InformationFill"})]),_:1},8,["content"])])]),_:1}),n(jne,{data:l.value,loading:s.value},null,8,["data","loading"]),n(loe,{data:l.value,loading:s.value},null,8,["data","loading"]),n(Mne,{data:l.value,loading:s.value},null,8,["data","loading"]),n(Aoe,{data:l.value,loading:s.value},null,8,["data","loading"]),n(Coe,{data:l.value,loading:s.value},null,8,["data","loading"])])]),_:1})}}},Soe={key:1,class:"fct-report-order-summary"},Foe={class:"summary-item-inner"},$oe={class:"value"},Eoe={class:"inner-value"},Uoe={class:"title"},Ioe={__name:"Summary",props:{reportFilter:{type:Object},customerReport:{type:Object}},setup(e){const t=e,a=[{title:u("Customer Growth"),key:"customer_count"}],l=N(()=>t.customerReport.loading),s=N(()=>a.map(i=>({key:i.key,title:i.title,value:t.customerReport.summary[i.key],fluctuation:t.customerReport.fluctuations[i.key]})));return(i,c)=>l.value?(r(),$(Ll,{key:0,count:s.value.length},null,8,["count"])):(r(),h("div",Soe,[(r(!0),h(H,null,ae(s.value,(p,m)=>(r(),h("div",{class:"summary-item",key:m},[o("div",Foe,[o("div",$oe,[o("div",Eoe,f(A(ua)(p.value)),1),n(ml,{fluctuation:p.fluctuation,"has-currency":!1,amount:t.customerReport.previousSummary[p.key]},null,8,["fluctuation","amount"])]),o("div",Uoe,f(p.title),1)])]))),128))]))}},Qoe={class:"fct-revenue-line-chart-wrap"},Doe={class:"flex items-center gap-2"},Voe={class:"fct-card-header-title is-small"},Toe={class:"w-[270px] fct-btn-group sm gap-1.5 lg:gap-0"},Moe={class:"chart-action-wrap"},Loe={class:"chart-change-wrap"},Roe={class:"chart-change"},Ooe={class:"text"},Hoe={class:"chart-change"},Poe={class:"text"},Noe={__name:"CustomerReportChart",props:{chartData:{type:Array,required:!0},compareData:{type:Array,required:!0},reportFilter:{type:Object},appliedGroupKey:{type:String},isEmpty:{type:Boolean,required:!1},loading:{type:Boolean,required:!1}},emits:["filter-data"],setup(e,{emit:t}){const a=e,l=T(null),s=T(ga.getChartType("revenue","revenue_chart")||"line"),i=T(!1),c=Ve.colors.report,p=T(Ve.isDark()),m=(V,D,I,O,L)=>({name:V,type:D,barMaxWidth:30,yAxisIndex:I,data:O,smooth:!1,color:L,lineStyle:{width:3},areaStyle:{opacity:.3,color:L},symbol:"circle",showSymbol:!0,symbolSize:8,itemStyle:{color:L,borderRadius:[4,4,0,0]},emphasis:{scale:2,itemStyle:{color:za(L)},lineStyle:{color:L},areaStyle:{opacity:.3,color:L}},animation:!0,animationEasing:"cubicOut",animationDuration:800,animationDelay:0,barGap:"-100%",legendHoverLink:!1}),_=T(a.appliedGroupKey);be(()=>a.appliedGroupKey,V=>{_.value=V});const g=[{label:"Default",value:"default"},{label:"Monthly",value:"monthly"},{label:"Yearly",value:"yearly"}],y=t,v=()=>{y("filter-data",_.value)},w=N(()=>a.reportFilter.data.compareType!=="no_comparison"),C=N(()=>{var D;let V=[{name:u("Current Range"),key:"customer_count",type:s.value,color:p.value?c.dark_cyan_blue_36:c.light_gray_cyan_blue,data:a.chartData.map(I=>I.customer_count)}];return w.value&&V.unshift({name:u("Compare Range"),key:"customer_count",type:s.value,color:p.value?c.dark_cyan_blue_16:c.light_gray,data:(D=a.compareData)==null?void 0:D.map(I=>({value:I.customer_count,date:I.group}))}),V.map(I=>m(I.name,I.type,0,I.data,I.color))});let b=null;const k=()=>{b&&(b.dispose(),b=null),xe(()=>{l.value&&(b=ea(l.value),E())})},F=N(()=>{const V=Es(a.reportFilter.data.dateRange);return u("Customers that first ordered ")+V}),M=N(()=>ul(a.chartData.length)),E=()=>{if(!b)return;const V=Il(a.chartData),D={title:{text:"",left:"center"},legend:{show:!0,itemGap:20,itemWidth:10,itemHeight:10,textStyle:{color:p.value?"#ffffff":"#000000"}},tooltip:{trigger:"axis",backgroundColor:p.value?"#253241":"#ffffff",borderColor:p.value?"#2C3C4E":"#c0c4ca",borderWidth:1,textStyle:{color:p.value?"#ffffff":"#565865"},axisPointer:{type:"line",lineStyle:{type:"solid",width:2,color:p.value?c.dark_cyan_blue_16:c.light_gray_blue}},alwaysShowContent:!1,formatter:I=>{let O="";const L=p.value?"#ffffff":"#565865";return I.forEach(function(P,G){const j=typeof P.data=="object"&&P.data!==null,z=j?Us(P.data.date):P.name,Z=j?P.data.value:P.value,oe=I.length>1&&G===0;oe&&(O+='