1- import React , { createContext , useState , useContext , useMemo } from "react" ;
1+ import React , { createContext , useState , useContext , useMemo , useCallback } from "react" ;
22
33import { Address } from "viem" ;
44
@@ -73,20 +73,16 @@ const initialDisputeData: IDisputeData = {
7373 aliasesArray : [ { name : "" , address : "" , id : "1" } ] ,
7474 version : "1.0" ,
7575} ;
76- const initialDisputeTemplate = initialDisputeData as IDisputeTemplate ;
7776
78- const NewDisputeContext = createContext < INewDisputeContext > ( {
79- disputeData : initialDisputeData ,
80- setDisputeData : ( ) => { } ,
81- disputeTemplate : initialDisputeTemplate ,
82- resetDisputeData : ( ) => { } ,
83- isSubmittingCase : false ,
84- setIsSubmittingCase : ( ) => { } ,
85- isPolicyUploading : false ,
86- setIsPolicyUploading : ( ) => { } ,
87- } ) ;
77+ const NewDisputeContext = createContext < INewDisputeContext | undefined > ( undefined ) ;
8878
89- export const useNewDisputeContext = ( ) => useContext ( NewDisputeContext ) ;
79+ export const useNewDisputeContext = ( ) => {
80+ const context = useContext ( NewDisputeContext ) ;
81+ if ( ! context ) {
82+ throw new Error ( "Context Provider not found." ) ;
83+ }
84+ return context ;
85+ } ;
9086
9187export const NewDisputeProvider : React . FC < { children : React . ReactNode } > = ( { children } ) => {
9288 const [ disputeData , setDisputeData ] = useLocalStorage < IDisputeData > ( "disputeData" , initialDisputeData ) ;
@@ -95,9 +91,9 @@ export const NewDisputeProvider: React.FC<{ children: React.ReactNode }> = ({ ch
9591
9692 const disputeTemplate = useMemo ( ( ) => constructDisputeTemplate ( disputeData ) , [ disputeData ] ) ;
9793
98- const resetDisputeData = ( ) => {
94+ const resetDisputeData = useCallback ( ( ) => {
9995 setDisputeData ( initialDisputeData ) ;
100- } ;
96+ } , [ setDisputeData ] ) ;
10197
10298 const contextValues = useMemo (
10399 ( ) => ( {
@@ -110,7 +106,7 @@ export const NewDisputeProvider: React.FC<{ children: React.ReactNode }> = ({ ch
110106 isPolicyUploading,
111107 setIsPolicyUploading,
112108 } ) ,
113- [ disputeData , disputeTemplate , resetDisputeData , isSubmittingCase , isPolicyUploading ]
109+ [ disputeData , disputeTemplate , resetDisputeData , isSubmittingCase , isPolicyUploading , setDisputeData ]
114110 ) ;
115111
116112 return < NewDisputeContext . Provider value = { contextValues } > { children } </ NewDisputeContext . Provider > ;
0 commit comments