@accounter/client
Version:
Accounter client application
1 lines • 5.4 kB
JavaScript
import{s as e}from"./dist-C51EwTaa.js";import{i as t,o as n}from"./utils-DdVdMk8X.js";import{i as r,n as i}from"./routes-DUvpW9-n.js";import{t as a}from"./funnel-BFbxpUGW.js";import{t as o}from"./button-Dzp2INW0.js";import{B as s,F as c,K as l,L as u,P as d,Q as f,R as p,U as m,rt as h,tt as g,wt as _,z as v}from"./table--bF0wbxq.js";import{t as y}from"./MultiSelect-HTEIN3wg.js";import{Dt as b,Er as x,P as S,fn as C,vn as w,yt as T}from"./index-CL8-JoMZ.js";import{t as E}from"./use-url-query-BCNbSvLg.js";var D=e(n()),O=g((e,{color:t})=>({root:{backgroundColor:e.fn.themeColor(t,e.colorScheme===`dark`?5:2),color:e.colorScheme===`dark`?e.colors.dark[9]:`inherit`}})),k=Object.defineProperty,A=Object.getOwnPropertySymbols,j=Object.prototype.hasOwnProperty,M=Object.prototype.propertyIsEnumerable,N=(e,t,n)=>t in e?k(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,P=(e,t)=>{for(var n in t||={})j.call(t,n)&&N(e,n,t[n]);if(A)for(var n of A(t))M.call(t,n)&&N(e,n,t[n]);return e},F=(e,t)=>{var n={};for(var r in e)j.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&A)for(var r of A(e))t.indexOf(r)<0&&M.call(e,r)&&(n[r]=e[r]);return n},I={color:`yellow`},L=(0,D.forwardRef)((e,t)=>{let n=h(`Mark`,I,e),{color:r,className:i,unstyled:a,variant:o}=n,s=F(n,[`color`,`className`,`unstyled`,`variant`]),{classes:c,cx:l}=O({color:r},{unstyled:a,name:`Mark`,variant:o});return D.createElement(f,P({component:`mark`,ref:t,className:l(c.root,i)},s))});L.displayName=`@mantine/core/Mark`;var R=e(_(),1),z=t();function B({filter:e,setFilter:t,closeModal:n,single:r=!1}){let i=m({defaultValues:{...e}}),{control:a,handleSubmit:o}=i,{selectableBusinesses:f,fetching:h}=b(),{userContext:g}=(0,D.useContext)(l),_=e=>{t(e),n()};function S(){t({businessIDs:r?e.businessIDs:void 0}),n()}return(0,z.jsxs)(z.Fragment,{children:[h?(0,z.jsx)(`div`,{children:`Loading...`}):(0,z.jsx)(`div`,{}),(0,z.jsx)(d,{...i,children:(0,z.jsxs)(`form`,{onSubmit:o(_),children:[!r&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(u,{name:`ownerIds`,control:a,defaultValue:e.ownerIds,render:({field:e,fieldState:t})=>(0,z.jsxs)(p,{children:[(0,z.jsx)(v,{children:`Owners`}),(0,z.jsx)(c,{children:(0,z.jsx)(y,{...e,data:f,value:e.value??(g?.context.adminBusinessId?[g.context.adminBusinessId]:void 0),disabled:h,placeholder:`Scroll to see all options`,maxDropdownHeight:160,searchable:!0,error:t.error?.message})}),(0,z.jsx)(s,{})]})}),(0,z.jsx)(u,{name:`businessIDs`,control:a,defaultValue:e.businessIDs,render:({field:e,fieldState:t})=>(0,z.jsxs)(p,{children:[(0,z.jsx)(v,{children:`Businesses`}),(0,z.jsx)(c,{children:(0,z.jsx)(y,{...e,data:f,value:e.value??void 0,disabled:h,placeholder:`Scroll to see all options`,maxDropdownHeight:160,searchable:!0,error:t.error?.message})}),(0,z.jsx)(s,{})]})})]}),(0,z.jsx)(u,{name:`fromDate`,control:a,defaultValue:e.fromDate,rules:{pattern:{value:x,message:`Date must be in format yyyy-mm-dd`}},render:({field:e,fieldState:t})=>(0,z.jsxs)(p,{children:[(0,z.jsx)(v,{htmlFor:`from-date`,children:`From Date`}),(0,z.jsx)(c,{children:(0,z.jsx)(T,{id:`from-date`,value:e.value??void 0,onChange:t=>{t!==e.value&&e.onChange(t)},"aria-invalid":!!t.error})}),(0,z.jsx)(s,{})]})}),(0,z.jsx)(u,{name:`toDate`,control:a,defaultValue:e.toDate,rules:{pattern:{value:x,message:`Date must be in format yyyy-mm-dd`}},render:({field:e,fieldState:t})=>(0,z.jsxs)(p,{children:[(0,z.jsx)(v,{htmlFor:`to-date`,children:`To Date`}),(0,z.jsx)(c,{children:(0,z.jsx)(T,{id:`to-date`,value:e.value??void 0,onChange:t=>{t!==e.value&&e.onChange(t)},"aria-invalid":!!t.error})}),(0,z.jsx)(s,{})]})}),!r&&(0,z.jsx)(u,{name:`type`,control:a,defaultValue:null,render:({field:e,fieldState:t})=>(0,z.jsxs)(p,{children:[(0,z.jsx)(v,{children:`Type`}),(0,z.jsx)(c,{children:(0,z.jsx)(C,{...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})}),(0,z.jsx)(s,{})]})}),(0,z.jsxs)(`div`,{className:`flex justify-center mt-5 gap-3`,children:[(0,z.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,z.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:S,children:`Clear`}),(0,z.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 V({filter:e,setFilter:t}){let[n,s]=(0,D.useState)(!1),[c,l]=(0,D.useState)(!r(e)),{get:u,set:d}=E();function f(e){return Object.entries(e??{}).filter(([e,t])=>t!==void 0&&Array.isArray(t)&&t.length>0).length>0}function p(n){n.fromDate?.trim()===``&&(n.fromDate=void 0),n.toDate?.trim()===``&&(n.toDate=void 0),(0,R.default)(n,e)||(t(n),l(f(n)))}return(0,D.useEffect)(()=>{let t=i(e);t!==u(`ledgerRecordsFilters`)&&d(`ledgerRecordsFilters`,t)},[e,u,d]),(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(S,{opened:n,onClose:()=>s(!1),content:(0,z.jsx)(B,{single:!0,filter:e,setFilter:p,closeModal:()=>s(!1)})}),(0,z.jsx)(w,{inline:!0,size:16,disabled:!c,children:(0,z.jsx)(o,{variant:`outline`,size:`icon`,className:`size-7.5`,onClick:()=>s(!0),children:(0,z.jsx)(a,{className:`size-5`})})})]})}export{L as n,V as t};