@prosopo/scripts 3.1.138 → 3.1.139

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.
@@ -1,132 +1,124 @@
1
- "use strict";
2
- const fs = require("node:fs");
3
- const path = require("node:path");
4
- const toml = require("@iarna/toml");
5
- const dotenv = require("@prosopo/dotenv");
6
- const logger = require("@prosopo/logger");
7
- const workspace = require("@prosopo/workspace");
8
- dotenv.loadEnv();
9
- const logLevel = logger.parseLogLevel(process.env.PROSOPO_LOG_LEVEL);
10
- const log = logger.getLogger(logLevel, "setVersion");
1
+ const require_runtime = require("../_virtual/_rolldown/runtime.cjs");
2
+ let node_path = require("node:path");
3
+ node_path = require_runtime.__toESM(node_path, 1);
4
+ let _prosopo_dotenv = require("@prosopo/dotenv");
5
+ let _prosopo_logger = require("@prosopo/logger");
6
+ let node_fs = require("node:fs");
7
+ node_fs = require_runtime.__toESM(node_fs, 1);
8
+ let _prosopo_workspace = require("@prosopo/workspace");
9
+ let _iarna_toml = require("@iarna/toml");
10
+ //#region src/scripts/setVersion.ts
11
+ (0, _prosopo_dotenv.loadEnv)();
12
+ var logLevel = (0, _prosopo_logger.parseLogLevel)(process.env.PROSOPO_LOG_LEVEL);
13
+ var log = (0, _prosopo_logger.getLogger)(logLevel, "setVersion");
11
14
  log.info(() => ({ data: { logLevel } }));
12
- const parseVersion = (version) => {
13
- try {
14
- const parts = version.split(".");
15
- if (parts.length !== 3) {
16
- throw new Error();
17
- }
18
- let [major, minor, patch] = parts;
19
- major = Number.parseInt(major ?? "").toString();
20
- minor = Number.parseInt(minor ?? "").toString();
21
- patch = Number.parseInt(patch ?? "").toString();
22
- if (major === "NaN" || minor === "NaN" || patch === "NaN") {
23
- throw new Error();
24
- }
25
- return `${major}.${minor}.${patch}`;
26
- } catch (e) {
27
- throw new Error("Version must be in the format of x.y.z");
28
- }
15
+ var parseVersion = (version) => {
16
+ try {
17
+ const parts = version.split(".");
18
+ if (parts.length !== 3) throw new Error();
19
+ let [major, minor, patch] = parts;
20
+ major = Number.parseInt(major ?? "").toString();
21
+ minor = Number.parseInt(minor ?? "").toString();
22
+ patch = Number.parseInt(patch ?? "").toString();
23
+ if (major === "NaN" || minor === "NaN" || patch === "NaN") throw new Error();
24
+ return `${major}.${minor}.${patch}`;
25
+ } catch (e) {
26
+ throw new Error("Version must be in the format of x.y.z");
27
+ }
29
28
  };
30
- const find = (pth, filter) => {
31
- const files = fs.readdirSync(pth);
32
- const results = [];
33
- for (const file of files) {
34
- const fullPath = path.join(pth, file);
35
- if (filter(fullPath)) {
36
- results.push(fullPath);
37
- }
38
- try {
39
- if (fs.statSync(fullPath).isDirectory()) {
40
- results.push(...find(fullPath, filter));
41
- }
42
- } catch (e) {
43
- log.debug(() => ({ data: { fullPath }, msg: "Not a directory" }));
44
- }
45
- }
46
- return results;
29
+ var find = (pth, filter) => {
30
+ const files = node_fs.default.readdirSync(pth);
31
+ const results = [];
32
+ for (const file of files) {
33
+ const fullPath = node_path.default.join(pth, file);
34
+ if (filter(fullPath)) results.push(fullPath);
35
+ try {
36
+ if (node_fs.default.statSync(fullPath).isDirectory()) results.push(...find(fullPath, filter));
37
+ } catch (e) {
38
+ log.debug(() => ({
39
+ data: { fullPath },
40
+ msg: "Not a directory"
41
+ }));
42
+ }
43
+ }
44
+ return results;
47
45
  };
48
46
  async function setVersion(versionIn, ignore) {
49
- log.info(() => ({ data: { versionIn }, msg: "Setting version to" }));
50
- const version = parseVersion(versionIn);
51
- const root = workspace.getRootDir();
52
- const ignorePaths = ["node_modules", "cargo-cache", ...ignore ?? []];
53
- log.debug(() => ({ data: { ignorePaths }, msg: "Ignoring paths" }));
54
- const files = find(root, (pth) => {
55
- if (ignorePaths.some((ignorePath) => pth.includes(ignorePath))) {
56
- return false;
57
- }
58
- const basename = path.basename(pth);
59
- return basename === "package.json" || basename === "Cargo.toml";
60
- });
61
- files.filter((pth) => path.extname(pth) === ".json").forEach((pth) => {
62
- log.debug(() => ({ data: { pth }, msg: "setting version in" }));
63
- const content = fs.readFileSync(pth, "utf8");
64
- const jsonContent = JSON.parse(content);
65
- if (jsonContent.version) {
66
- jsonContent.version = version;
67
- }
68
- for (const obj of [
69
- jsonContent.dependencies ?? {},
70
- jsonContent.devDependencies ?? {},
71
- jsonContent.peerDependencies ?? {}
72
- ]) {
73
- for (const key of Object.keys(obj)) {
74
- if (key.startsWith("@prosopo") && !key.includes("typechain")) {
75
- log.debug(() => ({
76
- data: { key, version, pth },
77
- msg: "setting dependency version"
78
- }));
79
- obj[key] = version;
80
- }
81
- }
82
- }
83
- fs.writeFileSync(pth, `${JSON.stringify(jsonContent, null, 4)}
84
- `);
85
- });
86
- files.filter((pth) => path.extname(pth) === ".toml").filter((pth) => {
87
- return !ignorePaths.some((ignorePath) => pth.includes(ignorePath));
88
- }).forEach((pth) => {
89
- log.debug(() => ({ data: { pth }, msg: "setting version in" }));
90
- const content = fs.readFileSync(pth, "utf8");
91
- const tomlContent = toml.parse(content);
92
- if (tomlContent.workspace) {
93
- if (tomlContent.workspace.version) {
94
- tomlContent.workspace.version = version;
95
- }
96
- } else {
97
- tomlContent.package.version = version;
98
- }
99
- fs.writeFileSync(pth, `${toml.stringify(tomlContent)}
100
- `);
101
- });
102
- files.filter((pth) => path.extname(pth) === ".toml").forEach((pth) => {
103
- log.debug(() => ({
104
- data: { pth },
105
- msg: "setting dependency versions in"
106
- }));
107
- const content = fs.readFileSync(pth, "utf8");
108
- const tomlContent = toml.parse(content);
109
- if (tomlContent.workspace) {
110
- if (tomlContent.workspace.version) {
111
- tomlContent.workspace.version = version;
112
- }
113
- } else {
114
- for (const obj of [
115
- tomlContent.dependencies ?? {},
116
- tomlContent["dev-dependencies"] ?? {}
117
- ]) {
118
- for (const [key, value] of Object.entries(obj)) {
119
- if (value.path) {
120
- path.join(value.path, "Cargo.toml");
121
- const depContent = fs.readFileSync(pth, "utf8");
122
- const depTomlContent = toml.parse(depContent);
123
- value.version = depTomlContent.version;
124
- }
125
- }
126
- }
127
- }
128
- fs.writeFileSync(pth, `${toml.stringify(tomlContent)}
129
- `);
130
- });
47
+ log.info(() => ({
48
+ data: { versionIn },
49
+ msg: "Setting version to"
50
+ }));
51
+ const version = parseVersion(versionIn);
52
+ const root = (0, _prosopo_workspace.getRootDir)();
53
+ const ignorePaths = [
54
+ "node_modules",
55
+ "cargo-cache",
56
+ ...ignore ?? []
57
+ ];
58
+ log.debug(() => ({
59
+ data: { ignorePaths },
60
+ msg: "Ignoring paths"
61
+ }));
62
+ const files = find(root, (pth) => {
63
+ if (ignorePaths.some((ignorePath) => pth.includes(ignorePath))) return false;
64
+ const basename = node_path.default.basename(pth);
65
+ return basename === "package.json" || basename === "Cargo.toml";
66
+ });
67
+ files.filter((pth) => node_path.default.extname(pth) === ".json").forEach((pth) => {
68
+ log.debug(() => ({
69
+ data: { pth },
70
+ msg: "setting version in"
71
+ }));
72
+ const content = node_fs.default.readFileSync(pth, "utf8");
73
+ const jsonContent = JSON.parse(content);
74
+ if (jsonContent.version) jsonContent.version = version;
75
+ for (const obj of [
76
+ jsonContent.dependencies ?? {},
77
+ jsonContent.devDependencies ?? {},
78
+ jsonContent.peerDependencies ?? {}
79
+ ]) for (const key of Object.keys(obj)) if (key.startsWith("@prosopo") && !key.includes("typechain")) {
80
+ log.debug(() => ({
81
+ data: {
82
+ key,
83
+ version,
84
+ pth
85
+ },
86
+ msg: "setting dependency version"
87
+ }));
88
+ obj[key] = version;
89
+ }
90
+ node_fs.default.writeFileSync(pth, `${JSON.stringify(jsonContent, null, 4)}\n`);
91
+ });
92
+ files.filter((pth) => node_path.default.extname(pth) === ".toml").filter((pth) => {
93
+ return !ignorePaths.some((ignorePath) => pth.includes(ignorePath));
94
+ }).forEach((pth) => {
95
+ log.debug(() => ({
96
+ data: { pth },
97
+ msg: "setting version in"
98
+ }));
99
+ const content = node_fs.default.readFileSync(pth, "utf8");
100
+ const tomlContent = (0, _iarna_toml.parse)(content);
101
+ if (tomlContent.workspace) {
102
+ if (tomlContent.workspace.version) tomlContent.workspace.version = version;
103
+ } else tomlContent.package.version = version;
104
+ node_fs.default.writeFileSync(pth, `${(0, _iarna_toml.stringify)(tomlContent)}\n`);
105
+ });
106
+ files.filter((pth) => node_path.default.extname(pth) === ".toml").forEach((pth) => {
107
+ log.debug(() => ({
108
+ data: { pth },
109
+ msg: "setting dependency versions in"
110
+ }));
111
+ const content = node_fs.default.readFileSync(pth, "utf8");
112
+ const tomlContent = (0, _iarna_toml.parse)(content);
113
+ if (tomlContent.workspace) {
114
+ if (tomlContent.workspace.version) tomlContent.workspace.version = version;
115
+ } else for (const obj of [tomlContent.dependencies ?? {}, tomlContent["dev-dependencies"] ?? {}]) for (const [key, value] of Object.entries(obj)) if (value.path) {
116
+ node_path.default.join(value.path, "Cargo.toml");
117
+ const depContent = node_fs.default.readFileSync(pth, "utf8");
118
+ value.version = (0, _iarna_toml.parse)(depContent).version;
119
+ }
120
+ node_fs.default.writeFileSync(pth, `${(0, _iarna_toml.stringify)(tomlContent)}\n`);
121
+ });
131
122
  }
132
- module.exports = setVersion;
123
+ //#endregion
124
+ exports.default = setVersion;
@@ -1,7 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const setup = require("./setup.cjs");
4
- const provider = require("./provider.cjs");
5
- exports.setup = setup.setup;
6
- exports.updateEnvFile = setup.updateEnvFile;
7
- exports.setupProvider = provider.setupProvider;
1
+ const require_provider = require("./provider.cjs");
2
+ const require_setup = require("./setup.cjs");
3
+ exports.setup = require_setup.setup;
4
+ exports.setupProvider = require_provider.setupProvider;
5
+ exports.updateEnvFile = require_setup.updateEnvFile;
@@ -1,11 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const datasets = require("@prosopo/datasets");
4
- const provider = require("@prosopo/provider");
1
+ let _prosopo_datasets = require("@prosopo/datasets");
2
+ let _prosopo_provider = require("@prosopo/provider");
3
+ //#region src/setup/provider.ts
5
4
  async function setupProvider(env) {
6
- const logger = env.logger;
7
- const tasks = new provider.Tasks(env);
8
- logger.info(() => ({ msg: " - providerSetDataset" }));
9
- await tasks.datasetManager.providerSetDataset(datasets.datasetWithSolutionHashes);
5
+ const logger = env.logger;
6
+ const tasks = new _prosopo_provider.Tasks(env);
7
+ logger.info(() => ({ msg: " - providerSetDataset" }));
8
+ await tasks.datasetManager.providerSetDataset(_prosopo_datasets.datasetWithSolutionHashes);
10
9
  }
10
+ //#endregion
11
11
  exports.setupProvider = setupProvider;
@@ -1,139 +1,125 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const path = require("node:path");
4
- const cli = require("@prosopo/cli");
5
- const common = require("@prosopo/common");
6
- const dotenv = require("@prosopo/dotenv");
7
- const env = require("@prosopo/env");
8
- const keyring = require("@prosopo/keyring");
9
- const logger$1 = require("@prosopo/logger");
10
- const util = require("@prosopo/util");
11
- const fse = require("fs-extra");
1
+ const require_runtime = require("../_virtual/_rolldown/runtime.cjs");
2
+ const require_updateEnv = require("../util/updateEnv.cjs");
12
3
  require("../util/index.cjs");
13
- const provider = require("./provider.cjs");
14
- const site = require("./site.cjs");
15
- const updateEnv = require("../util/updateEnv.cjs");
16
- const logger = logger$1.getLogger(logger$1.LogLevel.enum.info, "setup");
17
- const __dirname$1 = path.resolve();
4
+ const require_provider = require("./provider.cjs");
5
+ const require_site = require("./site.cjs");
6
+ let node_path = require("node:path");
7
+ node_path = require_runtime.__toESM(node_path, 1);
8
+ let _prosopo_cli = require("@prosopo/cli");
9
+ let _prosopo_common = require("@prosopo/common");
10
+ let _prosopo_dotenv = require("@prosopo/dotenv");
11
+ let _prosopo_env = require("@prosopo/env");
12
+ let _prosopo_keyring = require("@prosopo/keyring");
13
+ let _prosopo_logger = require("@prosopo/logger");
14
+ let _prosopo_util = require("@prosopo/util");
15
+ let fs_extra = require("fs-extra");
16
+ fs_extra = require_runtime.__toESM(fs_extra, 1);
17
+ //#region src/setup/setup.ts
18
+ var logger = (0, _prosopo_logger.getLogger)(_prosopo_logger.LogLevel.enum.info, "setup");
19
+ var __dirname$1 = node_path.default.resolve();
18
20
  function getRootDir() {
19
- const rootDir = process.env.PROSOPO_ROOT_DIR || path.resolve(__dirname$1, "../..");
20
- logger.info(() => ({ msg: "Root dir:", data: { rootDir } }));
21
- return rootDir;
21
+ const rootDir = process.env.PROSOPO_ROOT_DIR || node_path.default.resolve(__dirname$1, "../..");
22
+ logger.info(() => ({
23
+ msg: "Root dir:",
24
+ data: { rootDir }
25
+ }));
26
+ return rootDir;
22
27
  }
23
28
  function getDatasetFilePath() {
24
- const datasetFile = process.env.PROSOPO_PROVIDER_DATASET_FILE || path.resolve("../data/captchas.json");
25
- logger.info(() => ({ msg: "Dataset file:", data: { datasetFile } }));
26
- return datasetFile;
29
+ const datasetFile = process.env.PROSOPO_PROVIDER_DATASET_FILE || node_path.default.resolve("../data/captchas.json");
30
+ logger.info(() => ({
31
+ msg: "Dataset file:",
32
+ data: { datasetFile }
33
+ }));
34
+ return datasetFile;
27
35
  }
28
36
  function getDefaultProvider() {
29
- const host = process.env.PROSOPO_PROVIDER_HOST || "localhost";
30
- return {
31
- url: process.env.PROSOPO_API_PORT ? `https://${host}:${process.env.PROSOPO_API_PORT}` : `https://${host}:9229`,
32
- datasetFile: getDatasetFilePath(),
33
- address: process.env.PROSOPO_PROVIDER_ADDRESS || "",
34
- secret: cli.getSecret(),
35
- captchaDatasetId: "",
36
- pair: keyring.getPair(cli.getSecret())
37
- };
37
+ const host = process.env.PROSOPO_PROVIDER_HOST || "localhost";
38
+ return {
39
+ url: process.env.PROSOPO_API_PORT ? `https://${host}:${process.env.PROSOPO_API_PORT}` : `https://${host}:9229`,
40
+ datasetFile: getDatasetFilePath(),
41
+ address: process.env.PROSOPO_PROVIDER_ADDRESS || "",
42
+ secret: (0, _prosopo_cli.getSecret)(),
43
+ captchaDatasetId: "",
44
+ pair: (0, _prosopo_keyring.getPair)((0, _prosopo_cli.getSecret)())
45
+ };
38
46
  }
39
47
  async function copyEnvFile() {
40
- try {
41
- const rootDir = getRootDir();
42
- const tplLocation = path.resolve(rootDir, "./dev/scripts");
43
- const tplEnvFile = dotenv.getEnvFile(tplLocation, "env");
44
- const envFile = dotenv.getEnvFile(tplLocation, ".env");
45
- await fse.copy(tplEnvFile, envFile, { overwrite: false });
46
- } catch (err) {
47
- logger.debug(() => ({ msg: "Error copying env file", err }));
48
- }
48
+ try {
49
+ const rootDir = getRootDir();
50
+ const tplLocation = node_path.default.resolve(rootDir, "./dev/scripts");
51
+ const tplEnvFile = (0, _prosopo_dotenv.getEnvFile)(tplLocation, "env");
52
+ const envFile = (0, _prosopo_dotenv.getEnvFile)(tplLocation, ".env");
53
+ await fs_extra.default.copy(tplEnvFile, envFile, { overwrite: false });
54
+ } catch (err) {
55
+ logger.debug(() => ({
56
+ msg: "Error copying env file",
57
+ err
58
+ }));
59
+ }
49
60
  }
50
61
  function updateEnvFileVar(source, name, value) {
51
- const envVar = new RegExp(`.*(${name}=)(.*)`, "g");
52
- if (envVar.test(source)) {
53
- return source.replace(envVar, `$1${value}`);
54
- }
55
- return `${source}
56
- ${name}=${value}`;
62
+ const envVar = new RegExp(`.*(${name}=)(.*)`, "g");
63
+ if (envVar.test(source)) return source.replace(envVar, `$1${value}`);
64
+ return `${source}\n${name}=${value}`;
57
65
  }
58
66
  async function updateEnvFile(vars) {
59
- const rootDir = getRootDir();
60
- const envFile = dotenv.getEnvFile(rootDir, ".env");
61
- let readEnvFile = await fse.readFile(envFile, "utf8");
62
- for (const key in vars) {
63
- readEnvFile = updateEnvFileVar(readEnvFile, key, util.get(vars, key));
64
- }
65
- logger.info(() => ({ msg: `Updating ${envFile}` }));
66
- await fse.writeFile(envFile, readEnvFile);
67
+ const rootDir = getRootDir();
68
+ const envFile = (0, _prosopo_dotenv.getEnvFile)(rootDir, ".env");
69
+ let readEnvFile = await fs_extra.default.readFile(envFile, "utf8");
70
+ for (const key in vars) readEnvFile = updateEnvFileVar(readEnvFile, key, (0, _prosopo_util.get)(vars, key));
71
+ logger.info(() => ({ msg: `Updating ${envFile}` }));
72
+ await fs_extra.default.writeFile(envFile, readEnvFile);
67
73
  }
68
- async function setup(provider$1, sites) {
69
- if (!provider$1 && !sites) {
70
- logger.info(() => ({ msg: "No setup required, exiting." }));
71
- process.exit(0);
72
- }
73
- const defaultProvider = getDefaultProvider();
74
- if (defaultProvider.secret) {
75
- const hasProviderAccount = defaultProvider.address && defaultProvider.secret;
76
- logger.debug(() => ({
77
- msg: "ENVIRONMENT",
78
- data: { nodeEnv: process.env.NODE_ENV }
79
- }));
80
- const [mnemonic, address] = !hasProviderAccount ? await keyring.generateMnemonic() : [defaultProvider.secret, defaultProvider.address];
81
- logger.debug(() => ({ msg: `Address: ${address}` }));
82
- logger.debug(() => ({ msg: `Mnemonic: ${mnemonic}` }));
83
- logger.debug(() => ({ msg: "Writing .env file..." }));
84
- await copyEnvFile();
85
- if (!process.env.PROSOPO_SITE_KEY) {
86
- throw new common.ProsopoEnvError("DEVELOPER.PROSOPO_SITE_KEY_MISSING");
87
- }
88
- const config = cli.defaultConfig();
89
- const providerSecret = config.account.secret;
90
- const pair = keyring.getPair(providerSecret);
91
- const authAccount = keyring.getPair(config.authAccount.secret);
92
- const env$1 = new env.ProviderEnvironment(config, pair, authAccount);
93
- await env$1.isReady();
94
- defaultProvider.secret = mnemonic;
95
- env$1.logger.info(() => ({
96
- msg: `Registering provider... ${defaultProvider.address}`
97
- }));
98
- defaultProvider.pair = keyring.getPair(providerSecret);
99
- if (provider$1) {
100
- await provider.setupProvider(env$1);
101
- if (!hasProviderAccount) {
102
- await updateEnvFile({
103
- PROVIDER_MNEMONIC: `"${mnemonic}"`,
104
- PROVIDER_ADDRESS: address
105
- });
106
- }
107
- }
108
- if (sites) {
109
- for (const siteKey of keyring.getDefaultSiteKeys()) {
110
- siteKey.pair = keyring.getPair(siteKey.secret);
111
- env$1.logger.info(() => ({
112
- msg: `Registering ${siteKey.secret} siteKey ... ${siteKey.pair?.address}`
113
- }));
114
- await site.registerSiteKey(env$1, siteKey.pair.address, siteKey.settings);
115
- env$1.logger.debug(() => ({
116
- msg: "Updating env files with PROSOPO_SITE_KEY"
117
- }));
118
- await updateEnv.updateDemoHTMLFiles(
119
- [/data-sitekey="(\w{48})"/, /siteKey:\s*'(\w{48})'/],
120
- siteKey.pair.address,
121
- env$1.logger
122
- );
123
- const envVarNames = siteKey.settings.captchaType === "image" ? [
124
- "PROSOPO_SITE_KEY",
125
- `PROSOPO_SITE_KEY_${siteKey.settings.captchaType.toUpperCase()}`
126
- ] : [
127
- `PROSOPO_SITE_KEY_${siteKey.settings.captchaType.toUpperCase()}`
128
- ];
129
- await updateEnv.updateEnvFiles(envVarNames, siteKey.pair.address, env$1.logger);
130
- }
131
- }
132
- process.exit();
133
- } else {
134
- console.error("no secret found in .env file");
135
- throw new common.ProsopoEnvError("GENERAL.NO_MNEMONIC_OR_SEED");
136
- }
74
+ async function setup(provider, sites) {
75
+ if (!provider && !sites) {
76
+ logger.info(() => ({ msg: "No setup required, exiting." }));
77
+ process.exit(0);
78
+ }
79
+ const defaultProvider = getDefaultProvider();
80
+ if (defaultProvider.secret) {
81
+ const hasProviderAccount = defaultProvider.address && defaultProvider.secret;
82
+ logger.debug(() => ({
83
+ msg: "ENVIRONMENT",
84
+ data: { nodeEnv: process.env.NODE_ENV }
85
+ }));
86
+ const [mnemonic, address] = !hasProviderAccount ? await (0, _prosopo_keyring.generateMnemonic)() : [defaultProvider.secret, defaultProvider.address];
87
+ logger.debug(() => ({ msg: `Address: ${address}` }));
88
+ logger.debug(() => ({ msg: `Mnemonic: ${mnemonic}` }));
89
+ logger.debug(() => ({ msg: "Writing .env file..." }));
90
+ await copyEnvFile();
91
+ if (!process.env.PROSOPO_SITE_KEY) throw new _prosopo_common.ProsopoEnvError("DEVELOPER.PROSOPO_SITE_KEY_MISSING");
92
+ const config = (0, _prosopo_cli.defaultConfig)();
93
+ const providerSecret = config.account.secret;
94
+ const pair = (0, _prosopo_keyring.getPair)(providerSecret);
95
+ const authAccount = (0, _prosopo_keyring.getPair)(config.authAccount.secret);
96
+ const env = new _prosopo_env.ProviderEnvironment(config, pair, authAccount);
97
+ await env.isReady();
98
+ defaultProvider.secret = mnemonic;
99
+ env.logger.info(() => ({ msg: `Registering provider... ${defaultProvider.address}` }));
100
+ defaultProvider.pair = (0, _prosopo_keyring.getPair)(providerSecret);
101
+ if (provider) {
102
+ await require_provider.setupProvider(env);
103
+ if (!hasProviderAccount) await updateEnvFile({
104
+ PROVIDER_MNEMONIC: `"${mnemonic}"`,
105
+ PROVIDER_ADDRESS: address
106
+ });
107
+ }
108
+ if (sites) for (const siteKey of (0, _prosopo_keyring.getDefaultSiteKeys)()) {
109
+ siteKey.pair = (0, _prosopo_keyring.getPair)(siteKey.secret);
110
+ env.logger.info(() => ({ msg: `Registering ${siteKey.secret} siteKey ... ${siteKey.pair?.address}` }));
111
+ await require_site.registerSiteKey(env, siteKey.pair.address, siteKey.settings);
112
+ env.logger.debug(() => ({ msg: "Updating env files with PROSOPO_SITE_KEY" }));
113
+ await require_updateEnv.updateDemoHTMLFiles([/data-sitekey="(\w{48})"/, /siteKey:\s*'(\w{48})'/], siteKey.pair.address, env.logger);
114
+ const envVarNames = siteKey.settings.captchaType === "image" ? ["PROSOPO_SITE_KEY", `PROSOPO_SITE_KEY_${siteKey.settings.captchaType.toUpperCase()}`] : [`PROSOPO_SITE_KEY_${siteKey.settings.captchaType.toUpperCase()}`];
115
+ await require_updateEnv.updateEnvFiles(envVarNames, siteKey.pair.address, env.logger);
116
+ }
117
+ process.exit();
118
+ } else {
119
+ console.error("no secret found in .env file");
120
+ throw new _prosopo_common.ProsopoEnvError("GENERAL.NO_MNEMONIC_OR_SEED");
121
+ }
137
122
  }
123
+ //#endregion
138
124
  exports.setup = setup;
139
125
  exports.updateEnvFile = updateEnvFile;
@@ -1,25 +1,24 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const provider = require("@prosopo/provider");
4
- const types = require("@prosopo/types");
1
+ let _prosopo_provider = require("@prosopo/provider");
2
+ let _prosopo_types = require("@prosopo/types");
3
+ //#region src/setup/site.ts
5
4
  async function registerSiteKey(env, siteKey, settings = {}) {
6
- const logger = env.logger;
7
- const tasks = new provider.Tasks(env);
8
- logger.info(() => ({
9
- msg: "registerSiteKey",
10
- data: { siteKey, captchaType: settings.captchaType }
11
- }));
12
- await tasks.clientTaskManager.registerSiteKey(
13
- siteKey,
14
- types.Tier.Professional,
15
- types.ClientSettingsSchema.parse({
16
- captchaType: types.CaptchaType.frictionless,
17
- frictionlessThreshold: 0.8,
18
- powDifficulty: 4,
19
- imageThreshold: 0.8,
20
- ...settings,
21
- domains: settings.domains && settings.domains.length > 0 ? settings.domains : ["localhost", "0.0.0.0"]
22
- })
23
- );
5
+ const logger = env.logger;
6
+ const tasks = new _prosopo_provider.Tasks(env);
7
+ logger.info(() => ({
8
+ msg: "registerSiteKey",
9
+ data: {
10
+ siteKey,
11
+ captchaType: settings.captchaType
12
+ }
13
+ }));
14
+ await tasks.clientTaskManager.registerSiteKey(siteKey, _prosopo_types.Tier.Professional, _prosopo_types.ClientSettingsSchema.parse({
15
+ captchaType: _prosopo_types.CaptchaType.frictionless,
16
+ frictionlessThreshold: .8,
17
+ powDifficulty: 4,
18
+ imageThreshold: .8,
19
+ ...settings,
20
+ domains: settings.domains && settings.domains.length > 0 ? settings.domains : ["localhost", "0.0.0.0"]
21
+ }));
24
22
  }
23
+ //#endregion
25
24
  exports.registerSiteKey = registerSiteKey;