@edgedev/firebase 2.1.55 → 2.1.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/edgeFirebase.js +17 -3
- package/src/package.json +1 -0
package/package.json
CHANGED
package/src/edgeFirebase.js
CHANGED
|
@@ -75,8 +75,14 @@ const deleteR2File = async (filePath) => {
|
|
|
75
75
|
exports.fileDeleted = onObjectDeleted({ region: process.env.FIREBASE_STORAGE_BUCKET_REGION }, async (event) => {
|
|
76
76
|
const docId = event.data.metadata?.fileDocId
|
|
77
77
|
const toR2 = event.data.metadata?.toR2
|
|
78
|
+
const r2ProcessCompleted = event.data.metadata?.r2ProcessCompleted
|
|
78
79
|
if (toR2) {
|
|
79
|
-
|
|
80
|
+
if (r2ProcessCompleted === 'true') {
|
|
81
|
+
await deleteR2File(event.data.metadata?.r2FilePath)
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
return
|
|
85
|
+
}
|
|
80
86
|
}
|
|
81
87
|
if (docId) {
|
|
82
88
|
const orgId = event.data.metadata?.orgId
|
|
@@ -127,14 +133,13 @@ exports.toR2 = onObjectFinalized(
|
|
|
127
133
|
Body: file,
|
|
128
134
|
ContentType: contentType,
|
|
129
135
|
}
|
|
136
|
+
const fileRef = bucket.file(filePath)
|
|
130
137
|
try {
|
|
131
138
|
await r2.upload(params).promise()
|
|
132
139
|
const fileDocId = event.data.metadata?.fileDocId
|
|
133
140
|
const orgId = event.data.metadata?.orgId
|
|
134
141
|
const docRef = db.collection(`organizations/${orgId}/files`).doc(fileDocId)
|
|
135
142
|
await docRef.set({ r2FilePath, r2URL, uploadCompletedToR2: true }, { merge: true })
|
|
136
|
-
const fileRef = bucket.file(filePath)
|
|
137
|
-
|
|
138
143
|
const blankBuffer = Buffer.from('')
|
|
139
144
|
await fileRef.save(blankBuffer, {
|
|
140
145
|
contentType: 'application/octet-stream',
|
|
@@ -147,6 +152,7 @@ exports.toR2 = onObjectFinalized(
|
|
|
147
152
|
r2FilePath,
|
|
148
153
|
r2URL,
|
|
149
154
|
uploadCompletedToR2: 'true', // Add custom metadata after file save
|
|
155
|
+
r2ProcessCompleted: 'true',
|
|
150
156
|
},
|
|
151
157
|
}
|
|
152
158
|
|
|
@@ -154,6 +160,14 @@ exports.toR2 = onObjectFinalized(
|
|
|
154
160
|
console.log(`File uploaded to Cloudflare R2: ${fileName}`)
|
|
155
161
|
}
|
|
156
162
|
catch (error) {
|
|
163
|
+
const updatedMetadata = {
|
|
164
|
+
metadata: {
|
|
165
|
+
...event.data.metadata,
|
|
166
|
+
uploadCompletedToR2: 'false',
|
|
167
|
+
r2ProcessCompleted: 'true',
|
|
168
|
+
},
|
|
169
|
+
}
|
|
170
|
+
await fileRef.setMetadata(updatedMetadata)
|
|
157
171
|
console.error('Error uploading file to Cloudflare R2:', error)
|
|
158
172
|
}
|
|
159
173
|
}
|