@accounter/client
Version:
Accounter client application
2 lines (1 loc) • 4.83 kB
JavaScript
import{by as w,r as f,bz as E,aH as O,bA as P,bB as y,j as s,bC as F,B as N,z as B,bD as k,aE as M,bE as x,bF as h,bG as j,a8 as D,bH as R,bI as L}from"./index-CDv8MTrU.js";import{u as A}from"./use-url-query-Cv95DWiZ.js";import{P as T}from"./modal-hw2uDJ0Z.js";import{F as U}from"./funnel-2GvmLyCV.js";import{M as C}from"./MultiSelect-CtLQeRg8.js";var V=w((e,{color:a})=>({root:{backgroundColor:e.fn.themeColor(a,e.colorScheme==="dark"?5:2),color:e.colorScheme==="dark"?e.colors.dark[9]:"inherit"}})),z=Object.defineProperty,v=Object.getOwnPropertySymbols,_=Object.prototype.hasOwnProperty,I=Object.prototype.propertyIsEnumerable,S=(e,a,t)=>a in e?z(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t,G=(e,a)=>{for(var t in a||(a={}))_.call(a,t)&&S(e,t,a[t]);if(v)for(var t of v(a))I.call(a,t)&&S(e,t,a[t]);return e},H=(e,a)=>{var t={};for(var o in e)_.call(e,o)&&a.indexOf(o)<0&&(t[o]=e[o]);if(e!=null&&v)for(var o of v(e))a.indexOf(o)<0&&I.call(e,o)&&(t[o]=e[o]);return t};const X={color:"yellow"},q=f.forwardRef((e,a)=>{const t=E("Mark",X,e),{color:o,className:u,unstyled:p,variant:c}=t,d=H(t,["color","className","unstyled","variant"]),{classes:m,cx:b}=V({color:o},{unstyled:p,name:"Mark",variant:c});return O.createElement(P,G({component:"mark",ref:a,className:b(m.root,u)},d))});q.displayName="@mantine/core/Mark";function J({filter:e,setFilter:a,closeModal:t,single:o=!1}){const{control:u,handleSubmit:p}=B({defaultValues:{...e}}),{selectableBusinesses:c,fetching:d}=k(),{userContext:m}=f.useContext(M),b=r=>{a(r),t()};function l(){a({businessIDs:o?e.businessIDs:void 0}),t()}return s.jsxs(s.Fragment,{children:[d?s.jsx("div",{children:"Loading..."}):s.jsx("div",{}),s.jsxs("form",{onSubmit:p(b),children:[!o&&s.jsxs(s.Fragment,{children:[s.jsx(x,{name:"ownerIds",control:u,defaultValue:e.ownerIds,render:({field:r,fieldState:i})=>s.jsx(C,{...r,data:c,value:r.value??(m?.context.adminBusinessId?[m.context.adminBusinessId]:void 0),disabled:d,label:"Owners",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:i.error?.message})}),s.jsx(x,{name:"businessIDs",control:u,defaultValue:e.businessIDs,render:({field:r,fieldState:i})=>s.jsx(C,{...r,data:c,value:r.value??void 0,disabled:d,label:"Businesses",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:i.error?.message})})]}),s.jsx(x,{name:"fromDate",control:u,defaultValue:e.fromDate,rules:{pattern:{value:h,message:"Date must be im format yyyy-mm-dd"}},render:({field:r,fieldState:i})=>s.jsx(j,{...r,onChange:n=>{const g=n?typeof n=="string"?n:D(n,"yyyy-MM-dd"):void 0;g!==r.value&&r.onChange(g)},value:r.value?new Date(r.value):void 0,error:i.error?.message,label:"From Date",popoverProps:{withinPortal:!0}})}),s.jsx(x,{name:"toDate",control:u,defaultValue:e.toDate,rules:{pattern:{value:h,message:"Date must be im format yyyy-mm-dd"}},render:({field:r,fieldState:i})=>s.jsx(j,{...r,onChange:n=>{const g=n?typeof n=="string"?n:D(n,"yyyy-MM-dd"):void 0;g!==r.value&&r.onChange(g)},value:r.value?new Date(r.value):void 0,error:i.error?.message,label:"To Date",popoverProps:{withinPortal:!0}})}),!o&&s.jsx(x,{name:"type",control:u,defaultValue:null,render:({field:r,fieldState:i})=>s.jsx(R,{...r,onChange:n=>r.onChange(n==="NULL"?null:n),data:[{value:"NULL",label:"All"},{value:"BUSINESS",label:"Business"},{value:"TAX_CATEGORY",label:"Tax Category"}],error:i.error?.message,label:"Type"})}),s.jsxs("div",{className:"flex justify-center mt-5 gap-3",children:[s.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"}),s.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:l,children:"Clear"}),s.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:t,children:"Cancel"})]})]})]})}function $({filter:e,setFilter:a}){const[t,o]=f.useState(!1),[u,p]=f.useState(!y(e)),{get:c,set:d}=A();function m(l){return Object.entries(l??{}).filter(([i,n])=>n!==void 0&&Array.isArray(n)&&n.length>0).length>0}function b(l){l.fromDate?.trim()===""&&(l.fromDate=void 0),l.toDate?.trim()===""&&(l.toDate=void 0),L(l,e)||(a(l),p(m(l)))}return f.useEffect(()=>{const l=y(e)?null:encodeURIComponent(JSON.stringify(e)),r=c("ledgerRecordsFilters");l!==r&&d("ledgerRecordsFilters",l)},[e,c,d]),s.jsxs(s.Fragment,{children:[s.jsx(T,{opened:t,onClose:()=>o(!1),content:s.jsx(J,{single:!0,filter:e,setFilter:b,closeModal:()=>o(!1)})}),s.jsx(F,{inline:!0,size:16,disabled:!u,children:s.jsx(N,{variant:"outline",size:"icon",className:"size-7.5",onClick:()=>o(!0),children:s.jsx(U,{className:"size-5"})})})]})}export{$ as B,q as M};