@react-pakistan/util-functions 3.0.5 → 3.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- "use client";var ne=Object.create;var T=Object.defineProperty;var le=Object.getOwnPropertyDescriptor;var ce=Object.getOwnPropertyNames;var de=Object.getPrototypeOf,we=Object.prototype.hasOwnProperty;var me=(r,e)=>{for(var i in e)T(r,i,{get:e[i],enumerable:!0})},M=(r,e,i,l)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of ce(e))!we.call(r,a)&&a!==i&&T(r,a,{get:()=>e[a],enumerable:!(l=le(e,a))||l.enumerable});return r};var pe=(r,e,i)=>(i=r!=null?ne(de(r)):{},M(e||!r||!r.__esModule?T(i,"default",{value:r,enumerable:!0}):i,r)),De=r=>M(T({},"__esModule",{value:!0}),r);var Re={};me(Re,{DRAWER_TYPES:()=>w,GenericDrawer:()=>I,GenericTable:()=>W,createGenericModulePage:()=>ue});module.exports=De(Re);var t=pe(require("react")),f=require("../general/calculate-pages"),_=require("../general/get-available-page-limit"),y=require("../general/is-next-button-disabled"),P=require("../general/is-previous-button-disabled"),E=require("../hooks/use-rtl"),N=require("@appcorp/shadcn/components/enhanced-table"),O=require("@appcorp/shadcn/components/ui/sonner"),S=require("@appcorp/shadcn/components/drawer-generic"),d=require("@appcorp/shadcn/components/enhanced-drawer-header"),s=require("@appcorp/shadcn/components/enhanced-drawer-footer");const w={FORM_DRAWER:"FORM_DRAWER",FILTER_DRAWER:"FILTER_DRAWER",VIEW_DRAWER:"VIEW_DRAWER",MORE_ACTIONS_DRAWER:"MORE_ACTIONS_DRAWER",MISC_DRAWER_1:"MISC_DRAWER_1",MISC_DRAWER_2:"MISC_DRAWER_2"},W=({config:r,context:e,headerActions:i,rowActions:l,tableBodyCols:a})=>{const m=(0,E.useRTL)(),u=(0,t.useMemo)(()=>r.tableColumns.map(o=>({label:o.label,width:o.width})),[r.tableColumns]),R=(0,f.calculatePages)(e.state.count,e.state.pageLimit),g=(0,t.useMemo)(()=>i||e.headerActions||[],[i,e.headerActions]),n=(0,t.useMemo)(()=>Object.keys(e.state).filter(o=>o.startsWith("filter")?e.state[o]!==void 0&&e.state[o]!==""&&e.state[o]!==null&&e.state[o]!==!1:!1).length,[e.state]);return t.default.createElement("div",{className:`space-y-4 ${m?"rtl":"ltr"}`,dir:m?"rtl":"ltr"},t.default.createElement(N.EnhancedTable,{currentPage:Number(e.state.currentPage),handleNextOnClick:e.handlePageChange,handleOnSelect:e.handlePageLimitChange,handlePreviousOnClick:()=>e.handlePageChange(e.state.currentPage-1),handleSearchInput:(o,c)=>e.handleSearch?.(c),headerActions:g,isNextDisabled:(0,y.isNextButtonDisabled)(e.state.currentPage,R),isPreviousDisabled:(0,P.isPreviousButtonDisabled)(e.state.currentPage),listOptions:(0,_.getAvailablePageLimits)(e.state.count),loading:e.listLoading,nodeSelectKey:"pageLimit",numberOfFilters:n,onClearFilters:r.onClearFilters,pageLimit:e.state.pageLimit,rowActions:l||e.rowActions||[],searchDisabled:!1,searchEnabled:!0,searchId:`${r.moduleName.toLowerCase()}-search`,searchPlaceholder:r.searchPlaceholder,searchValue:e.state.searchQuery,tableBodyCols:a,tableBodyRows:e.state.items,tableDescription:r.tableDescription,tableHeading:r.tableTitle,tableHeadItems:u,totalPages:Number(R)}))},I=({config:r,context:e,formContent:i,viewContent:l,filterContent:a,moreActionsContent:m,misc1Content:u,misc2Content:R})=>{const g=(0,E.useRTL)(),n=e.closeDrawer||e.handleCloseDrawer,{disableSaveButton:o,drawer:c}=e.state,C=c===w.FORM_DRAWER,A=c===w.VIEW_DRAWER,b=c===w.FILTER_DRAWER,p=c===w.MORE_ACTIONS_DRAWER,F=c===w.MISC_DRAWER_1,h=c===w.MISC_DRAWER_2,L=C||A||b||p||F||h,v=r.drawerFormTitle,H=r.drawerFormDescription,B=r.drawerViewTitle,V=r.drawerViewDescription,G=r.drawerFilterTitle,k=r.drawerFilterDescription,Y=r.drawerMoreActionsTitle,z=r.drawerMoreActionsDescription,$=r.drawerMisc1Title||"",j=r.drawerMisc1Description||"",K=r.drawerMisc2Title||"",Q=r.drawerMisc2Description||"",D=e.state.errors??{},q=C?t.default.createElement(d.EnhancedDrawerHeader,{title:v,description:H}):null,J=A?t.default.createElement(d.EnhancedDrawerHeader,{title:B,description:V}):null,U=b?t.default.createElement(d.EnhancedDrawerHeader,{title:G,description:k}):null,X=p?t.default.createElement(d.EnhancedDrawerHeader,{title:Y,description:z}):null,Z=F?t.default.createElement(d.EnhancedDrawerHeader,{title:$,description:j}):null,x=F?t.default.createElement(d.EnhancedDrawerHeader,{title:K,description:Q}):null,ee=C?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:n,disableSaveButton:o,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.FORM_DRAWER,errors:D,handleSubmit:e.handleSubmit,updateLoading:e.updateLoading??!1}):null,re=A?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:n,disableSaveButton:!1,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.VIEW_DRAWER,errors:D,handleSubmit:()=>{},updateLoading:!1}):null,te=b?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:e.applyFilters??(()=>{}),clearFilters:e.clearFilters??(()=>{}),closeDrawer:n,disableSaveButton:!1,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.FILTER_DRAWER,errors:D,handleSubmit:e.handleSubmit??(()=>{}),updateLoading:!1}):null,ae=p?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:n,disableSaveButton:!1,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.MORE_ACTIONS_DRAWER,errors:D,handleSubmit:()=>{},updateLoading:!1}):null,ie=p?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:n,disableSaveButton:!1,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.MORE_ACTIONS_DRAWER,errors:D,handleSubmit:()=>{},updateLoading:!1}):null,se=p?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:n,disableSaveButton:!1,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.MORE_ACTIONS_DRAWER,errors:D,handleSubmit:()=>{},updateLoading:!1}):null;return t.default.createElement(S.DrawerGeneric,{direction:g?"left":"right",filterDrawer:b?a:null,filterDrawerFooter:te,filterDrawerHeader:U,formDrawer:C?i:null,formDrawerFooter:ee,formDrawerHeader:q,misc1Drawer:F?u:null,misc1DrawerFooter:ie,misc1DrawerHeader:Z,misc2Drawer:h?R:null,misc2DrawerFooter:se,misc2DrawerHeader:x,moreActionsDrawer:p?m:null,moreActionsDrawerFooter:ae,moreActionsDrawerHeader:X,onOpenChange:oe=>!oe&&n(),open:L,viewDrawer:A?l:null,viewDrawerFooter:re,viewDrawerHeader:J,width:r.size??"small"})},ue=()=>({context:e,headerActions:i,iconMap:l,overrideConfig:a,rowActions:m,tableBodyCols:u})=>t.default.createElement("div",{className:"space-y-6"},t.default.createElement(W,{config:a,context:e,tableBodyCols:u,headerActions:i,rowActions:m,iconMap:l}),t.default.createElement(I,{config:a,context:e,filterContent:a.filterContent,formContent:a.formContent,moreActionsContent:a.moreActionsContent,viewContent:a.viewContent,misc1Content:a.misc1Content,misc2Content:a.misc2Content}),t.default.createElement(O.Toaster,null));0&&(module.exports={DRAWER_TYPES,GenericDrawer,GenericTable,createGenericModulePage});
1
+ "use client";var ne=Object.create;var T=Object.defineProperty;var le=Object.getOwnPropertyDescriptor;var ce=Object.getOwnPropertyNames;var de=Object.getPrototypeOf,we=Object.prototype.hasOwnProperty;var me=(r,e)=>{for(var i in e)T(r,i,{get:e[i],enumerable:!0})},M=(r,e,i,l)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of ce(e))!we.call(r,a)&&a!==i&&T(r,a,{get:()=>e[a],enumerable:!(l=le(e,a))||l.enumerable});return r};var pe=(r,e,i)=>(i=r!=null?ne(de(r)):{},M(e||!r||!r.__esModule?T(i,"default",{value:r,enumerable:!0}):i,r)),De=r=>M(T({},"__esModule",{value:!0}),r);var Re={};me(Re,{DRAWER_TYPES:()=>w,GenericDrawer:()=>I,GenericTable:()=>W,createGenericModulePage:()=>ue});module.exports=De(Re);var t=pe(require("react")),f=require("../general/calculate-pages"),_=require("../general/get-available-page-limit"),y=require("../general/is-next-button-disabled"),P=require("../general/is-previous-button-disabled"),h=require("../hooks/use-rtl"),N=require("@appcorp/shadcn/components/enhanced-table"),O=require("@appcorp/shadcn/components/ui/sonner"),S=require("@appcorp/shadcn/components/drawer-generic"),d=require("@appcorp/shadcn/components/enhanced-drawer-header"),s=require("@appcorp/shadcn/components/enhanced-drawer-footer");const w={FORM_DRAWER:"FORM_DRAWER",FILTER_DRAWER:"FILTER_DRAWER",VIEW_DRAWER:"VIEW_DRAWER",MORE_ACTIONS_DRAWER:"MORE_ACTIONS_DRAWER",MISC_DRAWER_1:"MISC_DRAWER_1",MISC_DRAWER_2:"MISC_DRAWER_2"},W=({config:r,context:e,headerActions:i,rowActions:l,tableBodyCols:a})=>{const m=(0,h.useRTL)(),D=(0,t.useMemo)(()=>r.tableColumns.map(o=>({label:o.label,width:o.width})),[r.tableColumns]),R=(0,f.calculatePages)(e.state.count,e.state.pageLimit),g=(0,t.useMemo)(()=>i||e.headerActions||[],[i,e.headerActions]),n=(0,t.useMemo)(()=>Object.keys(e.state).filter(o=>o.startsWith("filter")?e.state[o]!==void 0&&e.state[o]!==""&&e.state[o]!==null&&e.state[o]!==!1:!1).length,[e.state]);return t.default.createElement("div",{className:`space-y-4 ${m?"rtl":"ltr"}`,dir:m?"rtl":"ltr"},t.default.createElement(N.EnhancedTable,{currentPage:Number(e.state.currentPage),handleNextOnClick:e.handlePageChange,handleOnSelect:e.handlePageLimitChange,handlePreviousOnClick:()=>e.handlePageChange(e.state.currentPage-1),handleSearchInput:(o,c)=>e.handleSearch?.(c),headerActions:g,isNextDisabled:(0,y.isNextButtonDisabled)(e.state.currentPage,R),isPreviousDisabled:(0,P.isPreviousButtonDisabled)(e.state.currentPage),listOptions:(0,_.getAvailablePageLimits)(e.state.count),loading:e.listLoading,nodeSelectKey:"pageLimit",numberOfFilters:n,onClearFilters:r.onClearFilters,pageLimit:e.state.pageLimit,rowActions:l||e.rowActions||[],searchDisabled:!1,searchEnabled:!0,searchId:`${r.moduleName.toLowerCase()}-search`,searchPlaceholder:r.searchPlaceholder,searchValue:e.state.searchQuery,tableBodyCols:a,tableBodyRows:e.state.items,tableDescription:r.tableDescription,tableHeading:r.tableTitle,tableHeadItems:D,totalPages:Number(R)}))},I=({config:r,context:e,formContent:i,viewContent:l,filterContent:a,moreActionsContent:m,misc1Content:D,misc2Content:R})=>{const g=(0,h.useRTL)(),n=e.closeDrawer||e.handleCloseDrawer,{disableSaveButton:o,drawer:c}=e.state,C=c===w.FORM_DRAWER,A=c===w.VIEW_DRAWER,b=c===w.FILTER_DRAWER,F=c===w.MORE_ACTIONS_DRAWER,u=c===w.MISC_DRAWER_1,E=c===w.MISC_DRAWER_2,L=C||A||b||F||u||E,v=r.drawerFormTitle,H=r.drawerFormDescription,B=r.drawerViewTitle,V=r.drawerViewDescription,G=r.drawerFilterTitle,k=r.drawerFilterDescription,Y=r.drawerMoreActionsTitle,z=r.drawerMoreActionsDescription,$=r.drawerMisc1Title||"",j=r.drawerMisc1Description||"",K=r.drawerMisc2Title||"",Q=r.drawerMisc2Description||"",p=e.state.errors??{},q=C?t.default.createElement(d.EnhancedDrawerHeader,{title:v,description:H}):null,J=A?t.default.createElement(d.EnhancedDrawerHeader,{title:B,description:V}):null,U=b?t.default.createElement(d.EnhancedDrawerHeader,{title:G,description:k}):null,X=F?t.default.createElement(d.EnhancedDrawerHeader,{title:Y,description:z}):null,Z=u?t.default.createElement(d.EnhancedDrawerHeader,{title:$,description:j}):null,x=u?t.default.createElement(d.EnhancedDrawerHeader,{title:K,description:Q}):null,ee=C?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:n,disableSaveButton:o,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.FORM_DRAWER,errors:p,handleSubmit:e.handleSubmit,updateLoading:e.updateLoading??!1}):null,re=A?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:n,disableSaveButton:!1,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.VIEW_DRAWER,errors:p,handleSubmit:()=>{},updateLoading:!1}):null,te=b?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:e.applyFilters??(()=>{}),clearFilters:e.clearFilters??(()=>{}),closeDrawer:n,disableSaveButton:!1,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.FILTER_DRAWER,errors:p,handleSubmit:e.handleSubmit??(()=>{}),updateLoading:!1}):null,ae=F?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:n,disableSaveButton:!1,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.MORE_ACTIONS_DRAWER,errors:p,handleSubmit:()=>{},updateLoading:!1}):null,ie=u?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:n,disableSaveButton:!1,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.MORE_ACTIONS_DRAWER,errors:p,handleSubmit:()=>{},updateLoading:!1}):null,se=E?t.default.createElement(s.EnhancedDrawerFooter,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:n,disableSaveButton:!1,drawerType:s.DRAWER_FOOTER_COMPONENT_TYPE.MORE_ACTIONS_DRAWER,errors:p,handleSubmit:()=>{},updateLoading:!1}):null;return t.default.createElement(S.DrawerGeneric,{direction:g?"left":"right",filterDrawer:b?a:null,filterDrawerFooter:te,filterDrawerHeader:U,formDrawer:C?i:null,formDrawerFooter:ee,formDrawerHeader:q,misc1Drawer:u?D:null,misc1DrawerFooter:ie,misc1DrawerHeader:Z,misc2Drawer:E?R:null,misc2DrawerFooter:se,misc2DrawerHeader:x,moreActionsDrawer:F?m:null,moreActionsDrawerFooter:ae,moreActionsDrawerHeader:X,onOpenChange:oe=>!oe&&n(),open:L,viewDrawer:A?l:null,viewDrawerFooter:re,viewDrawerHeader:J,width:r.size??"small"})},ue=()=>({context:e,headerActions:i,iconMap:l,overrideConfig:a,rowActions:m,tableBodyCols:D})=>t.default.createElement("div",{className:"space-y-6"},t.default.createElement(W,{config:a,context:e,tableBodyCols:D,headerActions:i,rowActions:m,iconMap:l}),t.default.createElement(I,{config:a,context:e,filterContent:a.filterContent,formContent:a.formContent,moreActionsContent:a.moreActionsContent,viewContent:a.viewContent,misc1Content:a.misc1Content,misc2Content:a.misc2Content}),t.default.createElement(O.Toaster,null));0&&(module.exports={DRAWER_TYPES,GenericDrawer,GenericTable,createGenericModulePage});
@@ -1 +1 @@
1
- "use client";import t,{useMemo as E}from"react";import{calculatePages as Z}from"../general/calculate-pages";import{getAvailablePageLimits as x}from"../general/get-available-page-limit";import{isNextButtonDisabled as ee}from"../general/is-next-button-disabled";import{isPreviousButtonDisabled as re}from"../general/is-previous-button-disabled";import{useRTL as M}from"../hooks/use-rtl";import{EnhancedTable as te}from"@appcorp/shadcn/components/enhanced-table";import{Toaster as ae}from"@appcorp/shadcn/components/ui/sonner";import{DrawerGeneric as ie}from"@appcorp/shadcn/components/drawer-generic";import{EnhancedDrawerHeader as w}from"@appcorp/shadcn/components/enhanced-drawer-header";import{EnhancedDrawerFooter as m,DRAWER_FOOTER_COMPONENT_TYPE as p}from"@appcorp/shadcn/components/enhanced-drawer-footer";const D={FORM_DRAWER:"FORM_DRAWER",FILTER_DRAWER:"FILTER_DRAWER",VIEW_DRAWER:"VIEW_DRAWER",MORE_ACTIONS_DRAWER:"MORE_ACTIONS_DRAWER",MISC_DRAWER_1:"MISC_DRAWER_1",MISC_DRAWER_2:"MISC_DRAWER_2"},se=({config:r,context:e,headerActions:n,rowActions:u,tableBodyCols:a})=>{const l=M(),R=E(()=>r.tableColumns.map(i=>({label:i.label,width:i.width})),[r.tableColumns]),C=Z(e.state.count,e.state.pageLimit),g=E(()=>n||e.headerActions||[],[n,e.headerActions]),s=E(()=>Object.keys(e.state).filter(i=>i.startsWith("filter")?e.state[i]!==void 0&&e.state[i]!==""&&e.state[i]!==null&&e.state[i]!==!1:!1).length,[e.state]);return t.createElement("div",{className:`space-y-4 ${l?"rtl":"ltr"}`,dir:l?"rtl":"ltr"},t.createElement(te,{currentPage:Number(e.state.currentPage),handleNextOnClick:e.handlePageChange,handleOnSelect:e.handlePageLimitChange,handlePreviousOnClick:()=>e.handlePageChange(e.state.currentPage-1),handleSearchInput:(i,o)=>e.handleSearch?.(o),headerActions:g,isNextDisabled:ee(e.state.currentPage,C),isPreviousDisabled:re(e.state.currentPage),listOptions:x(e.state.count),loading:e.listLoading,nodeSelectKey:"pageLimit",numberOfFilters:s,onClearFilters:r.onClearFilters,pageLimit:e.state.pageLimit,rowActions:u||e.rowActions||[],searchDisabled:!1,searchEnabled:!0,searchId:`${r.moduleName.toLowerCase()}-search`,searchPlaceholder:r.searchPlaceholder,searchValue:e.state.searchQuery,tableBodyCols:a,tableBodyRows:e.state.items,tableDescription:r.tableDescription,tableHeading:r.tableTitle,tableHeadItems:R,totalPages:Number(C)}))},oe=({config:r,context:e,formContent:n,viewContent:u,filterContent:a,moreActionsContent:l,misc1Content:R,misc2Content:C})=>{const g=M(),s=e.closeDrawer||e.handleCloseDrawer,{disableSaveButton:i,drawer:o}=e.state,A=o===D.FORM_DRAWER,b=o===D.VIEW_DRAWER,F=o===D.FILTER_DRAWER,c=o===D.MORE_ACTIONS_DRAWER,T=o===D.MISC_DRAWER_1,h=o===D.MISC_DRAWER_2,f=A||b||F||c||T||h,_=r.drawerFormTitle,y=r.drawerFormDescription,P=r.drawerViewTitle,N=r.drawerViewDescription,O=r.drawerFilterTitle,S=r.drawerFilterDescription,W=r.drawerMoreActionsTitle,I=r.drawerMoreActionsDescription,L=r.drawerMisc1Title||"",v=r.drawerMisc1Description||"",H=r.drawerMisc2Title||"",B=r.drawerMisc2Description||"",d=e.state.errors??{},V=A?t.createElement(w,{title:_,description:y}):null,G=b?t.createElement(w,{title:P,description:N}):null,k=F?t.createElement(w,{title:O,description:S}):null,Y=c?t.createElement(w,{title:W,description:I}):null,z=T?t.createElement(w,{title:L,description:v}):null,$=T?t.createElement(w,{title:H,description:B}):null,j=A?t.createElement(m,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:s,disableSaveButton:i,drawerType:p.FORM_DRAWER,errors:d,handleSubmit:e.handleSubmit,updateLoading:e.updateLoading??!1}):null,K=b?t.createElement(m,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:s,disableSaveButton:!1,drawerType:p.VIEW_DRAWER,errors:d,handleSubmit:()=>{},updateLoading:!1}):null,Q=F?t.createElement(m,{applyFilters:e.applyFilters??(()=>{}),clearFilters:e.clearFilters??(()=>{}),closeDrawer:s,disableSaveButton:!1,drawerType:p.FILTER_DRAWER,errors:d,handleSubmit:e.handleSubmit??(()=>{}),updateLoading:!1}):null,q=c?t.createElement(m,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:s,disableSaveButton:!1,drawerType:p.MORE_ACTIONS_DRAWER,errors:d,handleSubmit:()=>{},updateLoading:!1}):null,J=c?t.createElement(m,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:s,disableSaveButton:!1,drawerType:p.MORE_ACTIONS_DRAWER,errors:d,handleSubmit:()=>{},updateLoading:!1}):null,U=c?t.createElement(m,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:s,disableSaveButton:!1,drawerType:p.MORE_ACTIONS_DRAWER,errors:d,handleSubmit:()=>{},updateLoading:!1}):null;return t.createElement(ie,{direction:g?"left":"right",filterDrawer:F?a:null,filterDrawerFooter:Q,filterDrawerHeader:k,formDrawer:A?n:null,formDrawerFooter:j,formDrawerHeader:V,misc1Drawer:T?R:null,misc1DrawerFooter:J,misc1DrawerHeader:z,misc2Drawer:h?C:null,misc2DrawerFooter:U,misc2DrawerHeader:$,moreActionsDrawer:c?l:null,moreActionsDrawerFooter:q,moreActionsDrawerHeader:Y,onOpenChange:X=>!X&&s(),open:f,viewDrawer:b?u:null,viewDrawerFooter:K,viewDrawerHeader:G,width:r.size??"small"})},Ee=()=>({context:e,headerActions:n,iconMap:u,overrideConfig:a,rowActions:l,tableBodyCols:R})=>t.createElement("div",{className:"space-y-6"},t.createElement(se,{config:a,context:e,tableBodyCols:R,headerActions:n,rowActions:l,iconMap:u}),t.createElement(oe,{config:a,context:e,filterContent:a.filterContent,formContent:a.formContent,moreActionsContent:a.moreActionsContent,viewContent:a.viewContent,misc1Content:a.misc1Content,misc2Content:a.misc2Content}),t.createElement(ae,null));export{D as DRAWER_TYPES,oe as GenericDrawer,se as GenericTable,Ee as createGenericModulePage};
1
+ "use client";import t,{useMemo as h}from"react";import{calculatePages as Z}from"../general/calculate-pages";import{getAvailablePageLimits as x}from"../general/get-available-page-limit";import{isNextButtonDisabled as ee}from"../general/is-next-button-disabled";import{isPreviousButtonDisabled as re}from"../general/is-previous-button-disabled";import{useRTL as M}from"../hooks/use-rtl";import{EnhancedTable as te}from"@appcorp/shadcn/components/enhanced-table";import{Toaster as ae}from"@appcorp/shadcn/components/ui/sonner";import{DrawerGeneric as ie}from"@appcorp/shadcn/components/drawer-generic";import{EnhancedDrawerHeader as d}from"@appcorp/shadcn/components/enhanced-drawer-header";import{EnhancedDrawerFooter as w,DRAWER_FOOTER_COMPONENT_TYPE as m}from"@appcorp/shadcn/components/enhanced-drawer-footer";const p={FORM_DRAWER:"FORM_DRAWER",FILTER_DRAWER:"FILTER_DRAWER",VIEW_DRAWER:"VIEW_DRAWER",MORE_ACTIONS_DRAWER:"MORE_ACTIONS_DRAWER",MISC_DRAWER_1:"MISC_DRAWER_1",MISC_DRAWER_2:"MISC_DRAWER_2"},se=({config:r,context:e,headerActions:n,rowActions:D,tableBodyCols:a})=>{const l=M(),u=h(()=>r.tableColumns.map(i=>({label:i.label,width:i.width})),[r.tableColumns]),C=Z(e.state.count,e.state.pageLimit),g=h(()=>n||e.headerActions||[],[n,e.headerActions]),s=h(()=>Object.keys(e.state).filter(i=>i.startsWith("filter")?e.state[i]!==void 0&&e.state[i]!==""&&e.state[i]!==null&&e.state[i]!==!1:!1).length,[e.state]);return t.createElement("div",{className:`space-y-4 ${l?"rtl":"ltr"}`,dir:l?"rtl":"ltr"},t.createElement(te,{currentPage:Number(e.state.currentPage),handleNextOnClick:e.handlePageChange,handleOnSelect:e.handlePageLimitChange,handlePreviousOnClick:()=>e.handlePageChange(e.state.currentPage-1),handleSearchInput:(i,o)=>e.handleSearch?.(o),headerActions:g,isNextDisabled:ee(e.state.currentPage,C),isPreviousDisabled:re(e.state.currentPage),listOptions:x(e.state.count),loading:e.listLoading,nodeSelectKey:"pageLimit",numberOfFilters:s,onClearFilters:r.onClearFilters,pageLimit:e.state.pageLimit,rowActions:D||e.rowActions||[],searchDisabled:!1,searchEnabled:!0,searchId:`${r.moduleName.toLowerCase()}-search`,searchPlaceholder:r.searchPlaceholder,searchValue:e.state.searchQuery,tableBodyCols:a,tableBodyRows:e.state.items,tableDescription:r.tableDescription,tableHeading:r.tableTitle,tableHeadItems:u,totalPages:Number(C)}))},oe=({config:r,context:e,formContent:n,viewContent:D,filterContent:a,moreActionsContent:l,misc1Content:u,misc2Content:C})=>{const g=M(),s=e.closeDrawer||e.handleCloseDrawer,{disableSaveButton:i,drawer:o}=e.state,A=o===p.FORM_DRAWER,b=o===p.VIEW_DRAWER,F=o===p.FILTER_DRAWER,T=o===p.MORE_ACTIONS_DRAWER,R=o===p.MISC_DRAWER_1,E=o===p.MISC_DRAWER_2,f=A||b||F||T||R||E,_=r.drawerFormTitle,y=r.drawerFormDescription,P=r.drawerViewTitle,N=r.drawerViewDescription,O=r.drawerFilterTitle,S=r.drawerFilterDescription,W=r.drawerMoreActionsTitle,I=r.drawerMoreActionsDescription,L=r.drawerMisc1Title||"",v=r.drawerMisc1Description||"",H=r.drawerMisc2Title||"",B=r.drawerMisc2Description||"",c=e.state.errors??{},V=A?t.createElement(d,{title:_,description:y}):null,G=b?t.createElement(d,{title:P,description:N}):null,k=F?t.createElement(d,{title:O,description:S}):null,Y=T?t.createElement(d,{title:W,description:I}):null,z=R?t.createElement(d,{title:L,description:v}):null,$=R?t.createElement(d,{title:H,description:B}):null,j=A?t.createElement(w,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:s,disableSaveButton:i,drawerType:m.FORM_DRAWER,errors:c,handleSubmit:e.handleSubmit,updateLoading:e.updateLoading??!1}):null,K=b?t.createElement(w,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:s,disableSaveButton:!1,drawerType:m.VIEW_DRAWER,errors:c,handleSubmit:()=>{},updateLoading:!1}):null,Q=F?t.createElement(w,{applyFilters:e.applyFilters??(()=>{}),clearFilters:e.clearFilters??(()=>{}),closeDrawer:s,disableSaveButton:!1,drawerType:m.FILTER_DRAWER,errors:c,handleSubmit:e.handleSubmit??(()=>{}),updateLoading:!1}):null,q=T?t.createElement(w,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:s,disableSaveButton:!1,drawerType:m.MORE_ACTIONS_DRAWER,errors:c,handleSubmit:()=>{},updateLoading:!1}):null,J=R?t.createElement(w,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:s,disableSaveButton:!1,drawerType:m.MORE_ACTIONS_DRAWER,errors:c,handleSubmit:()=>{},updateLoading:!1}):null,U=E?t.createElement(w,{applyFilters:()=>{},clearFilters:()=>{},closeDrawer:s,disableSaveButton:!1,drawerType:m.MORE_ACTIONS_DRAWER,errors:c,handleSubmit:()=>{},updateLoading:!1}):null;return t.createElement(ie,{direction:g?"left":"right",filterDrawer:F?a:null,filterDrawerFooter:Q,filterDrawerHeader:k,formDrawer:A?n:null,formDrawerFooter:j,formDrawerHeader:V,misc1Drawer:R?u:null,misc1DrawerFooter:J,misc1DrawerHeader:z,misc2Drawer:E?C:null,misc2DrawerFooter:U,misc2DrawerHeader:$,moreActionsDrawer:T?l:null,moreActionsDrawerFooter:q,moreActionsDrawerHeader:Y,onOpenChange:X=>!X&&s(),open:f,viewDrawer:b?D:null,viewDrawerFooter:K,viewDrawerHeader:G,width:r.size??"small"})},Ee=()=>({context:e,headerActions:n,iconMap:D,overrideConfig:a,rowActions:l,tableBodyCols:u})=>t.createElement("div",{className:"space-y-6"},t.createElement(se,{config:a,context:e,tableBodyCols:u,headerActions:n,rowActions:l,iconMap:D}),t.createElement(oe,{config:a,context:e,filterContent:a.filterContent,formContent:a.formContent,moreActionsContent:a.moreActionsContent,viewContent:a.viewContent,misc1Content:a.misc1Content,misc2Content:a.misc2Content}),t.createElement(ae,null));export{p as DRAWER_TYPES,oe as GenericDrawer,se as GenericTable,Ee as createGenericModulePage};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-pakistan/util-functions",
3
- "version": "3.0.5",
3
+ "version": "3.0.6",
4
4
  "description": "A library of all util functions",
5
5
  "scripts": {
6
6
  "add:tags": "scripts/add-tags.sh",