@prosopo/cli 3.5.8 → 3.6.31
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/.turbo/turbo-build$colon$cjs.log +27 -21
- package/.turbo/turbo-build$colon$tsc.log +80 -0
- package/.turbo/turbo-build.log +32 -22
- package/CHANGELOG.md +696 -0
- package/README.md +52 -95
- package/dist/RateLimiter.d.ts +115 -0
- package/dist/RateLimiter.d.ts.map +1 -0
- package/dist/RateLimiter.js +57 -1
- package/dist/RateLimiter.js.map +1 -0
- package/dist/argv.d.ts +22 -0
- package/dist/argv.d.ts.map +1 -0
- package/dist/argv.js +5 -1
- package/dist/argv.js.map +1 -0
- package/dist/bundle/decodeBehavior-DA4X_swr.js +210 -0
- package/dist/bundle/decodeSimd-CKp22xIS.js +205 -0
- package/dist/bundle/{i18nBackend-D6GWR1ra.js → i18nBackend-o8t6Kg5r.js} +17 -17
- package/dist/bundle/index-DUVLsNmB.js +2371 -0
- package/dist/bundle/provider.cli.bundle.js +55437 -48199
- package/dist/cjs/RateLimiter.cjs +56 -0
- package/dist/cjs/argv.cjs +15 -11
- package/dist/cjs/cli.cjs +2 -2
- package/dist/cjs/commands/ensureExternalIndexes.cjs +3 -3
- package/dist/cjs/commands/ensureIndexes.cjs +3 -3
- package/dist/cjs/commands/index.cjs +4 -0
- package/dist/cjs/commands/migrateAbuserScoreThreshold.cjs +66 -0
- package/dist/cjs/commands/providerSetDataset.cjs +5 -5
- package/dist/cjs/commands/siteKeyRegister.cjs +14 -6
- package/dist/cjs/commands/siteKeyRegisterApi.cjs +14 -10
- package/dist/cjs/commands/storeCaptchasExternally.cjs +3 -3
- package/dist/cjs/commands/updateSpamEmailDomains.cjs +50 -0
- package/dist/cjs/commands/version.cjs +3 -3
- package/dist/cjs/index.cjs +0 -2
- package/dist/cjs/process.env.cjs +0 -8
- package/dist/cjs/prosopo.config.cjs +38 -3
- package/dist/cjs/reloader.cjs +2 -2
- package/dist/cjs/start.cjs +17 -86
- package/dist/cli.d.ts +2 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -0
- package/dist/commands/ensureExternalIndexes.d.ts +13 -0
- package/dist/commands/ensureExternalIndexes.d.ts.map +1 -0
- package/dist/commands/ensureExternalIndexes.js +1 -1
- package/dist/commands/ensureExternalIndexes.js.map +1 -0
- package/dist/commands/ensureIndexes.d.ts +13 -0
- package/dist/commands/ensureIndexes.d.ts.map +1 -0
- package/dist/commands/ensureIndexes.js +1 -1
- package/dist/commands/ensureIndexes.js.map +1 -0
- package/dist/commands/index.d.ts +10 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +14 -10
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/migrateAbuserScoreThreshold.d.ts +16 -0
- package/dist/commands/migrateAbuserScoreThreshold.d.ts.map +1 -0
- package/dist/commands/migrateAbuserScoreThreshold.js +67 -0
- package/dist/commands/migrateAbuserScoreThreshold.js.map +1 -0
- package/dist/commands/providerSetDataset.d.ts +17 -0
- package/dist/commands/providerSetDataset.d.ts.map +1 -0
- package/dist/commands/providerSetDataset.js +1 -1
- package/dist/commands/providerSetDataset.js.map +1 -0
- package/dist/commands/siteKeyRegister.d.ts +62 -0
- package/dist/commands/siteKeyRegister.d.ts.map +1 -0
- package/dist/commands/siteKeyRegister.js +12 -4
- package/dist/commands/siteKeyRegister.js.map +1 -0
- package/dist/commands/siteKeyRegisterApi.d.ts +35 -0
- package/dist/commands/siteKeyRegisterApi.d.ts.map +1 -0
- package/dist/commands/siteKeyRegisterApi.js +12 -8
- package/dist/commands/siteKeyRegisterApi.js.map +1 -0
- package/dist/commands/storeCaptchasExternally.d.ts +13 -0
- package/dist/commands/storeCaptchasExternally.d.ts.map +1 -0
- package/dist/commands/storeCaptchasExternally.js +1 -1
- package/dist/commands/storeCaptchasExternally.js.map +1 -0
- package/dist/commands/updateSpamEmailDomains.d.ts +13 -0
- package/dist/commands/updateSpamEmailDomains.d.ts.map +1 -0
- package/dist/commands/updateSpamEmailDomains.js +51 -0
- package/dist/commands/updateSpamEmailDomains.js.map +1 -0
- package/dist/commands/validators.d.ts +18 -0
- package/dist/commands/validators.d.ts.map +1 -0
- package/dist/commands/validators.js.map +1 -0
- package/dist/commands/version.d.ts +12 -0
- package/dist/commands/version.d.ts.map +1 -0
- package/dist/commands/version.js +1 -1
- package/dist/commands/version.js.map +1 -0
- package/dist/files.d.ts +4 -0
- package/dist/files.d.ts.map +1 -0
- package/dist/files.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -0
- package/dist/process.env.d.ts +5 -0
- package/dist/process.env.d.ts.map +1 -0
- package/dist/process.env.js +1 -9
- package/dist/process.env.js.map +1 -0
- package/dist/prosopo.config.d.ts +3 -0
- package/dist/prosopo.config.d.ts.map +1 -0
- package/dist/prosopo.config.js +37 -2
- package/dist/prosopo.config.js.map +1 -0
- package/dist/reloader.d.ts +20 -0
- package/dist/reloader.d.ts.map +1 -0
- package/dist/reloader.js +1 -1
- package/dist/reloader.js.map +1 -0
- package/dist/start.d.ts +3 -0
- package/dist/start.d.ts.map +1 -0
- package/dist/start.js +18 -87
- package/dist/start.js.map +1 -0
- package/dist/tests/bundle/bundle.unit.test.d.ts +2 -0
- package/dist/tests/bundle/bundle.unit.test.d.ts.map +1 -0
- package/dist/tests/bundle/bundle.unit.test.js +14 -0
- package/dist/tests/bundle/bundle.unit.test.js.map +1 -0
- package/package.json +21 -19
- package/vite.cjs.config.ts +1 -1
- package/vite.config.ts +9 -1
- package/vite.esm.config.ts +1 -1
- package/vite.test.config.ts +1 -1
package/dist/cjs/RateLimiter.cjs
CHANGED
|
@@ -27,6 +27,10 @@ const getRateLimitConfig = () => {
|
|
|
27
27
|
windowMs: process.env.PROSOPO_VERIFY_IMAGE_CAPTCHA_SOLUTION_DAPP_WINDOW,
|
|
28
28
|
limit: process.env.PROSOPO_VERIFY_IMAGE_CAPTCHA_SOLUTION_DAPP_LIMIT
|
|
29
29
|
},
|
|
30
|
+
[types.ClientApiPaths.CheckSpamEmail]: {
|
|
31
|
+
windowMs: process.env.PROSOPO_CHECK_SPAM_EMAIL_WINDOW,
|
|
32
|
+
limit: process.env.PROSOPO_CHECK_SPAM_EMAIL_LIMIT
|
|
33
|
+
},
|
|
30
34
|
[types.ClientApiPaths.GetProviderStatus]: {
|
|
31
35
|
windowMs: process.env.PROSOPO_GET_PROVIDER_STATUS_WINDOW,
|
|
32
36
|
limit: process.env.PROSOPO_GET_PROVIDER_STATUS_LIMIT
|
|
@@ -43,6 +47,18 @@ const getRateLimitConfig = () => {
|
|
|
43
47
|
windowMs: process.env.PROSOPO_SITE_KEY_REGISTER_WINDOW,
|
|
44
48
|
limit: process.env.PROSOPO_SITE_KEY_REGISTER_LIMIT
|
|
45
49
|
},
|
|
50
|
+
[types.AdminApiPaths.SiteKeysRegister]: {
|
|
51
|
+
windowMs: process.env.PROSOPO_SITE_KEYS_REGISTER_WINDOW,
|
|
52
|
+
limit: process.env.PROSOPO_SITE_KEYS_REGISTER_LIMIT
|
|
53
|
+
},
|
|
54
|
+
[types.AdminApiPaths.SiteKeyRemove]: {
|
|
55
|
+
windowMs: process.env.PROSOPO_SITE_KEY_REMOVE_WINDOW,
|
|
56
|
+
limit: process.env.PROSOPO_SITE_KEY_REMOVE_LIMIT
|
|
57
|
+
},
|
|
58
|
+
[types.AdminApiPaths.SiteKeysRemove]: {
|
|
59
|
+
windowMs: process.env.PROSOPO_SITE_KEYS_REMOVE_WINDOW,
|
|
60
|
+
limit: process.env.PROSOPO_SITE_KEYS_REMOVE_LIMIT
|
|
61
|
+
},
|
|
46
62
|
[types.AdminApiPaths.UpdateDetectorKey]: {
|
|
47
63
|
windowMs: process.env.PROSOPO_UPDATE_DETECTOR_KEY_WINDOW,
|
|
48
64
|
limit: process.env.PROSOPO_UPDATE_DETECTOR_KEY_LIMIT
|
|
@@ -55,9 +71,49 @@ const getRateLimitConfig = () => {
|
|
|
55
71
|
windowMs: process.env.PROSOPO_TOGGLE_MAINTENANCE_MODE_WINDOW,
|
|
56
72
|
limit: process.env.PROSOPO_TOGGLE_MAINTENANCE_MODE_LIMIT
|
|
57
73
|
},
|
|
74
|
+
[types.AdminApiPaths.UpdateDecisionMachine]: {
|
|
75
|
+
windowMs: process.env.PROSOPO_UPDATE_DECISION_MACHINE_WINDOW,
|
|
76
|
+
limit: process.env.PROSOPO_UPDATE_DECISION_MACHINE_LIMIT
|
|
77
|
+
},
|
|
58
78
|
[types.ClientApiPaths.GetFrictionlessCaptchaChallenge]: {
|
|
59
79
|
windowMs: process.env.PROSOPO_GET_FR_CAPTCHA_CHALLENGE_WINDOW,
|
|
60
80
|
limit: process.env.PROSOPO_GET_FR_CAPTCHA_CHALLENGE_LIMIT
|
|
81
|
+
},
|
|
82
|
+
[types.AdminApiPaths.GetDecisionMachine]: {
|
|
83
|
+
windowMs: process.env.PROSOPO_GET_DECISION_MACHINE_WINDOW,
|
|
84
|
+
limit: process.env.PROSOPO_GET_DECISION_MACHINE_LIMIT
|
|
85
|
+
},
|
|
86
|
+
[types.AdminApiPaths.GetAllDecisionMachines]: {
|
|
87
|
+
windowMs: process.env.PROSOPO_GET_ALL_DECISION_MACHINES_WINDOW,
|
|
88
|
+
limit: process.env.PROSOPO_GET_ALL_DECISION_MACHINES_LIMIT
|
|
89
|
+
},
|
|
90
|
+
[types.AdminApiPaths.RemoveAllDecisionMachines]: {
|
|
91
|
+
windowMs: process.env.PROSOPO_REMOVE_ALL_DECISION_MACHINES_WINDOW,
|
|
92
|
+
limit: process.env.PROSOPO_REMOVE_ALL_DECISION_MACHINES_LIMIT
|
|
93
|
+
},
|
|
94
|
+
[types.AdminApiPaths.RemoveDecisionMachine]: {
|
|
95
|
+
windowMs: process.env.PROSOPO_REMOVE_DECISION_MACHINE_WINDOW,
|
|
96
|
+
limit: process.env.PROSOPO_REMOVE_DECISION_MACHINE_LIMIT
|
|
97
|
+
},
|
|
98
|
+
[types.AdminApiPaths.ClearAllCounters]: {
|
|
99
|
+
windowMs: process.env.PROSOPO_CLEAR_ALL_COUNTERS_WINDOW,
|
|
100
|
+
limit: process.env.PROSOPO_CLEAR_ALL_COUNTERS_LIMIT
|
|
101
|
+
},
|
|
102
|
+
[types.ClientApiPaths.GetPuzzleCaptchaChallenge]: {
|
|
103
|
+
windowMs: process.env.PROSOPO_GET_PUZZLE_CAPTCHA_CHALLENGE_WINDOW,
|
|
104
|
+
limit: process.env.PROSOPO_GET_PUZZLE_CAPTCHA_CHALLENGE_LIMIT
|
|
105
|
+
},
|
|
106
|
+
[types.ClientApiPaths.SubmitPuzzleCaptchaSolution]: {
|
|
107
|
+
windowMs: process.env.PROSOPO_SUBMIT_PUZZLE_CAPTCHA_SOLUTION_WINDOW,
|
|
108
|
+
limit: process.env.PROSOPO_SUBMIT_PUZZLE_CAPTCHA_SOLUTION_LIMIT
|
|
109
|
+
},
|
|
110
|
+
[types.ClientApiPaths.VerifyPuzzleCaptchaSolution]: {
|
|
111
|
+
windowMs: process.env.PROSOPO_VERIFY_PUZZLE_CAPTCHA_SOLUTION_WINDOW,
|
|
112
|
+
limit: process.env.PROSOPO_VERIFY_PUZZLE_CAPTCHA_SOLUTION_LIMIT
|
|
113
|
+
},
|
|
114
|
+
[types.AdminApiPaths.DnsEvent]: {
|
|
115
|
+
windowMs: process.env.PROSOPO_DNS_EVENT_WINDOW,
|
|
116
|
+
limit: process.env.PROSOPO_DNS_EVENT_LIMIT
|
|
61
117
|
}
|
|
62
118
|
};
|
|
63
119
|
};
|
package/dist/cjs/argv.cjs
CHANGED
|
@@ -1,35 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const
|
|
3
|
+
const logger = require("@prosopo/logger");
|
|
4
4
|
const yargs = require("yargs");
|
|
5
5
|
const helpers = require("yargs/helpers");
|
|
6
6
|
require("./commands/index.cjs");
|
|
7
7
|
const ensureIndexes = require("./commands/ensureIndexes.cjs");
|
|
8
8
|
const ensureExternalIndexes = require("./commands/ensureExternalIndexes.cjs");
|
|
9
|
+
const migrateAbuserScoreThreshold = require("./commands/migrateAbuserScoreThreshold.cjs");
|
|
9
10
|
const providerSetDataset = require("./commands/providerSetDataset.cjs");
|
|
10
11
|
const storeCaptchasExternally = require("./commands/storeCaptchasExternally.cjs");
|
|
12
|
+
const updateSpamEmailDomains = require("./commands/updateSpamEmailDomains.cjs");
|
|
11
13
|
const siteKeyRegister = require("./commands/siteKeyRegister.cjs");
|
|
12
14
|
const siteKeyRegisterApi = require("./commands/siteKeyRegisterApi.cjs");
|
|
13
15
|
const version = require("./commands/version.cjs");
|
|
14
|
-
function getCommands(pair, config, authAccount,
|
|
16
|
+
function getCommands(pair, config, authAccount, logger2) {
|
|
15
17
|
return [
|
|
16
|
-
ensureIndexes(pair, config, { logger }),
|
|
17
|
-
ensureExternalIndexes(pair, config, { logger }),
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
ensureIndexes(pair, config, { logger: logger2 }),
|
|
19
|
+
ensureExternalIndexes(pair, config, { logger: logger2 }),
|
|
20
|
+
migrateAbuserScoreThreshold(pair, config, { logger: logger2 }),
|
|
21
|
+
providerSetDataset(pair, config, { logger: logger2 }),
|
|
22
|
+
storeCaptchasExternally(pair, config, { logger: logger2 }),
|
|
23
|
+
updateSpamEmailDomains(pair, config, { logger: logger2 }),
|
|
24
|
+
siteKeyRegister.default(pair, config, { logger: logger2 }),
|
|
25
|
+
siteKeyRegisterApi(pair, authAccount, config, { logger: logger2 }),
|
|
26
|
+
version(pair, config, { logger: logger2 })
|
|
23
27
|
];
|
|
24
28
|
}
|
|
25
29
|
function processArgs(args, pair, authAccount, config) {
|
|
26
|
-
const logger =
|
|
30
|
+
const logger$1 = logger.getLogger(logger.LogLevel.enum.info, "CLI");
|
|
27
31
|
const commandManager = yargs(helpers.hideBin(args)).usage("Usage: $0 [global options] <command> [options]").option("api", { demand: false, default: false, type: "boolean" }).option("adminApi", {
|
|
28
32
|
demand: false,
|
|
29
33
|
default: false,
|
|
30
34
|
type: "boolean"
|
|
31
35
|
});
|
|
32
|
-
const commands = getCommands(pair, config, authAccount, logger);
|
|
36
|
+
const commands = getCommands(pair, config, authAccount, logger$1);
|
|
33
37
|
for (const command of commands) {
|
|
34
38
|
commandManager.command(command);
|
|
35
39
|
}
|
package/dist/cjs/cli.cjs
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const process = require("node:process");
|
|
3
|
-
const common = require("@prosopo/common");
|
|
4
3
|
const dotenv = require("@prosopo/dotenv");
|
|
5
4
|
const keyring = require("@prosopo/keyring");
|
|
6
5
|
const locale = require("@prosopo/locale");
|
|
6
|
+
const logger = require("@prosopo/logger");
|
|
7
7
|
const util = require("@prosopo/util");
|
|
8
8
|
const argv = require("./argv.cjs");
|
|
9
9
|
const prosopo_config = require("./prosopo.config.cjs");
|
|
10
10
|
const reloader = require("./reloader.cjs");
|
|
11
11
|
var _documentCurrentScript = typeof document !== "undefined" ? document.currentScript : null;
|
|
12
|
-
const log =
|
|
12
|
+
const log = logger.getLogger(logger.LogLevel.enum.info, "CLI");
|
|
13
13
|
async function main() {
|
|
14
14
|
const envPath = dotenv.loadEnv();
|
|
15
15
|
const config = prosopo_config();
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const common = require("@prosopo/common");
|
|
3
2
|
const env = require("@prosopo/env");
|
|
3
|
+
const logger = require("@prosopo/logger");
|
|
4
4
|
const provider = require("@prosopo/provider");
|
|
5
5
|
const commandEnsureExternalIndexes = (pair, config, cmdArgs) => {
|
|
6
|
-
const logger = cmdArgs?.logger ||
|
|
6
|
+
const logger$1 = cmdArgs?.logger || logger.getLogger(logger.LogLevel.enum.info, "cli.ensure_external_indexes");
|
|
7
7
|
return {
|
|
8
8
|
command: "ensure_external_indexes",
|
|
9
9
|
describe: "Ensure indexes for external database",
|
|
@@ -19,7 +19,7 @@ const commandEnsureExternalIndexes = (pair, config, cmdArgs) => {
|
|
|
19
19
|
env$1.logger.error(() => ({ err }));
|
|
20
20
|
});
|
|
21
21
|
} catch (err) {
|
|
22
|
-
logger.error(() => ({ err }));
|
|
22
|
+
logger$1.error(() => ({ err }));
|
|
23
23
|
}
|
|
24
24
|
},
|
|
25
25
|
middlewares: []
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const common = require("@prosopo/common");
|
|
3
2
|
const env = require("@prosopo/env");
|
|
3
|
+
const logger = require("@prosopo/logger");
|
|
4
4
|
const provider = require("@prosopo/provider");
|
|
5
5
|
const commandEnsureIndexes = (pair, config, cmdArgs) => {
|
|
6
|
-
const logger = cmdArgs?.logger ||
|
|
6
|
+
const logger$1 = cmdArgs?.logger || logger.getLogger(logger.LogLevel.enum.info, "cli.ensure_indexes");
|
|
7
7
|
return {
|
|
8
8
|
command: "ensure_indexes",
|
|
9
9
|
describe: "Ensure indexes for internal database",
|
|
@@ -17,7 +17,7 @@ const commandEnsureIndexes = (pair, config, cmdArgs) => {
|
|
|
17
17
|
}
|
|
18
18
|
await tasks.db.ensureIndexes();
|
|
19
19
|
} catch (err) {
|
|
20
|
-
logger.error(() => ({ err }));
|
|
20
|
+
logger$1.error(() => ({ err }));
|
|
21
21
|
}
|
|
22
22
|
},
|
|
23
23
|
middlewares: []
|
|
@@ -2,15 +2,19 @@
|
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const providerSetDataset = require("./providerSetDataset.cjs");
|
|
4
4
|
const storeCaptchasExternally = require("./storeCaptchasExternally.cjs");
|
|
5
|
+
const updateSpamEmailDomains = require("./updateSpamEmailDomains.cjs");
|
|
5
6
|
const version = require("./version.cjs");
|
|
6
7
|
const siteKeyRegister = require("./siteKeyRegister.cjs");
|
|
7
8
|
const siteKeyRegisterApi = require("./siteKeyRegisterApi.cjs");
|
|
8
9
|
const ensureExternalIndexes = require("./ensureExternalIndexes.cjs");
|
|
9
10
|
const ensureIndexes = require("./ensureIndexes.cjs");
|
|
11
|
+
const migrateAbuserScoreThreshold = require("./migrateAbuserScoreThreshold.cjs");
|
|
10
12
|
exports.commandProviderSetDataset = providerSetDataset;
|
|
11
13
|
exports.commandStoreCaptchasExternally = storeCaptchasExternally;
|
|
14
|
+
exports.commandUpdateSpamEmailDomains = updateSpamEmailDomains;
|
|
12
15
|
exports.commandVersion = version;
|
|
13
16
|
exports.commandSiteKeyRegister = siteKeyRegister.default;
|
|
14
17
|
exports.commandSiteKeyRegisterApi = siteKeyRegisterApi;
|
|
15
18
|
exports.commandEnsureExternalIndexes = ensureExternalIndexes;
|
|
16
19
|
exports.commandEnsureIndexes = ensureIndexes;
|
|
20
|
+
exports.commandMigrateAbuserScoreThreshold = migrateAbuserScoreThreshold;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const env = require("@prosopo/env");
|
|
3
|
+
const logger = require("@prosopo/logger");
|
|
4
|
+
const provider = require("@prosopo/provider");
|
|
5
|
+
const commandMigrateAbuserScoreThreshold = (pair, config, cmdArgs) => {
|
|
6
|
+
const logger$1 = cmdArgs?.logger || logger.getLogger(logger.LogLevel.enum.info, "cli.migrate_abuser_score_threshold");
|
|
7
|
+
return {
|
|
8
|
+
command: "migrate_abuser_score_threshold",
|
|
9
|
+
describe: "Add abuserScoreThreshold field (default 0) to trafficFilter in provider client records",
|
|
10
|
+
builder: (yargs) => yargs.option("dryRun", {
|
|
11
|
+
type: "boolean",
|
|
12
|
+
default: false,
|
|
13
|
+
description: "Run without making changes to verify the migration"
|
|
14
|
+
}),
|
|
15
|
+
handler: async (argv) => {
|
|
16
|
+
try {
|
|
17
|
+
const dryRun = argv.dryRun ?? false;
|
|
18
|
+
logger$1.info(() => ({
|
|
19
|
+
msg: "Starting abuserScoreThreshold migration on provider DB...",
|
|
20
|
+
data: { dryRun }
|
|
21
|
+
}));
|
|
22
|
+
const env$1 = new env.ProviderEnvironment(config, pair);
|
|
23
|
+
await env$1.isReady();
|
|
24
|
+
const tasks = new provider.Tasks(env$1);
|
|
25
|
+
const clientModel = tasks.db.tables.client;
|
|
26
|
+
if (!clientModel) {
|
|
27
|
+
throw new Error("Client table not available");
|
|
28
|
+
}
|
|
29
|
+
const filter = {
|
|
30
|
+
"settings.trafficFilter": { $exists: true },
|
|
31
|
+
"settings.trafficFilter.abuserScoreThreshold": { $exists: false }
|
|
32
|
+
};
|
|
33
|
+
const count = await clientModel.countDocuments(filter);
|
|
34
|
+
logger$1.info(() => ({
|
|
35
|
+
msg: `Found ${count} client records needing migration`
|
|
36
|
+
}));
|
|
37
|
+
if (!dryRun && count > 0) {
|
|
38
|
+
const result = await clientModel.updateMany(filter, {
|
|
39
|
+
$set: {
|
|
40
|
+
"settings.trafficFilter.abuserScoreThreshold": 0
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
logger$1.info(() => ({
|
|
44
|
+
msg: `Updated ${result.modifiedCount} client records`
|
|
45
|
+
}));
|
|
46
|
+
}
|
|
47
|
+
logger$1.info(() => ({
|
|
48
|
+
msg: "Migration completed",
|
|
49
|
+
data: { recordsFound: count, dryRun }
|
|
50
|
+
}));
|
|
51
|
+
if (dryRun) {
|
|
52
|
+
logger$1.info(() => ({
|
|
53
|
+
msg: "DRY RUN: No changes were made. Run without --dryRun to apply changes."
|
|
54
|
+
}));
|
|
55
|
+
}
|
|
56
|
+
} catch (err) {
|
|
57
|
+
logger$1.error(() => ({
|
|
58
|
+
err,
|
|
59
|
+
msg: "Failed to migrate abuserScoreThreshold"
|
|
60
|
+
}));
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
middlewares: []
|
|
64
|
+
};
|
|
65
|
+
};
|
|
66
|
+
module.exports = commandMigrateAbuserScoreThreshold;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const common = require("@prosopo/common");
|
|
3
2
|
const env = require("@prosopo/env");
|
|
3
|
+
const logger = require("@prosopo/logger");
|
|
4
4
|
const provider = require("@prosopo/provider");
|
|
5
5
|
const z = require("zod");
|
|
6
6
|
const files = require("../files.cjs");
|
|
@@ -22,7 +22,7 @@ function _interopNamespaceDefault(e) {
|
|
|
22
22
|
}
|
|
23
23
|
const z__namespace = /* @__PURE__ */ _interopNamespaceDefault(z);
|
|
24
24
|
const commandProviderSetDataset = (pair, config, cmdArgs) => {
|
|
25
|
-
const logger = cmdArgs?.logger ||
|
|
25
|
+
const logger$1 = cmdArgs?.logger || logger.getLogger(logger.LogLevel.enum.info, "cli.provider_set_data_set");
|
|
26
26
|
return {
|
|
27
27
|
command: "provider_set_data_set",
|
|
28
28
|
describe: "Add a dataset as a Provider",
|
|
@@ -38,17 +38,17 @@ const commandProviderSetDataset = (pair, config, cmdArgs) => {
|
|
|
38
38
|
const tasks = new provider.Tasks(env$1);
|
|
39
39
|
const file = z__namespace.string().parse(argv.file);
|
|
40
40
|
const jsonFile = files.loadJSONFile(file);
|
|
41
|
-
logger.info(() => ({
|
|
41
|
+
logger$1.info(() => ({
|
|
42
42
|
data: { file },
|
|
43
43
|
msg: "Loading JSON"
|
|
44
44
|
}));
|
|
45
45
|
const result = await tasks.datasetManager.providerSetDatasetFromFile(jsonFile);
|
|
46
|
-
logger.info(() => ({
|
|
46
|
+
logger$1.info(() => ({
|
|
47
47
|
data: { file },
|
|
48
48
|
msg: "Loaded JSON"
|
|
49
49
|
}));
|
|
50
50
|
} catch (err) {
|
|
51
|
-
logger.error(() => ({
|
|
51
|
+
logger$1.error(() => ({
|
|
52
52
|
err,
|
|
53
53
|
msg: "Error loading JSON"
|
|
54
54
|
}));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
-
const common = require("@prosopo/common");
|
|
4
3
|
const env = require("@prosopo/env");
|
|
4
|
+
const logger = require("@prosopo/logger");
|
|
5
5
|
const provider = require("@prosopo/provider");
|
|
6
6
|
const types = require("@prosopo/types");
|
|
7
7
|
const z = require("zod");
|
|
@@ -13,10 +13,11 @@ const SiteKeyRegisterCommandArgsSpec = z.z.object({
|
|
|
13
13
|
frictionless_threshold: z.z.number().max(1).min(0),
|
|
14
14
|
pow_difficulty: z.z.number(),
|
|
15
15
|
domains: z.z.array(z.z.string()),
|
|
16
|
-
image_threshold: z.z.number().max(1).min(0)
|
|
16
|
+
image_threshold: z.z.number().max(1).min(0),
|
|
17
|
+
image_max_rounds: z.z.number().int().positive().optional().default(types.imageMaxRoundsDefault)
|
|
17
18
|
});
|
|
18
19
|
const commandSiteKeyRegister = (pair, config, cmdArgs) => {
|
|
19
|
-
const logger = cmdArgs?.logger ||
|
|
20
|
+
const logger$1 = cmdArgs?.logger || logger.getLogger(logger.LogLevel.enum.info, "cli.dapp_register");
|
|
20
21
|
return {
|
|
21
22
|
command: "site_key_register <sitekey> <tier>",
|
|
22
23
|
describe: "Register a Site Key",
|
|
@@ -48,6 +49,10 @@ const commandSiteKeyRegister = (pair, config, cmdArgs) => {
|
|
|
48
49
|
type: "number",
|
|
49
50
|
demandOption: false,
|
|
50
51
|
desc: "Image threshold for settings"
|
|
52
|
+
}).option("image_max_rounds", {
|
|
53
|
+
type: "number",
|
|
54
|
+
demandOption: false,
|
|
55
|
+
desc: "Image max rounds for settings"
|
|
51
56
|
}),
|
|
52
57
|
handler: async (argv) => {
|
|
53
58
|
try {
|
|
@@ -60,7 +65,8 @@ const commandSiteKeyRegister = (pair, config, cmdArgs) => {
|
|
|
60
65
|
frictionless_threshold,
|
|
61
66
|
pow_difficulty,
|
|
62
67
|
domains,
|
|
63
|
-
image_threshold
|
|
68
|
+
image_threshold,
|
|
69
|
+
image_max_rounds
|
|
64
70
|
} = SiteKeyRegisterCommandArgsSpec.parse(argv);
|
|
65
71
|
const tasks = new provider.Tasks(env$1);
|
|
66
72
|
await tasks.clientTaskManager.registerSiteKey(sitekey, tier, {
|
|
@@ -69,6 +75,8 @@ const commandSiteKeyRegister = (pair, config, cmdArgs) => {
|
|
|
69
75
|
domains: domains || [],
|
|
70
76
|
powDifficulty: pow_difficulty,
|
|
71
77
|
imageThreshold: image_threshold,
|
|
78
|
+
imageMaxRounds: image_max_rounds,
|
|
79
|
+
puzzleTolerance: types.puzzleToleranceDefault,
|
|
72
80
|
disallowWebView: false,
|
|
73
81
|
contextAware: {
|
|
74
82
|
enabled: false,
|
|
@@ -80,12 +88,12 @@ const commandSiteKeyRegister = (pair, config, cmdArgs) => {
|
|
|
80
88
|
}
|
|
81
89
|
}
|
|
82
90
|
});
|
|
83
|
-
logger.info(() => ({
|
|
91
|
+
logger$1.info(() => ({
|
|
84
92
|
data: { sitekey },
|
|
85
93
|
msg: "Site Key registered"
|
|
86
94
|
}));
|
|
87
95
|
} catch (err) {
|
|
88
|
-
logger.error(() => ({
|
|
96
|
+
logger$1.error(() => ({
|
|
89
97
|
err,
|
|
90
98
|
msg: "Error registering Site Key"
|
|
91
99
|
}));
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const api = require("@prosopo/api");
|
|
3
|
-
const common = require("@prosopo/common");
|
|
4
3
|
const env = require("@prosopo/env");
|
|
4
|
+
const logger = require("@prosopo/logger");
|
|
5
5
|
const types = require("@prosopo/types");
|
|
6
|
-
const util = require("@prosopo/util");
|
|
7
6
|
const z = require("zod");
|
|
8
7
|
const siteKeyRegister = require("./siteKeyRegister.cjs");
|
|
9
8
|
const validators = require("./validators.cjs");
|
|
@@ -13,7 +12,7 @@ const SiteKeyRegisterApiCommandArgsSpec = siteKeyRegister.SiteKeyRegisterCommand
|
|
|
13
12
|
}
|
|
14
13
|
);
|
|
15
14
|
const commandSiteKeyRegisterApi = (pair, authAccount, config, cmdArgs) => {
|
|
16
|
-
const logger = cmdArgs?.logger ||
|
|
15
|
+
const logger$1 = cmdArgs?.logger || logger.getLogger(logger.LogLevel.enum.info, "cli.dapp_register");
|
|
17
16
|
return {
|
|
18
17
|
command: "site_key_register_api <sitekey> <url>",
|
|
19
18
|
describe: "Register a Site Key",
|
|
@@ -49,6 +48,10 @@ const commandSiteKeyRegisterApi = (pair, authAccount, config, cmdArgs) => {
|
|
|
49
48
|
type: "number",
|
|
50
49
|
demandOption: false,
|
|
51
50
|
desc: "Image threshold for settings"
|
|
51
|
+
}).option("image_max_rounds", {
|
|
52
|
+
type: "number",
|
|
53
|
+
demandOption: false,
|
|
54
|
+
desc: "Max image rounds"
|
|
52
55
|
}),
|
|
53
56
|
handler: async (argv) => {
|
|
54
57
|
try {
|
|
@@ -61,11 +64,11 @@ const commandSiteKeyRegisterApi = (pair, authAccount, config, cmdArgs) => {
|
|
|
61
64
|
url,
|
|
62
65
|
domains,
|
|
63
66
|
pow_difficulty,
|
|
64
|
-
image_threshold
|
|
67
|
+
image_threshold,
|
|
68
|
+
image_max_rounds
|
|
65
69
|
} = SiteKeyRegisterApiCommandArgsSpec.parse(argv);
|
|
66
70
|
const api$1 = new api.ProviderApi(url, pair.address);
|
|
67
|
-
const
|
|
68
|
-
const signature = util.u8aToHex(authAccount.sign(timestamp));
|
|
71
|
+
const jwt = pair.jwtIssue();
|
|
69
72
|
await api$1.registerSiteKey(
|
|
70
73
|
sitekey,
|
|
71
74
|
argv.tier,
|
|
@@ -75,17 +78,18 @@ const commandSiteKeyRegisterApi = (pair, authAccount, config, cmdArgs) => {
|
|
|
75
78
|
domains: domains || [],
|
|
76
79
|
powDifficulty: pow_difficulty,
|
|
77
80
|
imageThreshold: image_threshold,
|
|
81
|
+
imageMaxRounds: image_max_rounds,
|
|
82
|
+
puzzleTolerance: types.puzzleToleranceDefault,
|
|
78
83
|
disallowWebView: false
|
|
79
84
|
},
|
|
80
|
-
|
|
81
|
-
signature
|
|
85
|
+
jwt
|
|
82
86
|
);
|
|
83
|
-
logger.info(() => ({
|
|
87
|
+
logger$1.info(() => ({
|
|
84
88
|
data: { sitekey },
|
|
85
89
|
msg: "Site Key registered"
|
|
86
90
|
}));
|
|
87
91
|
} catch (err) {
|
|
88
|
-
logger.error(() => ({
|
|
92
|
+
logger$1.error(() => ({
|
|
89
93
|
err,
|
|
90
94
|
msg: "Error registering Site Key"
|
|
91
95
|
}));
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const common = require("@prosopo/common");
|
|
3
2
|
const env = require("@prosopo/env");
|
|
3
|
+
const logger = require("@prosopo/logger");
|
|
4
4
|
const provider = require("@prosopo/provider");
|
|
5
5
|
const commandStoreCaptchasExternally = (pair, config, cmdArgs) => {
|
|
6
|
-
const logger = cmdArgs?.logger ||
|
|
6
|
+
const logger$1 = cmdArgs?.logger || logger.getLogger(logger.LogLevel.enum.info, "cli.store_captchas");
|
|
7
7
|
return {
|
|
8
8
|
command: "store_captchas",
|
|
9
9
|
describe: "Store captcha records externally for billing purposes",
|
|
@@ -16,7 +16,7 @@ const commandStoreCaptchasExternally = (pair, config, cmdArgs) => {
|
|
|
16
16
|
env$1.logger.error(() => ({ err }));
|
|
17
17
|
});
|
|
18
18
|
} catch (err) {
|
|
19
|
-
logger.error(() => ({ err }));
|
|
19
|
+
logger$1.error(() => ({ err }));
|
|
20
20
|
}
|
|
21
21
|
},
|
|
22
22
|
middlewares: []
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const env = require("@prosopo/env");
|
|
3
|
+
const logger = require("@prosopo/logger");
|
|
4
|
+
const provider = require("@prosopo/provider");
|
|
5
|
+
const commandUpdateSpamEmailDomains = (pair, config, cmdArgs) => {
|
|
6
|
+
const logger$1 = cmdArgs?.logger || logger.getLogger(logger.LogLevel.enum.info, "cli.update_spam_email_domains");
|
|
7
|
+
return {
|
|
8
|
+
command: "update_spam_email_domains",
|
|
9
|
+
describe: "Update spam email domains from configured URLs",
|
|
10
|
+
handler: async () => {
|
|
11
|
+
try {
|
|
12
|
+
const env$1 = new env.ProviderEnvironment(config, pair);
|
|
13
|
+
await env$1.isReady();
|
|
14
|
+
const spamEmailDomainsUrls = config.spamEmailDomainsUrls || [];
|
|
15
|
+
if (spamEmailDomainsUrls.length === 0) {
|
|
16
|
+
logger$1.warn(() => ({
|
|
17
|
+
msg: "No spam email domains URLs configured. Set SPAM_EMAIL_DOMAINS_URLS in environment."
|
|
18
|
+
}));
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
logger$1.info(() => ({
|
|
22
|
+
msg: "Starting spam email domains update",
|
|
23
|
+
data: { urlCount: spamEmailDomainsUrls.length }
|
|
24
|
+
}));
|
|
25
|
+
await provider.updateSpamEmailDomains(
|
|
26
|
+
env$1.getDb(),
|
|
27
|
+
env$1.logger,
|
|
28
|
+
spamEmailDomainsUrls
|
|
29
|
+
).catch((err) => {
|
|
30
|
+
env$1.logger.error(() => ({
|
|
31
|
+
msg: "Error updating spam email domains",
|
|
32
|
+
err
|
|
33
|
+
}));
|
|
34
|
+
throw err;
|
|
35
|
+
});
|
|
36
|
+
logger$1.info(() => ({
|
|
37
|
+
msg: "Spam email domains update completed successfully"
|
|
38
|
+
}));
|
|
39
|
+
} catch (err) {
|
|
40
|
+
logger$1.error(() => ({
|
|
41
|
+
msg: "Failed to update spam email domains",
|
|
42
|
+
err
|
|
43
|
+
}));
|
|
44
|
+
throw err;
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
middlewares: []
|
|
48
|
+
};
|
|
49
|
+
};
|
|
50
|
+
module.exports = commandUpdateSpamEmailDomains;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const
|
|
2
|
+
const logger = require("@prosopo/logger");
|
|
3
3
|
const util = require("@prosopo/util");
|
|
4
4
|
const commandVersion = (pair, config, cmdArgs) => {
|
|
5
|
-
const logger = cmdArgs?.logger ||
|
|
5
|
+
const logger$1 = cmdArgs?.logger || logger.getLogger(logger.LogLevel.enum.info, "cli.version");
|
|
6
6
|
return {
|
|
7
7
|
command: "version",
|
|
8
8
|
describe: "Return the version of the software",
|
|
9
9
|
handler: () => {
|
|
10
|
-
logger.info(() => ({
|
|
10
|
+
logger$1.info(() => ({
|
|
11
11
|
data: { version: util.version }
|
|
12
12
|
}));
|
|
13
13
|
}
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -10,10 +10,8 @@ exports.processArgs = argv.processArgs;
|
|
|
10
10
|
exports.start = start.start;
|
|
11
11
|
exports.getAddress = process_env.getAddress;
|
|
12
12
|
exports.getDB = process_env.getDB;
|
|
13
|
-
exports.getPairType = process_env.getPairType;
|
|
14
13
|
exports.getPassword = process_env.getPassword;
|
|
15
14
|
exports.getSecret = process_env.getSecret;
|
|
16
|
-
exports.getSs58Format = process_env.getSs58Format;
|
|
17
15
|
exports.loadJSONFile = files.loadJSONFile;
|
|
18
16
|
exports.readFile = files.readFile;
|
|
19
17
|
exports.writeJSONFile = files.writeJSONFile;
|
package/dist/cjs/process.env.cjs
CHANGED
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const common = require("@prosopo/common");
|
|
4
|
-
function getSs58Format() {
|
|
5
|
-
return Number.parseInt(process.env.SS58_FORMAT || "") || 42;
|
|
6
|
-
}
|
|
7
|
-
function getPairType() {
|
|
8
|
-
return process.env.PROSOPO_PAIR_TYPE || "sr25519";
|
|
9
|
-
}
|
|
10
4
|
function getAddress(who) {
|
|
11
5
|
if (!who) {
|
|
12
6
|
who = "PROVIDER";
|
|
@@ -39,7 +33,5 @@ function getDB() {
|
|
|
39
33
|
}
|
|
40
34
|
exports.getAddress = getAddress;
|
|
41
35
|
exports.getDB = getDB;
|
|
42
|
-
exports.getPairType = getPairType;
|
|
43
36
|
exports.getPassword = getPassword;
|
|
44
37
|
exports.getSecret = getSecret;
|
|
45
|
-
exports.getSs58Format = getSs58Format;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const
|
|
2
|
+
const logger = require("@prosopo/logger");
|
|
3
3
|
const types = require("@prosopo/types");
|
|
4
4
|
const RateLimiter = require("./RateLimiter.cjs");
|
|
5
5
|
const process_env = require("./process.env.cjs");
|
|
@@ -25,13 +25,42 @@ const getLRules = () => {
|
|
|
25
25
|
return {};
|
|
26
26
|
}
|
|
27
27
|
};
|
|
28
|
+
const isStringArray = (value) => Array.isArray(value) && value.every((item) => typeof item === "string");
|
|
29
|
+
const getDnsServers = () => {
|
|
30
|
+
if (!process.env.PROSOPO_DNS_SERVERS) {
|
|
31
|
+
return void 0;
|
|
32
|
+
}
|
|
33
|
+
try {
|
|
34
|
+
const parsed = JSON.parse(process.env.PROSOPO_DNS_SERVERS);
|
|
35
|
+
if (isStringArray(parsed)) {
|
|
36
|
+
return parsed;
|
|
37
|
+
}
|
|
38
|
+
return void 0;
|
|
39
|
+
} catch (e) {
|
|
40
|
+
return void 0;
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
const getSpamEmailDomainsUrls = () => {
|
|
44
|
+
if (!process.env.SPAM_EMAIL_DOMAINS_URLS) {
|
|
45
|
+
return void 0;
|
|
46
|
+
}
|
|
47
|
+
try {
|
|
48
|
+
const parsed = JSON.parse(process.env.SPAM_EMAIL_DOMAINS_URLS);
|
|
49
|
+
if (isStringArray(parsed)) {
|
|
50
|
+
return parsed;
|
|
51
|
+
}
|
|
52
|
+
return void 0;
|
|
53
|
+
} catch (e) {
|
|
54
|
+
return void 0;
|
|
55
|
+
}
|
|
56
|
+
};
|
|
28
57
|
const getHost = () => {
|
|
29
58
|
const importMeta = { url: typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("prosopo.config.cjs", document.baseURI).href };
|
|
30
59
|
return process.env.CADDY_DOMAIN || importMeta.env?.VITE_CADDY_DOMAIN;
|
|
31
60
|
};
|
|
32
61
|
function getConfig(captchaSolutionsConfig, captchaServeConfig, who = "PROVIDER", admin = "ADMIN") {
|
|
33
62
|
return types.ProsopoConfigSchema.parse({
|
|
34
|
-
logLevel:
|
|
63
|
+
logLevel: logger.parseLogLevel(process.env.PROSOPO_LOG_LEVEL, "info"),
|
|
35
64
|
host: getHost(),
|
|
36
65
|
defaultEnvironment: process.env.PROSOPO_DEFAULT_ENVIRONMENT ? types.EnvironmentTypesSchema.parse(process.env.PROSOPO_DEFAULT_ENVIRONMENT) : types.EnvironmentTypesSchema.enum.development,
|
|
37
66
|
account: {
|
|
@@ -88,9 +117,13 @@ function getConfig(captchaSolutionsConfig, captchaServeConfig, who = "PROVIDER",
|
|
|
88
117
|
},
|
|
89
118
|
clientEntropyScheduler: {
|
|
90
119
|
schedule: process.env.CLIENT_ENTROPY_SCHEDULE
|
|
120
|
+
},
|
|
121
|
+
spamEmailDomainsScheduler: {
|
|
122
|
+
schedule: process.env.SPAM_EMAIL_DOMAINS_SCHEDULE
|
|
91
123
|
}
|
|
92
124
|
},
|
|
93
125
|
lRules: getLRules(),
|
|
126
|
+
spamEmailDomainsUrls: getSpamEmailDomainsUrls(),
|
|
94
127
|
authAccount: {
|
|
95
128
|
address: process_env.getAddress(admin),
|
|
96
129
|
password: process_env.getPassword(admin),
|
|
@@ -99,7 +132,9 @@ function getConfig(captchaSolutionsConfig, captchaServeConfig, who = "PROVIDER",
|
|
|
99
132
|
ipApi: {
|
|
100
133
|
apiKey: process.env.PROSOPO_IPAPI_KEY,
|
|
101
134
|
baseUrl: process.env.PROSOPO_IPAPI_URL
|
|
102
|
-
}
|
|
135
|
+
},
|
|
136
|
+
maxmindDbPath: process.env.MAXMIND_DB_PATH,
|
|
137
|
+
dnsServers: getDnsServers()
|
|
103
138
|
});
|
|
104
139
|
}
|
|
105
140
|
module.exports = getConfig;
|
package/dist/cjs/reloader.cjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const fs = require("node:fs");
|
|
3
|
-
const common = require("@prosopo/common");
|
|
4
3
|
const dotenv = require("@prosopo/dotenv");
|
|
5
4
|
const env = require("@prosopo/env");
|
|
5
|
+
const logger = require("@prosopo/logger");
|
|
6
6
|
const start = require("./start.cjs");
|
|
7
|
-
const log =
|
|
7
|
+
const log = logger.getLogger(logger.LogLevel.enum.info, "CLI");
|
|
8
8
|
class ReloadingAPI {
|
|
9
9
|
constructor(envPath, config, pair, authAccount, processedArgs) {
|
|
10
10
|
this._envPath = envPath;
|