File tree Expand file tree Collapse file tree 2 files changed +21
-3
lines changed Expand file tree Collapse file tree 2 files changed +21
-3
lines changed Original file line number Diff line number Diff line change @@ -1979,6 +1979,20 @@ export const handleSendOTP = async (email) => {
1979
1979
alert ( error . message ) ;
1980
1980
}
1981
1981
} ;
1982
+ export const fetchUrl = async ( url , pdfName ) => {
1983
+ try {
1984
+ const response = await fetch ( url ) ;
1985
+ if ( ! response . ok ) {
1986
+ alert ( "something went wrong, please try again later." ) ;
1987
+ throw new Error ( "Network response was not ok" ) ;
1988
+ }
1989
+ const blob = await response . blob ( ) ;
1990
+ saveAs ( blob , `${ sanitizeFileName ( pdfName ) } _signed_by_OpenSign™.pdf` ) ;
1991
+ } catch ( error ) {
1992
+ alert ( "something went wrong, please try again later." ) ;
1993
+ console . error ( "Error downloading the file:" , error ) ;
1994
+ }
1995
+ } ;
1982
1996
//handle download signed pdf
1983
1997
export const handleDownloadPdf = async (
1984
1998
pdfDetails ,
@@ -2001,7 +2015,7 @@ export const handleDownloadPdf = async (
2001
2015
}
2002
2016
) ;
2003
2017
const url = axiosRes . data . result ;
2004
- saveAs ( url , ` ${ sanitizeFileName ( pdfName ) } _signed_by_OpenSign™.pdf` ) ;
2018
+ await fetchUrl ( url , pdfName ) ;
2005
2019
setIsDownloading ( "" ) ;
2006
2020
} catch ( err ) {
2007
2021
console . log ( "err in getsignedurl" , err ) ;
Original file line number Diff line number Diff line change @@ -10,10 +10,10 @@ import Tooltip from "./Tooltip";
10
10
import { RWebShare } from "react-web-share" ;
11
11
import Tour from "reactour" ;
12
12
import Parse from "parse" ;
13
- import { saveAs } from "file-saver" ;
14
13
import {
15
14
checkIsSubscribedTeam ,
16
15
copytoData ,
16
+ fetchUrl ,
17
17
replaceMailVaribles
18
18
} from "../constant/Utils" ;
19
19
import Confetti from "react-confetti" ;
@@ -595,14 +595,18 @@ const ReportTable = (props) => {
595
595
596
596
// `handleDownload` is used to get valid doc url available in completed report
597
597
const handleDownload = async ( item ) => {
598
+ setActLoader ( { [ `${ item . objectId } ` ] : true } ) ;
598
599
const url = item ?. SignedUrl || item ?. URL || "" ;
600
+ const pdfName = item ?. Name || "exported_file" ;
599
601
if ( url ) {
600
602
try {
601
603
const signedUrl = await Parse . Cloud . run ( "getsignedurl" , { url : url } ) ;
602
- saveAs ( signedUrl ) ;
604
+ await fetchUrl ( signedUrl , pdfName ) ;
605
+ setActLoader ( { } ) ;
603
606
} catch ( err ) {
604
607
console . log ( "err in getsignedurl" , err ) ;
605
608
alert ( "something went wrong, please try again later." ) ;
609
+ setActLoader ( { } ) ;
606
610
}
607
611
}
608
612
} ;
You can’t perform that action at this time.
0 commit comments