2 lines
2.2 KiB
JavaScript
2 lines
2.2 KiB
JavaScript
import{u as I,al as E,b3 as V,p as h,j as b,H as F,c as l,bt as D,I as P,b5 as $,b6 as T,b9 as k,J as H,e2 as M,fS as N,bb as o,fT as p,be as R}from"./bundle.40842d53.js";function z(i){const[v]=I(),r=E(),u=V(),{disabled:d}=i,g=i.defaultVariables,[x,C]=h.useState(g);h.useEffect(()=>{var e,t;const a=((t=(e=r==null?void 0:r.settings)==null?void 0:e.pdf_variables)==null?void 0:t[i.for])??[];C(g.filter(s=>!a.includes(s.value)))},[r]);const _=a=>g.find(e=>e.value===a),y=a=>{var s,n,f,c;const e=a.target.options[a.target.selectedIndex];if(e.value==="")return;const t=o.cloneDeep(r);t.settings.pdf_variables||(o.set(t,"settings.pdf_variables",{}),(n=(s=t.settings)==null?void 0:s.pdf_variables)!=null&&n[i.for]||o.set(t,`settings.pdf_variables.${i.for}`,[])),(c=(f=t.settings.pdf_variables)==null?void 0:f[i.for])==null||c.push(e.value),u(p({object:"company",data:t})),a.target.value=""},j=a=>{var s;const e=o.cloneDeep(r),t=(s=e.settings.pdf_variables)==null?void 0:s[i.for].filter(n=>n!==a);o.set(e,`settings.pdf_variables.${i.for}`,t),u(p({object:"company",data:e}))},S=a=>{var s,n;const e=o.cloneDeep(r),t=R((s=e.settings.pdf_variables)==null?void 0:s[i.for],a.source.index,(n=a.destination)==null?void 0:n.index);o.set(e,`settings.pdf_variables.${i.for}`,t),u(p({object:"company",data:e}))};return b(F,{children:[l(D,{leftSide:v("fields"),children:b(P,{onChange:y,disabled:d,children:[l("option",{}),x.map((a,e)=>l("option",{value:a.value,children:a.label},e))]})}),l(D,{leftSide:v("variables"),children:l($,{onDragEnd:S,children:l(T,{droppableId:i.for,isDropDisabled:d,children:a=>{var e,t,s;return b("div",{...a.droppableProps,ref:a.innerRef,children:[(s=(t=(e=r==null?void 0:r.settings)==null?void 0:e.pdf_variables)==null?void 0:t[i.for])==null?void 0:s.map((n,f)=>l(k,{draggableId:n,index:f,isDragDisabled:d,children:c=>{var m;return h.createElement("div",{...c.draggableProps,...c.dragHandleProps,ref:c.innerRef,className:"flex items-center justify-between space-y-6",key:n},b("div",{className:"flex items-center space-x-2",children:[l(H,{type:"minimal",onClick:()=>j(n),behavior:"button",disableWithoutIcon:d,disabled:d,children:l(M,{})}),l("span",{children:(m=_(n))==null?void 0:m.label})]}),l(N,{size:16}))}},n)),a.placeholder]})}})})})]})}export{z as S};
|