/
index.js
38 lines (33 loc) · 1.18 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
const firebase = require('./src/firebase.js')
const generateThumbnail = require('./src/generateThumbnail')
const deleteRelatedImg = require('./src/deleteRelatedImg')
const sendContactmail = require('./src/sendContactmail')
const galleryPageOgp = require('./src/galleryPageOgp')
const galleryImageWebp = require('./src/galleryImageWebp')
// create thumbnail and db record when img uploaded
exports.generateThumbnail = firebase.functions.storage.object()
.onFinalize(async storageObject => {
await generateThumbnail(storageObject)
})
// delete img files when db record deleted
exports.deleteRelatedImg = firebase.functions.firestore
.document('imgs/{docs}')
.onDelete(deleteRelatedImg)
// contactmail sending web API
exports.contactmail = firebase.functions
.runWith({timeoutSeconds: 20, memory: '256MB'})
.https
.onRequest(sendContactmail)
// gallery page OGP
exports.galleryPageOgp = firebase.functions
.runWith({timeoutSeconds: 20, memory: '256MB'})
.https
.onRequest((req, res) => {
galleryPageOgp(req, res)
})
exports.galleryImageWebp = firebase.functions
.runWith({timeoutSeconds: 20, memory: '512MB'})
.https
.onRequest((req, res) => {
galleryImageWebp(req, res)
})