@firebase/messaging 0.9.12 → 0.9.13
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/CHANGELOG.md +11 -0
- package/dist/esm/index.esm.js +90 -85
- package/dist/esm/index.esm.js.map +1 -1
- package/dist/esm/index.esm2017.js +77 -72
- package/dist/esm/index.esm2017.js.map +1 -1
- package/dist/index.cjs.js +92 -87
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.sw.cjs +91 -86
- package/dist/index.sw.cjs.map +1 -1
- package/dist/index.sw.esm2017.js +76 -71
- package/dist/index.sw.esm2017.js.map +1 -1
- package/package.json +6 -5
package/dist/index.sw.cjs
CHANGED
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
require('@firebase/installations');
|
|
6
6
|
var component = require('@firebase/component');
|
|
7
7
|
var tslib = require('tslib');
|
|
8
|
+
var idb = require('idb');
|
|
8
9
|
var util = require('@firebase/util');
|
|
9
10
|
var app = require('@firebase/app');
|
|
10
11
|
|
|
@@ -134,94 +135,96 @@ function migrateOldDatabase(senderId) {
|
|
|
134
135
|
_a.label = 2;
|
|
135
136
|
case 2:
|
|
136
137
|
tokenDetails = null;
|
|
137
|
-
return [4 /*yield*/,
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
}
|
|
147
|
-
if (!db.objectStoreNames.contains(OLD_OBJECT_STORE_NAME)) {
|
|
148
|
-
// Database did not exist. Nothing to do.
|
|
149
|
-
return [2 /*return*/];
|
|
150
|
-
}
|
|
151
|
-
objectStore = upgradeTransaction.objectStore(OLD_OBJECT_STORE_NAME);
|
|
152
|
-
return [4 /*yield*/, objectStore.index('fcmSenderId').get(senderId)];
|
|
153
|
-
case 1:
|
|
154
|
-
value = _b.sent();
|
|
155
|
-
return [4 /*yield*/, objectStore.clear()];
|
|
156
|
-
case 2:
|
|
157
|
-
_b.sent();
|
|
158
|
-
if (!value) {
|
|
159
|
-
// No entry in the database, nothing to migrate.
|
|
160
|
-
return [2 /*return*/];
|
|
161
|
-
}
|
|
162
|
-
if (oldVersion === 2) {
|
|
163
|
-
oldDetails = value;
|
|
164
|
-
if (!oldDetails.auth || !oldDetails.p256dh || !oldDetails.endpoint) {
|
|
138
|
+
return [4 /*yield*/, idb.openDB(OLD_DB_NAME, OLD_DB_VERSION, {
|
|
139
|
+
upgrade: function (db, oldVersion, newVersion, upgradeTransaction) { return tslib.__awaiter(_this, void 0, void 0, function () {
|
|
140
|
+
var objectStore, value, oldDetails, oldDetails, oldDetails;
|
|
141
|
+
var _a;
|
|
142
|
+
return tslib.__generator(this, function (_b) {
|
|
143
|
+
switch (_b.label) {
|
|
144
|
+
case 0:
|
|
145
|
+
if (oldVersion < 2) {
|
|
146
|
+
// Database too old, skip migration.
|
|
165
147
|
return [2 /*return*/];
|
|
166
148
|
}
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
subscriptionOptions: {
|
|
187
|
-
auth: arrayToBase64(oldDetails.auth),
|
|
188
|
-
p256dh: arrayToBase64(oldDetails.p256dh),
|
|
189
|
-
endpoint: oldDetails.endpoint,
|
|
190
|
-
swScope: oldDetails.swScope,
|
|
191
|
-
vapidKey: arrayToBase64(oldDetails.vapidKey)
|
|
192
|
-
}
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
else if (oldVersion === 4) {
|
|
196
|
-
oldDetails = value;
|
|
197
|
-
tokenDetails = {
|
|
198
|
-
token: oldDetails.fcmToken,
|
|
199
|
-
createTime: oldDetails.createTime,
|
|
200
|
-
subscriptionOptions: {
|
|
201
|
-
auth: arrayToBase64(oldDetails.auth),
|
|
202
|
-
p256dh: arrayToBase64(oldDetails.p256dh),
|
|
203
|
-
endpoint: oldDetails.endpoint,
|
|
204
|
-
swScope: oldDetails.swScope,
|
|
205
|
-
vapidKey: arrayToBase64(oldDetails.vapidKey)
|
|
149
|
+
if (!db.objectStoreNames.contains(OLD_OBJECT_STORE_NAME)) {
|
|
150
|
+
// Database did not exist. Nothing to do.
|
|
151
|
+
return [2 /*return*/];
|
|
152
|
+
}
|
|
153
|
+
objectStore = upgradeTransaction.objectStore(OLD_OBJECT_STORE_NAME);
|
|
154
|
+
return [4 /*yield*/, objectStore.index('fcmSenderId').get(senderId)];
|
|
155
|
+
case 1:
|
|
156
|
+
value = _b.sent();
|
|
157
|
+
return [4 /*yield*/, objectStore.clear()];
|
|
158
|
+
case 2:
|
|
159
|
+
_b.sent();
|
|
160
|
+
if (!value) {
|
|
161
|
+
// No entry in the database, nothing to migrate.
|
|
162
|
+
return [2 /*return*/];
|
|
163
|
+
}
|
|
164
|
+
if (oldVersion === 2) {
|
|
165
|
+
oldDetails = value;
|
|
166
|
+
if (!oldDetails.auth || !oldDetails.p256dh || !oldDetails.endpoint) {
|
|
167
|
+
return [2 /*return*/];
|
|
206
168
|
}
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
169
|
+
tokenDetails = {
|
|
170
|
+
token: oldDetails.fcmToken,
|
|
171
|
+
createTime: (_a = oldDetails.createTime) !== null && _a !== void 0 ? _a : Date.now(),
|
|
172
|
+
subscriptionOptions: {
|
|
173
|
+
auth: oldDetails.auth,
|
|
174
|
+
p256dh: oldDetails.p256dh,
|
|
175
|
+
endpoint: oldDetails.endpoint,
|
|
176
|
+
swScope: oldDetails.swScope,
|
|
177
|
+
vapidKey: typeof oldDetails.vapidKey === 'string'
|
|
178
|
+
? oldDetails.vapidKey
|
|
179
|
+
: arrayToBase64(oldDetails.vapidKey)
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
else if (oldVersion === 3) {
|
|
184
|
+
oldDetails = value;
|
|
185
|
+
tokenDetails = {
|
|
186
|
+
token: oldDetails.fcmToken,
|
|
187
|
+
createTime: oldDetails.createTime,
|
|
188
|
+
subscriptionOptions: {
|
|
189
|
+
auth: arrayToBase64(oldDetails.auth),
|
|
190
|
+
p256dh: arrayToBase64(oldDetails.p256dh),
|
|
191
|
+
endpoint: oldDetails.endpoint,
|
|
192
|
+
swScope: oldDetails.swScope,
|
|
193
|
+
vapidKey: arrayToBase64(oldDetails.vapidKey)
|
|
194
|
+
}
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
else if (oldVersion === 4) {
|
|
198
|
+
oldDetails = value;
|
|
199
|
+
tokenDetails = {
|
|
200
|
+
token: oldDetails.fcmToken,
|
|
201
|
+
createTime: oldDetails.createTime,
|
|
202
|
+
subscriptionOptions: {
|
|
203
|
+
auth: arrayToBase64(oldDetails.auth),
|
|
204
|
+
p256dh: arrayToBase64(oldDetails.p256dh),
|
|
205
|
+
endpoint: oldDetails.endpoint,
|
|
206
|
+
swScope: oldDetails.swScope,
|
|
207
|
+
vapidKey: arrayToBase64(oldDetails.vapidKey)
|
|
208
|
+
}
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
return [2 /*return*/];
|
|
212
|
+
}
|
|
213
|
+
});
|
|
214
|
+
}); }
|
|
215
|
+
})];
|
|
213
216
|
case 3:
|
|
214
217
|
db = _a.sent();
|
|
215
218
|
db.close();
|
|
216
219
|
// Delete all old databases.
|
|
217
|
-
return [4 /*yield*/,
|
|
220
|
+
return [4 /*yield*/, idb.deleteDB(OLD_DB_NAME)];
|
|
218
221
|
case 4:
|
|
219
222
|
// Delete all old databases.
|
|
220
223
|
_a.sent();
|
|
221
|
-
return [4 /*yield*/,
|
|
224
|
+
return [4 /*yield*/, idb.deleteDB('fcm_vapid_details_db')];
|
|
222
225
|
case 5:
|
|
223
226
|
_a.sent();
|
|
224
|
-
return [4 /*yield*/,
|
|
227
|
+
return [4 /*yield*/, idb.deleteDB('undefined')];
|
|
225
228
|
case 6:
|
|
226
229
|
_a.sent();
|
|
227
230
|
return [2 /*return*/, checkTokenDetails(tokenDetails) ? tokenDetails : null];
|
|
@@ -273,14 +276,16 @@ var OBJECT_STORE_NAME = 'firebase-messaging-store';
|
|
|
273
276
|
var dbPromise = null;
|
|
274
277
|
function getDbPromise() {
|
|
275
278
|
if (!dbPromise) {
|
|
276
|
-
dbPromise =
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
279
|
+
dbPromise = idb.openDB(DATABASE_NAME, DATABASE_VERSION, {
|
|
280
|
+
upgrade: function (upgradeDb, oldVersion) {
|
|
281
|
+
// We don't use 'break' in this switch statement, the fall-through behavior is what we want,
|
|
282
|
+
// because if there are multiple versions between the old version and the current version, we
|
|
283
|
+
// want ALL the migrations that correspond to those versions to run, not only the last one.
|
|
284
|
+
// eslint-disable-next-line default-case
|
|
285
|
+
switch (oldVersion) {
|
|
286
|
+
case 0:
|
|
287
|
+
upgradeDb.createObjectStore(OBJECT_STORE_NAME);
|
|
288
|
+
}
|
|
284
289
|
}
|
|
285
290
|
});
|
|
286
291
|
}
|
|
@@ -333,7 +338,7 @@ function dbSet(firebaseDependencies, tokenDetails) {
|
|
|
333
338
|
return [4 /*yield*/, tx.objectStore(OBJECT_STORE_NAME).put(tokenDetails, key)];
|
|
334
339
|
case 2:
|
|
335
340
|
_a.sent();
|
|
336
|
-
return [4 /*yield*/, tx.
|
|
341
|
+
return [4 /*yield*/, tx.done];
|
|
337
342
|
case 3:
|
|
338
343
|
_a.sent();
|
|
339
344
|
return [2 /*return*/, tokenDetails];
|
|
@@ -356,7 +361,7 @@ function dbRemove(firebaseDependencies) {
|
|
|
356
361
|
return [4 /*yield*/, tx.objectStore(OBJECT_STORE_NAME).delete(key)];
|
|
357
362
|
case 2:
|
|
358
363
|
_a.sent();
|
|
359
|
-
return [4 /*yield*/, tx.
|
|
364
|
+
return [4 /*yield*/, tx.done];
|
|
360
365
|
case 3:
|
|
361
366
|
_a.sent();
|
|
362
367
|
return [2 /*return*/];
|