UNPKG

@accounter/client

Version:
1 lines 5.08 kB
import{s as e}from"./dist-BbgEzppd.js";import{i as t,o as n}from"./utils-BUNz070n.js";import{r,s as i}from"./routes-BXbESQBe.js";import{Ot as a,Vt as o,bt as s,gn as c,p as l,un as u,zt as d}from"./common-Cy-x5Vhe.js";import{t as f}from"./funnel-BvwoBZ0O.js";import{t as p}from"./button-CBTN3XMQ.js";import{E as m,O as h,X as g,at as _,v,w as y}from"./table-tK8pMUMS.js";import{t as b}from"./MultiSelect-CaeZsH-J.js";import{t as x}from"./use-url-query-BZOFfgST.js";var S=m((e,{color:t})=>({root:{backgroundColor:e.fn.themeColor(t,e.colorScheme===`dark`?5:2),color:e.colorScheme===`dark`?e.colors.dark[9]:`inherit`}})),C=e(n()),w=Object.defineProperty,T=Object.getOwnPropertySymbols,E=Object.prototype.hasOwnProperty,D=Object.prototype.propertyIsEnumerable,O=(e,t,n)=>t in e?w(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,k=(e,t)=>{for(var n in t||={})E.call(t,n)&&O(e,n,t[n]);if(T)for(var n of T(t))D.call(t,n)&&O(e,n,t[n]);return e},A=(e,t)=>{var n={};for(var r in e)E.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&T)for(var r of T(e))t.indexOf(r)<0&&D.call(e,r)&&(n[r]=e[r]);return n},j={color:`yellow`},M=(0,C.forwardRef)((e,t)=>{let n=h(`Mark`,j,e),{color:r,className:i,unstyled:a,variant:o}=n,s=A(n,[`color`,`className`,`unstyled`,`variant`]),{classes:c,cx:l}=S({color:r},{unstyled:a,name:`Mark`,variant:o});return C.createElement(y,k({component:`mark`,ref:t,className:l(c.root,i)},s))});M.displayName=`@mantine/core/Mark`;var N=e(g(),1),P=t();function F({filter:e,setFilter:t,closeModal:n,single:r=!1}){let{control:c,handleSubmit:l}=o({defaultValues:{...e}}),{selectableBusinesses:f,fetching:p}=s(),{userContext:m}=(0,C.useContext)(v),h=e=>{t(e),n()};function g(){t({businessIDs:r?e.businessIDs:void 0}),n()}return(0,P.jsxs)(P.Fragment,{children:[p?(0,P.jsx)(`div`,{children:`Loading...`}):(0,P.jsx)(`div`,{}),(0,P.jsxs)(`form`,{onSubmit:l(h),children:[!r&&(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(d,{name:`ownerIds`,control:c,defaultValue:e.ownerIds,render:({field:e,fieldState:t})=>(0,P.jsx)(b,{...e,data:f,value:e.value??(m?.context.adminBusinessId?[m.context.adminBusinessId]:void 0),disabled:p,label:`Owners`,placeholder:`Scroll to see all options`,maxDropdownHeight:160,searchable:!0,error:t.error?.message})}),(0,P.jsx)(d,{name:`businessIDs`,control:c,defaultValue:e.businessIDs,render:({field:e,fieldState:t})=>(0,P.jsx)(b,{...e,data:f,value:e.value??void 0,disabled:p,label:`Businesses`,placeholder:`Scroll to see all options`,maxDropdownHeight:160,searchable:!0,error:t.error?.message})})]}),(0,P.jsx)(d,{name:`fromDate`,control:c,defaultValue:e.fromDate,rules:{pattern:{value:i,message:`Date must be im format yyyy-mm-dd`}},render:({field:e,fieldState:t})=>(0,P.jsx)(a,{...e,onChange:t=>{let n=t?typeof t==`string`?t:_(t,`yyyy-MM-dd`):void 0;n!==e.value&&e.onChange(n)},value:e.value?new Date(e.value):void 0,error:t.error?.message,label:`From Date`,popoverProps:{withinPortal:!0}})}),(0,P.jsx)(d,{name:`toDate`,control:c,defaultValue:e.toDate,rules:{pattern:{value:i,message:`Date must be im format yyyy-mm-dd`}},render:({field:e,fieldState:t})=>(0,P.jsx)(a,{...e,onChange:t=>{let n=t?typeof t==`string`?t:_(t,`yyyy-MM-dd`):void 0;n!==e.value&&e.onChange(n)},value:e.value?new Date(e.value):void 0,error:t.error?.message,label:`To Date`,popoverProps:{withinPortal:!0}})}),!r&&(0,P.jsx)(d,{name:`type`,control:c,defaultValue:null,render:({field:e,fieldState:t})=>(0,P.jsx)(u,{...e,onChange:t=>e.onChange(t===`NULL`?null:t),data:[{value:`NULL`,label:`All`},{value:`BUSINESS`,label:`Business`},{value:`TAX_CATEGORY`,label:`Tax Category`}],error:t.error?.message,label:`Type`})}),(0,P.jsxs)(`div`,{className:`flex justify-center mt-5 gap-3`,children:[(0,P.jsx)(`button`,{type:`submit`,className:`text-white bg-indigo-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-indigo-600 rounded-sm text-lg`,children:`Filter`}),(0,P.jsx)(`button`,{type:`button`,className:`text-white bg-orange-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-orange-600 rounded-sm text-lg`,onClick:g,children:`Clear`}),(0,P.jsx)(`button`,{type:`button`,className:`text-white bg-rose-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-rose-600 rounded-sm text-lg`,onClick:n,children:`Cancel`})]})]})]})}function I({filter:e,setFilter:t}){let[n,i]=(0,C.useState)(!1),[a,o]=(0,C.useState)(!r(e)),{get:s,set:u}=x();function d(e){return Object.entries(e??{}).filter(([e,t])=>t!==void 0&&Array.isArray(t)&&t.length>0).length>0}function m(n){n.fromDate?.trim()===``&&(n.fromDate=void 0),n.toDate?.trim()===``&&(n.toDate=void 0),(0,N.default)(n,e)||(t(n),o(d(n)))}return(0,C.useEffect)(()=>{let t=r(e)?null:encodeURIComponent(JSON.stringify(e));t!==s(`ledgerRecordsFilters`)&&u(`ledgerRecordsFilters`,t)},[e,s,u]),(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(l,{opened:n,onClose:()=>i(!1),content:(0,P.jsx)(F,{single:!0,filter:e,setFilter:m,closeModal:()=>i(!1)})}),(0,P.jsx)(c,{inline:!0,size:16,disabled:!a,children:(0,P.jsx)(p,{variant:`outline`,size:`icon`,className:`size-7.5`,onClick:()=>i(!0),children:(0,P.jsx)(f,{className:`size-5`})})})]})}export{M as n,I as t};