@serve.zone/dcrouter 11.23.4 → 12.0.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/dist_serve/bundle.js +1 -1
- package/dist_ts/00_commitinfo_data.js +2 -2
- package/dist_ts/classes.cert-provision-scheduler.d.ts +6 -8
- package/dist_ts/classes.cert-provision-scheduler.js +37 -17
- package/dist_ts/classes.dcrouter.d.ts +15 -29
- package/dist_ts/classes.dcrouter.js +96 -91
- package/dist_ts/classes.storage-cert-manager.d.ts +3 -6
- package/dist_ts/classes.storage-cert-manager.js +35 -25
- package/dist_ts/config/classes.api-token-manager.d.ts +1 -3
- package/dist_ts/config/classes.api-token-manager.js +45 -15
- package/dist_ts/config/classes.route-config-manager.d.ts +1 -3
- package/dist_ts/config/classes.route-config-manager.js +63 -25
- package/dist_ts/{cache → db}/classes.cache.cleaner.d.ts +3 -3
- package/dist_ts/db/classes.cache.cleaner.js +130 -0
- package/dist_ts/{cache → db}/classes.cached.document.js +1 -1
- package/dist_ts/db/classes.dcrouter-db.d.ts +70 -0
- package/dist_ts/db/classes.dcrouter-db.js +146 -0
- package/dist_ts/db/documents/classes.accounting-session.doc.d.ts +32 -0
- package/dist_ts/db/documents/classes.accounting-session.doc.js +214 -0
- package/dist_ts/db/documents/classes.acme-cert.doc.d.ts +13 -0
- package/dist_ts/db/documents/classes.acme-cert.doc.js +109 -0
- package/dist_ts/db/documents/classes.api-token.doc.d.ts +18 -0
- package/dist_ts/db/documents/classes.api-token.doc.js +127 -0
- package/dist_ts/{cache → db}/documents/classes.cached.email.js +3 -3
- package/dist_ts/{cache → db}/documents/classes.cached.ip.reputation.js +3 -3
- package/dist_ts/db/documents/classes.cert-backoff.doc.d.ts +11 -0
- package/dist_ts/db/documents/classes.cert-backoff.doc.js +97 -0
- package/dist_ts/db/documents/classes.proxy-cert.doc.d.ts +12 -0
- package/dist_ts/db/documents/classes.proxy-cert.doc.js +103 -0
- package/dist_ts/db/documents/classes.remote-ingress-edge.doc.d.ts +17 -0
- package/dist_ts/db/documents/classes.remote-ingress-edge.doc.js +130 -0
- package/dist_ts/db/documents/classes.route-override.doc.d.ts +10 -0
- package/dist_ts/db/documents/classes.route-override.doc.js +91 -0
- package/dist_ts/db/documents/classes.stored-route.doc.d.ts +12 -0
- package/dist_ts/db/documents/classes.stored-route.doc.js +103 -0
- package/dist_ts/db/documents/classes.vlan-mappings.doc.d.ts +15 -0
- package/dist_ts/db/documents/classes.vlan-mappings.doc.js +77 -0
- package/dist_ts/db/documents/classes.vpn-client.doc.d.ts +18 -0
- package/dist_ts/db/documents/classes.vpn-client.doc.js +136 -0
- package/dist_ts/db/documents/classes.vpn-server-keys.doc.d.ts +10 -0
- package/dist_ts/db/documents/classes.vpn-server-keys.doc.js +94 -0
- package/dist_ts/db/documents/index.d.ts +13 -0
- package/dist_ts/db/documents/index.js +20 -0
- package/dist_ts/{cache → db}/index.d.ts +1 -1
- package/dist_ts/db/index.js +9 -0
- package/dist_ts/opsserver/handlers/certificate.handler.js +66 -66
- package/dist_ts/opsserver/handlers/config.handler.js +14 -15
- package/dist_ts/paths.d.ts +0 -1
- package/dist_ts/paths.js +1 -2
- package/dist_ts/radius/classes.accounting.manager.d.ts +4 -12
- package/dist_ts/radius/classes.accounting.manager.js +80 -93
- package/dist_ts/radius/classes.radius.server.d.ts +1 -3
- package/dist_ts/radius/classes.radius.server.js +4 -6
- package/dist_ts/radius/classes.vlan.manager.d.ts +3 -7
- package/dist_ts/radius/classes.vlan.manager.js +21 -28
- package/dist_ts/radius/index.d.ts +1 -1
- package/dist_ts/radius/index.js +1 -1
- package/dist_ts/remoteingress/classes.remoteingress-manager.d.ts +3 -5
- package/dist_ts/remoteingress/classes.remoteingress-manager.js +41 -21
- package/dist_ts/security/classes.ipreputationchecker.d.ts +6 -21
- package/dist_ts/security/classes.ipreputationchecker.js +59 -138
- package/dist_ts/vpn/classes.vpn-manager.d.ts +4 -22
- package/dist_ts/vpn/classes.vpn-manager.js +40 -45
- package/dist_ts_oci_container/index.js +4 -4
- package/dist_ts_web/00_commitinfo_data.js +2 -2
- package/package.json +1 -1
- package/readme.storage.md +55 -91
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/classes.cert-provision-scheduler.ts +35 -17
- package/ts/classes.dcrouter.ts +113 -125
- package/ts/classes.storage-cert-manager.ts +34 -22
- package/ts/config/classes.api-token-manager.ts +42 -11
- package/ts/config/classes.route-config-manager.ts +57 -22
- package/ts/{cache → db}/classes.cache.cleaner.ts +6 -6
- package/ts/db/classes.dcrouter-db.ts +179 -0
- package/ts/db/documents/classes.accounting-session.doc.ts +106 -0
- package/ts/db/documents/classes.acme-cert.doc.ts +41 -0
- package/ts/db/documents/classes.api-token.doc.ts +56 -0
- package/ts/{cache → db}/documents/classes.cached.email.ts +2 -2
- package/ts/{cache → db}/documents/classes.cached.ip.reputation.ts +2 -2
- package/ts/db/documents/classes.cert-backoff.doc.ts +35 -0
- package/ts/db/documents/classes.proxy-cert.doc.ts +38 -0
- package/ts/db/documents/classes.remote-ingress-edge.doc.ts +54 -0
- package/ts/db/documents/classes.route-override.doc.ts +32 -0
- package/ts/db/documents/classes.stored-route.doc.ts +38 -0
- package/ts/db/documents/classes.vlan-mappings.doc.ts +32 -0
- package/ts/db/documents/classes.vpn-client.doc.ts +57 -0
- package/ts/db/documents/classes.vpn-server-keys.doc.ts +31 -0
- package/ts/db/documents/index.ts +24 -0
- package/ts/{cache → db}/index.ts +6 -2
- package/ts/opsserver/handlers/certificate.handler.ts +67 -65
- package/ts/opsserver/handlers/config.handler.ts +13 -14
- package/ts/paths.ts +0 -1
- package/ts/radius/classes.accounting.manager.ts +81 -103
- package/ts/radius/classes.radius.server.ts +3 -6
- package/ts/radius/classes.vlan.manager.ts +20 -32
- package/ts/radius/index.ts +1 -1
- package/ts/remoteingress/classes.remoteingress-manager.ts +40 -22
- package/ts/security/classes.ipreputationchecker.ts +103 -196
- package/ts/vpn/classes.vpn-manager.ts +44 -75
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/dist_ts/cache/classes.cache.cleaner.js +0 -130
- package/dist_ts/cache/classes.cachedb.d.ts +0 -60
- package/dist_ts/cache/classes.cachedb.js +0 -126
- package/dist_ts/cache/documents/index.d.ts +0 -2
- package/dist_ts/cache/documents/index.js +0 -3
- package/dist_ts/cache/index.js +0 -7
- package/dist_ts/storage/classes.storagemanager.d.ts +0 -83
- package/dist_ts/storage/classes.storagemanager.js +0 -348
- package/dist_ts/storage/index.d.ts +0 -1
- package/dist_ts/storage/index.js +0 -3
- package/ts/cache/classes.cachedb.ts +0 -155
- package/ts/cache/documents/index.ts +0 -2
- package/ts/storage/classes.storagemanager.ts +0 -404
- package/ts/storage/index.ts +0 -2
- /package/dist_ts/{cache → db}/classes.cached.document.d.ts +0 -0
- /package/dist_ts/{cache → db}/documents/classes.cached.email.d.ts +0 -0
- /package/dist_ts/{cache → db}/documents/classes.cached.ip.reputation.d.ts +0 -0
- /package/ts/{cache → db}/classes.cached.document.ts +0 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import * as plugins from '../plugins.js';
|
|
2
|
+
/**
|
|
3
|
+
* Configuration options for the unified DCRouter database
|
|
4
|
+
*/
|
|
5
|
+
export interface IDcRouterDbConfig {
|
|
6
|
+
/** External MongoDB connection URL. If absent, uses embedded LocalSmartDb. */
|
|
7
|
+
mongoDbUrl?: string;
|
|
8
|
+
/** Storage path for embedded LocalSmartDb data (default: ~/.serve.zone/dcrouter/tsmdb) */
|
|
9
|
+
storagePath?: string;
|
|
10
|
+
/** Database name (default: dcrouter) */
|
|
11
|
+
dbName?: string;
|
|
12
|
+
/** Enable debug logging */
|
|
13
|
+
debug?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* DcRouterDb - Unified database layer for DCRouter
|
|
17
|
+
*
|
|
18
|
+
* Replaces both StorageManager (flat-file key-value) and CacheDb (embedded MongoDB).
|
|
19
|
+
* All data is stored as smartdata document classes in a single database.
|
|
20
|
+
*
|
|
21
|
+
* Two modes:
|
|
22
|
+
* - **Embedded** (default): Spawns a LocalSmartDb (Rust-based MongoDB-compatible engine)
|
|
23
|
+
* - **External**: Connects to a provided MongoDB URL
|
|
24
|
+
*/
|
|
25
|
+
export declare class DcRouterDb {
|
|
26
|
+
private static instance;
|
|
27
|
+
private localSmartDb;
|
|
28
|
+
private smartdataDb;
|
|
29
|
+
private options;
|
|
30
|
+
private isStarted;
|
|
31
|
+
constructor(options?: IDcRouterDbConfig);
|
|
32
|
+
/**
|
|
33
|
+
* Get or create the singleton instance
|
|
34
|
+
*/
|
|
35
|
+
static getInstance(options?: IDcRouterDbConfig): DcRouterDb;
|
|
36
|
+
/**
|
|
37
|
+
* Reset the singleton instance (useful for testing)
|
|
38
|
+
*/
|
|
39
|
+
static resetInstance(): void;
|
|
40
|
+
/**
|
|
41
|
+
* Start the database
|
|
42
|
+
* - If mongoDbUrl is provided, connects directly to external MongoDB
|
|
43
|
+
* - Otherwise, starts an embedded LocalSmartDb instance
|
|
44
|
+
*/
|
|
45
|
+
start(): Promise<void>;
|
|
46
|
+
/**
|
|
47
|
+
* Stop the database
|
|
48
|
+
*/
|
|
49
|
+
stop(): Promise<void>;
|
|
50
|
+
/**
|
|
51
|
+
* Get the smartdata database instance for @Collection decorators
|
|
52
|
+
*/
|
|
53
|
+
getDb(): plugins.smartdata.SmartdataDb;
|
|
54
|
+
/**
|
|
55
|
+
* Check if the database is ready
|
|
56
|
+
*/
|
|
57
|
+
isReady(): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Whether running in embedded mode (LocalSmartDb) vs external MongoDB
|
|
60
|
+
*/
|
|
61
|
+
isEmbedded(): boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Get the storage path (only relevant for embedded mode)
|
|
64
|
+
*/
|
|
65
|
+
getStoragePath(): string;
|
|
66
|
+
/**
|
|
67
|
+
* Get the database name
|
|
68
|
+
*/
|
|
69
|
+
getDbName(): string;
|
|
70
|
+
}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import * as plugins from '../plugins.js';
|
|
2
|
+
import { logger } from '../logger.js';
|
|
3
|
+
import { defaultTsmDbPath } from '../paths.js';
|
|
4
|
+
/**
|
|
5
|
+
* DcRouterDb - Unified database layer for DCRouter
|
|
6
|
+
*
|
|
7
|
+
* Replaces both StorageManager (flat-file key-value) and CacheDb (embedded MongoDB).
|
|
8
|
+
* All data is stored as smartdata document classes in a single database.
|
|
9
|
+
*
|
|
10
|
+
* Two modes:
|
|
11
|
+
* - **Embedded** (default): Spawns a LocalSmartDb (Rust-based MongoDB-compatible engine)
|
|
12
|
+
* - **External**: Connects to a provided MongoDB URL
|
|
13
|
+
*/
|
|
14
|
+
export class DcRouterDb {
|
|
15
|
+
static instance = null;
|
|
16
|
+
localSmartDb = null;
|
|
17
|
+
smartdataDb;
|
|
18
|
+
options;
|
|
19
|
+
isStarted = false;
|
|
20
|
+
constructor(options = {}) {
|
|
21
|
+
this.options = {
|
|
22
|
+
mongoDbUrl: options.mongoDbUrl || '',
|
|
23
|
+
storagePath: options.storagePath || defaultTsmDbPath,
|
|
24
|
+
dbName: options.dbName || 'dcrouter',
|
|
25
|
+
debug: options.debug || false,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Get or create the singleton instance
|
|
30
|
+
*/
|
|
31
|
+
static getInstance(options) {
|
|
32
|
+
if (!DcRouterDb.instance) {
|
|
33
|
+
DcRouterDb.instance = new DcRouterDb(options);
|
|
34
|
+
}
|
|
35
|
+
return DcRouterDb.instance;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Reset the singleton instance (useful for testing)
|
|
39
|
+
*/
|
|
40
|
+
static resetInstance() {
|
|
41
|
+
DcRouterDb.instance = null;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Start the database
|
|
45
|
+
* - If mongoDbUrl is provided, connects directly to external MongoDB
|
|
46
|
+
* - Otherwise, starts an embedded LocalSmartDb instance
|
|
47
|
+
*/
|
|
48
|
+
async start() {
|
|
49
|
+
if (this.isStarted) {
|
|
50
|
+
logger.log('warn', 'DcRouterDb already started');
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
let connectionUri;
|
|
55
|
+
if (this.options.mongoDbUrl) {
|
|
56
|
+
// External MongoDB mode
|
|
57
|
+
connectionUri = this.options.mongoDbUrl;
|
|
58
|
+
logger.log('info', `DcRouterDb connecting to external MongoDB`);
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
// Embedded LocalSmartDb mode
|
|
62
|
+
await plugins.fsUtils.ensureDir(this.options.storagePath);
|
|
63
|
+
this.localSmartDb = new plugins.smartdb.LocalSmartDb({
|
|
64
|
+
folderPath: this.options.storagePath,
|
|
65
|
+
});
|
|
66
|
+
const connectionInfo = await this.localSmartDb.start();
|
|
67
|
+
connectionUri = connectionInfo.connectionUri;
|
|
68
|
+
if (this.options.debug) {
|
|
69
|
+
logger.log('debug', `LocalSmartDb started with URI: ${connectionUri}`);
|
|
70
|
+
}
|
|
71
|
+
logger.log('info', `DcRouterDb started embedded instance at ${this.options.storagePath}`);
|
|
72
|
+
}
|
|
73
|
+
// Initialize smartdata ORM
|
|
74
|
+
this.smartdataDb = new plugins.smartdata.SmartdataDb({
|
|
75
|
+
mongoDbUrl: connectionUri,
|
|
76
|
+
mongoDbName: this.options.dbName,
|
|
77
|
+
});
|
|
78
|
+
await this.smartdataDb.init();
|
|
79
|
+
this.isStarted = true;
|
|
80
|
+
logger.log('info', `DcRouterDb ready (db: ${this.options.dbName})`);
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
logger.log('error', `Failed to start DcRouterDb: ${error.message}`);
|
|
84
|
+
throw error;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Stop the database
|
|
89
|
+
*/
|
|
90
|
+
async stop() {
|
|
91
|
+
if (!this.isStarted) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
try {
|
|
95
|
+
// Close smartdata connection
|
|
96
|
+
if (this.smartdataDb) {
|
|
97
|
+
await this.smartdataDb.close();
|
|
98
|
+
}
|
|
99
|
+
// Stop embedded LocalSmartDb if running
|
|
100
|
+
if (this.localSmartDb) {
|
|
101
|
+
await this.localSmartDb.stop();
|
|
102
|
+
this.localSmartDb = null;
|
|
103
|
+
}
|
|
104
|
+
this.isStarted = false;
|
|
105
|
+
logger.log('info', 'DcRouterDb stopped');
|
|
106
|
+
}
|
|
107
|
+
catch (error) {
|
|
108
|
+
logger.log('error', `Error stopping DcRouterDb: ${error.message}`);
|
|
109
|
+
throw error;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Get the smartdata database instance for @Collection decorators
|
|
114
|
+
*/
|
|
115
|
+
getDb() {
|
|
116
|
+
if (!this.isStarted) {
|
|
117
|
+
throw new Error('DcRouterDb not started. Call start() first.');
|
|
118
|
+
}
|
|
119
|
+
return this.smartdataDb;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Check if the database is ready
|
|
123
|
+
*/
|
|
124
|
+
isReady() {
|
|
125
|
+
return this.isStarted;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Whether running in embedded mode (LocalSmartDb) vs external MongoDB
|
|
129
|
+
*/
|
|
130
|
+
isEmbedded() {
|
|
131
|
+
return !this.options.mongoDbUrl;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Get the storage path (only relevant for embedded mode)
|
|
135
|
+
*/
|
|
136
|
+
getStoragePath() {
|
|
137
|
+
return this.options.storagePath;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Get the database name
|
|
141
|
+
*/
|
|
142
|
+
getDbName() {
|
|
143
|
+
return this.options.dbName;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5kY3JvdXRlci1kYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RzL2RiL2NsYXNzZXMuZGNyb3V0ZXItZGIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFnQi9DOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBQ2IsTUFBTSxDQUFDLFFBQVEsR0FBc0IsSUFBSSxDQUFDO0lBRTFDLFlBQVksR0FBd0MsSUFBSSxDQUFDO0lBQ3pELFdBQVcsQ0FBaUM7SUFDNUMsT0FBTyxDQUE4QjtJQUNyQyxTQUFTLEdBQVksS0FBSyxDQUFDO0lBRW5DLFlBQVksVUFBNkIsRUFBRTtRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHO1lBQ2IsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVLElBQUksRUFBRTtZQUNwQyxXQUFXLEVBQUUsT0FBTyxDQUFDLFdBQVcsSUFBSSxnQkFBZ0I7WUFDcEQsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLElBQUksVUFBVTtZQUNwQyxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssSUFBSSxLQUFLO1NBQzlCLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQTJCO1FBQ25ELElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDekIsVUFBVSxDQUFDLFFBQVEsR0FBRyxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoRCxDQUFDO1FBQ0QsT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxhQUFhO1FBQ3pCLFVBQVUsQ0FBQyxRQUFRLEdBQUcs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
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as plugins from '../../plugins.js';
|
|
2
|
+
export declare class AccountingSessionDoc extends plugins.smartdata.SmartDataDbDoc<AccountingSessionDoc, AccountingSessionDoc> {
|
|
3
|
+
sessionId: string;
|
|
4
|
+
username: string;
|
|
5
|
+
macAddress: string;
|
|
6
|
+
nasIpAddress: string;
|
|
7
|
+
nasPort: number;
|
|
8
|
+
nasPortType: string;
|
|
9
|
+
nasIdentifier: string;
|
|
10
|
+
vlanId: number;
|
|
11
|
+
framedIpAddress: string;
|
|
12
|
+
calledStationId: string;
|
|
13
|
+
callingStationId: string;
|
|
14
|
+
startTime: number;
|
|
15
|
+
endTime: number;
|
|
16
|
+
lastUpdateTime: number;
|
|
17
|
+
status: 'active' | 'stopped' | 'terminated';
|
|
18
|
+
terminateCause: string;
|
|
19
|
+
inputOctets: number;
|
|
20
|
+
outputOctets: number;
|
|
21
|
+
inputPackets: number;
|
|
22
|
+
outputPackets: number;
|
|
23
|
+
sessionTime: number;
|
|
24
|
+
serviceType: string;
|
|
25
|
+
constructor();
|
|
26
|
+
static findBySessionId(sessionId: string): Promise<AccountingSessionDoc | null>;
|
|
27
|
+
static findActive(): Promise<AccountingSessionDoc[]>;
|
|
28
|
+
static findByUsername(username: string): Promise<AccountingSessionDoc[]>;
|
|
29
|
+
static findByNas(nasIpAddress: string): Promise<AccountingSessionDoc[]>;
|
|
30
|
+
static findByVlan(vlanId: number): Promise<AccountingSessionDoc[]>;
|
|
31
|
+
static findStoppedBefore(cutoffTime: number): Promise<AccountingSessionDoc[]>;
|
|
32
|
+
}
|
|
@@ -0,0 +1,214 @@
|
|
|
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 AccountingSessionDoc = (() => {
|
|
39
|
+
let _classDecorators = [plugins.smartdata.Collection(() => getDb())];
|
|
40
|
+
let _classDescriptor;
|
|
41
|
+
let _classExtraInitializers = [];
|
|
42
|
+
let _classThis;
|
|
43
|
+
let _classSuper = plugins.smartdata.SmartDataDbDoc;
|
|
44
|
+
let _sessionId_decorators;
|
|
45
|
+
let _sessionId_initializers = [];
|
|
46
|
+
let _sessionId_extraInitializers = [];
|
|
47
|
+
let _username_decorators;
|
|
48
|
+
let _username_initializers = [];
|
|
49
|
+
let _username_extraInitializers = [];
|
|
50
|
+
let _macAddress_decorators;
|
|
51
|
+
let _macAddress_initializers = [];
|
|
52
|
+
let _macAddress_extraInitializers = [];
|
|
53
|
+
let _nasIpAddress_decorators;
|
|
54
|
+
let _nasIpAddress_initializers = [];
|
|
55
|
+
let _nasIpAddress_extraInitializers = [];
|
|
56
|
+
let _nasPort_decorators;
|
|
57
|
+
let _nasPort_initializers = [];
|
|
58
|
+
let _nasPort_extraInitializers = [];
|
|
59
|
+
let _nasPortType_decorators;
|
|
60
|
+
let _nasPortType_initializers = [];
|
|
61
|
+
let _nasPortType_extraInitializers = [];
|
|
62
|
+
let _nasIdentifier_decorators;
|
|
63
|
+
let _nasIdentifier_initializers = [];
|
|
64
|
+
let _nasIdentifier_extraInitializers = [];
|
|
65
|
+
let _vlanId_decorators;
|
|
66
|
+
let _vlanId_initializers = [];
|
|
67
|
+
let _vlanId_extraInitializers = [];
|
|
68
|
+
let _framedIpAddress_decorators;
|
|
69
|
+
let _framedIpAddress_initializers = [];
|
|
70
|
+
let _framedIpAddress_extraInitializers = [];
|
|
71
|
+
let _calledStationId_decorators;
|
|
72
|
+
let _calledStationId_initializers = [];
|
|
73
|
+
let _calledStationId_extraInitializers = [];
|
|
74
|
+
let _callingStationId_decorators;
|
|
75
|
+
let _callingStationId_initializers = [];
|
|
76
|
+
let _callingStationId_extraInitializers = [];
|
|
77
|
+
let _startTime_decorators;
|
|
78
|
+
let _startTime_initializers = [];
|
|
79
|
+
let _startTime_extraInitializers = [];
|
|
80
|
+
let _endTime_decorators;
|
|
81
|
+
let _endTime_initializers = [];
|
|
82
|
+
let _endTime_extraInitializers = [];
|
|
83
|
+
let _lastUpdateTime_decorators;
|
|
84
|
+
let _lastUpdateTime_initializers = [];
|
|
85
|
+
let _lastUpdateTime_extraInitializers = [];
|
|
86
|
+
let _status_decorators;
|
|
87
|
+
let _status_initializers = [];
|
|
88
|
+
let _status_extraInitializers = [];
|
|
89
|
+
let _terminateCause_decorators;
|
|
90
|
+
let _terminateCause_initializers = [];
|
|
91
|
+
let _terminateCause_extraInitializers = [];
|
|
92
|
+
let _inputOctets_decorators;
|
|
93
|
+
let _inputOctets_initializers = [];
|
|
94
|
+
let _inputOctets_extraInitializers = [];
|
|
95
|
+
let _outputOctets_decorators;
|
|
96
|
+
let _outputOctets_initializers = [];
|
|
97
|
+
let _outputOctets_extraInitializers = [];
|
|
98
|
+
let _inputPackets_decorators;
|
|
99
|
+
let _inputPackets_initializers = [];
|
|
100
|
+
let _inputPackets_extraInitializers = [];
|
|
101
|
+
let _outputPackets_decorators;
|
|
102
|
+
let _outputPackets_initializers = [];
|
|
103
|
+
let _outputPackets_extraInitializers = [];
|
|
104
|
+
let _sessionTime_decorators;
|
|
105
|
+
let _sessionTime_initializers = [];
|
|
106
|
+
let _sessionTime_extraInitializers = [];
|
|
107
|
+
let _serviceType_decorators;
|
|
108
|
+
let _serviceType_initializers = [];
|
|
109
|
+
let _serviceType_extraInitializers = [];
|
|
110
|
+
var AccountingSessionDoc = class extends _classSuper {
|
|
111
|
+
static { _classThis = this; }
|
|
112
|
+
static {
|
|
113
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
114
|
+
_sessionId_decorators = [plugins.smartdata.unI(), plugins.smartdata.svDb()];
|
|
115
|
+
_username_decorators = [plugins.smartdata.svDb()];
|
|
116
|
+
_macAddress_decorators = [plugins.smartdata.svDb()];
|
|
117
|
+
_nasIpAddress_decorators = [plugins.smartdata.svDb()];
|
|
118
|
+
_nasPort_decorators = [plugins.smartdata.svDb()];
|
|
119
|
+
_nasPortType_decorators = [plugins.smartdata.svDb()];
|
|
120
|
+
_nasIdentifier_decorators = [plugins.smartdata.svDb()];
|
|
121
|
+
_vlanId_decorators = [plugins.smartdata.svDb()];
|
|
122
|
+
_framedIpAddress_decorators = [plugins.smartdata.svDb()];
|
|
123
|
+
_calledStationId_decorators = [plugins.smartdata.svDb()];
|
|
124
|
+
_callingStationId_decorators = [plugins.smartdata.svDb()];
|
|
125
|
+
_startTime_decorators = [plugins.smartdata.svDb()];
|
|
126
|
+
_endTime_decorators = [plugins.smartdata.svDb()];
|
|
127
|
+
_lastUpdateTime_decorators = [plugins.smartdata.svDb()];
|
|
128
|
+
_status_decorators = [plugins.smartdata.index(), plugins.smartdata.svDb()];
|
|
129
|
+
_terminateCause_decorators = [plugins.smartdata.svDb()];
|
|
130
|
+
_inputOctets_decorators = [plugins.smartdata.svDb()];
|
|
131
|
+
_outputOctets_decorators = [plugins.smartdata.svDb()];
|
|
132
|
+
_inputPackets_decorators = [plugins.smartdata.svDb()];
|
|
133
|
+
_outputPackets_decorators = [plugins.smartdata.svDb()];
|
|
134
|
+
_sessionTime_decorators = [plugins.smartdata.svDb()];
|
|
135
|
+
_serviceType_decorators = [plugins.smartdata.svDb()];
|
|
136
|
+
__esDecorate(null, null, _sessionId_decorators, { kind: "field", name: "sessionId", static: false, private: false, access: { has: obj => "sessionId" in obj, get: obj => obj.sessionId, set: (obj, value) => { obj.sessionId = value; } }, metadata: _metadata }, _sessionId_initializers, _sessionId_extraInitializers);
|
|
137
|
+
__esDecorate(null, null, _username_decorators, { kind: "field", name: "username", static: false, private: false, access: { has: obj => "username" in obj, get: obj => obj.username, set: (obj, value) => { obj.username = value; } }, metadata: _metadata }, _username_initializers, _username_extraInitializers);
|
|
138
|
+
__esDecorate(null, null, _macAddress_decorators, { kind: "field", name: "macAddress", static: false, private: false, access: { has: obj => "macAddress" in obj, get: obj => obj.macAddress, set: (obj, value) => { obj.macAddress = value; } }, metadata: _metadata }, _macAddress_initializers, _macAddress_extraInitializers);
|
|
139
|
+
__esDecorate(null, null, _nasIpAddress_decorators, { kind: "field", name: "nasIpAddress", static: false, private: false, access: { has: obj => "nasIpAddress" in obj, get: obj => obj.nasIpAddress, set: (obj, value) => { obj.nasIpAddress = value; } }, metadata: _metadata }, _nasIpAddress_initializers, _nasIpAddress_extraInitializers);
|
|
140
|
+
__esDecorate(null, null, _nasPort_decorators, { kind: "field", name: "nasPort", static: false, private: false, access: { has: obj => "nasPort" in obj, get: obj => obj.nasPort, set: (obj, value) => { obj.nasPort = value; } }, metadata: _metadata }, _nasPort_initializers, _nasPort_extraInitializers);
|
|
141
|
+
__esDecorate(null, null, _nasPortType_decorators, { kind: "field", name: "nasPortType", static: false, private: false, access: { has: obj => "nasPortType" in obj, get: obj => obj.nasPortType, set: (obj, value) => { obj.nasPortType = value; } }, metadata: _metadata }, _nasPortType_initializers, _nasPortType_extraInitializers);
|
|
142
|
+
__esDecorate(null, null, _nasIdentifier_decorators, { kind: "field", name: "nasIdentifier", static: false, private: false, access: { has: obj => "nasIdentifier" in obj, get: obj => obj.nasIdentifier, set: (obj, value) => { obj.nasIdentifier = value; } }, metadata: _metadata }, _nasIdentifier_initializers, _nasIdentifier_extraInitializers);
|
|
143
|
+
__esDecorate(null, null, _vlanId_decorators, { kind: "field", name: "vlanId", static: false, private: false, access: { has: obj => "vlanId" in obj, get: obj => obj.vlanId, set: (obj, value) => { obj.vlanId = value; } }, metadata: _metadata }, _vlanId_initializers, _vlanId_extraInitializers);
|
|
144
|
+
__esDecorate(null, null, _framedIpAddress_decorators, { kind: "field", name: "framedIpAddress", static: false, private: false, access: { has: obj => "framedIpAddress" in obj, get: obj => obj.framedIpAddress, set: (obj, value) => { obj.framedIpAddress = value; } }, metadata: _metadata }, _framedIpAddress_initializers, _framedIpAddress_extraInitializers);
|
|
145
|
+
__esDecorate(null, null, _calledStationId_decorators, { kind: "field", name: "calledStationId", static: false, private: false, access: { has: obj => "calledStationId" in obj, get: obj => obj.calledStationId, set: (obj, value) => { obj.calledStationId = value; } }, metadata: _metadata }, _calledStationId_initializers, _calledStationId_extraInitializers);
|
|
146
|
+
__esDecorate(null, null, _callingStationId_decorators, { kind: "field", name: "callingStationId", static: false, private: false, access: { has: obj => "callingStationId" in obj, get: obj => obj.callingStationId, set: (obj, value) => { obj.callingStationId = value; } }, metadata: _metadata }, _callingStationId_initializers, _callingStationId_extraInitializers);
|
|
147
|
+
__esDecorate(null, null, _startTime_decorators, { kind: "field", name: "startTime", static: false, private: false, access: { has: obj => "startTime" in obj, get: obj => obj.startTime, set: (obj, value) => { obj.startTime = value; } }, metadata: _metadata }, _startTime_initializers, _startTime_extraInitializers);
|
|
148
|
+
__esDecorate(null, null, _endTime_decorators, { kind: "field", name: "endTime", static: false, private: false, access: { has: obj => "endTime" in obj, get: obj => obj.endTime, set: (obj, value) => { obj.endTime = value; } }, metadata: _metadata }, _endTime_initializers, _endTime_extraInitializers);
|
|
149
|
+
__esDecorate(null, null, _lastUpdateTime_decorators, { kind: "field", name: "lastUpdateTime", static: false, private: false, access: { has: obj => "lastUpdateTime" in obj, get: obj => obj.lastUpdateTime, set: (obj, value) => { obj.lastUpdateTime = value; } }, metadata: _metadata }, _lastUpdateTime_initializers, _lastUpdateTime_extraInitializers);
|
|
150
|
+
__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);
|
|
151
|
+
__esDecorate(null, null, _terminateCause_decorators, { kind: "field", name: "terminateCause", static: false, private: false, access: { has: obj => "terminateCause" in obj, get: obj => obj.terminateCause, set: (obj, value) => { obj.terminateCause = value; } }, metadata: _metadata }, _terminateCause_initializers, _terminateCause_extraInitializers);
|
|
152
|
+
__esDecorate(null, null, _inputOctets_decorators, { kind: "field", name: "inputOctets", static: false, private: false, access: { has: obj => "inputOctets" in obj, get: obj => obj.inputOctets, set: (obj, value) => { obj.inputOctets = value; } }, metadata: _metadata }, _inputOctets_initializers, _inputOctets_extraInitializers);
|
|
153
|
+
__esDecorate(null, null, _outputOctets_decorators, { kind: "field", name: "outputOctets", static: false, private: false, access: { has: obj => "outputOctets" in obj, get: obj => obj.outputOctets, set: (obj, value) => { obj.outputOctets = value; } }, metadata: _metadata }, _outputOctets_initializers, _outputOctets_extraInitializers);
|
|
154
|
+
__esDecorate(null, null, _inputPackets_decorators, { kind: "field", name: "inputPackets", static: false, private: false, access: { has: obj => "inputPackets" in obj, get: obj => obj.inputPackets, set: (obj, value) => { obj.inputPackets = value; } }, metadata: _metadata }, _inputPackets_initializers, _inputPackets_extraInitializers);
|
|
155
|
+
__esDecorate(null, null, _outputPackets_decorators, { kind: "field", name: "outputPackets", static: false, private: false, access: { has: obj => "outputPackets" in obj, get: obj => obj.outputPackets, set: (obj, value) => { obj.outputPackets = value; } }, metadata: _metadata }, _outputPackets_initializers, _outputPackets_extraInitializers);
|
|
156
|
+
__esDecorate(null, null, _sessionTime_decorators, { kind: "field", name: "sessionTime", static: false, private: false, access: { has: obj => "sessionTime" in obj, get: obj => obj.sessionTime, set: (obj, value) => { obj.sessionTime = value; } }, metadata: _metadata }, _sessionTime_initializers, _sessionTime_extraInitializers);
|
|
157
|
+
__esDecorate(null, null, _serviceType_decorators, { kind: "field", name: "serviceType", static: false, private: false, access: { has: obj => "serviceType" in obj, get: obj => obj.serviceType, set: (obj, value) => { obj.serviceType = value; } }, metadata: _metadata }, _serviceType_initializers, _serviceType_extraInitializers);
|
|
158
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
159
|
+
AccountingSessionDoc = _classThis = _classDescriptor.value;
|
|
160
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
161
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
162
|
+
}
|
|
163
|
+
sessionId = __runInitializers(this, _sessionId_initializers, void 0);
|
|
164
|
+
username = (__runInitializers(this, _sessionId_extraInitializers), __runInitializers(this, _username_initializers, void 0));
|
|
165
|
+
macAddress = (__runInitializers(this, _username_extraInitializers), __runInitializers(this, _macAddress_initializers, void 0));
|
|
166
|
+
nasIpAddress = (__runInitializers(this, _macAddress_extraInitializers), __runInitializers(this, _nasIpAddress_initializers, void 0));
|
|
167
|
+
nasPort = (__runInitializers(this, _nasIpAddress_extraInitializers), __runInitializers(this, _nasPort_initializers, void 0));
|
|
168
|
+
nasPortType = (__runInitializers(this, _nasPort_extraInitializers), __runInitializers(this, _nasPortType_initializers, void 0));
|
|
169
|
+
nasIdentifier = (__runInitializers(this, _nasPortType_extraInitializers), __runInitializers(this, _nasIdentifier_initializers, void 0));
|
|
170
|
+
vlanId = (__runInitializers(this, _nasIdentifier_extraInitializers), __runInitializers(this, _vlanId_initializers, void 0));
|
|
171
|
+
framedIpAddress = (__runInitializers(this, _vlanId_extraInitializers), __runInitializers(this, _framedIpAddress_initializers, void 0));
|
|
172
|
+
calledStationId = (__runInitializers(this, _framedIpAddress_extraInitializers), __runInitializers(this, _calledStationId_initializers, void 0));
|
|
173
|
+
callingStationId = (__runInitializers(this, _calledStationId_extraInitializers), __runInitializers(this, _callingStationId_initializers, void 0));
|
|
174
|
+
startTime = (__runInitializers(this, _callingStationId_extraInitializers), __runInitializers(this, _startTime_initializers, void 0));
|
|
175
|
+
endTime = (__runInitializers(this, _startTime_extraInitializers), __runInitializers(this, _endTime_initializers, void 0));
|
|
176
|
+
lastUpdateTime = (__runInitializers(this, _endTime_extraInitializers), __runInitializers(this, _lastUpdateTime_initializers, void 0));
|
|
177
|
+
status = (__runInitializers(this, _lastUpdateTime_extraInitializers), __runInitializers(this, _status_initializers, void 0));
|
|
178
|
+
terminateCause = (__runInitializers(this, _status_extraInitializers), __runInitializers(this, _terminateCause_initializers, void 0));
|
|
179
|
+
inputOctets = (__runInitializers(this, _terminateCause_extraInitializers), __runInitializers(this, _inputOctets_initializers, void 0));
|
|
180
|
+
outputOctets = (__runInitializers(this, _inputOctets_extraInitializers), __runInitializers(this, _outputOctets_initializers, void 0));
|
|
181
|
+
inputPackets = (__runInitializers(this, _outputOctets_extraInitializers), __runInitializers(this, _inputPackets_initializers, void 0));
|
|
182
|
+
outputPackets = (__runInitializers(this, _inputPackets_extraInitializers), __runInitializers(this, _outputPackets_initializers, void 0));
|
|
183
|
+
sessionTime = (__runInitializers(this, _outputPackets_extraInitializers), __runInitializers(this, _sessionTime_initializers, void 0));
|
|
184
|
+
serviceType = (__runInitializers(this, _sessionTime_extraInitializers), __runInitializers(this, _serviceType_initializers, void 0));
|
|
185
|
+
constructor() {
|
|
186
|
+
super();
|
|
187
|
+
__runInitializers(this, _serviceType_extraInitializers);
|
|
188
|
+
}
|
|
189
|
+
static async findBySessionId(sessionId) {
|
|
190
|
+
return await AccountingSessionDoc.getInstance({ sessionId });
|
|
191
|
+
}
|
|
192
|
+
static async findActive() {
|
|
193
|
+
return await AccountingSessionDoc.getInstances({ status: 'active' });
|
|
194
|
+
}
|
|
195
|
+
static async findByUsername(username) {
|
|
196
|
+
return await AccountingSessionDoc.getInstances({ username });
|
|
197
|
+
}
|
|
198
|
+
static async findByNas(nasIpAddress) {
|
|
199
|
+
return await AccountingSessionDoc.getInstances({ nasIpAddress });
|
|
200
|
+
}
|
|
201
|
+
static async findByVlan(vlanId) {
|
|
202
|
+
return await AccountingSessionDoc.getInstances({ vlanId });
|
|
203
|
+
}
|
|
204
|
+
static async findStoppedBefore(cutoffTime) {
|
|
205
|
+
return await AccountingSessionDoc.getInstances({
|
|
206
|
+
status: { $in: ['stopped', 'terminated'] },
|
|
207
|
+
endTime: { $lt: cutoffTime, $gt: 0 },
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
};
|
|
211
|
+
return AccountingSessionDoc = _classThis;
|
|
212
|
+
})();
|
|
213
|
+
export { AccountingSessionDoc };
|
|
214
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5hY2NvdW50aW5nLXNlc3Npb24uZG9jLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdHMvZGIvZG9jdW1lbnRzL2NsYXNzZXMuYWNjb3VudGluZy1zZXNzaW9uLmRvYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFdkQsTUFBTSxLQUFLLEdBQUcsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBR3hDLG9CQUFvQjs0QkFEaEMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7Ozs7c0JBQ0YsT0FBTyxDQUFDLFNBQVMsQ0FBQyxjQUFjOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O29DQUF4QyxTQUFRLFdBQTRFOzs7O3FDQUNuSCxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxFQUN2QixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTtvQ0FHeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7c0NBR3hCLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO3dDQUd4QixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTttQ0FHeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7dUNBR3hCLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO3lDQUd4QixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTtrQ0FHeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7MkNBR3hC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
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as plugins from '../../plugins.js';
|
|
2
|
+
export declare class AcmeCertDoc extends plugins.smartdata.SmartDataDbDoc<AcmeCertDoc, AcmeCertDoc> {
|
|
3
|
+
domainName: string;
|
|
4
|
+
id: string;
|
|
5
|
+
created: number;
|
|
6
|
+
privateKey: string;
|
|
7
|
+
publicKey: string;
|
|
8
|
+
csr: string;
|
|
9
|
+
validUntil: number;
|
|
10
|
+
constructor();
|
|
11
|
+
static findByDomain(domainName: string): Promise<AcmeCertDoc | null>;
|
|
12
|
+
static findAll(): Promise<AcmeCertDoc[]>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
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 AcmeCertDoc = (() => {
|
|
39
|
+
let _classDecorators = [plugins.smartdata.Collection(() => getDb())];
|
|
40
|
+
let _classDescriptor;
|
|
41
|
+
let _classExtraInitializers = [];
|
|
42
|
+
let _classThis;
|
|
43
|
+
let _classSuper = plugins.smartdata.SmartDataDbDoc;
|
|
44
|
+
let _domainName_decorators;
|
|
45
|
+
let _domainName_initializers = [];
|
|
46
|
+
let _domainName_extraInitializers = [];
|
|
47
|
+
let _id_decorators;
|
|
48
|
+
let _id_initializers = [];
|
|
49
|
+
let _id_extraInitializers = [];
|
|
50
|
+
let _created_decorators;
|
|
51
|
+
let _created_initializers = [];
|
|
52
|
+
let _created_extraInitializers = [];
|
|
53
|
+
let _privateKey_decorators;
|
|
54
|
+
let _privateKey_initializers = [];
|
|
55
|
+
let _privateKey_extraInitializers = [];
|
|
56
|
+
let _publicKey_decorators;
|
|
57
|
+
let _publicKey_initializers = [];
|
|
58
|
+
let _publicKey_extraInitializers = [];
|
|
59
|
+
let _csr_decorators;
|
|
60
|
+
let _csr_initializers = [];
|
|
61
|
+
let _csr_extraInitializers = [];
|
|
62
|
+
let _validUntil_decorators;
|
|
63
|
+
let _validUntil_initializers = [];
|
|
64
|
+
let _validUntil_extraInitializers = [];
|
|
65
|
+
var AcmeCertDoc = class extends _classSuper {
|
|
66
|
+
static { _classThis = this; }
|
|
67
|
+
static {
|
|
68
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
69
|
+
_domainName_decorators = [plugins.smartdata.unI(), plugins.smartdata.svDb()];
|
|
70
|
+
_id_decorators = [plugins.smartdata.svDb()];
|
|
71
|
+
_created_decorators = [plugins.smartdata.svDb()];
|
|
72
|
+
_privateKey_decorators = [plugins.smartdata.svDb()];
|
|
73
|
+
_publicKey_decorators = [plugins.smartdata.svDb()];
|
|
74
|
+
_csr_decorators = [plugins.smartdata.svDb()];
|
|
75
|
+
_validUntil_decorators = [plugins.smartdata.svDb()];
|
|
76
|
+
__esDecorate(null, null, _domainName_decorators, { kind: "field", name: "domainName", static: false, private: false, access: { has: obj => "domainName" in obj, get: obj => obj.domainName, set: (obj, value) => { obj.domainName = value; } }, metadata: _metadata }, _domainName_initializers, _domainName_extraInitializers);
|
|
77
|
+
__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);
|
|
78
|
+
__esDecorate(null, null, _created_decorators, { kind: "field", name: "created", static: false, private: false, access: { has: obj => "created" in obj, get: obj => obj.created, set: (obj, value) => { obj.created = value; } }, metadata: _metadata }, _created_initializers, _created_extraInitializers);
|
|
79
|
+
__esDecorate(null, null, _privateKey_decorators, { kind: "field", name: "privateKey", static: false, private: false, access: { has: obj => "privateKey" in obj, get: obj => obj.privateKey, set: (obj, value) => { obj.privateKey = value; } }, metadata: _metadata }, _privateKey_initializers, _privateKey_extraInitializers);
|
|
80
|
+
__esDecorate(null, null, _publicKey_decorators, { kind: "field", name: "publicKey", static: false, private: false, access: { has: obj => "publicKey" in obj, get: obj => obj.publicKey, set: (obj, value) => { obj.publicKey = value; } }, metadata: _metadata }, _publicKey_initializers, _publicKey_extraInitializers);
|
|
81
|
+
__esDecorate(null, null, _csr_decorators, { kind: "field", name: "csr", static: false, private: false, access: { has: obj => "csr" in obj, get: obj => obj.csr, set: (obj, value) => { obj.csr = value; } }, metadata: _metadata }, _csr_initializers, _csr_extraInitializers);
|
|
82
|
+
__esDecorate(null, null, _validUntil_decorators, { kind: "field", name: "validUntil", static: false, private: false, access: { has: obj => "validUntil" in obj, get: obj => obj.validUntil, set: (obj, value) => { obj.validUntil = value; } }, metadata: _metadata }, _validUntil_initializers, _validUntil_extraInitializers);
|
|
83
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
84
|
+
AcmeCertDoc = _classThis = _classDescriptor.value;
|
|
85
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
86
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
87
|
+
}
|
|
88
|
+
domainName = __runInitializers(this, _domainName_initializers, void 0);
|
|
89
|
+
id = (__runInitializers(this, _domainName_extraInitializers), __runInitializers(this, _id_initializers, void 0));
|
|
90
|
+
created = (__runInitializers(this, _id_extraInitializers), __runInitializers(this, _created_initializers, void 0));
|
|
91
|
+
privateKey = (__runInitializers(this, _created_extraInitializers), __runInitializers(this, _privateKey_initializers, void 0));
|
|
92
|
+
publicKey = (__runInitializers(this, _privateKey_extraInitializers), __runInitializers(this, _publicKey_initializers, void 0));
|
|
93
|
+
csr = (__runInitializers(this, _publicKey_extraInitializers), __runInitializers(this, _csr_initializers, void 0));
|
|
94
|
+
validUntil = (__runInitializers(this, _csr_extraInitializers), __runInitializers(this, _validUntil_initializers, void 0));
|
|
95
|
+
constructor() {
|
|
96
|
+
super();
|
|
97
|
+
__runInitializers(this, _validUntil_extraInitializers);
|
|
98
|
+
}
|
|
99
|
+
static async findByDomain(domainName) {
|
|
100
|
+
return await AcmeCertDoc.getInstance({ domainName });
|
|
101
|
+
}
|
|
102
|
+
static async findAll() {
|
|
103
|
+
return await AcmeCertDoc.getInstances({});
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
return AcmeCertDoc = _classThis;
|
|
107
|
+
})();
|
|
108
|
+
export { AcmeCertDoc };
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5hY21lLWNlcnQuZG9jLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdHMvZGIvZG9jdW1lbnRzL2NsYXNzZXMuYWNtZS1jZXJ0LmRvYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFdkQsTUFBTSxLQUFLLEdBQUcsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBR3hDLFdBQVc7NEJBRHZCLE9BQU8sQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDOzs7O3NCQUNYLE9BQU8sQ0FBQyxTQUFTLENBQUMsY0FBYzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsyQkFBeEMsU0FBUSxXQUEwRDs7OztzQ0FDeEYsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsRUFDdkIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7OEJBR3hCLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO21DQUd4QixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTtzQ0FHeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7cUNBR3hCLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFOytCQUd4QixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTtzQ0FHeEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7WUFqQnpCLGdMQUFPLFVBQVUsNkJBQVYsVUFBVSwrRkFBVTtZQUczQix3SkFBTyxFQUFFLDZCQUFGLEVBQUUsK0VBQVU7WUFHbkIsdUtBQU8sT0FBTyw2QkFBUCxPQUFPLHlGQUFVO1lBR3hCLGdMQUFPLFVBQVUsNkJBQVYsVUFBVSwrRkFBVTtZQUczQiw2S0FBTyxTQUFTLDZCQUFULFNBQVMsNkZBQVU7WUFHMUIsMkpBQU8sR0FBRyw2QkFBSCxHQUFHLGlGQUFVO1lBR3BCLGdMQUFPLFVBQVUsNkJBQVYsVUFBVSwrRkFBVTtZQXJCN0IsNktBa0NDOzs7WUFsQ1ksdURBQVc7O1FBR2YsVUFBVSw2REFBVTtRQUdwQixFQUFFLCtHQUFVO1FBR1osT0FBTyw0R0FBVTtRQUdqQixVQUFVLG9IQUFVO1FBR3BCLFNBQVMsc0hBQVU7UUFHbkIsR0FBRywrR0FBVTtRQUdiLFVBQVUsZ0hBQVU7UUFFM0I7WUFDRSxLQUFLLEVBQUUsQ0FBQzs7U0FDVDtRQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLFVBQWtCO1lBQ2pELE9BQU8sTUFBTSxXQUFXLENBQUMsV0FBVyxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBRU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPO1lBQ3pCLE9BQU8sTUFBTSxXQUFXLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLENBQUM7Ozs7U0FqQ1UsV0FBVyJ9
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as plugins from '../../plugins.js';
|
|
2
|
+
import type { TApiTokenScope } from '../../../dist_ts_interfaces/data/route-management.js';
|
|
3
|
+
export declare class ApiTokenDoc extends plugins.smartdata.SmartDataDbDoc<ApiTokenDoc, ApiTokenDoc> {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
tokenHash: string;
|
|
7
|
+
scopes: TApiTokenScope[];
|
|
8
|
+
createdAt: number;
|
|
9
|
+
expiresAt: number | null;
|
|
10
|
+
lastUsedAt: number | null;
|
|
11
|
+
createdBy: string;
|
|
12
|
+
enabled: boolean;
|
|
13
|
+
constructor();
|
|
14
|
+
static findById(id: string): Promise<ApiTokenDoc | null>;
|
|
15
|
+
static findByTokenHash(tokenHash: string): Promise<ApiTokenDoc | null>;
|
|
16
|
+
static findAll(): Promise<ApiTokenDoc[]>;
|
|
17
|
+
static findEnabled(): Promise<ApiTokenDoc[]>;
|
|
18
|
+
}
|