@serve.zone/dcrouter 17.7.1 → 17.8.0
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/deno.json +1 -1
- package/dist_serve/bundle.js +410 -410
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/classes.dcrouter.d.ts +2 -0
- package/dist_ts/classes.dcrouter.js +23 -1
- package/dist_ts/config/classes.gateway-client-manager.js +3 -1
- package/dist_ts/db/documents/classes.cached.email.d.ts +7 -0
- package/dist_ts/db/documents/classes.cached.email.js +52 -2
- package/dist_ts/db/documents/classes.webpush-admission.doc.d.ts +19 -0
- package/dist_ts/db/documents/classes.webpush-admission.doc.js +124 -0
- package/dist_ts/db/documents/classes.webpush-binding.doc.d.ts +65 -0
- package/dist_ts/db/documents/classes.webpush-binding.doc.js +205 -0
- package/dist_ts/db/documents/classes.webpush-spool.doc.d.ts +44 -0
- package/dist_ts/db/documents/classes.webpush-spool.doc.js +277 -0
- package/dist_ts/db/documents/index.d.ts +3 -0
- package/dist_ts/db/documents/index.js +5 -1
- package/dist_ts/email/classes.accepted-email-spool.d.ts +5 -0
- package/dist_ts/email/classes.accepted-email-spool.js +28 -3
- package/dist_ts/email/classes.workapp-mail-manager.d.ts +5 -1
- package/dist_ts/email/classes.workapp-mail-manager.js +87 -12
- package/dist_ts/index.d.ts +1 -0
- package/dist_ts/index.js +3 -1
- package/dist_ts/opsserver/classes.opsserver.d.ts +2 -0
- package/dist_ts/opsserver/classes.opsserver.js +5 -1
- package/dist_ts/opsserver/handlers/gatewayclient.handler.js +11 -5
- package/dist_ts/opsserver/handlers/index.d.ts +2 -0
- package/dist_ts/opsserver/handlers/index.js +3 -1
- package/dist_ts/opsserver/handlers/webpush-app.handler.d.ts +9 -0
- package/dist_ts/opsserver/handlers/webpush-app.handler.js +66 -0
- package/dist_ts/opsserver/handlers/webpush-control.handler.d.ts +14 -0
- package/dist_ts/opsserver/handlers/webpush-control.handler.js +163 -0
- package/dist_ts/plugins.d.ts +5 -2
- package/dist_ts/plugins.js +6 -3
- package/dist_ts/webpush/classes.webpush-crypto.d.ts +38 -0
- package/dist_ts/webpush/classes.webpush-crypto.js +231 -0
- package/dist_ts/webpush/classes.webpush-manager.d.ts +153 -0
- package/dist_ts/webpush/classes.webpush-manager.js +2374 -0
- package/dist_ts/webpush/classes.webpush-transport.d.ts +45 -0
- package/dist_ts/webpush/classes.webpush-transport.js +161 -0
- package/dist_ts/webpush/helpers.webpush-endpoint.d.ts +21 -0
- package/dist_ts/webpush/helpers.webpush-endpoint.js +111 -0
- package/dist_ts/webpush/index.d.ts +4 -0
- package/dist_ts/webpush/index.js +5 -0
- package/dist_ts/webpush/webpush-indexes.d.ts +11 -0
- package/dist_ts/webpush/webpush-indexes.js +123 -0
- package/dist_ts_interfaces/data/route-management.d.ts +2 -0
- package/dist_ts_interfaces/data/route-management.js +1 -1
- package/dist_ts_migrations/index.js +221 -11
- package/dist_ts_web/00_commitinfo_data.js +1 -1
- package/package.json +12 -8
- package/readme.md +27 -0
- package/third-party-notices.md +37 -0
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/classes.dcrouter.ts +29 -0
- package/ts/config/classes.gateway-client-manager.ts +2 -0
- package/ts/db/documents/classes.cached.email.ts +47 -0
- package/ts/db/documents/classes.webpush-admission.doc.ts +48 -0
- package/ts/db/documents/classes.webpush-binding.doc.ts +147 -0
- package/ts/db/documents/classes.webpush-spool.doc.ts +136 -0
- package/ts/db/documents/index.ts +5 -0
- package/ts/email/classes.accepted-email-spool.ts +41 -2
- package/ts/email/classes.workapp-mail-manager.ts +97 -10
- package/ts/index.ts +3 -0
- package/ts/opsserver/classes.opsserver.ts +4 -0
- package/ts/opsserver/handlers/gatewayclient.handler.ts +10 -3
- package/ts/opsserver/handlers/index.ts +2 -0
- package/ts/opsserver/handlers/webpush-app.handler.ts +105 -0
- package/ts/opsserver/handlers/webpush-control.handler.ts +257 -0
- package/ts/plugins.ts +6 -0
- package/ts/webpush/classes.webpush-crypto.ts +306 -0
- package/ts/webpush/classes.webpush-manager.ts +3173 -0
- package/ts/webpush/classes.webpush-transport.ts +241 -0
- package/ts/webpush/helpers.webpush-endpoint.ts +150 -0
- package/ts/webpush/index.ts +4 -0
- package/ts/webpush/webpush-indexes.ts +141 -0
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/readme.plan.md +0 -22
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
2
|
+
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
3
|
+
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
4
|
+
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
5
|
+
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
6
|
+
var _, done = false;
|
|
7
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
8
|
+
var context = {};
|
|
9
|
+
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
10
|
+
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
11
|
+
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
12
|
+
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
13
|
+
if (kind === "accessor") {
|
|
14
|
+
if (result === void 0) continue;
|
|
15
|
+
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
16
|
+
if (_ = accept(result.get)) descriptor.get = _;
|
|
17
|
+
if (_ = accept(result.set)) descriptor.set = _;
|
|
18
|
+
if (_ = accept(result.init)) initializers.unshift(_);
|
|
19
|
+
}
|
|
20
|
+
else if (_ = accept(result)) {
|
|
21
|
+
if (kind === "field") initializers.unshift(_);
|
|
22
|
+
else descriptor[key] = _;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
26
|
+
done = true;
|
|
27
|
+
};
|
|
28
|
+
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
29
|
+
var useValue = arguments.length > 2;
|
|
30
|
+
for (var i = 0; i < initializers.length; i++) {
|
|
31
|
+
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
32
|
+
}
|
|
33
|
+
return useValue ? value : void 0;
|
|
34
|
+
};
|
|
35
|
+
import * as plugins from '../../plugins.js';
|
|
36
|
+
import { DcRouterDb } from '../classes.dcrouter-db.js';
|
|
37
|
+
const getDb = () => DcRouterDb.getInstance().getDb();
|
|
38
|
+
let WebPushBindingDoc = (() => {
|
|
39
|
+
let _classDecorators = [plugins.smartdata.Collection(() => getDb())];
|
|
40
|
+
let _classDescriptor;
|
|
41
|
+
let _classExtraInitializers = [];
|
|
42
|
+
let _classThis;
|
|
43
|
+
let _classSuper = plugins.smartdata.SmartDataDbDoc;
|
|
44
|
+
let _id_decorators;
|
|
45
|
+
let _id_initializers = [];
|
|
46
|
+
let _id_extraInitializers = [];
|
|
47
|
+
let _ownerGatewayClientType_decorators;
|
|
48
|
+
let _ownerGatewayClientType_initializers = [];
|
|
49
|
+
let _ownerGatewayClientType_extraInitializers = [];
|
|
50
|
+
let _ownerGatewayClientId_decorators;
|
|
51
|
+
let _ownerGatewayClientId_initializers = [];
|
|
52
|
+
let _ownerGatewayClientId_extraInitializers = [];
|
|
53
|
+
let _ownerAppInstanceId_decorators;
|
|
54
|
+
let _ownerAppInstanceId_initializers = [];
|
|
55
|
+
let _ownerAppInstanceId_extraInitializers = [];
|
|
56
|
+
let _enabled_decorators;
|
|
57
|
+
let _enabled_initializers = [];
|
|
58
|
+
let _enabled_extraInitializers = [];
|
|
59
|
+
let _status_decorators;
|
|
60
|
+
let _status_initializers = [];
|
|
61
|
+
let _status_extraInitializers = [];
|
|
62
|
+
let _credential_decorators;
|
|
63
|
+
let _credential_initializers = [];
|
|
64
|
+
let _credential_extraInitializers = [];
|
|
65
|
+
let _previousCredentials_decorators;
|
|
66
|
+
let _previousCredentials_initializers = [];
|
|
67
|
+
let _previousCredentials_extraInitializers = [];
|
|
68
|
+
let _credentialRotationRecovery_decorators;
|
|
69
|
+
let _credentialRotationRecovery_initializers = [];
|
|
70
|
+
let _credentialRotationRecovery_extraInitializers = [];
|
|
71
|
+
let _vapidKeys_decorators;
|
|
72
|
+
let _vapidKeys_initializers = [];
|
|
73
|
+
let _vapidKeys_extraInitializers = [];
|
|
74
|
+
let _createdAt_decorators;
|
|
75
|
+
let _createdAt_initializers = [];
|
|
76
|
+
let _createdAt_extraInitializers = [];
|
|
77
|
+
let _updatedAt_decorators;
|
|
78
|
+
let _updatedAt_initializers = [];
|
|
79
|
+
let _updatedAt_extraInitializers = [];
|
|
80
|
+
let _createdBy_decorators;
|
|
81
|
+
let _createdBy_initializers = [];
|
|
82
|
+
let _createdBy_extraInitializers = [];
|
|
83
|
+
let _mutationRevision_decorators;
|
|
84
|
+
let _mutationRevision_initializers = [];
|
|
85
|
+
let _mutationRevision_extraInitializers = [];
|
|
86
|
+
let _lifecycleGeneration_decorators;
|
|
87
|
+
let _lifecycleGeneration_initializers = [];
|
|
88
|
+
let _lifecycleGeneration_extraInitializers = [];
|
|
89
|
+
let _controllerFence_decorators;
|
|
90
|
+
let _controllerFence_initializers = [];
|
|
91
|
+
let _controllerFence_extraInitializers = [];
|
|
92
|
+
let _deletedAt_decorators;
|
|
93
|
+
let _deletedAt_initializers = [];
|
|
94
|
+
let _deletedAt_extraInitializers = [];
|
|
95
|
+
var WebPushBindingDoc = class extends _classSuper {
|
|
96
|
+
static { _classThis = this; }
|
|
97
|
+
static {
|
|
98
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
99
|
+
_id_decorators = [plugins.smartdata.svDb()];
|
|
100
|
+
_ownerGatewayClientType_decorators = [plugins.smartdata.svDb()];
|
|
101
|
+
_ownerGatewayClientId_decorators = [plugins.smartdata.svDb()];
|
|
102
|
+
_ownerAppInstanceId_decorators = [plugins.smartdata.svDb()];
|
|
103
|
+
_enabled_decorators = [plugins.smartdata.svDb()];
|
|
104
|
+
_status_decorators = [plugins.smartdata.svDb()];
|
|
105
|
+
_credential_decorators = [plugins.smartdata.svDb()];
|
|
106
|
+
_previousCredentials_decorators = [plugins.smartdata.svDb()];
|
|
107
|
+
_credentialRotationRecovery_decorators = [plugins.smartdata.svDb()];
|
|
108
|
+
_vapidKeys_decorators = [plugins.smartdata.svDb()];
|
|
109
|
+
_createdAt_decorators = [plugins.smartdata.svDb()];
|
|
110
|
+
_updatedAt_decorators = [plugins.smartdata.svDb()];
|
|
111
|
+
_createdBy_decorators = [plugins.smartdata.svDb()];
|
|
112
|
+
_mutationRevision_decorators = [plugins.smartdata.svDb()];
|
|
113
|
+
_lifecycleGeneration_decorators = [plugins.smartdata.svDb()];
|
|
114
|
+
_controllerFence_decorators = [plugins.smartdata.svDb()];
|
|
115
|
+
_deletedAt_decorators = [plugins.smartdata.svDb()];
|
|
116
|
+
__esDecorate(null, null, _id_decorators, { kind: "field", name: "id", static: false, private: false, access: { has: obj => "id" in obj, get: obj => obj.id, set: (obj, value) => { obj.id = value; } }, metadata: _metadata }, _id_initializers, _id_extraInitializers);
|
|
117
|
+
__esDecorate(null, null, _ownerGatewayClientType_decorators, { kind: "field", name: "ownerGatewayClientType", static: false, private: false, access: { has: obj => "ownerGatewayClientType" in obj, get: obj => obj.ownerGatewayClientType, set: (obj, value) => { obj.ownerGatewayClientType = value; } }, metadata: _metadata }, _ownerGatewayClientType_initializers, _ownerGatewayClientType_extraInitializers);
|
|
118
|
+
__esDecorate(null, null, _ownerGatewayClientId_decorators, { kind: "field", name: "ownerGatewayClientId", static: false, private: false, access: { has: obj => "ownerGatewayClientId" in obj, get: obj => obj.ownerGatewayClientId, set: (obj, value) => { obj.ownerGatewayClientId = value; } }, metadata: _metadata }, _ownerGatewayClientId_initializers, _ownerGatewayClientId_extraInitializers);
|
|
119
|
+
__esDecorate(null, null, _ownerAppInstanceId_decorators, { kind: "field", name: "ownerAppInstanceId", static: false, private: false, access: { has: obj => "ownerAppInstanceId" in obj, get: obj => obj.ownerAppInstanceId, set: (obj, value) => { obj.ownerAppInstanceId = value; } }, metadata: _metadata }, _ownerAppInstanceId_initializers, _ownerAppInstanceId_extraInitializers);
|
|
120
|
+
__esDecorate(null, null, _enabled_decorators, { kind: "field", name: "enabled", static: false, private: false, access: { has: obj => "enabled" in obj, get: obj => obj.enabled, set: (obj, value) => { obj.enabled = value; } }, metadata: _metadata }, _enabled_initializers, _enabled_extraInitializers);
|
|
121
|
+
__esDecorate(null, null, _status_decorators, { kind: "field", name: "status", static: false, private: false, access: { has: obj => "status" in obj, get: obj => obj.status, set: (obj, value) => { obj.status = value; } }, metadata: _metadata }, _status_initializers, _status_extraInitializers);
|
|
122
|
+
__esDecorate(null, null, _credential_decorators, { kind: "field", name: "credential", static: false, private: false, access: { has: obj => "credential" in obj, get: obj => obj.credential, set: (obj, value) => { obj.credential = value; } }, metadata: _metadata }, _credential_initializers, _credential_extraInitializers);
|
|
123
|
+
__esDecorate(null, null, _previousCredentials_decorators, { kind: "field", name: "previousCredentials", static: false, private: false, access: { has: obj => "previousCredentials" in obj, get: obj => obj.previousCredentials, set: (obj, value) => { obj.previousCredentials = value; } }, metadata: _metadata }, _previousCredentials_initializers, _previousCredentials_extraInitializers);
|
|
124
|
+
__esDecorate(null, null, _credentialRotationRecovery_decorators, { kind: "field", name: "credentialRotationRecovery", static: false, private: false, access: { has: obj => "credentialRotationRecovery" in obj, get: obj => obj.credentialRotationRecovery, set: (obj, value) => { obj.credentialRotationRecovery = value; } }, metadata: _metadata }, _credentialRotationRecovery_initializers, _credentialRotationRecovery_extraInitializers);
|
|
125
|
+
__esDecorate(null, null, _vapidKeys_decorators, { kind: "field", name: "vapidKeys", static: false, private: false, access: { has: obj => "vapidKeys" in obj, get: obj => obj.vapidKeys, set: (obj, value) => { obj.vapidKeys = value; } }, metadata: _metadata }, _vapidKeys_initializers, _vapidKeys_extraInitializers);
|
|
126
|
+
__esDecorate(null, null, _createdAt_decorators, { kind: "field", name: "createdAt", static: false, private: false, access: { has: obj => "createdAt" in obj, get: obj => obj.createdAt, set: (obj, value) => { obj.createdAt = value; } }, metadata: _metadata }, _createdAt_initializers, _createdAt_extraInitializers);
|
|
127
|
+
__esDecorate(null, null, _updatedAt_decorators, { kind: "field", name: "updatedAt", static: false, private: false, access: { has: obj => "updatedAt" in obj, get: obj => obj.updatedAt, set: (obj, value) => { obj.updatedAt = value; } }, metadata: _metadata }, _updatedAt_initializers, _updatedAt_extraInitializers);
|
|
128
|
+
__esDecorate(null, null, _createdBy_decorators, { kind: "field", name: "createdBy", static: false, private: false, access: { has: obj => "createdBy" in obj, get: obj => obj.createdBy, set: (obj, value) => { obj.createdBy = value; } }, metadata: _metadata }, _createdBy_initializers, _createdBy_extraInitializers);
|
|
129
|
+
__esDecorate(null, null, _mutationRevision_decorators, { kind: "field", name: "mutationRevision", static: false, private: false, access: { has: obj => "mutationRevision" in obj, get: obj => obj.mutationRevision, set: (obj, value) => { obj.mutationRevision = value; } }, metadata: _metadata }, _mutationRevision_initializers, _mutationRevision_extraInitializers);
|
|
130
|
+
__esDecorate(null, null, _lifecycleGeneration_decorators, { kind: "field", name: "lifecycleGeneration", static: false, private: false, access: { has: obj => "lifecycleGeneration" in obj, get: obj => obj.lifecycleGeneration, set: (obj, value) => { obj.lifecycleGeneration = value; } }, metadata: _metadata }, _lifecycleGeneration_initializers, _lifecycleGeneration_extraInitializers);
|
|
131
|
+
__esDecorate(null, null, _controllerFence_decorators, { kind: "field", name: "controllerFence", static: false, private: false, access: { has: obj => "controllerFence" in obj, get: obj => obj.controllerFence, set: (obj, value) => { obj.controllerFence = value; } }, metadata: _metadata }, _controllerFence_initializers, _controllerFence_extraInitializers);
|
|
132
|
+
__esDecorate(null, null, _deletedAt_decorators, { kind: "field", name: "deletedAt", static: false, private: false, access: { has: obj => "deletedAt" in obj, get: obj => obj.deletedAt, set: (obj, value) => { obj.deletedAt = value; } }, metadata: _metadata }, _deletedAt_initializers, _deletedAt_extraInitializers);
|
|
133
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
134
|
+
WebPushBindingDoc = _classThis = _classDescriptor.value;
|
|
135
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
136
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
137
|
+
}
|
|
138
|
+
id = __runInitializers(this, _id_initializers, void 0);
|
|
139
|
+
ownerGatewayClientType = (__runInitializers(this, _id_extraInitializers), __runInitializers(this, _ownerGatewayClientType_initializers, void 0));
|
|
140
|
+
ownerGatewayClientId = (__runInitializers(this, _ownerGatewayClientType_extraInitializers), __runInitializers(this, _ownerGatewayClientId_initializers, void 0));
|
|
141
|
+
ownerAppInstanceId = (__runInitializers(this, _ownerGatewayClientId_extraInitializers), __runInitializers(this, _ownerAppInstanceId_initializers, void 0));
|
|
142
|
+
enabled = (__runInitializers(this, _ownerAppInstanceId_extraInitializers), __runInitializers(this, _enabled_initializers, void 0));
|
|
143
|
+
status = (__runInitializers(this, _enabled_extraInitializers), __runInitializers(this, _status_initializers, void 0));
|
|
144
|
+
credential = (__runInitializers(this, _status_extraInitializers), __runInitializers(this, _credential_initializers, void 0));
|
|
145
|
+
/** At most one still-valid overlap credential; expired entries are scrubbed. */
|
|
146
|
+
previousCredentials = (__runInitializers(this, _credential_extraInitializers), __runInitializers(this, _previousCredentials_initializers, []));
|
|
147
|
+
/** MUST BE ABSENT outside the bounded idempotent credential-rotation replay window. */
|
|
148
|
+
credentialRotationRecovery = (__runInitializers(this, _previousCredentials_extraInitializers), __runInitializers(this, _credentialRotationRecovery_initializers, void 0));
|
|
149
|
+
vapidKeys = (__runInitializers(this, _credentialRotationRecovery_extraInitializers), __runInitializers(this, _vapidKeys_initializers, []));
|
|
150
|
+
createdAt = (__runInitializers(this, _vapidKeys_extraInitializers), __runInitializers(this, _createdAt_initializers, void 0));
|
|
151
|
+
updatedAt = (__runInitializers(this, _createdAt_extraInitializers), __runInitializers(this, _updatedAt_initializers, void 0));
|
|
152
|
+
createdBy = (__runInitializers(this, _updatedAt_extraInitializers), __runInitializers(this, _createdBy_initializers, void 0));
|
|
153
|
+
mutationRevision = (__runInitializers(this, _createdBy_extraInitializers), __runInitializers(this, _mutationRevision_initializers, void 0));
|
|
154
|
+
lifecycleGeneration = (__runInitializers(this, _mutationRevision_extraInitializers), __runInitializers(this, _lifecycleGeneration_initializers, void 0));
|
|
155
|
+
/** Highest durably applied controller mutation for this owner-reserving binding. */
|
|
156
|
+
controllerFence = (__runInitializers(this, _lifecycleGeneration_extraInitializers), __runInitializers(this, _controllerFence_initializers, void 0));
|
|
157
|
+
/** MUST BE ABSENT unless this owner-reserving binding is a deletion tombstone. */
|
|
158
|
+
deletedAt = (__runInitializers(this, _controllerFence_extraInitializers), __runInitializers(this, _deletedAt_initializers, void 0));
|
|
159
|
+
static getNativeCollection() {
|
|
160
|
+
return getDb().mongoDb.collection('WebPushBindingDoc');
|
|
161
|
+
}
|
|
162
|
+
async createSavableObject() {
|
|
163
|
+
const savable = await super.createSavableObject();
|
|
164
|
+
if (savable.credential.secretHash === undefined) {
|
|
165
|
+
delete savable.credential.secretHash;
|
|
166
|
+
}
|
|
167
|
+
savable.previousCredentials = (savable.previousCredentials || []).map((credentialArg) => ({
|
|
168
|
+
...credentialArg,
|
|
169
|
+
lastRotatedAt: credentialArg.lastRotatedAt ?? null,
|
|
170
|
+
validUntil: credentialArg.validUntil ?? null,
|
|
171
|
+
})).map((credentialArg) => {
|
|
172
|
+
if (credentialArg.secretHash === undefined)
|
|
173
|
+
delete credentialArg.secretHash;
|
|
174
|
+
return credentialArg;
|
|
175
|
+
});
|
|
176
|
+
if (savable.credentialRotationRecovery === undefined) {
|
|
177
|
+
delete savable.credentialRotationRecovery;
|
|
178
|
+
}
|
|
179
|
+
if (savable.controllerFence === undefined)
|
|
180
|
+
delete savable.controllerFence;
|
|
181
|
+
savable.vapidKeys = (savable.vapidKeys || []).map((keyArg) => {
|
|
182
|
+
const normalized = {
|
|
183
|
+
...keyArg,
|
|
184
|
+
activatedAt: keyArg.activatedAt ?? null,
|
|
185
|
+
retireAfter: keyArg.retireAfter ?? null,
|
|
186
|
+
retiredAt: keyArg.retiredAt ?? null,
|
|
187
|
+
};
|
|
188
|
+
if (normalized.privateKeyEnvelope === undefined) {
|
|
189
|
+
delete normalized.privateKeyEnvelope;
|
|
190
|
+
}
|
|
191
|
+
return normalized;
|
|
192
|
+
});
|
|
193
|
+
if (savable.deletedAt === undefined)
|
|
194
|
+
delete savable.deletedAt;
|
|
195
|
+
return savable;
|
|
196
|
+
}
|
|
197
|
+
constructor() {
|
|
198
|
+
super(...arguments);
|
|
199
|
+
__runInitializers(this, _deletedAt_extraInitializers);
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
return WebPushBindingDoc = _classThis;
|
|
203
|
+
})();
|
|
204
|
+
export { WebPushBindingDoc };
|
|
205
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy53ZWJwdXNoLWJpbmRpbmcuZG9jLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdHMvZGIvZG9jdW1lbnRzL2NsYXNzZXMud2VicHVzaC1iaW5kaW5nLmRvYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUE4Q3ZELE1BQU0sS0FBSyxHQUFHLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUd4QyxpQkFBaUI7NEJBRDdCLE9BQU8sQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDOzs7O3NCQUNMLE9BQU8sQ0FBQyxTQUFTLENBQUMsY0FBYzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztpQ0FBeEMsU0FBUSxXQUd0Qzs7Ozs4QkFDRSxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTtrREFHeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7Z0RBR3hCLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFOzhDQUd4QixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTttQ0FHeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7a0NBR3hCLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO3NDQUd4QixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTsrQ0FJeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7c0RBSXhCLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO3FDQUd4QixPQUFPLENBQUMsU0FBUyxDQUFD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
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import * as plugins from '../../plugins.js';
|
|
2
|
+
import type { IWebPushEncryptedEnvelope } from '../../webpush/classes.webpush-crypto.js';
|
|
3
|
+
export declare class WebPushSpoolDoc extends plugins.smartdata.SmartDataDbDoc<WebPushSpoolDoc, WebPushSpoolDoc> {
|
|
4
|
+
id: string;
|
|
5
|
+
schemaVersion: 1;
|
|
6
|
+
bindingId: string;
|
|
7
|
+
lifecycleGeneration: number;
|
|
8
|
+
/** Credential that created this item; used only for the idempotency namespace. */
|
|
9
|
+
credentialId: string;
|
|
10
|
+
hmacKeyId: string;
|
|
11
|
+
idempotencyKeyDigest: string;
|
|
12
|
+
requestDigest: string;
|
|
13
|
+
subscriptionId: string;
|
|
14
|
+
endpointDigest: string;
|
|
15
|
+
vapidKeyId: string;
|
|
16
|
+
subscriptionEnvelope?: IWebPushEncryptedEnvelope;
|
|
17
|
+
payloadEnvelope?: IWebPushEncryptedEnvelope;
|
|
18
|
+
payloadBytes: number;
|
|
19
|
+
ttlSeconds: number;
|
|
20
|
+
urgency: plugins.servezoneInterfaces.data.TWebPushUrgency;
|
|
21
|
+
topic: string | null;
|
|
22
|
+
state: plugins.servezoneInterfaces.data.TWebPushDeliveryState;
|
|
23
|
+
attempts: number;
|
|
24
|
+
acceptedAt: number;
|
|
25
|
+
updatedAt: number;
|
|
26
|
+
nextAttemptAt: number;
|
|
27
|
+
expiresAt: number;
|
|
28
|
+
/** MUST BE ABSENT while the item is not leased. */
|
|
29
|
+
leaseToken?: string;
|
|
30
|
+
/** MUST BE ABSENT while the item is not leased. */
|
|
31
|
+
leaseExpiresAt?: number;
|
|
32
|
+
/** MUST BE ABSENT until cancellation races with an in-flight send. */
|
|
33
|
+
cancelRequestedAt?: number;
|
|
34
|
+
/** MUST BE ABSENT until an in-flight cancellation records its terminal reason. */
|
|
35
|
+
cancelErrorCode?: string;
|
|
36
|
+
/** MUST BE ABSENT before a terminal transition. */
|
|
37
|
+
terminalAt?: number;
|
|
38
|
+
pushServiceStatusCode: number | null;
|
|
39
|
+
errorCode: string | null;
|
|
40
|
+
/** MUST BE ABSENT until terminal retention begins. */
|
|
41
|
+
purgeAt?: Date;
|
|
42
|
+
static getNativeCollection(): plugins.smartdata.SmartdataCollection<WebPushSpoolDoc>['mongoDbCollection'];
|
|
43
|
+
createSavableObject(): Promise<WebPushSpoolDoc>;
|
|
44
|
+
}
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
2
|
+
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
3
|
+
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
4
|
+
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
5
|
+
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
6
|
+
var _, done = false;
|
|
7
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
8
|
+
var context = {};
|
|
9
|
+
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
10
|
+
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
11
|
+
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
12
|
+
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
13
|
+
if (kind === "accessor") {
|
|
14
|
+
if (result === void 0) continue;
|
|
15
|
+
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
16
|
+
if (_ = accept(result.get)) descriptor.get = _;
|
|
17
|
+
if (_ = accept(result.set)) descriptor.set = _;
|
|
18
|
+
if (_ = accept(result.init)) initializers.unshift(_);
|
|
19
|
+
}
|
|
20
|
+
else if (_ = accept(result)) {
|
|
21
|
+
if (kind === "field") initializers.unshift(_);
|
|
22
|
+
else descriptor[key] = _;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
26
|
+
done = true;
|
|
27
|
+
};
|
|
28
|
+
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
29
|
+
var useValue = arguments.length > 2;
|
|
30
|
+
for (var i = 0; i < initializers.length; i++) {
|
|
31
|
+
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
32
|
+
}
|
|
33
|
+
return useValue ? value : void 0;
|
|
34
|
+
};
|
|
35
|
+
import * as plugins from '../../plugins.js';
|
|
36
|
+
import { DcRouterDb } from '../classes.dcrouter-db.js';
|
|
37
|
+
const getDb = () => DcRouterDb.getInstance().getDb();
|
|
38
|
+
let WebPushSpoolDoc = (() => {
|
|
39
|
+
let _classDecorators = [plugins.smartdata.Collection(() => getDb())];
|
|
40
|
+
let _classDescriptor;
|
|
41
|
+
let _classExtraInitializers = [];
|
|
42
|
+
let _classThis;
|
|
43
|
+
let _classSuper = plugins.smartdata.SmartDataDbDoc;
|
|
44
|
+
let _id_decorators;
|
|
45
|
+
let _id_initializers = [];
|
|
46
|
+
let _id_extraInitializers = [];
|
|
47
|
+
let _schemaVersion_decorators;
|
|
48
|
+
let _schemaVersion_initializers = [];
|
|
49
|
+
let _schemaVersion_extraInitializers = [];
|
|
50
|
+
let _bindingId_decorators;
|
|
51
|
+
let _bindingId_initializers = [];
|
|
52
|
+
let _bindingId_extraInitializers = [];
|
|
53
|
+
let _lifecycleGeneration_decorators;
|
|
54
|
+
let _lifecycleGeneration_initializers = [];
|
|
55
|
+
let _lifecycleGeneration_extraInitializers = [];
|
|
56
|
+
let _credentialId_decorators;
|
|
57
|
+
let _credentialId_initializers = [];
|
|
58
|
+
let _credentialId_extraInitializers = [];
|
|
59
|
+
let _hmacKeyId_decorators;
|
|
60
|
+
let _hmacKeyId_initializers = [];
|
|
61
|
+
let _hmacKeyId_extraInitializers = [];
|
|
62
|
+
let _idempotencyKeyDigest_decorators;
|
|
63
|
+
let _idempotencyKeyDigest_initializers = [];
|
|
64
|
+
let _idempotencyKeyDigest_extraInitializers = [];
|
|
65
|
+
let _requestDigest_decorators;
|
|
66
|
+
let _requestDigest_initializers = [];
|
|
67
|
+
let _requestDigest_extraInitializers = [];
|
|
68
|
+
let _subscriptionId_decorators;
|
|
69
|
+
let _subscriptionId_initializers = [];
|
|
70
|
+
let _subscriptionId_extraInitializers = [];
|
|
71
|
+
let _endpointDigest_decorators;
|
|
72
|
+
let _endpointDigest_initializers = [];
|
|
73
|
+
let _endpointDigest_extraInitializers = [];
|
|
74
|
+
let _vapidKeyId_decorators;
|
|
75
|
+
let _vapidKeyId_initializers = [];
|
|
76
|
+
let _vapidKeyId_extraInitializers = [];
|
|
77
|
+
let _subscriptionEnvelope_decorators;
|
|
78
|
+
let _subscriptionEnvelope_initializers = [];
|
|
79
|
+
let _subscriptionEnvelope_extraInitializers = [];
|
|
80
|
+
let _payloadEnvelope_decorators;
|
|
81
|
+
let _payloadEnvelope_initializers = [];
|
|
82
|
+
let _payloadEnvelope_extraInitializers = [];
|
|
83
|
+
let _payloadBytes_decorators;
|
|
84
|
+
let _payloadBytes_initializers = [];
|
|
85
|
+
let _payloadBytes_extraInitializers = [];
|
|
86
|
+
let _ttlSeconds_decorators;
|
|
87
|
+
let _ttlSeconds_initializers = [];
|
|
88
|
+
let _ttlSeconds_extraInitializers = [];
|
|
89
|
+
let _urgency_decorators;
|
|
90
|
+
let _urgency_initializers = [];
|
|
91
|
+
let _urgency_extraInitializers = [];
|
|
92
|
+
let _topic_decorators;
|
|
93
|
+
let _topic_initializers = [];
|
|
94
|
+
let _topic_extraInitializers = [];
|
|
95
|
+
let _state_decorators;
|
|
96
|
+
let _state_initializers = [];
|
|
97
|
+
let _state_extraInitializers = [];
|
|
98
|
+
let _attempts_decorators;
|
|
99
|
+
let _attempts_initializers = [];
|
|
100
|
+
let _attempts_extraInitializers = [];
|
|
101
|
+
let _acceptedAt_decorators;
|
|
102
|
+
let _acceptedAt_initializers = [];
|
|
103
|
+
let _acceptedAt_extraInitializers = [];
|
|
104
|
+
let _updatedAt_decorators;
|
|
105
|
+
let _updatedAt_initializers = [];
|
|
106
|
+
let _updatedAt_extraInitializers = [];
|
|
107
|
+
let _nextAttemptAt_decorators;
|
|
108
|
+
let _nextAttemptAt_initializers = [];
|
|
109
|
+
let _nextAttemptAt_extraInitializers = [];
|
|
110
|
+
let _expiresAt_decorators;
|
|
111
|
+
let _expiresAt_initializers = [];
|
|
112
|
+
let _expiresAt_extraInitializers = [];
|
|
113
|
+
let _leaseToken_decorators;
|
|
114
|
+
let _leaseToken_initializers = [];
|
|
115
|
+
let _leaseToken_extraInitializers = [];
|
|
116
|
+
let _leaseExpiresAt_decorators;
|
|
117
|
+
let _leaseExpiresAt_initializers = [];
|
|
118
|
+
let _leaseExpiresAt_extraInitializers = [];
|
|
119
|
+
let _cancelRequestedAt_decorators;
|
|
120
|
+
let _cancelRequestedAt_initializers = [];
|
|
121
|
+
let _cancelRequestedAt_extraInitializers = [];
|
|
122
|
+
let _cancelErrorCode_decorators;
|
|
123
|
+
let _cancelErrorCode_initializers = [];
|
|
124
|
+
let _cancelErrorCode_extraInitializers = [];
|
|
125
|
+
let _terminalAt_decorators;
|
|
126
|
+
let _terminalAt_initializers = [];
|
|
127
|
+
let _terminalAt_extraInitializers = [];
|
|
128
|
+
let _pushServiceStatusCode_decorators;
|
|
129
|
+
let _pushServiceStatusCode_initializers = [];
|
|
130
|
+
let _pushServiceStatusCode_extraInitializers = [];
|
|
131
|
+
let _errorCode_decorators;
|
|
132
|
+
let _errorCode_initializers = [];
|
|
133
|
+
let _errorCode_extraInitializers = [];
|
|
134
|
+
let _purgeAt_decorators;
|
|
135
|
+
let _purgeAt_initializers = [];
|
|
136
|
+
let _purgeAt_extraInitializers = [];
|
|
137
|
+
var WebPushSpoolDoc = class extends _classSuper {
|
|
138
|
+
static { _classThis = this; }
|
|
139
|
+
static {
|
|
140
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
141
|
+
_id_decorators = [plugins.smartdata.svDb()];
|
|
142
|
+
_schemaVersion_decorators = [plugins.smartdata.svDb()];
|
|
143
|
+
_bindingId_decorators = [plugins.smartdata.svDb()];
|
|
144
|
+
_lifecycleGeneration_decorators = [plugins.smartdata.svDb()];
|
|
145
|
+
_credentialId_decorators = [plugins.smartdata.svDb()];
|
|
146
|
+
_hmacKeyId_decorators = [plugins.smartdata.svDb()];
|
|
147
|
+
_idempotencyKeyDigest_decorators = [plugins.smartdata.svDb()];
|
|
148
|
+
_requestDigest_decorators = [plugins.smartdata.svDb()];
|
|
149
|
+
_subscriptionId_decorators = [plugins.smartdata.svDb()];
|
|
150
|
+
_endpointDigest_decorators = [plugins.smartdata.svDb()];
|
|
151
|
+
_vapidKeyId_decorators = [plugins.smartdata.svDb()];
|
|
152
|
+
_subscriptionEnvelope_decorators = [plugins.smartdata.svDb()];
|
|
153
|
+
_payloadEnvelope_decorators = [plugins.smartdata.svDb()];
|
|
154
|
+
_payloadBytes_decorators = [plugins.smartdata.svDb()];
|
|
155
|
+
_ttlSeconds_decorators = [plugins.smartdata.svDb()];
|
|
156
|
+
_urgency_decorators = [plugins.smartdata.svDb()];
|
|
157
|
+
_topic_decorators = [plugins.smartdata.svDb()];
|
|
158
|
+
_state_decorators = [plugins.smartdata.svDb()];
|
|
159
|
+
_attempts_decorators = [plugins.smartdata.svDb()];
|
|
160
|
+
_acceptedAt_decorators = [plugins.smartdata.svDb()];
|
|
161
|
+
_updatedAt_decorators = [plugins.smartdata.svDb()];
|
|
162
|
+
_nextAttemptAt_decorators = [plugins.smartdata.svDb()];
|
|
163
|
+
_expiresAt_decorators = [plugins.smartdata.svDb()];
|
|
164
|
+
_leaseToken_decorators = [plugins.smartdata.svDb()];
|
|
165
|
+
_leaseExpiresAt_decorators = [plugins.smartdata.svDb()];
|
|
166
|
+
_cancelRequestedAt_decorators = [plugins.smartdata.svDb()];
|
|
167
|
+
_cancelErrorCode_decorators = [plugins.smartdata.svDb()];
|
|
168
|
+
_terminalAt_decorators = [plugins.smartdata.svDb()];
|
|
169
|
+
_pushServiceStatusCode_decorators = [plugins.smartdata.svDb()];
|
|
170
|
+
_errorCode_decorators = [plugins.smartdata.svDb()];
|
|
171
|
+
_purgeAt_decorators = [plugins.smartdata.svDb()];
|
|
172
|
+
__esDecorate(null, null, _id_decorators, { kind: "field", name: "id", static: false, private: false, access: { has: obj => "id" in obj, get: obj => obj.id, set: (obj, value) => { obj.id = value; } }, metadata: _metadata }, _id_initializers, _id_extraInitializers);
|
|
173
|
+
__esDecorate(null, null, _schemaVersion_decorators, { kind: "field", name: "schemaVersion", static: false, private: false, access: { has: obj => "schemaVersion" in obj, get: obj => obj.schemaVersion, set: (obj, value) => { obj.schemaVersion = value; } }, metadata: _metadata }, _schemaVersion_initializers, _schemaVersion_extraInitializers);
|
|
174
|
+
__esDecorate(null, null, _bindingId_decorators, { kind: "field", name: "bindingId", static: false, private: false, access: { has: obj => "bindingId" in obj, get: obj => obj.bindingId, set: (obj, value) => { obj.bindingId = value; } }, metadata: _metadata }, _bindingId_initializers, _bindingId_extraInitializers);
|
|
175
|
+
__esDecorate(null, null, _lifecycleGeneration_decorators, { kind: "field", name: "lifecycleGeneration", static: false, private: false, access: { has: obj => "lifecycleGeneration" in obj, get: obj => obj.lifecycleGeneration, set: (obj, value) => { obj.lifecycleGeneration = value; } }, metadata: _metadata }, _lifecycleGeneration_initializers, _lifecycleGeneration_extraInitializers);
|
|
176
|
+
__esDecorate(null, null, _credentialId_decorators, { kind: "field", name: "credentialId", static: false, private: false, access: { has: obj => "credentialId" in obj, get: obj => obj.credentialId, set: (obj, value) => { obj.credentialId = value; } }, metadata: _metadata }, _credentialId_initializers, _credentialId_extraInitializers);
|
|
177
|
+
__esDecorate(null, null, _hmacKeyId_decorators, { kind: "field", name: "hmacKeyId", static: false, private: false, access: { has: obj => "hmacKeyId" in obj, get: obj => obj.hmacKeyId, set: (obj, value) => { obj.hmacKeyId = value; } }, metadata: _metadata }, _hmacKeyId_initializers, _hmacKeyId_extraInitializers);
|
|
178
|
+
__esDecorate(null, null, _idempotencyKeyDigest_decorators, { kind: "field", name: "idempotencyKeyDigest", static: false, private: false, access: { has: obj => "idempotencyKeyDigest" in obj, get: obj => obj.idempotencyKeyDigest, set: (obj, value) => { obj.idempotencyKeyDigest = value; } }, metadata: _metadata }, _idempotencyKeyDigest_initializers, _idempotencyKeyDigest_extraInitializers);
|
|
179
|
+
__esDecorate(null, null, _requestDigest_decorators, { kind: "field", name: "requestDigest", static: false, private: false, access: { has: obj => "requestDigest" in obj, get: obj => obj.requestDigest, set: (obj, value) => { obj.requestDigest = value; } }, metadata: _metadata }, _requestDigest_initializers, _requestDigest_extraInitializers);
|
|
180
|
+
__esDecorate(null, null, _subscriptionId_decorators, { kind: "field", name: "subscriptionId", static: false, private: false, access: { has: obj => "subscriptionId" in obj, get: obj => obj.subscriptionId, set: (obj, value) => { obj.subscriptionId = value; } }, metadata: _metadata }, _subscriptionId_initializers, _subscriptionId_extraInitializers);
|
|
181
|
+
__esDecorate(null, null, _endpointDigest_decorators, { kind: "field", name: "endpointDigest", static: false, private: false, access: { has: obj => "endpointDigest" in obj, get: obj => obj.endpointDigest, set: (obj, value) => { obj.endpointDigest = value; } }, metadata: _metadata }, _endpointDigest_initializers, _endpointDigest_extraInitializers);
|
|
182
|
+
__esDecorate(null, null, _vapidKeyId_decorators, { kind: "field", name: "vapidKeyId", static: false, private: false, access: { has: obj => "vapidKeyId" in obj, get: obj => obj.vapidKeyId, set: (obj, value) => { obj.vapidKeyId = value; } }, metadata: _metadata }, _vapidKeyId_initializers, _vapidKeyId_extraInitializers);
|
|
183
|
+
__esDecorate(null, null, _subscriptionEnvelope_decorators, { kind: "field", name: "subscriptionEnvelope", static: false, private: false, access: { has: obj => "subscriptionEnvelope" in obj, get: obj => obj.subscriptionEnvelope, set: (obj, value) => { obj.subscriptionEnvelope = value; } }, metadata: _metadata }, _subscriptionEnvelope_initializers, _subscriptionEnvelope_extraInitializers);
|
|
184
|
+
__esDecorate(null, null, _payloadEnvelope_decorators, { kind: "field", name: "payloadEnvelope", static: false, private: false, access: { has: obj => "payloadEnvelope" in obj, get: obj => obj.payloadEnvelope, set: (obj, value) => { obj.payloadEnvelope = value; } }, metadata: _metadata }, _payloadEnvelope_initializers, _payloadEnvelope_extraInitializers);
|
|
185
|
+
__esDecorate(null, null, _payloadBytes_decorators, { kind: "field", name: "payloadBytes", static: false, private: false, access: { has: obj => "payloadBytes" in obj, get: obj => obj.payloadBytes, set: (obj, value) => { obj.payloadBytes = value; } }, metadata: _metadata }, _payloadBytes_initializers, _payloadBytes_extraInitializers);
|
|
186
|
+
__esDecorate(null, null, _ttlSeconds_decorators, { kind: "field", name: "ttlSeconds", static: false, private: false, access: { has: obj => "ttlSeconds" in obj, get: obj => obj.ttlSeconds, set: (obj, value) => { obj.ttlSeconds = value; } }, metadata: _metadata }, _ttlSeconds_initializers, _ttlSeconds_extraInitializers);
|
|
187
|
+
__esDecorate(null, null, _urgency_decorators, { kind: "field", name: "urgency", static: false, private: false, access: { has: obj => "urgency" in obj, get: obj => obj.urgency, set: (obj, value) => { obj.urgency = value; } }, metadata: _metadata }, _urgency_initializers, _urgency_extraInitializers);
|
|
188
|
+
__esDecorate(null, null, _topic_decorators, { kind: "field", name: "topic", static: false, private: false, access: { has: obj => "topic" in obj, get: obj => obj.topic, set: (obj, value) => { obj.topic = value; } }, metadata: _metadata }, _topic_initializers, _topic_extraInitializers);
|
|
189
|
+
__esDecorate(null, null, _state_decorators, { kind: "field", name: "state", static: false, private: false, access: { has: obj => "state" in obj, get: obj => obj.state, set: (obj, value) => { obj.state = value; } }, metadata: _metadata }, _state_initializers, _state_extraInitializers);
|
|
190
|
+
__esDecorate(null, null, _attempts_decorators, { kind: "field", name: "attempts", static: false, private: false, access: { has: obj => "attempts" in obj, get: obj => obj.attempts, set: (obj, value) => { obj.attempts = value; } }, metadata: _metadata }, _attempts_initializers, _attempts_extraInitializers);
|
|
191
|
+
__esDecorate(null, null, _acceptedAt_decorators, { kind: "field", name: "acceptedAt", static: false, private: false, access: { has: obj => "acceptedAt" in obj, get: obj => obj.acceptedAt, set: (obj, value) => { obj.acceptedAt = value; } }, metadata: _metadata }, _acceptedAt_initializers, _acceptedAt_extraInitializers);
|
|
192
|
+
__esDecorate(null, null, _updatedAt_decorators, { kind: "field", name: "updatedAt", static: false, private: false, access: { has: obj => "updatedAt" in obj, get: obj => obj.updatedAt, set: (obj, value) => { obj.updatedAt = value; } }, metadata: _metadata }, _updatedAt_initializers, _updatedAt_extraInitializers);
|
|
193
|
+
__esDecorate(null, null, _nextAttemptAt_decorators, { kind: "field", name: "nextAttemptAt", static: false, private: false, access: { has: obj => "nextAttemptAt" in obj, get: obj => obj.nextAttemptAt, set: (obj, value) => { obj.nextAttemptAt = value; } }, metadata: _metadata }, _nextAttemptAt_initializers, _nextAttemptAt_extraInitializers);
|
|
194
|
+
__esDecorate(null, null, _expiresAt_decorators, { kind: "field", name: "expiresAt", static: false, private: false, access: { has: obj => "expiresAt" in obj, get: obj => obj.expiresAt, set: (obj, value) => { obj.expiresAt = value; } }, metadata: _metadata }, _expiresAt_initializers, _expiresAt_extraInitializers);
|
|
195
|
+
__esDecorate(null, null, _leaseToken_decorators, { kind: "field", name: "leaseToken", static: false, private: false, access: { has: obj => "leaseToken" in obj, get: obj => obj.leaseToken, set: (obj, value) => { obj.leaseToken = value; } }, metadata: _metadata }, _leaseToken_initializers, _leaseToken_extraInitializers);
|
|
196
|
+
__esDecorate(null, null, _leaseExpiresAt_decorators, { kind: "field", name: "leaseExpiresAt", static: false, private: false, access: { has: obj => "leaseExpiresAt" in obj, get: obj => obj.leaseExpiresAt, set: (obj, value) => { obj.leaseExpiresAt = value; } }, metadata: _metadata }, _leaseExpiresAt_initializers, _leaseExpiresAt_extraInitializers);
|
|
197
|
+
__esDecorate(null, null, _cancelRequestedAt_decorators, { kind: "field", name: "cancelRequestedAt", static: false, private: false, access: { has: obj => "cancelRequestedAt" in obj, get: obj => obj.cancelRequestedAt, set: (obj, value) => { obj.cancelRequestedAt = value; } }, metadata: _metadata }, _cancelRequestedAt_initializers, _cancelRequestedAt_extraInitializers);
|
|
198
|
+
__esDecorate(null, null, _cancelErrorCode_decorators, { kind: "field", name: "cancelErrorCode", static: false, private: false, access: { has: obj => "cancelErrorCode" in obj, get: obj => obj.cancelErrorCode, set: (obj, value) => { obj.cancelErrorCode = value; } }, metadata: _metadata }, _cancelErrorCode_initializers, _cancelErrorCode_extraInitializers);
|
|
199
|
+
__esDecorate(null, null, _terminalAt_decorators, { kind: "field", name: "terminalAt", static: false, private: false, access: { has: obj => "terminalAt" in obj, get: obj => obj.terminalAt, set: (obj, value) => { obj.terminalAt = value; } }, metadata: _metadata }, _terminalAt_initializers, _terminalAt_extraInitializers);
|
|
200
|
+
__esDecorate(null, null, _pushServiceStatusCode_decorators, { kind: "field", name: "pushServiceStatusCode", static: false, private: false, access: { has: obj => "pushServiceStatusCode" in obj, get: obj => obj.pushServiceStatusCode, set: (obj, value) => { obj.pushServiceStatusCode = value; } }, metadata: _metadata }, _pushServiceStatusCode_initializers, _pushServiceStatusCode_extraInitializers);
|
|
201
|
+
__esDecorate(null, null, _errorCode_decorators, { kind: "field", name: "errorCode", static: false, private: false, access: { has: obj => "errorCode" in obj, get: obj => obj.errorCode, set: (obj, value) => { obj.errorCode = value; } }, metadata: _metadata }, _errorCode_initializers, _errorCode_extraInitializers);
|
|
202
|
+
__esDecorate(null, null, _purgeAt_decorators, { kind: "field", name: "purgeAt", static: false, private: false, access: { has: obj => "purgeAt" in obj, get: obj => obj.purgeAt, set: (obj, value) => { obj.purgeAt = value; } }, metadata: _metadata }, _purgeAt_initializers, _purgeAt_extraInitializers);
|
|
203
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
204
|
+
WebPushSpoolDoc = _classThis = _classDescriptor.value;
|
|
205
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
206
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
207
|
+
}
|
|
208
|
+
id = __runInitializers(this, _id_initializers, void 0);
|
|
209
|
+
schemaVersion = (__runInitializers(this, _id_extraInitializers), __runInitializers(this, _schemaVersion_initializers, 1));
|
|
210
|
+
bindingId = (__runInitializers(this, _schemaVersion_extraInitializers), __runInitializers(this, _bindingId_initializers, void 0));
|
|
211
|
+
lifecycleGeneration = (__runInitializers(this, _bindingId_extraInitializers), __runInitializers(this, _lifecycleGeneration_initializers, void 0));
|
|
212
|
+
/** Credential that created this item; used only for the idempotency namespace. */
|
|
213
|
+
credentialId = (__runInitializers(this, _lifecycleGeneration_extraInitializers), __runInitializers(this, _credentialId_initializers, void 0));
|
|
214
|
+
hmacKeyId = (__runInitializers(this, _credentialId_extraInitializers), __runInitializers(this, _hmacKeyId_initializers, void 0));
|
|
215
|
+
idempotencyKeyDigest = (__runInitializers(this, _hmacKeyId_extraInitializers), __runInitializers(this, _idempotencyKeyDigest_initializers, void 0));
|
|
216
|
+
requestDigest = (__runInitializers(this, _idempotencyKeyDigest_extraInitializers), __runInitializers(this, _requestDigest_initializers, void 0));
|
|
217
|
+
subscriptionId = (__runInitializers(this, _requestDigest_extraInitializers), __runInitializers(this, _subscriptionId_initializers, void 0));
|
|
218
|
+
endpointDigest = (__runInitializers(this, _subscriptionId_extraInitializers), __runInitializers(this, _endpointDigest_initializers, void 0));
|
|
219
|
+
vapidKeyId = (__runInitializers(this, _endpointDigest_extraInitializers), __runInitializers(this, _vapidKeyId_initializers, void 0));
|
|
220
|
+
subscriptionEnvelope = (__runInitializers(this, _vapidKeyId_extraInitializers), __runInitializers(this, _subscriptionEnvelope_initializers, void 0));
|
|
221
|
+
payloadEnvelope = (__runInitializers(this, _subscriptionEnvelope_extraInitializers), __runInitializers(this, _payloadEnvelope_initializers, void 0));
|
|
222
|
+
payloadBytes = (__runInitializers(this, _payloadEnvelope_extraInitializers), __runInitializers(this, _payloadBytes_initializers, void 0));
|
|
223
|
+
ttlSeconds = (__runInitializers(this, _payloadBytes_extraInitializers), __runInitializers(this, _ttlSeconds_initializers, void 0));
|
|
224
|
+
urgency = (__runInitializers(this, _ttlSeconds_extraInitializers), __runInitializers(this, _urgency_initializers, void 0));
|
|
225
|
+
topic = (__runInitializers(this, _urgency_extraInitializers), __runInitializers(this, _topic_initializers, null));
|
|
226
|
+
state = (__runInitializers(this, _topic_extraInitializers), __runInitializers(this, _state_initializers, void 0));
|
|
227
|
+
attempts = (__runInitializers(this, _state_extraInitializers), __runInitializers(this, _attempts_initializers, 0));
|
|
228
|
+
acceptedAt = (__runInitializers(this, _attempts_extraInitializers), __runInitializers(this, _acceptedAt_initializers, void 0));
|
|
229
|
+
updatedAt = (__runInitializers(this, _acceptedAt_extraInitializers), __runInitializers(this, _updatedAt_initializers, void 0));
|
|
230
|
+
nextAttemptAt = (__runInitializers(this, _updatedAt_extraInitializers), __runInitializers(this, _nextAttemptAt_initializers, void 0));
|
|
231
|
+
expiresAt = (__runInitializers(this, _nextAttemptAt_extraInitializers), __runInitializers(this, _expiresAt_initializers, void 0));
|
|
232
|
+
/** MUST BE ABSENT while the item is not leased. */
|
|
233
|
+
leaseToken = (__runInitializers(this, _expiresAt_extraInitializers), __runInitializers(this, _leaseToken_initializers, void 0));
|
|
234
|
+
/** MUST BE ABSENT while the item is not leased. */
|
|
235
|
+
leaseExpiresAt = (__runInitializers(this, _leaseToken_extraInitializers), __runInitializers(this, _leaseExpiresAt_initializers, void 0));
|
|
236
|
+
/** MUST BE ABSENT until cancellation races with an in-flight send. */
|
|
237
|
+
cancelRequestedAt = (__runInitializers(this, _leaseExpiresAt_extraInitializers), __runInitializers(this, _cancelRequestedAt_initializers, void 0));
|
|
238
|
+
/** MUST BE ABSENT until an in-flight cancellation records its terminal reason. */
|
|
239
|
+
cancelErrorCode = (__runInitializers(this, _cancelRequestedAt_extraInitializers), __runInitializers(this, _cancelErrorCode_initializers, void 0));
|
|
240
|
+
/** MUST BE ABSENT before a terminal transition. */
|
|
241
|
+
terminalAt = (__runInitializers(this, _cancelErrorCode_extraInitializers), __runInitializers(this, _terminalAt_initializers, void 0));
|
|
242
|
+
pushServiceStatusCode = (__runInitializers(this, _terminalAt_extraInitializers), __runInitializers(this, _pushServiceStatusCode_initializers, null));
|
|
243
|
+
errorCode = (__runInitializers(this, _pushServiceStatusCode_extraInitializers), __runInitializers(this, _errorCode_initializers, null));
|
|
244
|
+
/** MUST BE ABSENT until terminal retention begins. */
|
|
245
|
+
purgeAt = (__runInitializers(this, _errorCode_extraInitializers), __runInitializers(this, _purgeAt_initializers, void 0));
|
|
246
|
+
static getNativeCollection() {
|
|
247
|
+
return getDb().mongoDb.collection('WebPushSpoolDoc');
|
|
248
|
+
}
|
|
249
|
+
async createSavableObject() {
|
|
250
|
+
const savable = await super.createSavableObject();
|
|
251
|
+
for (const field of [
|
|
252
|
+
'subscriptionEnvelope',
|
|
253
|
+
'payloadEnvelope',
|
|
254
|
+
'leaseToken',
|
|
255
|
+
'leaseExpiresAt',
|
|
256
|
+
'cancelRequestedAt',
|
|
257
|
+
'cancelErrorCode',
|
|
258
|
+
'terminalAt',
|
|
259
|
+
'purgeAt',
|
|
260
|
+
]) {
|
|
261
|
+
if (savable[field] === undefined)
|
|
262
|
+
delete savable[field];
|
|
263
|
+
}
|
|
264
|
+
savable.topic = savable.topic ?? null;
|
|
265
|
+
savable.pushServiceStatusCode = savable.pushServiceStatusCode ?? null;
|
|
266
|
+
savable.errorCode = savable.errorCode ?? null;
|
|
267
|
+
return savable;
|
|
268
|
+
}
|
|
269
|
+
constructor() {
|
|
270
|
+
super(...arguments);
|
|
271
|
+
__runInitializers(this, _purgeAt_extraInitializers);
|
|
272
|
+
}
|
|
273
|
+
};
|
|
274
|
+
return WebPushSpoolDoc = _classThis;
|
|
275
|
+
})();
|
|
276
|
+
export { WebPushSpoolDoc };
|
|
277
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy53ZWJwdXNoLXNwb29sLmRvYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RzL2RiL2RvY3VtZW50cy9jbGFzc2VzLndlYnB1c2gtc3Bvb2wuZG9jLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUd2RCxNQUFNLEtBQUssR0FBRyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7SUFHeEMsZUFBZTs0QkFEM0IsT0FBTyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7Ozs7c0JBQ1AsT0FBTyxDQUFDLFNBQVMsQ0FBQyxjQUFjOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OytCQUF4QyxTQUFRLFdBR3BDOzs7OzhCQUNFLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO3lDQUd4QixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTtxQ0FHeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7K0NBR3hCLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO3dDQUl4QixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTtxQ0FHeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7Z0RBR3hCLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO3lDQUd4QixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTswQ0FHeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJ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
|
|
@@ -24,5 +24,8 @@ export * from './classes.dns-record.doc.js';
|
|
|
24
24
|
export * from './classes.acme-config.doc.js';
|
|
25
25
|
export * from './classes.email-domain.doc.js';
|
|
26
26
|
export * from './classes.email-server-settings.doc.js';
|
|
27
|
+
export * from './classes.webpush-binding.doc.js';
|
|
28
|
+
export * from './classes.webpush-admission.doc.js';
|
|
29
|
+
export * from './classes.webpush-spool.doc.js';
|
|
27
30
|
export * from './classes.smartmta-storage.doc.js';
|
|
28
31
|
export * from './classes.ops-config-event.doc.js';
|
|
@@ -33,6 +33,10 @@ export * from './classes.acme-config.doc.js';
|
|
|
33
33
|
// Email domain management
|
|
34
34
|
export * from './classes.email-domain.doc.js';
|
|
35
35
|
export * from './classes.email-server-settings.doc.js';
|
|
36
|
+
// Web Push provider documents
|
|
37
|
+
export * from './classes.webpush-binding.doc.js';
|
|
38
|
+
export * from './classes.webpush-admission.doc.js';
|
|
39
|
+
export * from './classes.webpush-spool.doc.js';
|
|
36
40
|
export * from './classes.smartmta-storage.doc.js';
|
|
37
41
|
export * from './classes.ops-config-event.doc.js';
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90cy9kYi9kb2N1bWVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsOEJBQThCO0FBQzlCLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyx3Q0FBd0MsQ0FBQztBQUV2RCwwQkFBMEI7QUFDMUIsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsaUNBQWlDLENBQUM7QUFFaEQsdUJBQXVCO0FBQ3ZCLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw2QkFBNkIsQ0FBQztBQUU1QywrQkFBK0I7QUFDL0IsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsK0JBQStCLENBQUM7QUFFOUMsa0NBQWtDO0FBQ2xDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyw4Q0FBOEMsQ0FBQztBQUU3RCwwQkFBMEI7QUFDMUIsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHFDQUFxQyxDQUFDO0FBRXBELDJDQUEyQztBQUMzQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw2QkFBNkIsQ0FBQztBQUU1QyxpQ0FBaUM7QUFDakMsY0FBYyw4QkFBOEIsQ0FBQztBQUU3QywwQkFBMEI7QUFDMUIsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHdDQUF3QyxDQUFDO0FBRXZELDhCQUE4QjtBQUM5QixjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsbUNBQW1DLENBQUMifQ==
|
|
@@ -47,6 +47,10 @@ export interface IAcceptRawEmailOptions {
|
|
|
47
47
|
processAfterAccept?: boolean;
|
|
48
48
|
/** Explicit direction override for programmatic submitters. Defaults to the session-authenticated rule. */
|
|
49
49
|
direction?: TCachedEmailDirection;
|
|
50
|
+
/** Exact authenticated outbound identity and replay metadata. */
|
|
51
|
+
submissionCredentialId?: string;
|
|
52
|
+
submissionIdempotencyKey?: string;
|
|
53
|
+
submissionDigest?: string;
|
|
50
54
|
}
|
|
51
55
|
/**
|
|
52
56
|
* Accept-then-spool pipeline for inbound SMTP messages: persists accepted
|
|
@@ -120,6 +124,7 @@ export declare class AcceptedEmailSpool {
|
|
|
120
124
|
private updateSmartMtaRouteData;
|
|
121
125
|
readRawMessage(cachedEmailArg: CachedEmail): Promise<plugins.buffer.Buffer>;
|
|
122
126
|
deleteRawMessage(cachedEmailArg: CachedEmail): Promise<void>;
|
|
127
|
+
private cleanupRawMessageAfterSaveFailure;
|
|
123
128
|
private persistRawMessage;
|
|
124
129
|
private runCachedEmailUpdate;
|
|
125
130
|
private trackUpdatePromise;
|