1
1
import SignPDF from './SignPDF.min.cjs' ;
2
2
import fs from 'node:fs' ;
3
3
import axios from 'axios' ;
4
- import FormData from 'form-data' ;
5
4
import { plainAddPlaceholder } from 'node-signpdf/dist/helpers/index.js' ;
6
5
const serverUrl = process . env . SERVER_URL ,
7
6
APPID = process . env . APP_ID ,
8
7
masterKEY = process . env . MASTER_KEY ;
9
- async function uploadFile ( a ) {
8
+ async function uploadFile ( e , a ) {
10
9
try {
11
- var e = new FormData ( ) ,
12
- t =
13
- ( e . append ( 'file' , fs . createReadStream ( a ) ) ,
14
- { 'content-type' : 'multipart/form-data' , 'X-Parse-Application-Id' : process . env . APP_ID } ) ,
15
- s = process . env . SERVER_URL . slice ( 0 , - 4 ) + '/file_upload' ;
16
- return ( await axios . post ( s , e , { headers : t } ) ) . data ;
10
+ var t = fs . readFileSync ( a ) ,
11
+ s = new Parse . File ( e , [ ...t ] ) ,
12
+ r = ( await s . save ( { useMasterKey : ! 0 } ) , s . url ( ) ) ;
13
+ return { imageUrl : r } ;
17
14
} catch ( e ) {
18
- console . log ( 'err ' , e ) , fs . unlinkSync ( a ) ;
15
+ console . log ( 'Err ' , e ) , fs . unlinkSync ( a ) ;
19
16
}
20
17
}
21
18
async function updateDoc ( t , s , r , i , o , n ) {
@@ -224,8 +221,9 @@ async function PDF(i, o) {
224
221
) ;
225
222
var P ,
226
223
v ,
227
- x = `./exports/exported_file_${ Math . floor ( 5e3 * Math . random ( ) ) } .pdf` ,
228
- b =
224
+ x = `exported_file_${ Math . floor ( 5e3 * Math . random ( ) ) } .pdf` ,
225
+ b = './exports/' + x ,
226
+ U =
229
227
( t
230
228
? ( ( P = n . data . Signers ?. map ( e => e . Name + ' <' + e . Email + '>' ) ) ,
231
229
( e =
@@ -243,38 +241,38 @@ async function PDF(i, o) {
243
241
signatureLength : 1e4 ,
244
242
} ) ) ,
245
243
( v = await new SignPDF ( e , u ) . signPDF ( ) ) ,
246
- fs . writeFileSync ( x , v ) )
247
- : fs . writeFileSync ( x , e ) ,
248
- await uploadFile ( x ) ) ;
249
- if ( b && b . imageUrl ) {
244
+ fs . writeFileSync ( b , v ) )
245
+ : fs . writeFileSync ( b , e ) ,
246
+ await uploadFile ( x , b ) ) ;
247
+ if ( U && U . imageUrl ) {
250
248
const o = await updateDoc (
251
249
i . params . docId ,
252
- b . imageUrl ,
250
+ U . imageUrl ,
253
251
s . data . results [ 0 ] . objectId ,
254
252
i . headers [ 'x-real-ip' ] ,
255
253
n . data ,
256
254
r
257
255
) ;
258
256
return (
259
257
sendMail ( {
260
- url : b . imageUrl ,
258
+ url : U . imageUrl ,
261
259
sender : { Mail : n . data . ExtUserPtr . Email , Name : n . data . ExtUserPtr . Name } ,
262
260
pdfName : n . data . Name ,
263
261
receiver : g ,
264
262
} ) ,
265
263
o &&
266
264
o . isCompleted &&
267
265
( sendCompletedMail ( {
268
- url : b . imageUrl ,
266
+ url : U . imageUrl ,
269
267
sender : { Mail : n . data . ExtUserPtr . Email , Name : 'Open sign' } ,
270
268
pdfName : n . data . Name ,
271
269
receiver : n . data . ExtUserPtr . Email ,
272
270
} ) ,
273
- sendDoctoWebhook ( n , b . imageUrl ) ) ,
274
- fs . unlinkSync ( x ) ,
275
- console . log ( 'New Signed PDF created called: ' + x ) ,
271
+ sendDoctoWebhook ( n , U . imageUrl ) ) ,
272
+ fs . unlinkSync ( b ) ,
273
+ console . log ( 'New Signed PDF created called: ' + b ) ,
276
274
'success' === o . message
277
- ? { status : 'success' , data : b . imageUrl }
275
+ ? { status : 'success' , data : U . imageUrl }
278
276
: { status : 'error' , message : 'please provide required parameters!' }
279
277
) ;
280
278
}
0 commit comments