@prosopo/database 2.2.2 → 2.3.1
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.
|
@@ -3,7 +3,6 @@ import type { TranslationKey } from "@prosopo/locale";
|
|
|
3
3
|
import { type Captcha, type CaptchaResult, type CaptchaSolution, CaptchaStates, type Dataset, type DatasetBase, type DatasetWithIds, type DatasetWithIdsAndTree, type Hash, type PendingCaptchaRequest, type PoWChallengeComponents, type PoWChallengeId, type RequestHeaders, type ScheduledTaskNames, type ScheduledTaskResult, type ScheduledTaskStatus } from "@prosopo/types";
|
|
4
4
|
import { type ClientRecord, type FrictionlessToken, type IPBlockRuleRecord, type IProviderDatabase, type PoWCaptchaRecord, type ScheduledTaskRecord, type SessionRecord, type SolutionRecord, type StoredStatus, type Tables, type UserAccountBlockRule, type UserAccountBlockRuleRecord, type UserCommitment, type UserCommitmentRecord, type UserSolutionRecord } from "@prosopo/types-database";
|
|
5
5
|
import type { IPBlockRuleMongo } from "@prosopo/types-database";
|
|
6
|
-
import type { DeleteResult } from "mongodb";
|
|
7
6
|
import type { ObjectId } from "mongoose";
|
|
8
7
|
import { MongoDatabase } from "../base/mongo.js";
|
|
9
8
|
declare enum TableNames {
|
|
@@ -39,8 +38,6 @@ export declare class ProviderDatabase extends MongoDatabase implements IProvider
|
|
|
39
38
|
storePowCaptchaRecord(challenge: PoWChallengeId, components: PoWChallengeComponents, difficulty: number, providerSignature: string, ipAddress: bigint, headers: RequestHeaders, serverChecked?: boolean, userSubmitted?: boolean, storedStatus?: StoredStatus, userSignature?: string): Promise<void>;
|
|
40
39
|
getPowCaptchaRecordByChallenge(challenge: string): Promise<PoWCaptchaRecord | null>;
|
|
41
40
|
updatePowCaptchaRecord(challenge: PoWChallengeId, result: CaptchaResult, serverChecked?: boolean, userSubmitted?: boolean, userSignature?: string): Promise<void>;
|
|
42
|
-
getProcessedDappUserSolutions(): Promise<UserSolutionRecord[]>;
|
|
43
|
-
getProcessedDappUserCommitments(): Promise<UserCommitmentRecord[]>;
|
|
44
41
|
getCheckedDappUserCommitments(): Promise<UserCommitmentRecord[]>;
|
|
45
42
|
getUnstoredDappUserCommitments(limit?: number, skip?: number): Promise<UserCommitmentRecord[]>;
|
|
46
43
|
markDappUserCommitmentsStored(commitmentIds: Hash[]): Promise<void>;
|
|
@@ -52,8 +49,6 @@ export declare class ProviderDatabase extends MongoDatabase implements IProvider
|
|
|
52
49
|
checkFrictionlessTokenRecord(token: string): Promise<boolean>;
|
|
53
50
|
storeSessionRecord(sessionRecord: SessionRecord): Promise<void>;
|
|
54
51
|
checkAndRemoveSession(sessionId: string): Promise<SessionRecord | undefined>;
|
|
55
|
-
removeProcessedDappUserSolutions(commitmentIds: string[]): Promise<DeleteResult | undefined>;
|
|
56
|
-
removeProcessedDappUserCommitments(commitmentIds: string[]): Promise<DeleteResult | undefined>;
|
|
57
52
|
storeDappUserPending(userAccount: string, requestHash: string, salt: string, deadlineTimestamp: number, requestedAtTimestamp: number, ipAddress: bigint): Promise<void>;
|
|
58
53
|
getDappUserPending(requestHash: string): Promise<PendingCaptchaRequest>;
|
|
59
54
|
updateDappUserPendingStatus(requestHash: string): Promise<void>;
|
|
@@ -76,8 +71,10 @@ export declare class ProviderDatabase extends MongoDatabase implements IProvider
|
|
|
76
71
|
getClientRecord(account: string): Promise<ClientRecord | undefined>;
|
|
77
72
|
getIPBlockRuleRecord(ipAddress: bigint): Promise<IPBlockRuleMongo | undefined>;
|
|
78
73
|
storeIPBlockRuleRecords(rules: IPBlockRuleRecord[]): Promise<void>;
|
|
74
|
+
removeIPBlockRuleRecords(ipAddresses: bigint[], dappAccount?: string): Promise<void>;
|
|
79
75
|
getUserBlockRuleRecord(userAccount: string, dappAccount: string): Promise<UserAccountBlockRuleRecord | undefined>;
|
|
80
76
|
storeUserBlockRuleRecords(rules: UserAccountBlockRule[]): Promise<void>;
|
|
77
|
+
removeUserBlockRuleRecords(userAccounts: string[], dappAccount?: string): Promise<void>;
|
|
81
78
|
}
|
|
82
79
|
export {};
|
|
83
80
|
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/databases/provider.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,MAAM,EAAmC,MAAM,iBAAiB,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/databases/provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isHex } from "@polkadot/util/is";
|
|
2
2
|
import { ProsopoDBError, ProsopoEnvError } from "@prosopo/common";
|
|
3
|
-
import { CaptchaStates, CaptchaStatus, DatasetWithIdsAndTreeSchema, } from "@prosopo/types";
|
|
3
|
+
import { ApiParams, CaptchaStates, CaptchaStatus, DatasetWithIdsAndTreeSchema, } from "@prosopo/types";
|
|
4
4
|
import { CaptchaRecordSchema, ClientRecordSchema, DatasetRecordSchema, FrictionlessTokenRecordSchema, IPBlockRuleRecordSchema, PendingRecordSchema, PoWCaptchaRecordSchema, ScheduledTaskRecordSchema, ScheduledTaskSchema, SessionRecordSchema, SolutionRecordSchema, StoredStatusNames, UserAccountBlockRuleSchema, UserCommitmentRecordSchema, UserCommitmentSchema, UserSolutionRecordSchema, } from "@prosopo/types-database";
|
|
5
5
|
import { MongoDatabase } from "../base/mongo.js";
|
|
6
6
|
var TableNames;
|
|
@@ -125,7 +125,10 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
125
125
|
contentTree: parsedDataset.contentTree,
|
|
126
126
|
solutionTree: parsedDataset.solutionTree,
|
|
127
127
|
};
|
|
128
|
-
|
|
128
|
+
const filter = {
|
|
129
|
+
datasetId: parsedDataset.datasetId,
|
|
130
|
+
};
|
|
131
|
+
await this.tables.dataset?.updateOne(filter, { $set: datasetDoc }, { upsert: true });
|
|
129
132
|
const captchaDocs = parsedDataset.captchas.map(({ solution, ...captcha }, index) => ({
|
|
130
133
|
...captcha,
|
|
131
134
|
datasetId: parsedDataset.datasetId,
|
|
@@ -173,22 +176,20 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
173
176
|
}
|
|
174
177
|
}
|
|
175
178
|
async getSolutions(datasetId) {
|
|
179
|
+
const filter = { datasetId };
|
|
176
180
|
const docs = await this.tables?.solution
|
|
177
|
-
.find(
|
|
181
|
+
.find(filter)
|
|
178
182
|
.lean();
|
|
179
183
|
return docs ? docs : [];
|
|
180
184
|
}
|
|
181
185
|
async getDataset(datasetId) {
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
.lean();
|
|
186
|
+
const filter = { datasetId };
|
|
187
|
+
const datasetDoc = await this.tables?.dataset.findOne(filter).lean();
|
|
185
188
|
if (datasetDoc) {
|
|
186
189
|
const { datasetContentId, format, contentTree, solutionTree } = datasetDoc;
|
|
187
|
-
const captchas = (await this.tables?.captcha.find(
|
|
190
|
+
const captchas = (await this.tables?.captcha.find(filter).lean()) || [];
|
|
191
|
+
const solutions = (await this.tables?.solution.find(filter).lean()) ||
|
|
188
192
|
[];
|
|
189
|
-
const solutions = (await this.tables?.solution
|
|
190
|
-
.find({ datasetId })
|
|
191
|
-
.lean()) || [];
|
|
192
193
|
const solutionsKeyed = {};
|
|
193
194
|
for (const solution of solutions) {
|
|
194
195
|
solutionsKeyed[solution.captchaId] = solution;
|
|
@@ -225,8 +226,9 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
225
226
|
});
|
|
226
227
|
}
|
|
227
228
|
const sampleSize = size ? Math.abs(Math.trunc(size)) : 1;
|
|
229
|
+
const filter = { datasetId, solved };
|
|
228
230
|
const cursor = this.tables?.captcha.aggregate([
|
|
229
|
-
{ $match:
|
|
231
|
+
{ $match: filter },
|
|
230
232
|
{ $sample: { size: sampleSize } },
|
|
231
233
|
{
|
|
232
234
|
$project: {
|
|
@@ -253,9 +255,8 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
253
255
|
});
|
|
254
256
|
}
|
|
255
257
|
async getCaptchaById(captchaId) {
|
|
256
|
-
const
|
|
257
|
-
|
|
258
|
-
.lean();
|
|
258
|
+
const filter = { captchaId: { $in: captchaId } };
|
|
259
|
+
const cursor = this.tables?.captcha.find(filter).lean();
|
|
259
260
|
const docs = await cursor;
|
|
260
261
|
if (docs?.length) {
|
|
261
262
|
return docs.map(({ _id, ...keepAttrs }) => keepAttrs);
|
|
@@ -271,7 +272,8 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
271
272
|
});
|
|
272
273
|
}
|
|
273
274
|
try {
|
|
274
|
-
|
|
275
|
+
const filter = { datasetId };
|
|
276
|
+
await this.tables?.captcha.updateOne(filter, { $set: captcha }, { upsert: false });
|
|
275
277
|
}
|
|
276
278
|
catch (err) {
|
|
277
279
|
throw new ProsopoDBError("DATABASE.CAPTCHA_UPDATE_FAILED", {
|
|
@@ -280,7 +282,8 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
280
282
|
}
|
|
281
283
|
}
|
|
282
284
|
async removeCaptchas(captchaIds) {
|
|
283
|
-
|
|
285
|
+
const filter = { captchaId: { $in: captchaIds } };
|
|
286
|
+
await this.tables?.captcha.deleteMany(filter);
|
|
284
287
|
}
|
|
285
288
|
async getDatasetDetails(datasetId) {
|
|
286
289
|
if (!isHex(datasetId)) {
|
|
@@ -288,8 +291,9 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
288
291
|
context: { failedFuncName: this.getDatasetDetails.name, datasetId },
|
|
289
292
|
});
|
|
290
293
|
}
|
|
294
|
+
const filter = { datasetId };
|
|
291
295
|
const doc = await this.tables?.dataset
|
|
292
|
-
.findOne(
|
|
296
|
+
.findOne(filter)
|
|
293
297
|
.lean();
|
|
294
298
|
if (doc) {
|
|
295
299
|
return doc;
|
|
@@ -307,12 +311,18 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
307
311
|
lastUpdatedTimestamp: Date.now(),
|
|
308
312
|
});
|
|
309
313
|
if (captchas.length) {
|
|
310
|
-
|
|
314
|
+
const filter = {
|
|
311
315
|
id: commit.id,
|
|
312
|
-
}
|
|
316
|
+
};
|
|
317
|
+
await this.tables?.commitment.updateOne(filter, commitmentRecord, {
|
|
318
|
+
upsert: true,
|
|
319
|
+
});
|
|
313
320
|
const ops = captchas.map((captcha) => ({
|
|
314
321
|
updateOne: {
|
|
315
|
-
filter: {
|
|
322
|
+
filter: {
|
|
323
|
+
commitmentId: commit.id,
|
|
324
|
+
captchaId: captcha.captchaId,
|
|
325
|
+
},
|
|
316
326
|
update: {
|
|
317
327
|
$set: {
|
|
318
328
|
captchaId: captcha.captchaId,
|
|
@@ -381,9 +391,8 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
381
391
|
});
|
|
382
392
|
}
|
|
383
393
|
try {
|
|
384
|
-
const
|
|
385
|
-
|
|
386
|
-
.lean();
|
|
394
|
+
const filter = { challenge };
|
|
395
|
+
const record = await this.tables.powcaptcha.findOne(filter).lean();
|
|
387
396
|
if (record) {
|
|
388
397
|
this.logger.info("PowCaptcha record retrieved successfully", {
|
|
389
398
|
challenge,
|
|
@@ -452,30 +461,20 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
452
461
|
});
|
|
453
462
|
}
|
|
454
463
|
}
|
|
455
|
-
async getProcessedDappUserSolutions() {
|
|
456
|
-
const docs = await this.tables?.usersolution
|
|
457
|
-
.find({ processed: true })
|
|
458
|
-
.lean();
|
|
459
|
-
return docs || [];
|
|
460
|
-
}
|
|
461
|
-
async getProcessedDappUserCommitments() {
|
|
462
|
-
const docs = await this.tables?.commitment
|
|
463
|
-
.find({ processed: true })
|
|
464
|
-
.lean();
|
|
465
|
-
return docs || [];
|
|
466
|
-
}
|
|
467
464
|
async getCheckedDappUserCommitments() {
|
|
465
|
+
const filter = { [StoredStatusNames.serverChecked]: true };
|
|
468
466
|
const docs = await this.tables?.commitment
|
|
469
|
-
.find(
|
|
467
|
+
.find(filter)
|
|
470
468
|
.lean();
|
|
471
469
|
return docs || [];
|
|
472
470
|
}
|
|
473
471
|
async getUnstoredDappUserCommitments(limit = 1000, skip = 0) {
|
|
472
|
+
const filterNoStoredTimestamp = { storedAtTimestamp: { $exists: false } };
|
|
474
473
|
const docs = await this.tables?.commitment.aggregate([
|
|
475
474
|
{
|
|
476
475
|
$match: {
|
|
477
476
|
$or: [
|
|
478
|
-
|
|
477
|
+
filterNoStoredTimestamp,
|
|
479
478
|
{
|
|
480
479
|
$expr: {
|
|
481
480
|
$lt: [
|
|
@@ -523,11 +522,12 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
523
522
|
await this.tables?.commitment.updateMany({ id: { $in: commitmentIds } }, { $set: updateDoc }, { upsert: false });
|
|
524
523
|
}
|
|
525
524
|
async getUnstoredDappUserPoWCommitments(limit = 1000, skip = 0) {
|
|
525
|
+
const filterNoStoredTimestamp = { storedAtTimestamp: { $exists: false } };
|
|
526
526
|
const docs = await this.tables?.powcaptcha.aggregate([
|
|
527
527
|
{
|
|
528
528
|
$match: {
|
|
529
529
|
$or: [
|
|
530
|
-
|
|
530
|
+
filterNoStoredTimestamp,
|
|
531
531
|
{
|
|
532
532
|
$expr: {
|
|
533
533
|
$lt: [
|
|
@@ -581,7 +581,8 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
581
581
|
return doc._id;
|
|
582
582
|
}
|
|
583
583
|
async checkFrictionlessTokenRecord(token) {
|
|
584
|
-
const
|
|
584
|
+
const filter = { token };
|
|
585
|
+
const record = await this.tables.frictionlessToken.findOne(filter);
|
|
585
586
|
return !!record;
|
|
586
587
|
}
|
|
587
588
|
async storeSessionRecord(sessionRecord) {
|
|
@@ -596,9 +597,10 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
596
597
|
}
|
|
597
598
|
}
|
|
598
599
|
async checkAndRemoveSession(sessionId) {
|
|
600
|
+
const filter = { sessionId };
|
|
599
601
|
try {
|
|
600
602
|
const session = await this.tables.session
|
|
601
|
-
.findOneAndDelete(
|
|
603
|
+
.findOneAndDelete(filter)
|
|
602
604
|
.lean();
|
|
603
605
|
return session || undefined;
|
|
604
606
|
}
|
|
@@ -609,18 +611,6 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
609
611
|
});
|
|
610
612
|
}
|
|
611
613
|
}
|
|
612
|
-
async removeProcessedDappUserSolutions(commitmentIds) {
|
|
613
|
-
return this.tables?.usersolution.deleteMany({
|
|
614
|
-
processed: true,
|
|
615
|
-
commitmentId: { $in: commitmentIds },
|
|
616
|
-
});
|
|
617
|
-
}
|
|
618
|
-
async removeProcessedDappUserCommitments(commitmentIds) {
|
|
619
|
-
return this.tables?.commitment.deleteMany({
|
|
620
|
-
processed: true,
|
|
621
|
-
id: { $in: commitmentIds },
|
|
622
|
-
});
|
|
623
|
-
}
|
|
624
614
|
async storeDappUserPending(userAccount, requestHash, salt, deadlineTimestamp, requestedAtTimestamp, ipAddress) {
|
|
625
615
|
if (!isHex(requestHash)) {
|
|
626
616
|
throw new ProsopoDBError("DATABASE.INVALID_HASH", {
|
|
@@ -647,9 +637,10 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
647
637
|
context: { failedFuncName: this.getDappUserPending.name, requestHash },
|
|
648
638
|
});
|
|
649
639
|
}
|
|
650
|
-
const
|
|
651
|
-
.
|
|
652
|
-
|
|
640
|
+
const filter = {
|
|
641
|
+
[ApiParams.requestHash]: requestHash,
|
|
642
|
+
};
|
|
643
|
+
const doc = await this.tables?.pending.findOne(filter).lean();
|
|
653
644
|
if (doc) {
|
|
654
645
|
return doc;
|
|
655
646
|
}
|
|
@@ -666,19 +657,21 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
666
657
|
},
|
|
667
658
|
});
|
|
668
659
|
}
|
|
669
|
-
|
|
660
|
+
const filter = {
|
|
661
|
+
[ApiParams.requestHash]: requestHash,
|
|
662
|
+
};
|
|
663
|
+
await this.tables?.pending.updateOne(filter, {
|
|
670
664
|
$set: {
|
|
671
665
|
[CaptchaStatus.pending]: false,
|
|
672
666
|
},
|
|
673
667
|
}, { upsert: true });
|
|
674
668
|
}
|
|
675
669
|
async getAllCaptchasByDatasetId(datasetId, state) {
|
|
676
|
-
const
|
|
677
|
-
.find({
|
|
670
|
+
const filter = {
|
|
678
671
|
datasetId,
|
|
679
672
|
solved: state === CaptchaStates.Solved,
|
|
680
|
-
}
|
|
681
|
-
|
|
673
|
+
};
|
|
674
|
+
const cursor = this.tables?.captcha.find(filter).lean();
|
|
682
675
|
const docs = await cursor;
|
|
683
676
|
if (docs) {
|
|
684
677
|
return docs.map(({ _id, ...keepAttrs }) => keepAttrs);
|
|
@@ -686,9 +679,10 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
686
679
|
throw new ProsopoEnvError("DATABASE.CAPTCHA_GET_FAILED");
|
|
687
680
|
}
|
|
688
681
|
async getAllDappUserSolutions(captchaId) {
|
|
689
|
-
const
|
|
690
|
-
|
|
691
|
-
|
|
682
|
+
const filter = {
|
|
683
|
+
captchaId: { $in: captchaId },
|
|
684
|
+
};
|
|
685
|
+
const cursor = this.tables?.usersolution?.find(filter).lean();
|
|
692
686
|
const docs = await cursor;
|
|
693
687
|
if (docs) {
|
|
694
688
|
return docs.map(({ _id, ...keepAttrs }) => keepAttrs);
|
|
@@ -755,11 +749,11 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
755
749
|
});
|
|
756
750
|
}
|
|
757
751
|
async getDappUserSolutionById(commitmentId) {
|
|
758
|
-
const
|
|
759
|
-
?.findOne({
|
|
752
|
+
const filter = {
|
|
760
753
|
commitmentId: commitmentId,
|
|
761
|
-
}
|
|
762
|
-
|
|
754
|
+
};
|
|
755
|
+
const project = { projection: { _id: 0 } };
|
|
756
|
+
const cursor = this.tables?.usersolution?.findOne(filter, project).lean();
|
|
763
757
|
const doc = await cursor;
|
|
764
758
|
if (doc) {
|
|
765
759
|
return doc;
|
|
@@ -769,15 +763,22 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
769
763
|
});
|
|
770
764
|
}
|
|
771
765
|
async getDappUserCommitmentById(commitmentId) {
|
|
766
|
+
const filter = { id: commitmentId };
|
|
772
767
|
const commitmentCursor = this.tables?.commitment
|
|
773
|
-
?.findOne(
|
|
768
|
+
?.findOne(filter)
|
|
774
769
|
.lean();
|
|
775
770
|
const doc = await commitmentCursor;
|
|
776
771
|
return doc ? doc : undefined;
|
|
777
772
|
}
|
|
778
773
|
async getDappUserCommitmentByAccount(userAccount, dappAccount) {
|
|
774
|
+
const filter = {
|
|
775
|
+
userAccount,
|
|
776
|
+
dappAccount,
|
|
777
|
+
};
|
|
778
|
+
const project = { _id: 0 };
|
|
779
|
+
const sort = { sort: { _id: -1 } };
|
|
779
780
|
const docs = await this.tables?.commitment
|
|
780
|
-
?.find(
|
|
781
|
+
?.find(filter, project, sort)
|
|
781
782
|
.lean();
|
|
782
783
|
return docs ? docs : [];
|
|
783
784
|
}
|
|
@@ -788,8 +789,9 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
788
789
|
result,
|
|
789
790
|
lastUpdatedTimestamp: Date.now(),
|
|
790
791
|
};
|
|
792
|
+
const filter = { id: commitmentId };
|
|
791
793
|
await this.tables?.commitment
|
|
792
|
-
?.findOneAndUpdate(
|
|
794
|
+
?.findOneAndUpdate(filter, { $set: updateDoc }, { upsert: false })
|
|
793
795
|
.lean();
|
|
794
796
|
}
|
|
795
797
|
catch (err) {
|
|
@@ -804,8 +806,9 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
804
806
|
result: { status: CaptchaStatus.disapproved, reason },
|
|
805
807
|
lastUpdatedTimestamp: Date.now(),
|
|
806
808
|
};
|
|
809
|
+
const filter = { id: commitmentId };
|
|
807
810
|
await this.tables?.commitment
|
|
808
|
-
?.findOneAndUpdate(
|
|
811
|
+
?.findOneAndUpdate(filter, { $set: updateDoc }, { upsert: false })
|
|
809
812
|
.lean();
|
|
810
813
|
}
|
|
811
814
|
catch (err) {
|
|
@@ -840,19 +843,26 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
840
843
|
}
|
|
841
844
|
}
|
|
842
845
|
async getScheduledTaskStatus(taskId, status) {
|
|
846
|
+
const filter = {
|
|
847
|
+
_id: taskId,
|
|
848
|
+
status: status,
|
|
849
|
+
};
|
|
843
850
|
const cursor = await this.tables?.scheduler
|
|
844
|
-
?.findOne(
|
|
851
|
+
?.findOne(filter)
|
|
845
852
|
.lean();
|
|
846
853
|
return cursor ? cursor : undefined;
|
|
847
854
|
}
|
|
848
855
|
async getLastScheduledTaskStatus(task, status) {
|
|
849
|
-
const
|
|
856
|
+
const filter = { processName: task };
|
|
850
857
|
if (status) {
|
|
851
|
-
|
|
858
|
+
filter.status = status;
|
|
852
859
|
}
|
|
860
|
+
const sort = {
|
|
861
|
+
datetime: -1,
|
|
862
|
+
};
|
|
853
863
|
const cursor = await this.tables?.scheduler
|
|
854
|
-
?.findOne(
|
|
855
|
-
.sort(
|
|
864
|
+
?.findOne(filter)
|
|
865
|
+
.sort(sort)
|
|
856
866
|
.limit(1)
|
|
857
867
|
.lean();
|
|
858
868
|
return cursor ? cursor : undefined;
|
|
@@ -873,7 +883,8 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
873
883
|
updated: new Date().getTime(),
|
|
874
884
|
...(result && { result }),
|
|
875
885
|
};
|
|
876
|
-
|
|
886
|
+
const filter = { _id: taskId };
|
|
887
|
+
await this.tables?.scheduler.updateOne(filter, { $set: update }, {
|
|
877
888
|
upsert: false,
|
|
878
889
|
});
|
|
879
890
|
}
|
|
@@ -883,9 +894,12 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
883
894
|
account: record.account,
|
|
884
895
|
settings: record.settings,
|
|
885
896
|
};
|
|
897
|
+
const filter = {
|
|
898
|
+
account: record.account,
|
|
899
|
+
};
|
|
886
900
|
return {
|
|
887
901
|
updateOne: {
|
|
888
|
-
filter
|
|
902
|
+
filter,
|
|
889
903
|
update: {
|
|
890
904
|
$set: clientRecord,
|
|
891
905
|
},
|
|
@@ -896,14 +910,14 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
896
910
|
await this.tables?.client.bulkWrite(ops);
|
|
897
911
|
}
|
|
898
912
|
async getClientRecord(account) {
|
|
899
|
-
const
|
|
900
|
-
|
|
901
|
-
.lean();
|
|
913
|
+
const filter = { account };
|
|
914
|
+
const doc = await this.tables?.client.findOne(filter).lean();
|
|
902
915
|
return doc ? doc : undefined;
|
|
903
916
|
}
|
|
904
917
|
async getIPBlockRuleRecord(ipAddress) {
|
|
918
|
+
const filter = { ip: Number(ipAddress) };
|
|
905
919
|
const doc = await this.tables?.ipblockrules
|
|
906
|
-
.findOne(
|
|
920
|
+
.findOne(filter)
|
|
907
921
|
.lean();
|
|
908
922
|
return doc ? doc : undefined;
|
|
909
923
|
}
|
|
@@ -916,9 +930,20 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
916
930
|
},
|
|
917
931
|
})));
|
|
918
932
|
}
|
|
933
|
+
async removeIPBlockRuleRecords(ipAddresses, dappAccount) {
|
|
934
|
+
const filter = { ip: { $in: ipAddresses.map(Number) } };
|
|
935
|
+
if (dappAccount) {
|
|
936
|
+
filter.dappAccount = dappAccount;
|
|
937
|
+
}
|
|
938
|
+
await this.tables?.ipblockrules.deleteMany(filter);
|
|
939
|
+
}
|
|
919
940
|
async getUserBlockRuleRecord(userAccount, dappAccount) {
|
|
941
|
+
const filter = {
|
|
942
|
+
dappAccount,
|
|
943
|
+
userAccount,
|
|
944
|
+
};
|
|
920
945
|
const doc = await this.tables?.userblockrules
|
|
921
|
-
.findOne(
|
|
946
|
+
.findOne(filter)
|
|
922
947
|
.lean();
|
|
923
948
|
return doc ? doc : undefined;
|
|
924
949
|
}
|
|
@@ -934,5 +959,12 @@ export class ProviderDatabase extends MongoDatabase {
|
|
|
934
959
|
},
|
|
935
960
|
})));
|
|
936
961
|
}
|
|
962
|
+
async removeUserBlockRuleRecords(userAccounts, dappAccount) {
|
|
963
|
+
const filter = { userAccount: { $in: userAccounts } };
|
|
964
|
+
if (dappAccount) {
|
|
965
|
+
filter.dappAccount = dappAccount;
|
|
966
|
+
}
|
|
967
|
+
await this.tables?.userblockrules.deleteMany(filter);
|
|
968
|
+
}
|
|
937
969
|
}
|
|
938
970
|
//# sourceMappingURL=provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/databases/provider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/databases/provider.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prosopo/database",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.3.1",
|
|
4
4
|
"description": "Prosopo database plugins for provider",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -31,10 +31,10 @@
|
|
|
31
31
|
},
|
|
32
32
|
"homepage": "https://github.com/prosopo/captcha#readme",
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@prosopo/common": "2.
|
|
35
|
-
"@prosopo/config": "2.
|
|
36
|
-
"@prosopo/types": "2.
|
|
37
|
-
"@prosopo/types-database": "2.
|
|
34
|
+
"@prosopo/common": "2.3.1",
|
|
35
|
+
"@prosopo/config": "2.3.1",
|
|
36
|
+
"@prosopo/types": "2.3.1",
|
|
37
|
+
"@prosopo/types-database": "2.3.1",
|
|
38
38
|
"express": "4.21.1",
|
|
39
39
|
"mongodb": "6.9.0",
|
|
40
40
|
"mongodb-memory-server": "10.0.0",
|