@prosopo/database 2.3.2 → 2.4.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.
@@ -39,7 +39,7 @@ export class ClientDatabase extends MongoDatabase {
39
39
  { updatedAtTimestamp: { $exists: false } },
40
40
  ],
41
41
  activated: true,
42
- }, { account: 1, settings: 1 })
42
+ }, { account: 1, settings: 1, tier: 1 })
43
43
  .lean();
44
44
  await this.close();
45
45
  return newClientRecords;
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/databases/client.ts"],"names":[],"mappings":"AAcA,OAAO,EAAe,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EAGN,UAAU,EAEV,cAAc,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,aAAa,GAAG;IACrB;QACC,cAAc,EAAE,UAAU,CAAC,MAAM;QACjC,SAAS,EAAE,OAAO;QAClB,MAAM,EAAE,cAAc;KACtB;CACD,CAAC;AAEF,MAAM,OAAO,cAAe,SAAQ,aAAa;IAGhD,YACC,GAAW,EACX,MAAe,EACf,UAAmB,EACnB,MAAe;QAEf,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,EAAwB,CAAC;IACxC,CAAC;IAEQ,KAAK,CAAC,OAAO;QACrB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QACtB,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE;YAC3D,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACxE,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,SAAS;QACR,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,IAAI,cAAc,CAAC,2BAA2B,EAAE;gBACrD,OAAO,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;gBAChD,MAAM,EAAE,IAAI,CAAC,MAAM;aACnB,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,iBAAiB,CACtB,kBAA6B;QAE7B,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QAErB,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM;aAC/C,IAAI,CACJ;YACC,GAAG,EAAE;gBACJ,EAAE,kBAAkB,EAAE,EAAE,GAAG,EAAE,kBAAkB,EAAE,EAAE;gBACnD,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;aAC1C;YACD,SAAS,EAAE,IAAI;SACf,EACD,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAC3B;aACA,IAAI,EAAkB,CAAC;QACzB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,gBAAgB,CAAC;IACzB,CAAC;CACD"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/databases/client.ts"],"names":[],"mappings":"AAcA,OAAO,EAAe,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EAGN,UAAU,EAEV,cAAc,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,aAAa,GAAG;IACrB;QACC,cAAc,EAAE,UAAU,CAAC,MAAM;QACjC,SAAS,EAAE,OAAO;QAClB,MAAM,EAAE,cAAc;KACtB;CACD,CAAC;AAEF,MAAM,OAAO,cAAe,SAAQ,aAAa;IAGhD,YACC,GAAW,EACX,MAAe,EACf,UAAmB,EACnB,MAAe;QAEf,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,EAAwB,CAAC;IACxC,CAAC;IAEQ,KAAK,CAAC,OAAO;QACrB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QACtB,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE;YAC3D,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACxE,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,SAAS;QACR,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,IAAI,cAAc,CAAC,2BAA2B,EAAE;gBACrD,OAAO,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;gBAChD,MAAM,EAAE,IAAI,CAAC,MAAM;aACnB,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,iBAAiB,CACtB,kBAA6B;QAE7B,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QAErB,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM;aAC/C,IAAI,CACJ;YACC,GAAG,EAAE;gBACJ,EAAE,kBAAkB,EAAE,EAAE,GAAG,EAAE,kBAAkB,EAAE,EAAE;gBACnD,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;aAC1C;YACD,SAAS,EAAE,IAAI;SACf,EACD,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CACpC;aACA,IAAI,EAAkB,CAAC;QACzB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,gBAAgB,CAAC;IACzB,CAAC;CACD"}
@@ -1,7 +1,8 @@
1
1
  import { type Logger } from "@prosopo/common";
2
2
  import type { TranslationKey } from "@prosopo/locale";
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
- import { type ClientRecord, type FrictionlessToken, type IPBlockRuleRecord, type IProviderDatabase, type PoWCaptchaRecord, type ScheduledTaskRecord, type SessionRecord, type SolutionRecord, type StoredStatus, type Tables, type UserAccountBlockRuleRecord, type UserCommitment, type UserCommitmentRecord, type UserSolutionRecord } from "@prosopo/types-database";
3
+ import { type Captcha, type CaptchaResult, type CaptchaSolution, CaptchaStates, type Dataset, type DatasetBase, type DatasetWithIds, type DatasetWithIdsAndTree, type Hash, type PoWChallengeComponents, type PoWChallengeId, type RequestHeaders, type ScheduledTaskNames, type ScheduledTaskResult, type ScheduledTaskStatus } from "@prosopo/types";
4
+ import { type ClientRecord, type FrictionlessToken, type FrictionlessTokenId, type IPBlockRuleRecord, type IProviderDatabase, type PendingCaptchaRequest, type PoWCaptchaRecord, type ScheduledTaskRecord, type SessionRecord, type SolutionRecord, type StoredStatus, type Tables, type UserAccountBlockRuleRecord, type UserCommitment, type UserCommitmentRecord, type UserSolutionRecord } from "@prosopo/types-database";
5
+ import type { FrictionlessTokenRecord } from "@prosopo/types-database";
5
6
  import { type RulesStorage } from "@prosopo/user-access-policy";
6
7
  import type { ObjectId } from "mongoose";
7
8
  import { MongoDatabase } from "../base/mongo.js";
@@ -37,8 +38,8 @@ export declare class ProviderDatabase extends MongoDatabase implements IProvider
37
38
  updateCaptcha(captcha: Captcha, datasetId: Hash): Promise<void>;
38
39
  removeCaptchas(captchaIds: string[]): Promise<void>;
39
40
  getDatasetDetails(datasetId: Hash): Promise<DatasetBase>;
40
- storeDappUserSolution(captchas: CaptchaSolution[], commit: UserCommitment): Promise<void>;
41
- storePowCaptchaRecord(challenge: PoWChallengeId, components: PoWChallengeComponents, difficulty: number, providerSignature: string, ipAddress: bigint, headers: RequestHeaders, serverChecked?: boolean, userSubmitted?: boolean, storedStatus?: StoredStatus, userSignature?: string): Promise<void>;
41
+ storeUserImageCaptchaSolution(captchas: CaptchaSolution[], commit: UserCommitment): Promise<void>;
42
+ storePowCaptchaRecord(challenge: PoWChallengeId, components: PoWChallengeComponents, difficulty: number, providerSignature: string, ipAddress: bigint, headers: RequestHeaders, frictionlessTokenId?: FrictionlessTokenId, serverChecked?: boolean, userSubmitted?: boolean, storedStatus?: StoredStatus, userSignature?: string): Promise<void>;
42
43
  getPowCaptchaRecordByChallenge(challenge: string): Promise<PoWCaptchaRecord | null>;
43
44
  updatePowCaptchaRecord(challenge: PoWChallengeId, result: CaptchaResult, serverChecked?: boolean, userSubmitted?: boolean, userSignature?: string): Promise<void>;
44
45
  getCheckedDappUserCommitments(): Promise<UserCommitmentRecord[]>;
@@ -49,12 +50,14 @@ export declare class ProviderDatabase extends MongoDatabase implements IProvider
49
50
  markDappUserPoWCommitmentsStored(challenges: string[]): Promise<void>;
50
51
  markDappUserPoWCommitmentsChecked(challenges: string[]): Promise<void>;
51
52
  storeFrictionlessTokenRecord(tokenRecord: FrictionlessToken): Promise<ObjectId>;
52
- checkFrictionlessTokenRecord(token: string): Promise<boolean>;
53
+ updateFrictionlessTokenRecord(tokenId: FrictionlessTokenId, updates: Partial<FrictionlessTokenRecord>): Promise<void>;
54
+ getFrictionlessTokenRecordByTokenId(tokenId: FrictionlessTokenId): Promise<FrictionlessTokenRecord | undefined>;
55
+ getFrictionlessTokenRecordByToken(token: string): Promise<FrictionlessTokenRecord | undefined>;
53
56
  storeSessionRecord(sessionRecord: SessionRecord): Promise<void>;
54
57
  checkAndRemoveSession(sessionId: string): Promise<SessionRecord | undefined>;
55
- storeDappUserPending(userAccount: string, requestHash: string, salt: string, deadlineTimestamp: number, requestedAtTimestamp: number, ipAddress: bigint): Promise<void>;
56
- getDappUserPending(requestHash: string): Promise<PendingCaptchaRequest>;
57
- updateDappUserPendingStatus(requestHash: string): Promise<void>;
58
+ storePendingImageCommitment(userAccount: string, requestHash: string, salt: string, deadlineTimestamp: number, requestedAtTimestamp: number, ipAddress: bigint, frictionlessTokenId?: FrictionlessTokenId): Promise<void>;
59
+ getPendingImageCommitment(requestHash: string): Promise<PendingCaptchaRequest>;
60
+ updatePendingImageCommitmentStatus(requestHash: string): Promise<void>;
58
61
  getAllCaptchasByDatasetId(datasetId: string, state?: CaptchaStates): Promise<Captcha[] | undefined>;
59
62
  getAllDappUserSolutions(captchaId: string[]): Promise<UserSolutionRecord[] | undefined>;
60
63
  getDatasetIdWithSolvedCaptchasOfSizeN(solvedCaptchaCount: number): Promise<string>;
@@ -70,6 +73,7 @@ export declare class ProviderDatabase extends MongoDatabase implements IProvider
70
73
  getLastScheduledTaskStatus(task: ScheduledTaskNames, status?: ScheduledTaskStatus): Promise<ScheduledTaskRecord | undefined>;
71
74
  createScheduledTaskStatus(taskName: ScheduledTaskNames, status: ScheduledTaskStatus): Promise<ObjectId>;
72
75
  updateScheduledTaskStatus(taskId: ObjectId, status: ScheduledTaskStatus, result?: ScheduledTaskResult): Promise<void>;
76
+ cleanupScheduledTaskStatus(status: ScheduledTaskStatus): Promise<void>;
73
77
  updateClientRecords(clientRecords: ClientRecord[]): Promise<void>;
74
78
  getClientRecord(account: string): Promise<ClientRecord | undefined>;
75
79
  getAllIpBlockRules(): Promise<IPBlockRuleRecord[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/databases/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/databases/provider.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { isHex } from "@polkadot/util/is";
2
- import { ProsopoDBError, ProsopoEnvError } from "@prosopo/common";
2
+ import { ProsopoDBError } from "@prosopo/common";
3
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 { createMongooseRulesStorage, getRuleMongooseSchema, } from "@prosopo/user-access-policy";
@@ -320,7 +320,7 @@ export class ProviderDatabase extends MongoDatabase {
320
320
  },
321
321
  });
322
322
  }
323
- async storeDappUserSolution(captchas, commit) {
323
+ async storeUserImageCaptchaSolution(captchas, commit) {
324
324
  const commitmentRecord = UserCommitmentSchema.parse({
325
325
  ...commit,
326
326
  lastUpdatedTimestamp: Date.now(),
@@ -354,7 +354,7 @@ export class ProviderDatabase extends MongoDatabase {
354
354
  await this.tables?.usersolution.bulkWrite(ops);
355
355
  }
356
356
  }
357
- async storePowCaptchaRecord(challenge, components, difficulty, providerSignature, ipAddress, headers, serverChecked = false, userSubmitted = false, storedStatus = StoredStatusNames.notStored, userSignature) {
357
+ async storePowCaptchaRecord(challenge, components, difficulty, providerSignature, ipAddress, headers, frictionlessTokenId, serverChecked = false, userSubmitted = false, storedStatus = StoredStatusNames.notStored, userSignature) {
358
358
  const tables = this.getTables();
359
359
  const powCaptchaRecord = {
360
360
  challenge,
@@ -368,6 +368,7 @@ export class ProviderDatabase extends MongoDatabase {
368
368
  providerSignature,
369
369
  userSignature,
370
370
  lastUpdatedTimestamp: Date.now(),
371
+ frictionlessTokenId,
371
372
  };
372
373
  try {
373
374
  await tables.powcaptcha.create(powCaptchaRecord);
@@ -400,7 +401,7 @@ export class ProviderDatabase extends MongoDatabase {
400
401
  }
401
402
  async getPowCaptchaRecordByChallenge(challenge) {
402
403
  if (!this.tables) {
403
- throw new ProsopoEnvError("DATABASE.DATABASE_UNDEFINED", {
404
+ throw new ProsopoDBError("DATABASE.DATABASE_UNDEFINED", {
404
405
  context: { failedFuncName: this.getPowCaptchaRecordByChallenge.name },
405
406
  logger: this.logger,
406
407
  });
@@ -595,13 +596,23 @@ export class ProviderDatabase extends MongoDatabase {
595
596
  const doc = await this.tables.frictionlessToken.create(tokenRecord);
596
597
  return doc._id;
597
598
  }
598
- async checkFrictionlessTokenRecord(token) {
599
+ async updateFrictionlessTokenRecord(tokenId, updates) {
600
+ const filter = { _id: tokenId };
601
+ await this.tables.frictionlessToken.updateOne(filter, updates);
602
+ }
603
+ async getFrictionlessTokenRecordByTokenId(tokenId) {
604
+ const filter = { _id: tokenId };
605
+ const doc = await this.tables.frictionlessToken.findOne(filter);
606
+ return doc ? doc : undefined;
607
+ }
608
+ async getFrictionlessTokenRecordByToken(token) {
599
609
  const filter = { token };
600
610
  const record = await this.tables.frictionlessToken.findOne(filter);
601
- return !!record;
611
+ return record || undefined;
602
612
  }
603
613
  async storeSessionRecord(sessionRecord) {
604
614
  try {
615
+ this.logger.debug({ action: "storing", sessionRecord });
605
616
  await this.tables.session.create(sessionRecord);
606
617
  }
607
618
  catch (err) {
@@ -612,6 +623,7 @@ export class ProviderDatabase extends MongoDatabase {
612
623
  }
613
624
  }
614
625
  async checkAndRemoveSession(sessionId) {
626
+ this.logger.debug({ action: "checking and removing", sessionId });
615
627
  const filter = { sessionId };
616
628
  try {
617
629
  const session = await this.tables.session
@@ -626,11 +638,11 @@ export class ProviderDatabase extends MongoDatabase {
626
638
  });
627
639
  }
628
640
  }
629
- async storeDappUserPending(userAccount, requestHash, salt, deadlineTimestamp, requestedAtTimestamp, ipAddress) {
641
+ async storePendingImageCommitment(userAccount, requestHash, salt, deadlineTimestamp, requestedAtTimestamp, ipAddress, frictionlessTokenId) {
630
642
  if (!isHex(requestHash)) {
631
643
  throw new ProsopoDBError("DATABASE.INVALID_HASH", {
632
644
  context: {
633
- failedFuncName: this.storeDappUserPending.name,
645
+ failedFuncName: this.storePendingImageCommitment.name,
634
646
  requestHash,
635
647
  },
636
648
  });
@@ -641,15 +653,19 @@ export class ProviderDatabase extends MongoDatabase {
641
653
  salt,
642
654
  requestHash,
643
655
  deadlineTimestamp,
644
- requestedAtTimestamp,
656
+ requestedAtTimestamp: new Date(requestedAtTimestamp),
645
657
  ipAddress,
658
+ frictionlessTokenId,
646
659
  };
647
660
  await this.tables?.pending.updateOne({ requestHash: requestHash }, { $set: pendingRecord }, { upsert: true });
648
661
  }
649
- async getDappUserPending(requestHash) {
662
+ async getPendingImageCommitment(requestHash) {
650
663
  if (!isHex(requestHash)) {
651
- throw new ProsopoEnvError("DATABASE.INVALID_HASH", {
652
- context: { failedFuncName: this.getDappUserPending.name, requestHash },
664
+ throw new ProsopoDBError("DATABASE.INVALID_HASH", {
665
+ context: {
666
+ failedFuncName: this.getPendingImageCommitment.name,
667
+ requestHash,
668
+ },
653
669
  });
654
670
  }
655
671
  const filter = {
@@ -659,15 +675,18 @@ export class ProviderDatabase extends MongoDatabase {
659
675
  if (doc) {
660
676
  return doc;
661
677
  }
662
- throw new ProsopoEnvError("DATABASE.PENDING_RECORD_NOT_FOUND", {
663
- context: { failedFuncName: this.getDappUserPending.name, requestHash },
678
+ throw new ProsopoDBError("DATABASE.PENDING_RECORD_NOT_FOUND", {
679
+ context: {
680
+ failedFuncName: this.getPendingImageCommitment.name,
681
+ requestHash,
682
+ },
664
683
  });
665
684
  }
666
- async updateDappUserPendingStatus(requestHash) {
685
+ async updatePendingImageCommitmentStatus(requestHash) {
667
686
  if (!isHex(requestHash)) {
668
- throw new ProsopoEnvError("DATABASE.INVALID_HASH", {
687
+ throw new ProsopoDBError("DATABASE.INVALID_HASH", {
669
688
  context: {
670
- failedFuncName: this.updateDappUserPendingStatus.name,
689
+ failedFuncName: this.updatePendingImageCommitmentStatus.name,
671
690
  requestHash,
672
691
  },
673
692
  });
@@ -691,7 +710,7 @@ export class ProviderDatabase extends MongoDatabase {
691
710
  if (docs) {
692
711
  return docs.map(({ _id, ...keepAttrs }) => keepAttrs);
693
712
  }
694
- throw new ProsopoEnvError("DATABASE.CAPTCHA_GET_FAILED");
713
+ throw new ProsopoDBError("DATABASE.CAPTCHA_GET_FAILED");
695
714
  }
696
715
  async getAllDappUserSolutions(captchaId) {
697
716
  const filter = {
@@ -702,7 +721,7 @@ export class ProviderDatabase extends MongoDatabase {
702
721
  if (docs) {
703
722
  return docs.map(({ _id, ...keepAttrs }) => keepAttrs);
704
723
  }
705
- throw new ProsopoEnvError("DATABASE.SOLUTION_GET_FAILED");
724
+ throw new ProsopoDBError("DATABASE.SOLUTION_GET_FAILED");
706
725
  }
707
726
  async getDatasetIdWithSolvedCaptchasOfSizeN(solvedCaptchaCount) {
708
727
  const cursor = this.tables?.solution.aggregate([
@@ -903,11 +922,18 @@ export class ProviderDatabase extends MongoDatabase {
903
922
  upsert: false,
904
923
  });
905
924
  }
925
+ async cleanupScheduledTaskStatus(status) {
926
+ const filter = {
927
+ status,
928
+ };
929
+ await this.tables?.scheduler.deleteMany(filter);
930
+ }
906
931
  async updateClientRecords(clientRecords) {
907
932
  const ops = clientRecords.map((record) => {
908
933
  const clientRecord = {
909
934
  account: record.account,
910
935
  settings: record.settings,
936
+ tier: record.tier,
911
937
  };
912
938
  const filter = {
913
939
  account: record.account,
@@ -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.2",
3
+ "version": "2.4.1",
4
4
  "description": "Prosopo database plugins for provider",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -31,11 +31,11 @@
31
31
  },
32
32
  "homepage": "https://github.com/prosopo/captcha#readme",
33
33
  "dependencies": {
34
- "@prosopo/common": "2.3.2",
35
- "@prosopo/config": "2.3.2",
36
- "@prosopo/types": "2.3.2",
37
- "@prosopo/types-database": "2.3.2",
38
- "@prosopo/user-access-policy": "2.3.2",
34
+ "@prosopo/common": "2.4.1",
35
+ "@prosopo/config": "2.4.1",
36
+ "@prosopo/types": "2.4.1",
37
+ "@prosopo/types-database": "2.4.1",
38
+ "@prosopo/user-access-policy": "2.4.1",
39
39
  "express": "4.21.1",
40
40
  "mongodb": "6.9.0",
41
41
  "mongodb-memory-server": "10.0.0",