@@ -61,19 +61,17 @@ function SignPad({
61
61
} else if ( isStamp ) {
62
62
setImage ( "" ) ;
63
63
}
64
-
65
64
setIsSignImg ( "" ) ;
66
65
} else if ( isTab === "uploadImage" ) {
67
66
setImage ( "" ) ;
68
67
}
69
68
// setIsInitial(false);
70
69
} ;
71
70
//function for set signature url
72
- const handleSignatureChange = ( ) => {
73
- setSignature ( canvasRef . current . toDataURL ( ) ) ;
74
- setIsSignImg ( canvasRef . current . toDataURL ( ) ) ;
71
+ const handleSignatureChange = ( data ) => {
72
+ setSignature ( data ) ;
73
+ setIsSignImg ( data ) ;
75
74
} ;
76
-
77
75
//save button component
78
76
const SaveBtn = ( ) => {
79
77
return (
@@ -103,6 +101,8 @@ function SignPad({
103
101
setIsSignImg ( "" ) ;
104
102
onSaveSign ( null , false , textWidth , textHeight ) ;
105
103
} else {
104
+ setIsSignImg ( "" ) ;
105
+ canvasRef . current . clear ( ) ;
106
106
onSaveSign ( signatureType ) ;
107
107
}
108
108
}
@@ -127,6 +127,16 @@ function SignPad({
127
127
? ""
128
128
: "pointer-events-none"
129
129
} op-btn op-btn-primary shadow-lg`}
130
+ disabled = {
131
+ ( isTab === "draw" && isSignImg ) ||
132
+ ( isTab === "image" && image ) ||
133
+ ( isTab === "mysignature" && isDefaultSign ) ||
134
+ ( isTab === "type" && textWidth )
135
+ ? false
136
+ : image
137
+ ? false
138
+ : true
139
+ }
130
140
>
131
141
Save
132
142
</ button >
@@ -193,7 +203,6 @@ function SignPad({
193
203
}
194
204
// eslint-disable-next-line react-hooks/exhaustive-deps
195
205
} , [ isTab ] ) ;
196
-
197
206
//function for convert input text value in image
198
207
const convertToImg = async ( fontStyle , text , color ) => {
199
208
//get text content to convert in image
@@ -304,6 +313,9 @@ function SignPad({
304
313
setIsImageSelect ( false ) ;
305
314
setIsTab ( "draw" ) ;
306
315
setImage ( ) ;
316
+ if ( isSignImg ) {
317
+ setSignature ( isSignImg ) ;
318
+ }
307
319
} }
308
320
className = { `${
309
321
isTab === "draw"
@@ -577,7 +589,7 @@ function SignPad({
577
589
} }
578
590
backgroundColor = "rgb(255, 255, 255)"
579
591
onEnd = { ( ) =>
580
- handleSignatureChange ( canvasRef . current . toDataURL ( ) )
592
+ handleSignatureChange ( canvasRef . current ? .toDataURL ( ) )
581
593
}
582
594
dotSize = { 1 }
583
595
/>
0 commit comments