@prosopo/scripts 3.1.138 → 3.1.140
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 +20 -35
- package/.turbo/turbo-build$colon$tsc.log +28 -28
- package/.turbo/turbo-build.log +24 -38
- package/CHANGELOG.md +35 -0
- package/dist/_virtual/_rolldown/runtime.js +3 -0
- package/dist/cjs/_virtual/_rolldown/runtime.cjs +23 -0
- package/dist/cjs/cli/index.cjs +77 -81
- package/dist/cjs/index.cjs +16 -17
- package/dist/cjs/scripts/setVersion.cjs +119 -127
- package/dist/cjs/setup/index.cjs +5 -7
- package/dist/cjs/setup/provider.cjs +8 -8
- package/dist/cjs/setup/setup.cjs +109 -123
- package/dist/cjs/setup/site.cjs +21 -22
- package/dist/cjs/util/exec.cjs +35 -44
- package/dist/cjs/util/fluxLogDappDetails.cjs +10 -15
- package/dist/cjs/util/index.cjs +8 -10
- package/dist/cjs/util/updateEnv.cjs +61 -61
- package/dist/cli/index.js +69 -80
- package/dist/index.js +7 -16
- package/dist/scripts/setVersion.js +110 -126
- package/dist/setup/index.js +2 -6
- package/dist/setup/provider.js +7 -7
- package/dist/setup/setup.js +97 -119
- package/dist/setup/site.js +21 -22
- package/dist/util/exec.js +34 -43
- package/dist/util/fluxLogDappDetails.js +11 -16
- package/dist/util/index.js +1 -7
- package/dist/util/updateEnv.js +52 -59
- package/dist/workspace/dist/_virtual/_rolldown/runtime.js +2 -0
- package/dist/workspace/dist/index.js +2 -41
- package/dist/workspace/dist/projectInfo.js +80 -114
- package/package.json +18 -18
|
@@ -1,132 +1,124 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
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
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
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
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
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
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
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
|
-
|
|
123
|
+
//#endregion
|
|
124
|
+
exports.default = setVersion;
|
package/dist/cjs/setup/index.cjs
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
exports.
|
|
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
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
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;
|
package/dist/cjs/setup/setup.cjs
CHANGED
|
@@ -1,139 +1,125 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
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
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
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
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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
|
-
|
|
25
|
-
|
|
26
|
-
|
|
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
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
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
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
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
|
-
|
|
52
|
-
|
|
53
|
-
|
|
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
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
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
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
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;
|
package/dist/cjs/setup/site.cjs
CHANGED
|
@@ -1,25 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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;
|