14 lines
6.2 KiB
JavaScript
14 lines
6.2 KiB
JavaScript
import{f as S,j as s,H as m,c as l,b_ as T,e as E,m as v,b$ as M,bD as V,u as D,z as L,c0 as R,A as W,c1 as G,c2 as H,c3 as J,p as h,ad as U,ae as g,c4 as q,ah as K,bs as Q,c5 as X,b7 as N,c6 as w,J as Y}from"./bundle.ad02ee3a.js";function Z(n){const{dateFormat:c}=S(),t=n.clientId?`&client_id=${n.clientId}`:"",f=n.clientStatus?`&client_status=${n.clientStatus}`:"";return s(m,{children:[l(T,{endpoint:E(`/api/v1/expenses?per_page=800${f}${t}`),inputOptions:{value:n.defaultValue??null,label:n.label},entryOptions:{id:"id",label:"number",value:"id",dropdownLabelFn:i=>s("div",{className:"flex space-x-1",children:[s("span",{children:["# ",i.number]}),i.date&&l("span",{children:"-"}),i.date&&l("span",{children:v(i.date,c)})]})},onChange:i=>n.onValueChange&&n.onValueChange(i),onDismiss:n.onClearButtonClick,sortBy:"created_at|desc",nullable:!0,clearInputAfterSelection:n.clearInputAfterSelection,exclude:n.exclude}),n.errorMessage&&l(M,{type:"danger",className:"mt-2",children:n.errorMessage})]})}function ee(n){const{dateFormat:c}=S(),t=n.clientId?`&client_id=${n.clientId}`:"",f=n.clientStatus?`&client_status=${n.clientStatus}`:"";return s(m,{children:[l(T,{endpoint:E(`/api/v1/tasks?per_page=800${f}${t}`),inputOptions:{value:n.defaultValue??null,label:n.label},entryOptions:{id:"id",label:"number",value:"id",dropdownLabelFn:i=>s("div",{className:"flex space-x-1",children:[s("span",{children:["# ",i.number]}),i.date&&l("span",{children:"-"}),i.date&&l("span",{children:v(i.date,c)})]})},onChange:i=>n.onValueChange&&n.onValueChange(i),onDismiss:n.onClearButtonClick,sortBy:"created_at|desc",nullable:!0,clearInputAfterSelection:n.clearInputAfterSelection,exclude:n.exclude}),n.errorMessage&&l(M,{type:"danger",className:"mt-2",children:n.errorMessage})]})}const te=V.div`
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
width: 50px;
|
|
height: 50px;
|
|
border-radius: 50%;
|
|
`,I=V.div`
|
|
background-color: ${n=>n.theme.color};
|
|
&:hover {
|
|
background-color: ${n=>n.theme.hoverColor};
|
|
}
|
|
`;function ne(n){const[c]=D(),{invoice:t,setInvoice:f}=n,i=L(),B=R(),y=W(),{dateFormat:k}=S(),j=G({onlyAddToInvoice:!0}),{create:F}=H({onlyAddToInvoice:!0}),O=J({onlyAddToInvoice:!0}),[P,$]=h.useState(!1),[r,p]=h.useState([]),[o,b]=h.useState([]),[x,C]=h.useState([]),A=()=>{$(!1),C([])},z=()=>!x.length&&!r.filter(e=>!(t!=null&&t.line_items.find(a=>a.task_id===e.id))).length&&!o.filter(e=>!(t!=null&&t.line_items.find(a=>a.expense_id===e.id))).length;return h.useEffect(()=>{t&&(p([]),b([]),f(e=>e&&{...e,line_items:e.line_items.filter(a=>!r.find(d=>d.id===a.task_id)&&!o.find(d=>d.id===a.expense_id))}))},[t==null?void 0:t.client_id]),h.useEffect(()=>()=>{p([]),C([]),b([])},[]),s(m,{children:[t?l("div",{className:"fixed right-10 bottom-10",children:l(U,{placement:"top",message:c("add_item"),width:"auto",withoutArrow:!0,withoutWrapping:!0,children:l(te,{onClick:()=>$(!0),style:{backgroundColor:y!=null&&y.dark_mode?i.$5:B},children:l(g,{element:q,size:25,color:"white"})})})}):l(m,{}),s(K,{size:"small",title:c("add_item"),visible:P,onClose:A,overflowVisible:!0,children:[s(Q,{tabs:[c("products"),c("tasks"),c("expenses")],width:"full",children:[s("div",{className:"flex flex-col space-y-4 pt-4",children:[l(X,{label:c("products"),onChange:e=>C(a=>[...a,e.resource]),withoutAction:!0,clearInputAfterSelection:!0}),s("div",{className:"flex flex-col max-h-96 overflow-y-auto",children:[x.map((e,a)=>s(I,{className:"flex items-center justify-between p-2",theme:{hoverColor:i.$5},children:[s("div",{className:"flex flex-col space-y-1",children:[l("span",{children:e.product_key}),l("span",{className:"text-xs",children:e.notes})]}),l("div",{className:"cursor-pointer",onClick:()=>C(d=>d.filter((u,_)=>_!==a)),children:l(g,{element:N,size:23})})]},`${e.id}${a}Products`)),!x.length&&l("span",{className:"text-center",children:c("no_items_selected")})]})]}),l("div",{className:"flex flex-col space-y-4 pt-4",children:t!=null&&t.client_id?s(m,{children:[l(ee,{label:c("tasks"),clientId:t==null?void 0:t.client_id,clientStatus:"uninvoiced",onValueChange:e=>p(a=>[...a,e.resource]),clearInputAfterSelection:!0,exclude:[...t.line_items.filter(e=>e.type_id===w.Task&&e.task_id).map(e=>e.task_id),...r.map(e=>e.id)]}),s("div",{className:"flex flex-col max-h-96 overflow-y-auto",children:[r.map((e,a)=>s(I,{className:"flex items-center justify-between p-2",theme:{hoverColor:i.$5},children:[s("div",{className:"flex space-x-1",children:[s("span",{children:["# ",e.number]}),e.date&&l("span",{children:"-"}),e.date&&l("span",{children:v(e.date,k)})]}),!(t!=null&&t.line_items.find(d=>d.task_id===e.id))&&l("div",{className:"cursor-pointer",onClick:()=>p(d=>d.filter((u,_)=>_!==a)),children:l(g,{element:N,size:23})})]},`${e.id}${a}Tasks`)),!r.length&&l("span",{className:"text-center",children:c("no_items_selected")})]})]}):s("span",{className:"text-center font-medium",children:[c("no_client_selected"),"."]})}),l("div",{className:"flex flex-col space-y-4 pt-4",children:t!=null&&t.client_id?s(m,{children:[l(Z,{label:c("expenses"),clientId:t==null?void 0:t.client_id,clientStatus:"uninvoiced",onValueChange:e=>b(a=>[...a,e.resource]),clearInputAfterSelection:!0,exclude:[...t.line_items.filter(e=>e.type_id===w.Product&&e.expense_id).map(e=>e.expense_id),...o.map(e=>e.id)]}),s("div",{className:"flex flex-col max-h-96 overflow-y-auto",children:[o.map((e,a)=>s(I,{className:"flex items-center justify-between p-2",theme:{hoverColor:i.$5},children:[s("div",{className:"flex space-x-1",children:[s("span",{children:["# ",e.number]}),e.date&&l("span",{children:"-"}),e.date&&l("span",{children:v(e.date,k)})]}),!(t!=null&&t.line_items.find(d=>d.expense_id===e.id))&&l("div",{className:"cursor-pointer",onClick:()=>b(d=>d.filter((u,_)=>_!==a)),children:l(g,{element:N,size:23})})]},`${e.id}${a}Expenses`)),!o.length&&l("span",{className:"text-center",children:c("no_items_selected")})]})]}):s("span",{className:"text-center font-medium",children:[c("no_client_selected"),"."]})})]}),l("div",{className:"self-end",children:l(Y,{behavior:"button",onClick:()=>{x.length&&O(x);const e=r.filter(d=>!(t!=null&&t.line_items.find(u=>u.task_id===d.id)));e.length&&j(e);const a=o.filter(d=>!(t!=null&&t.line_items.find(u=>u.expense_id===d.id)));a.length&&F(a),A()},disabled:z(),disableWithoutIcon:!0,children:c("add")})})]})]})}export{ne as A};
|