@intuitionrobotics/firebase 0.41.68 → 0.41.71

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.
Files changed (48) hide show
  1. package/app-backend/FirebaseModule.js +46 -63
  2. package/app-backend/FirebaseModule.js.map +1 -1
  3. package/app-backend/auth/FirebaseBaseWrapper.d.ts +2 -2
  4. package/app-backend/auth/FirebaseBaseWrapper.js +8 -24
  5. package/app-backend/auth/FirebaseBaseWrapper.js.map +1 -1
  6. package/app-backend/auth/FirebaseSession_Admin.d.ts +4 -6
  7. package/app-backend/auth/FirebaseSession_Admin.js +21 -37
  8. package/app-backend/auth/FirebaseSession_Admin.js.map +1 -1
  9. package/app-backend/auth/firebase-session.d.ts +2 -7
  10. package/app-backend/auth/firebase-session.js +22 -42
  11. package/app-backend/auth/firebase-session.js.map +1 -1
  12. package/app-backend/database/DatabaseWrapper.d.ts +1 -1
  13. package/app-backend/database/DatabaseWrapper.js +91 -195
  14. package/app-backend/database/DatabaseWrapper.js.map +1 -1
  15. package/app-backend/firestore/FirestoreCollection.js +92 -216
  16. package/app-backend/firestore/FirestoreCollection.js.map +1 -1
  17. package/app-backend/firestore/FirestoreInterface.js +30 -34
  18. package/app-backend/firestore/FirestoreInterface.js.map +1 -1
  19. package/app-backend/firestore/FirestoreTransaction.js +125 -321
  20. package/app-backend/firestore/FirestoreTransaction.js.map +1 -1
  21. package/app-backend/firestore/FirestoreWrapper.d.ts +1 -1
  22. package/app-backend/firestore/FirestoreWrapper.js +25 -72
  23. package/app-backend/firestore/FirestoreWrapper.js.map +1 -1
  24. package/app-backend/functions/firebase-function.js +178 -327
  25. package/app-backend/functions/firebase-function.js.map +1 -1
  26. package/app-backend/push/PushMessagesWrapper.d.ts +1 -1
  27. package/app-backend/push/PushMessagesWrapper.js +31 -86
  28. package/app-backend/push/PushMessagesWrapper.js.map +1 -1
  29. package/app-backend/storage/StorageWrapper.d.ts +2 -2
  30. package/app-backend/storage/StorageWrapper.js +166 -347
  31. package/app-backend/storage/StorageWrapper.js.map +1 -1
  32. package/app-frontend/FirebaseModule.js +81 -169
  33. package/app-frontend/FirebaseModule.js.map +1 -1
  34. package/app-frontend/analytics/AnalyticsModule.js +17 -68
  35. package/app-frontend/analytics/AnalyticsModule.js.map +1 -1
  36. package/app-frontend/analytics/AnalyticsWrapper.js +17 -33
  37. package/app-frontend/analytics/AnalyticsWrapper.js.map +1 -1
  38. package/app-frontend/auth/FirebaseSession.js +33 -80
  39. package/app-frontend/auth/FirebaseSession.js.map +1 -1
  40. package/app-frontend/auth/SwFirebaseSession.js +11 -27
  41. package/app-frontend/auth/SwFirebaseSession.js.map +1 -1
  42. package/app-frontend/database/DatabaseWrapper.js +64 -148
  43. package/app-frontend/database/DatabaseWrapper.js.map +1 -1
  44. package/app-frontend/messaging/MessagingWrapper.js +16 -68
  45. package/app-frontend/messaging/MessagingWrapper.js.map +1 -1
  46. package/app-frontend/messaging/SwMessagingWrapper.js +11 -28
  47. package/app-frontend/messaging/SwMessagingWrapper.js.map +1 -1
  48. package/package.json +6 -6
@@ -16,19 +16,6 @@
16
16
  * See the License for the specific language governing permissions and
17
17
  * limitations under the License.
18
18
  */
19
- var __extends = (this && this.__extends) || (function () {
20
- var extendStatics = function (d, b) {
21
- extendStatics = Object.setPrototypeOf ||
22
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
23
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
24
- return extendStatics(d, b);
25
- };
26
- return function (d, b) {
27
- extendStatics(d, b);
28
- function __() { this.constructor = d; }
29
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30
- };
31
- })();
32
19
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
33
20
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
34
21
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -38,380 +25,212 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
38
25
  step((generator = generator.apply(thisArg, _arguments || [])).next());
39
26
  });
40
27
  };
41
- var __generator = (this && this.__generator) || function (thisArg, body) {
42
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
43
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
44
- function verb(n) { return function (v) { return step([n, v]); }; }
45
- function step(op) {
46
- if (f) throw new TypeError("Generator is already executing.");
47
- while (_) try {
48
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
49
- if (y = 0, t) op = [op[0] & 2, t.value];
50
- switch (op[0]) {
51
- case 0: case 1: t = op; break;
52
- case 4: _.label++; return { value: op[1], done: false };
53
- case 5: _.label++; y = op[1]; op = [0]; continue;
54
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
55
- default:
56
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
57
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
58
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
59
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
60
- if (t[2]) _.ops.pop();
61
- _.trys.pop(); continue;
62
- }
63
- op = body.call(thisArg, _);
64
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
65
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
66
- }
67
- };
68
28
  Object.defineProperty(exports, "__esModule", { value: true });
69
29
  exports.FileWrapper = exports.BucketWrapper = exports.StorageWrapper = void 0;
70
- var ts_common_1 = require("@intuitionrobotics/ts-common");
71
- var FirebaseBaseWrapper_1 = require("../auth/FirebaseBaseWrapper");
72
- var storage_1 = require("firebase-admin/storage");
73
- var StorageWrapper = /** @class */ (function (_super) {
74
- __extends(StorageWrapper, _super);
75
- function StorageWrapper(firebaseSession) {
76
- var _this = _super.call(this, firebaseSession) || this;
77
- _this.storage = storage_1.getStorage(firebaseSession.app);
78
- return _this;
30
+ const ts_common_1 = require("@intuitionrobotics/ts-common");
31
+ const FirebaseBaseWrapper_1 = require("../auth/FirebaseBaseWrapper");
32
+ const storage_1 = require("firebase-admin/storage");
33
+ class StorageWrapper extends FirebaseBaseWrapper_1.FirebaseBaseWrapper {
34
+ constructor(firebaseSession) {
35
+ super(firebaseSession);
36
+ this.storage = storage_1.getStorage(firebaseSession.app);
79
37
  }
80
- StorageWrapper.prototype.getOrCreateBucket = function (bucketName) {
81
- return __awaiter(this, void 0, void 0, function () {
82
- var _bucketName, bucket;
83
- return __generator(this, function (_a) {
84
- switch (_a.label) {
85
- case 0:
86
- _bucketName = bucketName;
87
- if (!_bucketName)
88
- _bucketName = "gs://" + this.firebaseSession.getProjectId() + ".appspot.com";
89
- if (!_bucketName.startsWith("gs://"))
90
- throw new ts_common_1.BadImplementationException("Bucket name MUST start with 'gs://'");
91
- return [4 /*yield*/, this.storage.bucket(_bucketName).get({ autoCreate: true })];
92
- case 1:
93
- bucket = (_a.sent())[0];
94
- // @ts-ignore
95
- return [2 /*return*/, new BucketWrapper(_bucketName, bucket, this)];
96
- }
97
- });
38
+ getOrCreateBucket(bucketName) {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ let _bucketName = bucketName;
41
+ if (!_bucketName)
42
+ _bucketName = `gs://${this.firebaseSession.getProjectId()}.appspot.com`;
43
+ if (!_bucketName.startsWith("gs://"))
44
+ throw new ts_common_1.BadImplementationException("Bucket name MUST start with 'gs://'");
45
+ const bucket = (yield this.storage.bucket(_bucketName).get({ autoCreate: true }))[0];
46
+ // @ts-ignore
47
+ return new BucketWrapper(_bucketName, bucket, this);
98
48
  });
99
- };
100
- return StorageWrapper;
101
- }(FirebaseBaseWrapper_1.FirebaseBaseWrapper));
49
+ }
50
+ }
102
51
  exports.StorageWrapper = StorageWrapper;
103
- var BucketWrapper = /** @class */ (function () {
104
- function BucketWrapper(bucketName, bucket, storage) {
52
+ class BucketWrapper {
53
+ constructor(bucketName, bucket, storage) {
105
54
  this.bucketName = bucketName;
106
55
  this.bucket = bucket;
107
56
  this.storage = storage;
108
57
  }
109
- BucketWrapper.prototype.getFile = function (pathToRemoteFile) {
110
- return __awaiter(this, void 0, void 0, function () {
111
- var _a, _b;
112
- return __generator(this, function (_c) {
113
- switch (_c.label) {
114
- case 0:
115
- _a = FileWrapper.bind;
116
- _b = [void 0, pathToRemoteFile];
117
- return [4 /*yield*/, this.bucket.file(pathToRemoteFile)];
118
- case 1:
119
- // @ts-ignore
120
- return [2 /*return*/, new (_a.apply(FileWrapper, _b.concat([_c.sent(), this])))()];
121
- }
122
- });
58
+ getFile(pathToRemoteFile) {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ // @ts-ignore
61
+ return new FileWrapper(pathToRemoteFile, yield this.bucket.file(pathToRemoteFile), this);
123
62
  });
124
- };
125
- BucketWrapper.prototype.listFiles = function (folder, filter) {
126
- if (folder === void 0) { folder = ""; }
127
- if (filter === void 0) { filter = function () { return true; }; }
128
- return __awaiter(this, void 0, void 0, function () {
129
- var filteredFiles;
130
- var _this = this;
131
- return __generator(this, function (_a) {
132
- switch (_a.label) {
133
- case 0:
134
- filteredFiles = [];
135
- return [4 /*yield*/, this.iterateOverFiles(folder, filter, function (file) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
136
- return [2 /*return*/, filteredFiles.push(file)];
137
- }); }); })];
138
- case 1:
139
- _a.sent();
140
- return [2 /*return*/, filteredFiles];
141
- }
142
- });
63
+ }
64
+ listFiles(folder = "", filter = () => true) {
65
+ return __awaiter(this, void 0, void 0, function* () {
66
+ const filteredFiles = [];
67
+ yield this.iterateOverFiles(folder, filter, (file) => __awaiter(this, void 0, void 0, function* () { return filteredFiles.push(file); }));
68
+ return filteredFiles;
143
69
  });
144
- };
145
- BucketWrapper.prototype.deleteFiles = function (folder, filter) {
146
- if (folder === void 0) { folder = ""; }
147
- if (filter === void 0) { filter = function () { return true; }; }
148
- return __awaiter(this, void 0, void 0, function () {
149
- return __generator(this, function (_a) {
150
- switch (_a.label) {
151
- case 0: return [4 /*yield*/, this.iterateOverFiles(folder, filter, function (file) { return file.delete(); })];
152
- case 1:
153
- _a.sent();
154
- return [2 /*return*/];
155
- }
156
- });
70
+ }
71
+ deleteFiles(folder = "", filter = () => true) {
72
+ return __awaiter(this, void 0, void 0, function* () {
73
+ yield this.iterateOverFiles(folder, filter, (file) => file.delete());
157
74
  });
158
- };
159
- BucketWrapper.prototype.iterateOverFiles = function (folder, filter, action) {
160
- return __awaiter(this, void 0, void 0, function () {
161
- var _this = this;
162
- return __generator(this, function (_a) {
163
- return [2 /*return*/, new Promise(function (resolve, reject) {
164
- var callback = function (err, files, nextQuery) { return __awaiter(_this, void 0, void 0, function () {
165
- return __generator(this, function (_a) {
166
- switch (_a.label) {
167
- case 0:
168
- if (err)
169
- return [2 /*return*/, reject(err)];
170
- if (!files) return [3 /*break*/, 2];
171
- return [4 /*yield*/, Promise.all(files.filter(filter).map(function (file) { return action(file); }))];
172
- case 1:
173
- _a.sent();
174
- _a.label = 2;
175
- case 2:
176
- if (!nextQuery)
177
- return [2 /*return*/, resolve()];
178
- this.bucket.getFiles(nextQuery, callback);
179
- return [2 /*return*/];
180
- }
181
- });
182
- }); };
183
- _this.bucket.getFiles({
184
- prefix: folder,
185
- autoPaginate: false
186
- }, callback);
187
- })];
75
+ }
76
+ iterateOverFiles(folder, filter, action) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ return new Promise((resolve, reject) => {
79
+ const callback = (err, files, nextQuery) => __awaiter(this, void 0, void 0, function* () {
80
+ if (err)
81
+ return reject(err);
82
+ if (files) {
83
+ yield Promise.all(files.filter(filter).map(file => action(file)));
84
+ }
85
+ if (!nextQuery)
86
+ return resolve();
87
+ this.bucket.getFiles(nextQuery, callback);
88
+ });
89
+ this.bucket.getFiles({
90
+ prefix: folder,
91
+ autoPaginate: false
92
+ }, callback);
188
93
  });
189
94
  });
190
- };
191
- return BucketWrapper;
192
- }());
95
+ }
96
+ }
193
97
  exports.BucketWrapper = BucketWrapper;
194
- var FileWrapper = /** @class */ (function () {
195
- function FileWrapper(path, file, bucket) {
98
+ class FileWrapper {
99
+ constructor(path, file, bucket) {
196
100
  this.file = file;
197
101
  this.bucket = bucket;
198
102
  this.path = path;
199
103
  }
200
- FileWrapper.prototype.getWriteSecuredUrl = function (contentType, expiresInMs) {
201
- return __awaiter(this, void 0, void 0, function () {
202
- var options;
203
- return __generator(this, function (_a) {
204
- options = {
205
- action: 'write',
206
- contentType: contentType,
207
- expires: ts_common_1.currentTimeMillies() + expiresInMs,
208
- };
209
- return [2 /*return*/, this.getSignedUrl(options)];
210
- });
104
+ getWriteSecuredUrl(contentType, expiresInMs) {
105
+ return __awaiter(this, void 0, void 0, function* () {
106
+ const options = {
107
+ action: 'write',
108
+ contentType: contentType,
109
+ expires: ts_common_1.currentTimeMillies() + expiresInMs,
110
+ };
111
+ return this.getSignedUrl(options);
211
112
  });
212
- };
213
- FileWrapper.prototype.getReadSecuredUrl = function (contentType, expiresInMs) {
214
- return __awaiter(this, void 0, void 0, function () {
215
- var options;
216
- return __generator(this, function (_a) {
217
- options = {
218
- action: 'read',
219
- expires: ts_common_1.currentTimeMillies() + expiresInMs,
220
- };
221
- return [2 /*return*/, this.getSignedUrl(options)];
222
- });
113
+ }
114
+ getReadSecuredUrl(contentType, expiresInMs) {
115
+ return __awaiter(this, void 0, void 0, function* () {
116
+ const options = {
117
+ action: 'read',
118
+ expires: ts_common_1.currentTimeMillies() + expiresInMs,
119
+ };
120
+ return this.getSignedUrl(options);
223
121
  });
224
- };
225
- FileWrapper.prototype.exists = function () {
226
- return __awaiter(this, void 0, void 0, function () {
227
- return __generator(this, function (_a) {
228
- switch (_a.label) {
229
- case 0: return [4 /*yield*/, this.file.exists()];
230
- case 1: return [2 /*return*/, (_a.sent())[0]];
231
- }
232
- });
122
+ }
123
+ exists() {
124
+ return __awaiter(this, void 0, void 0, function* () {
125
+ return (yield this.file.exists())[0];
233
126
  });
234
- };
235
- FileWrapper.prototype.write = function (data) {
236
- return __awaiter(this, void 0, void 0, function () {
237
- return __generator(this, function (_a) {
238
- if (Buffer.isBuffer(data))
239
- return [2 /*return*/, this.file.save(data)];
240
- switch (typeof data) {
241
- case "function":
242
- case "symbol":
243
- case "bigint":
244
- case "undefined":
245
- throw new ts_common_1.BadImplementationException("Cannot save file: " + this.file.name + ", data is " + typeof data);
246
- case "object":
247
- return [2 /*return*/, this.file.save(JSON.stringify(data))];
248
- case "boolean":
249
- case "number":
250
- case "string":
251
- return [2 /*return*/, this.file.save("" + data)];
252
- }
253
- return [2 /*return*/];
254
- });
127
+ }
128
+ write(data) {
129
+ return __awaiter(this, void 0, void 0, function* () {
130
+ if (Buffer.isBuffer(data))
131
+ return this.file.save(data);
132
+ switch (typeof data) {
133
+ case "function":
134
+ case "symbol":
135
+ case "bigint":
136
+ case "undefined":
137
+ throw new ts_common_1.BadImplementationException(`Cannot save file: ${this.file.name}, data is ${typeof data}`);
138
+ case "object":
139
+ return this.file.save(JSON.stringify(data));
140
+ case "boolean":
141
+ case "number":
142
+ case "string":
143
+ return this.file.save(`${data}`);
144
+ }
255
145
  });
256
- };
257
- FileWrapper.prototype.read = function () {
258
- return __awaiter(this, void 0, void 0, function () {
259
- var downloadResponse;
260
- return __generator(this, function (_a) {
261
- switch (_a.label) {
262
- case 0: return [4 /*yield*/, this.file.download()];
263
- case 1:
264
- downloadResponse = _a.sent();
265
- return [2 /*return*/, downloadResponse[0]];
266
- }
267
- });
146
+ }
147
+ read() {
148
+ return __awaiter(this, void 0, void 0, function* () {
149
+ const downloadResponse = yield this.file.download();
150
+ return downloadResponse[0];
268
151
  });
269
- };
270
- FileWrapper.prototype.copy = function (destination) {
271
- return __awaiter(this, void 0, void 0, function () {
272
- var copy;
273
- return __generator(this, function (_a) {
274
- switch (_a.label) {
275
- case 0: return [4 /*yield*/, this.copyImpl(destination)];
276
- case 1:
277
- copy = _a.sent();
278
- return [2 /*return*/, copy[0]];
279
- }
280
- });
152
+ }
153
+ copy(destination) {
154
+ return __awaiter(this, void 0, void 0, function* () {
155
+ const copy = yield this.copyImpl(destination);
156
+ return copy[0];
281
157
  });
282
- };
283
- FileWrapper.prototype.copyImpl = function (destination) {
158
+ }
159
+ copyImpl(destination) {
284
160
  if (typeof destination === "string")
285
161
  return this.file.copy(destination);
286
- var bucketWrapper = destination instanceof FileWrapper ? destination.bucket : destination;
162
+ const bucketWrapper = destination instanceof FileWrapper ? destination.bucket : destination;
287
163
  if (this.bucket.storage.firebaseSession !== bucketWrapper.storage.firebaseSession)
288
164
  return this.copyByStream(destination);
289
165
  if (destination instanceof FileWrapper)
290
166
  return this.file.copy(destination.file);
291
167
  return this.file.copy(destination.bucket);
292
- };
293
- FileWrapper.prototype.copyByStream = function (destination) {
294
- return __awaiter(this, void 0, void 0, function () {
295
- var destinationFile, _a;
296
- var _this = this;
297
- return __generator(this, function (_b) {
298
- switch (_b.label) {
299
- case 0:
300
- if (!(destination instanceof FileWrapper)) return [3 /*break*/, 1];
301
- _a = destination.file;
302
- return [3 /*break*/, 3];
303
- case 1: return [4 /*yield*/, destination.getFile(this.path)];
304
- case 2:
305
- _a = (_b.sent()).file;
306
- _b.label = 3;
307
- case 3:
308
- destinationFile = _a;
309
- return [2 /*return*/, new Promise(function (resolve, reject) {
310
- _this
311
- .file
312
- .createReadStream()
313
- .pipe(destinationFile
314
- .createWriteStream()
315
- .on('error', reject)
316
- .on('finish', function () { return resolve([destinationFile, undefined]); }))
317
- .on('error', reject);
318
- })];
319
- }
168
+ }
169
+ copyByStream(destination) {
170
+ return __awaiter(this, void 0, void 0, function* () {
171
+ const destinationFile = destination instanceof FileWrapper ? destination.file : (yield destination.getFile(this.path)).file;
172
+ return new Promise((resolve, reject) => {
173
+ this
174
+ .file
175
+ .createReadStream()
176
+ .pipe(destinationFile
177
+ .createWriteStream()
178
+ .on('error', reject)
179
+ .on('finish', () => resolve([destinationFile, undefined])))
180
+ .on('error', reject);
320
181
  });
321
182
  });
322
- };
323
- FileWrapper.prototype.move = function (destination) {
324
- return __awaiter(this, void 0, void 0, function () {
325
- var file, e_1, err_1;
326
- return __generator(this, function (_a) {
327
- switch (_a.label) {
328
- case 0: return [4 /*yield*/, this.copy(destination)];
329
- case 1:
330
- file = _a.sent();
331
- _a.label = 2;
332
- case 2:
333
- _a.trys.push([2, 4, , 9]);
334
- return [4 /*yield*/, this.delete()];
335
- case 3:
336
- _a.sent();
337
- return [3 /*break*/, 9];
338
- case 4:
339
- e_1 = _a.sent();
340
- _a.label = 5;
341
- case 5:
342
- _a.trys.push([5, 7, , 8]);
343
- return [4 /*yield*/, file.delete()];
344
- case 6:
345
- _a.sent();
346
- return [3 /*break*/, 8];
347
- case 7:
348
- err_1 = _a.sent();
349
- throw new ts_common_1.ThisShouldNotHappenException('Error during the deletion of the recently copied file, check the attached error', err_1);
350
- case 8: throw new ts_common_1.BadImplementationException('Error during the deletion of the file after a successful copy, attached error stack', e_1);
351
- case 9: return [2 /*return*/];
183
+ }
184
+ move(destination) {
185
+ return __awaiter(this, void 0, void 0, function* () {
186
+ const file = yield this.copy(destination);
187
+ try {
188
+ yield this.delete();
189
+ }
190
+ catch (e) {
191
+ try {
192
+ yield file.delete();
352
193
  }
353
- });
354
- });
355
- };
356
- FileWrapper.prototype.delete = function () {
357
- return __awaiter(this, void 0, void 0, function () {
358
- return __generator(this, function (_a) {
359
- switch (_a.label) {
360
- case 0: return [4 /*yield*/, this.file.exists()];
361
- case 1:
362
- if (!(_a.sent()))
363
- return [2 /*return*/];
364
- return [2 /*return*/, this.file.delete()];
194
+ catch (err) {
195
+ throw new ts_common_1.ThisShouldNotHappenException('Error during the deletion of the recently copied file, check the attached error', err);
365
196
  }
366
- });
197
+ throw new ts_common_1.BadImplementationException('Error during the deletion of the file after a successful copy, attached error stack', e);
198
+ }
367
199
  });
368
- };
369
- FileWrapper.prototype.getSignedUrl = function (options) {
370
- return __awaiter(this, void 0, void 0, function () {
371
- var results, url;
372
- return __generator(this, function (_a) {
373
- switch (_a.label) {
374
- case 0: return [4 /*yield*/, this.file.getSignedUrl(options)];
375
- case 1:
376
- results = _a.sent();
377
- url = results[0];
378
- return [2 /*return*/, {
379
- fileName: this.path,
380
- securedUrl: url,
381
- publicUrl: encodeURI("https://storage.googleapis.com/" + this.bucket.bucketName.replace("gs://", '') + this.path)
382
- }];
383
- }
384
- });
200
+ }
201
+ delete() {
202
+ return __awaiter(this, void 0, void 0, function* () {
203
+ if (!(yield this.file.exists()))
204
+ return;
205
+ return this.file.delete();
385
206
  });
386
- };
387
- FileWrapper.prototype.makePublic = function () {
388
- return __awaiter(this, void 0, void 0, function () {
389
- return __generator(this, function (_a) {
390
- return [2 /*return*/, this.file.makePublic()];
391
- });
207
+ }
208
+ getSignedUrl(options) {
209
+ return __awaiter(this, void 0, void 0, function* () {
210
+ const results = yield this.file.getSignedUrl(options);
211
+ const url = results[0];
212
+ return {
213
+ fileName: this.path,
214
+ securedUrl: url,
215
+ publicUrl: encodeURI(`https://storage.googleapis.com/${this.bucket.bucketName.replace(`gs://`, '')}${this.path}`)
216
+ };
392
217
  });
393
- };
394
- FileWrapper.prototype.setMetadata = function (metadata, options) {
395
- return __awaiter(this, void 0, void 0, function () {
396
- return __generator(this, function (_a) {
397
- switch (_a.label) {
398
- case 0: return [4 /*yield*/, this.file.setMetadata({ metadata: metadata }, options)];
399
- case 1: return [2 /*return*/, (_a.sent())[0]];
400
- }
401
- });
218
+ }
219
+ makePublic() {
220
+ return __awaiter(this, void 0, void 0, function* () {
221
+ return this.file.makePublic();
402
222
  });
403
- };
404
- FileWrapper.prototype.getMetadata = function (options) {
405
- return __awaiter(this, void 0, void 0, function () {
406
- return __generator(this, function (_a) {
407
- switch (_a.label) {
408
- case 0: return [4 /*yield*/, this.file.getMetadata(options)];
409
- case 1: return [2 /*return*/, (_a.sent())[0]];
410
- }
411
- });
223
+ }
224
+ setMetadata(metadata, options) {
225
+ return __awaiter(this, void 0, void 0, function* () {
226
+ return (yield this.file.setMetadata({ metadata }, options))[0];
412
227
  });
413
- };
414
- return FileWrapper;
415
- }());
228
+ }
229
+ getMetadata(options) {
230
+ return __awaiter(this, void 0, void 0, function* () {
231
+ return (yield this.file.getMetadata(options))[0];
232
+ });
233
+ }
234
+ }
416
235
  exports.FileWrapper = FileWrapper;
417
236
  //# sourceMappingURL=StorageWrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StorageWrapper.js","sourceRoot":"","sources":["../../../src/main/app-backend/storage/StorageWrapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StorageWrapper.js","sourceRoot":"","sources":["../../../src/main/app-backend/storage/StorageWrapper.ts"],"names":[],"mappings":"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"}