@react-pakistan/util-functions 3.0.3 → 3.0.5
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.
- package/factory/generic-component-factory.d.mts +16 -6
- package/factory/generic-component-factory.d.ts +16 -6
- package/factory/generic-component-factory.js +1 -1
- package/factory/generic-component-factory.mjs +1 -1
- package/hooks/use-module-entity-v2.js +1 -1
- package/hooks/use-module-entity-v2.mjs +1 -1
- package/package.json +2 -2
|
@@ -13,22 +13,30 @@ declare const DRAWER_TYPES: {
|
|
|
13
13
|
FILTER_DRAWER: string;
|
|
14
14
|
VIEW_DRAWER: string;
|
|
15
15
|
MORE_ACTIONS_DRAWER: string;
|
|
16
|
+
MISC_DRAWER_1: string;
|
|
17
|
+
MISC_DRAWER_2: string;
|
|
16
18
|
};
|
|
17
19
|
interface ComponentConfig {
|
|
18
20
|
cancelLabel?: string;
|
|
19
21
|
drawerDescription?: string;
|
|
20
|
-
drawerFormTitle: string;
|
|
21
|
-
drawerFormDescription: string;
|
|
22
|
-
drawerViewTitle: string;
|
|
23
|
-
drawerViewDescription: string;
|
|
24
|
-
drawerFilterTitle: string;
|
|
25
22
|
drawerFilterDescription: string;
|
|
26
|
-
|
|
23
|
+
drawerFilterTitle: string;
|
|
24
|
+
drawerFormDescription: string;
|
|
25
|
+
drawerFormTitle: string;
|
|
26
|
+
drawerMisc1Description?: string;
|
|
27
|
+
drawerMisc1Title?: string;
|
|
28
|
+
drawerMisc2Description?: string;
|
|
29
|
+
drawerMisc2Title?: string;
|
|
27
30
|
drawerMoreActionsDescription: string;
|
|
31
|
+
drawerMoreActionsTitle: string;
|
|
32
|
+
drawerViewDescription: string;
|
|
33
|
+
drawerViewTitle: string;
|
|
28
34
|
filterContent: React.ReactNode;
|
|
29
35
|
filterDrawerValue?: string;
|
|
30
36
|
formContent: React.ReactNode;
|
|
31
37
|
formDrawerValue?: string;
|
|
38
|
+
misc1Content?: React.ReactNode;
|
|
39
|
+
misc2Content?: React.ReactNode;
|
|
32
40
|
moduleName: string;
|
|
33
41
|
moreActionsContent: React.ReactNode;
|
|
34
42
|
numberOfFilters?: number;
|
|
@@ -63,6 +71,8 @@ interface GenericDrawerProps {
|
|
|
63
71
|
viewContent?: React.ReactNode;
|
|
64
72
|
filterContent?: React.ReactNode;
|
|
65
73
|
moreActionsContent?: React.ReactNode;
|
|
74
|
+
misc1Content?: React.ReactNode;
|
|
75
|
+
misc2Content?: React.ReactNode;
|
|
66
76
|
}
|
|
67
77
|
declare const GenericDrawer: FC<GenericDrawerProps>;
|
|
68
78
|
interface GenericModulePageProps {
|
|
@@ -13,22 +13,30 @@ declare const DRAWER_TYPES: {
|
|
|
13
13
|
FILTER_DRAWER: string;
|
|
14
14
|
VIEW_DRAWER: string;
|
|
15
15
|
MORE_ACTIONS_DRAWER: string;
|
|
16
|
+
MISC_DRAWER_1: string;
|
|
17
|
+
MISC_DRAWER_2: string;
|
|
16
18
|
};
|
|
17
19
|
interface ComponentConfig {
|
|
18
20
|
cancelLabel?: string;
|
|
19
21
|
drawerDescription?: string;
|
|
20
|
-
drawerFormTitle: string;
|
|
21
|
-
drawerFormDescription: string;
|
|
22
|
-
drawerViewTitle: string;
|
|
23
|
-
drawerViewDescription: string;
|
|
24
|
-
drawerFilterTitle: string;
|
|
25
22
|
drawerFilterDescription: string;
|
|
26
|
-
|
|
23
|
+
drawerFilterTitle: string;
|
|
24
|
+
drawerFormDescription: string;
|
|
25
|
+
drawerFormTitle: string;
|
|
26
|
+
drawerMisc1Description?: string;
|
|
27
|
+
drawerMisc1Title?: string;
|
|
28
|
+
drawerMisc2Description?: string;
|
|
29
|
+
drawerMisc2Title?: string;
|
|
27
30
|
drawerMoreActionsDescription: string;
|
|
31
|
+
drawerMoreActionsTitle: string;
|
|
32
|
+
drawerViewDescription: string;
|
|
33
|
+
drawerViewTitle: string;
|
|
28
34
|
filterContent: React.ReactNode;
|
|
29
35
|
filterDrawerValue?: string;
|
|
30
36
|
formContent: React.ReactNode;
|
|
31
37
|
formDrawerValue?: string;
|
|
38
|
+
misc1Content?: React.ReactNode;
|
|
39
|
+
misc2Content?: React.ReactNode;
|
|
32
40
|
moduleName: string;
|
|
33
41
|
moreActionsContent: React.ReactNode;
|
|
34
42
|
numberOfFilters?: number;
|
|
@@ -63,6 +71,8 @@ interface GenericDrawerProps {
|
|
|
63
71
|
viewContent?: React.ReactNode;
|
|
64
72
|
filterContent?: React.ReactNode;
|
|
65
73
|
moreActionsContent?: React.ReactNode;
|
|
74
|
+
misc1Content?: React.ReactNode;
|
|
75
|
+
misc2Content?: React.ReactNode;
|
|
66
76
|
}
|
|
67
77
|
declare const GenericDrawer: FC<GenericDrawerProps>;
|
|
68
78
|
interface GenericModulePageProps {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";var
|
|
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 +1 @@
|
|
|
1
|
-
"use client";import t,{useMemo as
|
|
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 +1 @@
|
|
|
1
|
-
var g=Object.defineProperty;var
|
|
1
|
+
var g=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var U=Object.prototype.hasOwnProperty;var x=(t,r)=>{for(var i in r)g(t,i,{get:r[i],enumerable:!0})},J=(t,r,i,c)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of S(r))!U.call(t,a)&&a!==i&&g(t,a,{get:()=>r[a],enumerable:!(c=O(r,a))||c.enumerable});return t};var M=t=>J(g({},"__esModule",{value:!0}),t);var H={};x(H,{useModuleEntityV2:()=>B});module.exports=M(H);var d=require("react"),n=require("../constants/api-methods"),s=require("./use-fetch");const B=({byIdCallback:t,byIdDeps:r=[],byIdParams:i,deleteCallback:c,deleteDeps:a=[],deleteParams:m,listCallback:p,listDeps:E=[],listParams:u,listUrl:k,headers:l,searchQuery:T,unitByIdUrl:C,unitUrl:b,updateCallback:y,updateDeps:F=[],updateParams:N})=>{const o=(0,d.useRef)(null);(0,d.useEffect)(()=>()=>{o.current&&(globalThis.clearTimeout(o.current),o.current=null)},[]);const{error:P,fetchNow:f,loading:w}=(0,s.useFetch)(k,{method:n.API_METHODS.GET,params:u,headers:l,callback:p,credentials:!0},[T,u,...E]),h=(e=300)=>{o.current&&globalThis.clearTimeout(o.current),o.current=globalThis.setTimeout(()=>{try{f(void 0,{method:n.API_METHODS.GET,params:u,headers:l})}catch{}o.current=null},e)},{error:I,loading:L,fetchNow:v}=(0,s.useFetch)(b,{method:n.API_METHODS.PUT,body:JSON.stringify(N),headers:l,callback:e=>{if(y)try{y(e)}catch{}try{e&&e.ok&&h()}catch{}}},[...F]),{error:A,loading:V,fetchNow:D}=(0,s.useFetch)(C,{method:n.API_METHODS.GET,params:i,headers:l,callback:t},[...r]),{error:R,loading:j,fetchNow:G}=(0,s.useFetch)(b,{method:n.API_METHODS.DELETE,body:JSON.stringify(m),headers:l,callback:e=>{if(c)try{c(e)}catch{}try{e&&e.ok&&h()}catch{}}},[...a]);return{byIdError:A,byIdFetchNow:D,byIdLoading:V,deleteError:R,deleteFetchNow:G,deleteLoading:j,listError:P,listFetchNow:f,listLoading:w,updateError:I,updateFetchNow:v,updateLoading:L}};0&&(module.exports={useModuleEntityV2});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useRef as
|
|
1
|
+
import{useRef as j,useEffect as G}from"react";import{API_METHODS as a}from"../constants/api-methods";import{useFetch as o}from"./use-fetch";const J=({byIdCallback:u,byIdDeps:g=[],byIdParams:b,deleteCallback:n,deleteDeps:y=[],deleteParams:f,listCallback:h,listDeps:m=[],listParams:i,listUrl:p,headers:e,searchQuery:E,unitByIdUrl:k,unitUrl:c,updateCallback:l,updateDeps:T=[],updateParams:C})=>{const t=j(null);G(()=>()=>{t.current&&(globalThis.clearTimeout(t.current),t.current=null)},[]);const{error:F,fetchNow:s,loading:N}=o(p,{method:a.GET,params:i,headers:e,callback:h,credentials:!0},[E,i,...m]),d=(r=300)=>{t.current&&globalThis.clearTimeout(t.current),t.current=globalThis.setTimeout(()=>{try{s(void 0,{method:a.GET,params:i,headers:e})}catch{}t.current=null},r)},{error:P,loading:w,fetchNow:I}=o(c,{method:a.PUT,body:JSON.stringify(C),headers:e,callback:r=>{if(l)try{l(r)}catch{}try{r&&r.ok&&d()}catch{}}},[...T]),{error:L,loading:v,fetchNow:A}=o(k,{method:a.GET,params:b,headers:e,callback:u},[...g]),{error:V,loading:D,fetchNow:R}=o(c,{method:a.DELETE,body:JSON.stringify(f),headers:e,callback:r=>{if(n)try{n(r)}catch{}try{r&&r.ok&&d()}catch{}}},[...y]);return{byIdError:L,byIdFetchNow:A,byIdLoading:v,deleteError:V,deleteFetchNow:R,deleteLoading:D,listError:F,listFetchNow:s,listLoading:N,updateError:P,updateFetchNow:I,updateLoading:w}};export{J as useModuleEntityV2};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-pakistan/util-functions",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.5",
|
|
4
4
|
"description": "A library of all util functions",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"add:tags": "scripts/add-tags.sh",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
},
|
|
47
47
|
"homepage": "https://github.com/react-pakistan/util-functions#readme",
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@appcorp/shadcn": "^2.0.
|
|
49
|
+
"@appcorp/shadcn": "^2.0.9",
|
|
50
50
|
"@eslint/js": "^9.17.0",
|
|
51
51
|
"@testing-library/react": "^14.0.0",
|
|
52
52
|
"@testing-library/react-hooks": "^8.0.1",
|