SS
Size: a a a
SS
「
AP
A
SS
A
СД
@Resolver()
export class UploadAvatarResolver {
@Mutation(() => Boolean)
async uploadFile (
@Arg('file', () => GraphQLUpload)
file: FileUpload): Promise<boolean> {
const { createReadStream, filename } = await file
const originalName = path.basename(filename, path.extname(filename))
const pipeline = sharp()
pipeline.clone().on('error', (err) => {
console.log('ERROR1')
console.log(err.message)
}).jpeg().resize(1000).pipe(createWriteStream(path.join(UPLOADS_DIR, `${originalName}-1000.jpeg`), { autoClose: true }))
pipeline.clone().on('error', (err) => {
console.log('ERROR2')
console.log(err.message)
}).jpeg().resize(500).pipe(createWriteStream(path.join(UPLOADS_DIR, `${originalName}-500.jpeg`), { autoClose: true }))
return new Promise((resolve, reject) => {
createReadStream()
.pipe(pipeline)
.on('finish', () => resolve(true))
// eslint-disable-next-line prefer-promise-reject-errors
.on('error', () => reject(false))
})
}
}
A
Д
A
e
e
A
A
Д
A