Files
docker-invoiceninja/docker/app/public/bundle.3fd19c5c.js
2024-10-19 18:17:42 +00:00

2 lines
2.2 KiB
JavaScript

import{u as S,al as E,b3 as P,p as h,j as b,H as V,c as l,bt as D,I as F,b5 as $,b6 as k,b9 as H,J as M,c7 as N,fO as O,bb as c,fP as p,be as R}from"./bundle.4a8685ac.js";function w(i){const[v]=S(),r=E(),u=P(),{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,o;const e=a.target.options[a.target.selectedIndex];if(e.value==="")return;const t=c.cloneDeep(r);t.settings.pdf_variables||(c.set(t,"settings.pdf_variables",{}),(n=(s=t.settings)==null?void 0:s.pdf_variables)!=null&&n[i.for]||c.set(t,`settings.pdf_variables.${i.for}`,[])),(o=(f=t.settings.pdf_variables)==null?void 0:f[i.for])==null||o.push(e.value),u(p({object:"company",data:t})),a.target.value=""},j=a=>{var s;const e=c.cloneDeep(r),t=(s=e.settings.pdf_variables)==null?void 0:s[i.for].filter(n=>n!==a);c.set(e,`settings.pdf_variables.${i.for}`,t),u(p({object:"company",data:e}))},I=a=>{var s,n;const e=c.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);c.set(e,`settings.pdf_variables.${i.for}`,t),u(p({object:"company",data:e}))};return b(V,{children:[l(D,{leftSide:v("fields"),children:b(F,{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:I,children:l(k,{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(H,{draggableId:n,index:f,isDragDisabled:d,children:o=>{var m;return h.createElement("div",{...o.draggableProps,...o.dragHandleProps,ref:o.innerRef,className:"flex items-center justify-between space-y-6",key:n},b("div",{className:"flex items-center space-x-2",children:[l(M,{type:"minimal",onClick:()=>j(n),behavior:"button",disableWithoutIcon:d,disabled:d,children:l(N,{})}),l("span",{children:(m=_(n))==null?void 0:m.label})]}),l(O,{size:16}))}},n)),a.placeholder]})}})})})]})}export{w as S};