@prosopo/database 3.14.7 → 3.15.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.
Files changed (40) hide show
  1. package/.turbo/turbo-build$colon$cjs.log +8 -7
  2. package/.turbo/turbo-build$colon$tsc.log +16 -16
  3. package/.turbo/turbo-build.log +9 -8
  4. package/CHANGELOG.md +67 -0
  5. package/dist/base/mongo.d.ts.map +1 -1
  6. package/dist/base/mongo.js +14 -8
  7. package/dist/base/mongo.js.map +1 -1
  8. package/dist/cjs/base/mongo.cjs +14 -8
  9. package/dist/cjs/databases/captcha.cjs +3 -4
  10. package/dist/cjs/databases/provider.cjs +10 -1
  11. package/dist/cjs/index.cjs +3 -0
  12. package/dist/cjs/mongooseOptions.cjs +67 -0
  13. package/dist/databases/captcha.js +1 -1
  14. package/dist/databases/captcha.js.map +1 -1
  15. package/dist/databases/provider.d.ts +1 -0
  16. package/dist/databases/provider.d.ts.map +1 -1
  17. package/dist/databases/provider.js +10 -1
  18. package/dist/databases/provider.js.map +1 -1
  19. package/dist/index.d.ts +1 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +4 -1
  22. package/dist/index.js.map +1 -1
  23. package/dist/mongooseOptions.d.ts +11 -0
  24. package/dist/mongooseOptions.d.ts.map +1 -0
  25. package/dist/mongooseOptions.js +67 -0
  26. package/dist/mongooseOptions.js.map +1 -0
  27. package/dist/tests/integration/ipInfoPersistence.integration.test.js +0 -2
  28. package/dist/tests/integration/ipInfoPersistence.integration.test.js.map +1 -1
  29. package/dist/tests/integration/sessionRecordProjection.integration.test.js +1 -11
  30. package/dist/tests/integration/sessionRecordProjection.integration.test.js.map +1 -1
  31. package/dist/tests/mongoGlobalSetup.d.ts +2 -0
  32. package/dist/tests/mongoGlobalSetup.d.ts.map +1 -0
  33. package/dist/tests/mongoGlobalSetup.js +5 -0
  34. package/dist/tests/mongoGlobalSetup.js.map +1 -0
  35. package/dist/tests/mongooseOptions.unit.test.d.ts +2 -0
  36. package/dist/tests/mongooseOptions.unit.test.d.ts.map +1 -0
  37. package/dist/tests/mongooseOptions.unit.test.js +157 -0
  38. package/dist/tests/mongooseOptions.unit.test.js.map +1 -0
  39. package/package.json +9 -9
  40. package/vite.test.config.ts +12 -1
@@ -1,5 +1,5 @@
1
1
 
2
- > @prosopo/database@3.14.7 build:cjs
2
+ > @prosopo/database@3.15.1 build:cjs
3
3
  > NODE_ENV=${NODE_ENV:-development}; vite build --config vite.cjs.config.ts --mode $NODE_ENV
4
4
 
5
5
  ViteCommonJSConfig: .
@@ -37,16 +37,17 @@ ViteCommonJSConfig: .
37
37
  Bundle build started
38
38
  transforming...
39
39
  Build end
40
- ✓ 10 modules transformed.
40
+ ✓ 11 modules transformed.
41
41
  rendering chunks...
42
42
  dist/cjs/base/index.cjs  0.28 kB
43
43
  dist/cjs/base/mongoMemory.cjs  0.71 kB
44
- dist/cjs/index.cjs  1.02 kB
45
44
  dist/cjs/databases/index.cjs  1.02 kB
45
+ dist/cjs/index.cjs  1.22 kB
46
46
  dist/cjs/databases/client.cjs  1.91 kB
47
+ dist/cjs/mongooseOptions.cjs  2.42 kB
47
48
  dist/cjs/databases/centralDbStreamer.cjs  4.20 kB
48
- dist/cjs/base/mongo.cjs  4.58 kB
49
- dist/cjs/databases/captcha.cjs  7.87 kB
49
+ dist/cjs/base/mongo.cjs  4.79 kB
50
+ dist/cjs/databases/captcha.cjs  7.54 kB
50
51
  dist/cjs/redisCache.cjs 12.40 kB
51
- dist/cjs/databases/provider.cjs 69.48 kB
52
- ✓ built in 414ms
52
+ dist/cjs/databases/provider.cjs 69.92 kB
53
+ ✓ built in 347ms
@@ -1,8 +1,8 @@
1
1
 
2
- > @prosopo/database@3.14.7 build:tsc
2
+ > @prosopo/database@3.15.1 build:tsc
3
3
  > tsc --build --verbose
4
4
 
5
- 1:01:53 PM - Projects in this build:
5
+ 3:25:03 PM - Projects in this build:
6
6
  * ../../dev/config/tsconfig.json
7
7
  * ../locale/tsconfig.json
8
8
  * ../util/tsconfig.json
@@ -17,31 +17,31 @@
17
17
  * ../types-database/tsconfig.json
18
18
  * tsconfig.json
19
19
 
20
- 1:01:53 PM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/webpack/webpack.config.ts' is older than output '../../dev/config/tsconfig.tsbuildinfo'
20
+ 3:25:03 PM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/webpack/webpack.config.ts' is older than output '../../dev/config/tsconfig.tsbuildinfo'
21
21
 
22
- 1:01:53 PM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/translationKey.ts' is older than output '../locale/tsconfig.tsbuildinfo'
22
+ 3:25:03 PM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/translationKey.ts' is older than output '../locale/tsconfig.tsbuildinfo'
23
23
 
24
- 1:01:53 PM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/tsconfig.tsbuildinfo'
24
+ 3:25:03 PM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/tsconfig.tsbuildinfo'
25
25
 
26
- 1:01:53 PM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/index.ts' is older than output '../logger/tsconfig.tsbuildinfo'
26
+ 3:25:03 PM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/index.ts' is older than output '../logger/tsconfig.tsbuildinfo'
27
27
 
28
- 1:01:53 PM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/tsconfig.tsbuildinfo'
28
+ 3:25:03 PM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/tsconfig.tsbuildinfo'
29
29
 
30
- 1:01:53 PM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/provider/api.ts' is older than output '../types/tsconfig.tsbuildinfo'
30
+ 3:25:03 PM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/procaptcha/api.ts' is older than output '../types/tsconfig.tsbuildinfo'
31
31
 
32
- 1:01:53 PM - Project '../common/tsconfig.json' is up to date because newest input '../common/src/tests/utils/objectUtils.unit.test.ts' is older than output '../common/tsconfig.tsbuildinfo'
32
+ 3:25:03 PM - Project '../common/tsconfig.json' is up to date because newest input '../common/src/error.ts' is older than output '../common/tsconfig.tsbuildinfo'
33
33
 
34
- 1:01:53 PM - Project '../api-route/tsconfig.json' is up to date because newest input '../api-route/src/apiRoutes.ts' is older than output '../api-route/tsconfig.tsbuildinfo'
34
+ 3:25:03 PM - Project '../api-route/tsconfig.json' is up to date because newest input '../api-route/src/apiRoutes.ts' is older than output '../api-route/tsconfig.tsbuildinfo'
35
35
 
36
- 1:01:53 PM - Project '../redis-client/tsconfig.json' is up to date because newest input '../redis-client/src/index.ts' is older than output '../redis-client/tsconfig.tsbuildinfo'
36
+ 3:25:03 PM - Project '../redis-client/tsconfig.json' is up to date because newest input '../redis-client/src/redisClient.ts' is older than output '../redis-client/tsconfig.tsbuildinfo'
37
37
 
38
- 1:01:53 PM - Project '../api/tsconfig.json' is up to date because newest input '../api/src/index.ts' is older than output '../api/tsconfig.tsbuildinfo'
38
+ 3:25:03 PM - Project '../api/tsconfig.json' is up to date because newest input '../api/src/index.ts' is older than output '../api/tsconfig.tsbuildinfo'
39
39
 
40
- 1:01:53 PM - Project '../user-access-policy/tsconfig.json' is up to date because newest input '../user-access-policy/src/rule.ts' is older than output '../user-access-policy/tsconfig.tsbuildinfo'
40
+ 3:25:03 PM - Project '../user-access-policy/tsconfig.json' is up to date because newest input '../user-access-policy/src/ruleRecord.ts' is older than output '../user-access-policy/tsconfig.tsbuildinfo'
41
41
 
42
- 1:01:53 PM - Project '../types-database/tsconfig.json' is up to date because newest input '../types-database/src/types/bannedDomain.ts' is older than output '../types-database/tsconfig.tsbuildinfo'
42
+ 3:25:03 PM - Project '../types-database/tsconfig.json' is up to date because newest input '../types-database/src/types/captcha.ts' is older than output '../types-database/tsconfig.tsbuildinfo'
43
43
 
44
- 1:01:53 PM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
44
+ 3:25:03 PM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
45
45
 
46
- 1:01:53 PM - Building project '/home/runner/work/captcha/captcha/packages/database/tsconfig.json'...
46
+ 3:25:03 PM - Building project '/home/runner/work/captcha/captcha/packages/database/tsconfig.json'...
47
47
 
@@ -1,9 +1,9 @@
1
1
 
2
- > @prosopo/database@3.14.7 build
2
+ > @prosopo/database@3.15.1 build
3
3
  > npm run build:cross-env -- --mode ${NODE_ENV:-development}
4
4
 
5
5
 
6
- > @prosopo/database@3.14.7 build:cross-env
6
+ > @prosopo/database@3.15.1 build:cross-env
7
7
  > vite build --config vite.esm.config.ts --mode production
8
8
 
9
9
  ViteEsmConfig: .
@@ -41,16 +41,17 @@ ViteEsmConfig: .
41
41
  Bundle build started
42
42
  transforming...
43
43
  Build end
44
- ✓ 10 modules transformed.
44
+ ✓ 11 modules transformed.
45
45
  rendering chunks...
46
46
  dist/base/index.js  0.15 kB
47
47
  dist/base/mongoMemory.js  0.59 kB
48
- dist/index.js  0.70 kB
49
48
  dist/databases/index.js  0.75 kB
49
+ dist/index.js  0.84 kB
50
50
  dist/databases/client.js  1.79 kB
51
+ dist/mongooseOptions.js  2.28 kB
51
52
  dist/databases/centralDbStreamer.js  4.09 kB
52
- dist/base/mongo.js  4.14 kB
53
- dist/databases/captcha.js  7.45 kB
53
+ dist/base/mongo.js  4.34 kB
54
+ dist/databases/captcha.js  7.46 kB
54
55
  dist/redisCache.js 12.30 kB
55
- dist/databases/provider.js 69.28 kB
56
- ✓ built in 503ms
56
+ dist/databases/provider.js 69.72 kB
57
+ ✓ built in 518ms
package/CHANGELOG.md CHANGED
@@ -1,5 +1,72 @@
1
1
  # @prosopo/database
2
2
 
3
+ ## 3.15.1
4
+ ### Patch Changes
5
+
6
+ - 9fe3c06: make util fn for mongoose connection config, standardise mongoose connections
7
+ - 11f1e8c: Replace vague logger scopes (empty strings, import.meta.url, generic "CLI") with structured colon-delimited names following the convention package:subsystem:action.
8
+ - Updated dependencies [dfb0c53]
9
+ - Updated dependencies [7ebb78f]
10
+ - Updated dependencies [7daea2e]
11
+ - Updated dependencies [849af99]
12
+ - Updated dependencies [a5ba27b]
13
+ - Updated dependencies [948d36b]
14
+ - Updated dependencies [41e0e11]
15
+ - Updated dependencies [11f1e8c]
16
+ - Updated dependencies [3c80664]
17
+ - Updated dependencies [b166037]
18
+ - Updated dependencies [1111ff2]
19
+ - @prosopo/common@3.1.41
20
+ - @prosopo/logger@2.0.0
21
+ - @prosopo/user-access-policy@3.10.9
22
+ - @prosopo/util@3.3.2
23
+ - @prosopo/types@4.9.0
24
+ - @prosopo/redis-client@1.0.26
25
+ - @prosopo/types-database@4.11.1
26
+
27
+ ## 3.15.0
28
+ ### Minor Changes
29
+
30
+ - 12cd0a6: Replace client-side weighted-random provider selection with static DNS endpoints.
31
+
32
+ - Removed the `providerSelectEntropy` field from `DetectorResult`, `Session`, the
33
+ Mongoose `SessionRecordSchema` (including its standalone index), and every
34
+ call-site that threaded it through frictionless / image / pow / puzzle flows.
35
+ - Removed `FrictionlessManager.hostVerified` and its decision-machine call site
36
+ — there's nothing to verify when the DNS layer picks the host.
37
+ - `getRandomActiveProvider(env)` now returns the per-environment static DNS
38
+ endpoint (`pronode.prosopo.io` family) instead of fetching the provider list
39
+ and weighted-selecting. The entropy parameter is gone.
40
+ - `getProcaptchaRandomActiveProvider` is now a thin re-export so widget packages
41
+ keep importing from `procaptcha-common`.
42
+ - `FrontendProvider.datasetId` is dropped; `CaptchaRequestBody.datasetId` is
43
+ optional. The server falls back to its own most-recently-uploaded dataset
44
+ (`env.datasetId`, populated from `db.getMostRecentDatasetId()` at startup) —
45
+ clients can't pin a dataset under DNS routing because they don't know which
46
+ pronode they'll hit.
47
+ - Removed dead `setProviderLoader` / `prefetchProviders` / `selectWeightedProvider`
48
+ plumbing from `@prosopo/load-balancer`. The server's cacheFile-based loader
49
+ setup in `startProviderApi` goes with them.
50
+ - `getRandomActiveProvider` now hits `/healthz` on the global hostname once per
51
+ page load, reads the responding pronode's identity from the JSON body, and
52
+ pins subsequent captcha calls to that pronode (`https://pronodeN.prosopo.io`)
53
+ so session creation and submission land on the same backend. Falls back to
54
+ the dual-stack global hostname when `/healthz` is unreachable.
55
+ - `/healthz` now returns `{ ok: true, host: <pronode-identity> }` instead of
56
+ `"OK"` to support the above pinning.
57
+ - CORS preflight is now cached for 24h (`maxAge: 86400`) — previously the
58
+ browser refired an OPTIONS preflight before every captcha call because
59
+ the custom `Prosopo-Site-Key` / `Prosopo-User` headers make the request
60
+ non-simple and the default `maxAge` is 5s.
61
+
62
+ ### Patch Changes
63
+
64
+ - Updated dependencies [12cd0a6]
65
+ - Updated dependencies [12cd0a6]
66
+ - @prosopo/types@4.8.0
67
+ - @prosopo/types-database@4.11.0
68
+ - @prosopo/user-access-policy@3.10.8
69
+
3
70
  ## 3.14.7
4
71
  ### Patch Changes
5
72
 
@@ -1 +1 @@
1
- {"version":3,"file":"mongo.d.ts","sourceRoot":"","sources":["../../src/base/mongo.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,MAAM,EAAa,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,QAAQ,EAAE,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAarD,qBAAa,aAAc,YAAW,SAAS;IAC9C,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,UAAS;IAClB,OAAO,CAAC,UAAU,CAAC,CAAgB;gBAGlC,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM;IAgBhB,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,aAAa,IAAI,QAAQ,CAAC,UAAU;IAa9B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAwGxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO5B"}
1
+ {"version":3,"file":"mongo.d.ts","sourceRoot":"","sources":["../../src/base/mongo.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,MAAM,EAAa,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,QAAQ,EAAE,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAcrD,qBAAa,aAAc,YAAW,SAAS;IAC9C,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,UAAS;IAClB,OAAO,CAAC,UAAU,CAAC,CAAgB;gBAGlC,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM;IAgBhB,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,aAAa,IAAI,QAAQ,CAAC,UAAU;IAa9B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8GxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO5B"}
@@ -1,7 +1,8 @@
1
+ import { fileURLToPath } from "node:url";
1
2
  import { ProsopoDBError } from "@prosopo/common";
2
3
  import { getLogger } from "@prosopo/logger";
3
- import { ServerApiVersion } from "mongodb";
4
4
  import mongoose from "mongoose";
5
+ import { getMongoConnectionOptions } from "../mongooseOptions.js";
5
6
  mongoose.set("strictQuery", false);
6
7
  const DEFAULT_ENDPOINT = "mongodb://127.0.0.1:27017";
7
8
  class MongoDatabase {
@@ -18,7 +19,7 @@ class MongoDatabase {
18
19
  this._url = parsedUrl.toString();
19
20
  this.safeURL = this.url.replace(/\w+:\w+/, "<Credentials>");
20
21
  this.dbname = dbname || parsedUrl.pathname.replace("/", "");
21
- this.logger = logger || getLogger("info", import.meta.url);
22
+ this.logger = logger || getLogger("info", "database:mongo");
22
23
  }
23
24
  get url() {
24
25
  return this._url;
@@ -56,12 +57,17 @@ class MongoDatabase {
56
57
  return this.connecting;
57
58
  }
58
59
  this.connecting = new Promise((resolve, reject) => {
59
- const connection = mongoose.createConnection(this.url, {
60
- dbName: this.dbname,
61
- serverApi: ServerApiVersion.v1,
62
- maxPoolSize: 50,
63
- minPoolSize: 5
64
- });
60
+ const appName = fileURLToPath(import.meta.url);
61
+ const connection = mongoose.createConnection(
62
+ this.url,
63
+ getMongoConnectionOptions({
64
+ url: this.url,
65
+ appName,
66
+ dbName: this.dbname,
67
+ maxPoolSize: 50,
68
+ minPoolSize: 5
69
+ })
70
+ );
65
71
  const onConnected = () => {
66
72
  this.logger.debug(() => ({
67
73
  data: { mongoUrl: this.safeURL },
@@ -1 +1 @@
1
- {"version":3,"file":"mongo.js","sourceRoot":"","sources":["../../src/base/mongo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongo.js","sourceRoot":"","sources":["../../src/base/mongo.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const node_url = require("node:url");
3
4
  const common = require("@prosopo/common");
4
5
  const logger = require("@prosopo/logger");
5
- const mongodb = require("mongodb");
6
6
  const mongoose = require("mongoose");
7
+ const mongooseOptions = require("../mongooseOptions.cjs");
7
8
  var _documentCurrentScript = typeof document !== "undefined" ? document.currentScript : null;
8
9
  mongoose.set("strictQuery", false);
9
10
  const DEFAULT_ENDPOINT = "mongodb://127.0.0.1:27017";
@@ -21,7 +22,7 @@ class MongoDatabase {
21
22
  this._url = parsedUrl.toString();
22
23
  this.safeURL = this.url.replace(/\w+:\w+/, "<Credentials>");
23
24
  this.dbname = dbname || parsedUrl.pathname.replace("/", "");
24
- this.logger = logger$1 || logger.getLogger("info", typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("base/mongo.cjs", document.baseURI).href);
25
+ this.logger = logger$1 || logger.getLogger("info", "database:mongo");
25
26
  }
26
27
  get url() {
27
28
  return this._url;
@@ -59,12 +60,17 @@ class MongoDatabase {
59
60
  return this.connecting;
60
61
  }
61
62
  this.connecting = new Promise((resolve, reject) => {
62
- const connection = mongoose.createConnection(this.url, {
63
- dbName: this.dbname,
64
- serverApi: mongodb.ServerApiVersion.v1,
65
- maxPoolSize: 50,
66
- minPoolSize: 5
67
- });
63
+ const appName = node_url.fileURLToPath(typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("base/mongo.cjs", document.baseURI).href);
64
+ const connection = mongoose.createConnection(
65
+ this.url,
66
+ mongooseOptions.getMongoConnectionOptions({
67
+ url: this.url,
68
+ appName,
69
+ dbName: this.dbname,
70
+ maxPoolSize: 50,
71
+ minPoolSize: 5
72
+ })
73
+ );
68
74
  const onConnected = () => {
69
75
  this.logger.debug(() => ({
70
76
  data: { mongoUrl: this.safeURL },
@@ -6,9 +6,8 @@ const typesDatabase = require("@prosopo/types-database");
6
6
  const bson = require("bson");
7
7
  require("../base/index.cjs");
8
8
  const mongo = require("../base/mongo.cjs");
9
- var _documentCurrentScript = typeof document !== "undefined" ? document.currentScript : null;
10
9
  const isBsonLong = (value) => typeof value === "object" && value !== null && "_bsontype" in value && value._bsontype === "Long";
11
- const logger = logger$1.getLogger("info", typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("databases/captcha.cjs", document.baseURI).href);
10
+ const logger = logger$1.getLogger("info", "database:captcha");
12
11
  var TableNames = /* @__PURE__ */ ((TableNames2) => {
13
12
  TableNames2["frictionlessToken"] = "frictionlessToken";
14
13
  TableNames2["session"] = "session";
@@ -133,8 +132,8 @@ class CaptchaDatabase extends mongo.MongoDatabase {
133
132
  await this.connect();
134
133
  if (sessionEvents.length) {
135
134
  const result = await this.tables.session.bulkWrite(
136
- sessionEvents.map((document2) => {
137
- const { _id, ...safeDoc } = document2;
135
+ sessionEvents.map((document) => {
136
+ const { _id, ...safeDoc } = document;
138
137
  return {
139
138
  insertOne: {
140
139
  document: CaptchaDatabase.normaliseDocCompositeIps(safeDoc)
@@ -471,6 +471,16 @@ class ProviderDatabase extends mongo.MongoDatabase {
471
471
  /**
472
472
  * @description Get a dataset by Id
473
473
  */
474
+ /**
475
+ * Returns the most recently uploaded dataset's ID. Used as the per-provider
476
+ * default when a client doesn't pin a specific dataset (which it can't
477
+ * under DNS-based routing — clients don't know which provider they'll hit).
478
+ */
479
+ async getMostRecentDatasetId() {
480
+ const dataset = await this.tables?.dataset.findOne().sort({ _id: -1 }).lean();
481
+ const datasetId = dataset?.datasetId;
482
+ return typeof datasetId === "string" ? datasetId : void 0;
483
+ }
474
484
  async getDatasetDetails(datasetId) {
475
485
  if (!is.isHex(datasetId)) {
476
486
  throw new common.ProsopoDBError("DATABASE.INVALID_HASH", {
@@ -1235,7 +1245,6 @@ class ProviderDatabase extends mongo.MongoDatabase {
1235
1245
  score: 1,
1236
1246
  threshold: 1,
1237
1247
  scoreComponents: 1,
1238
- providerSelectEntropy: 1,
1239
1248
  ipAddress: 1,
1240
1249
  ipInfo: 1,
1241
1250
  webView: 1,
@@ -3,6 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const makeDir = require("make-dir");
4
4
  require("./base/index.cjs");
5
5
  const index = require("./databases/index.cjs");
6
+ const mongooseOptions = require("./mongooseOptions.cjs");
6
7
  const redisCache = require("./redisCache.cjs");
7
8
  const mongo = require("./base/mongo.cjs");
8
9
  const mongoMemory = require("./base/mongoMemory.cjs");
@@ -12,6 +13,8 @@ const centralDbStreamer = require("./databases/centralDbStreamer.cjs");
12
13
  const client = require("./databases/client.cjs");
13
14
  console.debug(makeDir);
14
15
  exports.Databases = index.Databases;
16
+ exports.getMongoCompressors = mongooseOptions.getMongoCompressors;
17
+ exports.getMongoConnectionOptions = mongooseOptions.getMongoConnectionOptions;
15
18
  exports.RedisWriteQueue = redisCache.RedisWriteQueue;
16
19
  exports.MongoDatabase = mongo.MongoDatabase;
17
20
  exports.MongoMemoryDatabase = mongoMemory.MongoMemoryDatabase;
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const mongodb = require("mongodb");
4
+ const DEFAULT_COMPRESSORS = [
5
+ "zstd",
6
+ "snappy",
7
+ "zlib",
8
+ "none"
9
+ ];
10
+ const getMongoCompressors = (url, compressors = DEFAULT_COMPRESSORS) => {
11
+ try {
12
+ const protocolIndex = url.indexOf("://");
13
+ const urlWithoutProtocol = protocolIndex !== -1 ? url.slice(protocolIndex + 3) : url;
14
+ if (urlWithoutProtocol.trim() === "") {
15
+ return [];
16
+ }
17
+ const parsedUrl = new URL(`mongodb://${urlWithoutProtocol}`);
18
+ const hostname = parsedUrl.hostname;
19
+ const isLocalhost = hostname === "localhost" || hostname === "127.0.0.1" || hostname === "[::1]" || hostname === "::1";
20
+ if (isLocalhost) {
21
+ return [];
22
+ }
23
+ return hostname.includes(".") || hostname.includes(":") ? [...compressors] : [];
24
+ } catch {
25
+ return [...compressors];
26
+ }
27
+ };
28
+ const getMongoConnectionOptions = (options) => {
29
+ const { url, appName, maxPoolSize = 10, minPoolSize = 0, dbName } = options;
30
+ if (!url || url.trim() === "") {
31
+ throw new Error(
32
+ "MongoDB connection URL is required and cannot be empty or whitespace-only"
33
+ );
34
+ }
35
+ const compressors = getMongoCompressors(url);
36
+ const connectionOptions = {
37
+ serverApi: {
38
+ version: mongodb.ServerApiVersion.v1,
39
+ // strict mode rejects any command outside the Stable API; leave it
40
+ // off so non-stable operations (index/admin commands etc.) keep working.
41
+ strict: false,
42
+ deprecationErrors: false
43
+ },
44
+ maxPoolSize,
45
+ // allow up to N connections at any given time. >1 connection allows parallel db operations
46
+ minPoolSize,
47
+ // pool may close idle connections down to this amount (0 = close all idle past maxIdleTimeMS)
48
+ maxConnecting: 2,
49
+ // maximum number of concurrent connection attempts
50
+ connectTimeoutMS: 1e4,
51
+ // max time to connect to the database
52
+ socketTimeoutMS: 3e4,
53
+ // max time to wait for a response from the database when doing an operation
54
+ maxIdleTimeMS: 3e5,
55
+ // max time spent idle before closing the connection
56
+ appName,
57
+ serverSelectionTimeoutMS: 2e4,
58
+ // max time to wait for a response from the database
59
+ compressors
60
+ };
61
+ if (dbName) {
62
+ connectionOptions.dbName = dbName;
63
+ }
64
+ return connectionOptions;
65
+ };
66
+ exports.getMongoCompressors = getMongoCompressors;
67
+ exports.getMongoConnectionOptions = getMongoConnectionOptions;
@@ -5,7 +5,7 @@ import { Decimal128, Long } from "bson";
5
5
  import "../base/index.js";
6
6
  import { MongoDatabase } from "../base/mongo.js";
7
7
  const isBsonLong = (value) => typeof value === "object" && value !== null && "_bsontype" in value && value._bsontype === "Long";
8
- const logger = getLogger("info", import.meta.url);
8
+ const logger = getLogger("info", "database:captcha");
9
9
  var TableNames = /* @__PURE__ */ ((TableNames2) => {
10
10
  TableNames2["frictionlessToken"] = "frictionlessToken";
11
11
  TableNames2["session"] = "session";
@@ -1 +1 @@
1
- {"version":3,"file":"captcha.js","sourceRoot":"","sources":["../../src/databases/captcha.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"captcha.js","sourceRoot":"","sources":["../../src/databases/captcha.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,7 @@ export declare class ProviderDatabase extends MongoDatabase implements IProvider
63
63
  getCaptchaById(captchaId: string[]): Promise<Captcha[] | undefined>;
64
64
  updateCaptcha(captcha: Captcha, datasetId: Hash): Promise<void>;
65
65
  removeCaptchas(captchaIds: string[]): Promise<void>;
66
+ getMostRecentDatasetId(): Promise<string | undefined>;
66
67
  getDatasetDetails(datasetId: Hash): Promise<DatasetBase>;
67
68
  storeUserImageCaptchaSolution(captchas: CaptchaSolution[], commit: UserCommitment): Promise<void>;
68
69
  storePowCaptchaRecord(challenge: PoWChallengeId, components: PoWChallengeComponents, difficulty: number, providerSignature: string, ipAddress: CompositeIpAddress, headers: RequestHeaders, ja4: string, sessionId?: string, serverChecked?: boolean, userSubmitted?: boolean, userSignature?: string, ipInfo?: IPInfoResponse): Promise<void>;
@@ -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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"}
@@ -469,6 +469,16 @@ class ProviderDatabase extends MongoDatabase {
469
469
  /**
470
470
  * @description Get a dataset by Id
471
471
  */
472
+ /**
473
+ * Returns the most recently uploaded dataset's ID. Used as the per-provider
474
+ * default when a client doesn't pin a specific dataset (which it can't
475
+ * under DNS-based routing — clients don't know which provider they'll hit).
476
+ */
477
+ async getMostRecentDatasetId() {
478
+ const dataset = await this.tables?.dataset.findOne().sort({ _id: -1 }).lean();
479
+ const datasetId = dataset?.datasetId;
480
+ return typeof datasetId === "string" ? datasetId : void 0;
481
+ }
472
482
  async getDatasetDetails(datasetId) {
473
483
  if (!isHex(datasetId)) {
474
484
  throw new ProsopoDBError("DATABASE.INVALID_HASH", {
@@ -1233,7 +1243,6 @@ class ProviderDatabase extends MongoDatabase {
1233
1243
  score: 1,
1234
1244
  threshold: 1,
1235
1245
  scoreComponents: 1,
1236
- providerSelectEntropy: 1,
1237
1246
  ipAddress: 1,
1238
1247
  ipInfo: 1,
1239
1248
  webView: 1,