@prosopo/scripts 3.1.208 → 3.1.209
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,5 +1,5 @@
|
|
|
1
1
|
$ tsc --build --verbose
|
|
2
|
-
|
|
2
|
+
4:00:44 PM - Projects in this build:
|
|
3
3
|
* ../config/tsconfig.json
|
|
4
4
|
* ../../packages/util/tsconfig.json
|
|
5
5
|
* ../../packages/locale/tsconfig.json
|
|
@@ -33,69 +33,69 @@ $ tsc --build --verbose
|
|
|
33
33
|
* ../../packages/cli/tsconfig.json
|
|
34
34
|
* tsconfig.json
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
4:00:44 PM - Project '../config/tsconfig.json' is up to date because newest input '../config/src/webpack/webpack.config.ts' is older than output '../config/tsconfig.tsbuildinfo'
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
4:00:44 PM - Project '../../packages/util/tsconfig.json' is up to date because newest input '../../packages/util/src/url.ts' is older than output '../../packages/util/tsconfig.tsbuildinfo'
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
4:00:44 PM - Project '../../packages/locale/tsconfig.json' is up to date because newest input '../../packages/locale/src/process.ts' is older than output '../../packages/locale/tsconfig.tsbuildinfo'
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
4:00:44 PM - Project '../../packages/util-crypto/tsconfig.json' is up to date because newest input '../../packages/util-crypto/src/types.ts' is older than output '../../packages/util-crypto/tsconfig.tsbuildinfo'
|
|
43
43
|
|
|
44
|
-
|
|
44
|
+
4:00:44 PM - Project '../../packages/types/tsconfig.json' is up to date because newest input '../../packages/types/src/types.test-d.ts' is older than output '../../packages/types/tsconfig.tsbuildinfo'
|
|
45
45
|
|
|
46
|
-
|
|
46
|
+
4:00:44 PM - Project '../../packages/api/tsconfig.json' is up to date because newest input '../../packages/api/src/tests/apiHarness.ts' is older than output '../../packages/api/tsconfig.tsbuildinfo'
|
|
47
47
|
|
|
48
|
-
|
|
48
|
+
4:00:44 PM - Project '../../packages/common/tsconfig.json' is up to date because newest input '../../packages/common/src/tests/errorSites.unit.test.ts' is older than output '../../packages/common/tsconfig.tsbuildinfo'
|
|
49
49
|
|
|
50
|
-
|
|
50
|
+
4:00:44 PM - Project '../../packages/logger/tsconfig.json' is up to date because newest input '../../packages/logger/src/tests/loggerBrowser.unit.test.ts' is older than output '../../packages/logger/tsconfig.tsbuildinfo'
|
|
51
51
|
|
|
52
|
-
|
|
52
|
+
4:00:44 PM - Project '../../packages/dotenv/tsconfig.json' is up to date because newest input '../../packages/dotenv/src/tests/env.unit.test.ts' is older than output '../../packages/dotenv/tsconfig.tsbuildinfo'
|
|
53
53
|
|
|
54
|
-
|
|
54
|
+
4:00:44 PM - Project '../../packages/ipinfo/tsconfig.json' is up to date because newest input '../../packages/ipinfo/src/IpInfoService.ts' is older than output '../../packages/ipinfo/tsconfig.tsbuildinfo'
|
|
55
55
|
|
|
56
|
-
|
|
56
|
+
4:00:44 PM - Project '../../packages/api-route/tsconfig.json' is up to date because newest input '../../packages/api-route/src/tests/apiRoute.unit.test.ts' is older than output '../../packages/api-route/tsconfig.tsbuildinfo'
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
4:00:44 PM - Project '../../packages/redis-client/tsconfig.json' is up to date because newest input '../../packages/redis-client/src/index.ts' is older than output '../../packages/redis-client/tsconfig.tsbuildinfo'
|
|
59
59
|
|
|
60
|
-
|
|
60
|
+
4:00:44 PM - Project '../../packages/user-access-policy/tsconfig.json' is up to date because newest input '../../packages/user-access-policy/src/transformRule.ts' is older than output '../../packages/user-access-policy/tsconfig.tsbuildinfo'
|
|
61
61
|
|
|
62
|
-
|
|
62
|
+
4:00:44 PM - Project '../../packages/types-database/tsconfig.json' is up to date because newest input '../../packages/types-database/src/index.ts' is older than output '../../packages/types-database/tsconfig.tsbuildinfo'
|
|
63
63
|
|
|
64
|
-
|
|
64
|
+
4:00:44 PM - Project '../../packages/database/tsconfig.json' is up to date because newest input '../../packages/database/src/tests/unit/captchaLabel.unit.test.ts' is older than output '../../packages/database/tsconfig.tsbuildinfo'
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
4:00:44 PM - Project '../../packages/keyring/tsconfig.json' is up to date because newest input '../../packages/keyring/src/keyring/keyring.test.ts' is older than output '../../packages/keyring/tsconfig.tsbuildinfo'
|
|
67
67
|
|
|
68
|
-
|
|
68
|
+
4:00:44 PM - Project '../../packages/types-env/tsconfig.json' is up to date because newest input '../../packages/types-env/src/index.ts' is older than output '../../packages/types-env/tsconfig.tsbuildinfo'
|
|
69
69
|
|
|
70
|
-
|
|
70
|
+
4:00:44 PM - Project '../../packages/env/tsconfig.json' is up to date because newest input '../../packages/env/src/env.ts' is older than output '../../packages/env/tsconfig.tsbuildinfo'
|
|
71
71
|
|
|
72
|
-
|
|
72
|
+
4:00:44 PM - Project '../../packages/api-express-router/tsconfig.json' is up to date because newest input '../../packages/api-express-router/src/tests/unit/testDoubles.ts' is older than output '../../packages/api-express-router/tsconfig.tsbuildinfo'
|
|
73
73
|
|
|
74
|
-
|
|
74
|
+
4:00:44 PM - Project '../../packages/puzzle-assets/tsconfig.json' is up to date because newest input '../../packages/puzzle-assets/src/browser.ts' is older than output '../../packages/puzzle-assets/tsconfig.tsbuildinfo'
|
|
75
75
|
|
|
76
|
-
|
|
76
|
+
4:00:44 PM - Project '../../packages/audio-assets/tsconfig.json' is up to date because newest input '../../packages/audio-assets/src/distort.ts' is older than output '../../packages/audio-assets/tsconfig.tsbuildinfo'
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
4:00:44 PM - Project '../../packages/captcha-severity/tsconfig.json' is up to date because newest input '../../packages/captcha-severity/src/index.test.ts' is older than output '../../packages/captcha-severity/tsconfig.tsbuildinfo'
|
|
79
79
|
|
|
80
|
-
|
|
80
|
+
4:00:44 PM - Project '../../packages/datasets/tsconfig.json' is up to date because newest input '../../packages/datasets/src/tests/mocks/data/captchas.ts' is older than output '../../packages/datasets/tsconfig.tsbuildinfo'
|
|
81
81
|
|
|
82
|
-
|
|
82
|
+
4:00:44 PM - Project '../../packages/icon-order-assets/tsconfig.json' is up to date because newest input '../../packages/icon-order-assets/src/background.ts' is older than output '../../packages/icon-order-assets/tsconfig.tsbuildinfo'
|
|
83
83
|
|
|
84
|
-
|
|
84
|
+
4:00:44 PM - Project '../../packages/load-balancer/tsconfig.json' is up to date because newest input '../../packages/load-balancer/src/tests/productionProviderList.unit.test.ts' is older than output '../../packages/load-balancer/tsconfig.tsbuildinfo'
|
|
85
85
|
|
|
86
|
-
|
|
86
|
+
4:00:44 PM - Project '../../packages/fingerprintjs/tsconfig.json' is up to date because newest input '../../packages/fingerprintjs/src/utils/browser.ts' is older than output '../../packages/fingerprintjs/tsconfig.tsbuildinfo'
|
|
87
87
|
|
|
88
|
-
|
|
88
|
+
4:00:44 PM - Project '../../packages/fingerprint/tsconfig.json' is up to date because newest input '../../packages/fingerprint/src/index.test.ts' is older than output '../../packages/fingerprint/tsconfig.tsbuildinfo'
|
|
89
89
|
|
|
90
|
-
|
|
90
|
+
4:00:44 PM - Project '../../packages/web-bot-auth/tsconfig.json' is up to date because newest input '../../packages/web-bot-auth/src/base64.ts' is older than output '../../packages/web-bot-auth/tsconfig.tsbuildinfo'
|
|
91
91
|
|
|
92
|
-
|
|
92
|
+
4:00:44 PM - Project '../../packages/provider/tsconfig.json' is up to date because newest input '../../packages/provider/src/utils/devicePlatform.ts' is older than output '../../packages/provider/tsconfig.tsbuildinfo'
|
|
93
93
|
|
|
94
|
-
|
|
94
|
+
4:00:44 PM - Project '../workspace/tsconfig.json' is up to date because newest input '../workspace/src/index.ts' is older than output '../workspace/tsconfig.tsbuildinfo'
|
|
95
95
|
|
|
96
|
-
|
|
96
|
+
4:00:44 PM - Project '../../packages/cli/tsconfig.json' is up to date because newest input '../../packages/cli/src/tests/bundle/bundle.integration.test.ts' is older than output '../../packages/cli/tsconfig.tsbuildinfo'
|
|
97
97
|
|
|
98
|
-
|
|
98
|
+
4:00:44 PM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
|
|
99
99
|
|
|
100
|
-
|
|
100
|
+
4:00:44 PM - Building project '/home/runner/work/captcha/captcha/dev/scripts/tsconfig.json'...
|
|
101
101
|
|
package/.turbo/turbo-build.log
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,75 @@
|
|
|
1
1
|
# @prosopo/scripts
|
|
2
2
|
|
|
3
|
+
## 3.1.209
|
|
4
|
+
### Patch Changes
|
|
5
|
+
|
|
6
|
+
- b4235b4: Document and support self-hosting on Cloudflare's free plan, for anyone without a server that has a public IP.
|
|
7
|
+
|
|
8
|
+
A Worker on the free `workers.dev` subdomain serves the widget and forwards API calls through a Workers VPC binding to a
|
|
9
|
+
Cloudflare Tunnel, so the provider can run on any machine with Docker: no domain, no open ports, no certificates.
|
|
10
|
+
|
|
11
|
+
- `docker/cloudflare/worker.ts` and `wrangler.jsonc`: the Worker. It also serves a demo page at `/` that shows whether
|
|
12
|
+
the provider is reachable, renders the CAPTCHA and displays the response token. It sets `X-Forwarded-For` to the
|
|
13
|
+
visitor's address, because without it the provider sees every visitor as the tunnel and per-IP limits apply to all of
|
|
14
|
+
them together.
|
|
15
|
+
- `docker-compose.self-hosted.cloudflare.yml`: adds `cloudflared` and leaves Caddy out, since Cloudflare terminates TLS.
|
|
16
|
+
- `generateSelfHostedEnv.ts --cloudflare`: writes a `COMPOSE_FILE` that loads both compose files and a
|
|
17
|
+
`CLOUDFLARE_TUNNEL_TOKEN` to fill in.
|
|
18
|
+
- `SELF_HOSTING.md`: a "No server? Run it on Cloudflare's free plan" section.
|
|
19
|
+
- 159766a: Let a self-hosted provider run a detector you built yourself, and ship a working example built on BotD.
|
|
20
|
+
|
|
21
|
+
Until now the only detector a provider could load was ours. Its output can only be read by the closed decoder in the
|
|
22
|
+
provider, so a self-hosted node with any other detector had nothing to score visitors with.
|
|
23
|
+
|
|
24
|
+
**Open detector format.** A pool bundle can now be marked `format: "open-v1"`. The provider reads those bundles with a
|
|
25
|
+
short, documented decoder: an AES-256-GCM payload whose key is wrapped with the bundle's RSA-OAEP public key, carrying
|
|
26
|
+
`{ score, timestamp, userId, userAgent, headHash, d }`. The same checks apply as for our detector — the token must
|
|
27
|
+
match this visitor's account, user agent and page, and be under ten minutes old — and `d` reaches decision and routing
|
|
28
|
+
machines as `input.d`. Open bundles are only loaded when `PROSOPO_DETECTOR_OPEN_FORMAT=1`; the hosted fleet never sets
|
|
29
|
+
it, so nothing changes there.
|
|
30
|
+
|
|
31
|
+
**`demos/detector-botd`.** A detector built on BotD that scores automated browsers as 1 and everything else as 0, plus a
|
|
32
|
+
`pool` script that builds the bundles with a fresh keypair each. Writing your own detector means replacing one function;
|
|
33
|
+
the encryption is done for you.
|
|
34
|
+
|
|
35
|
+
**`detector_pool_set` CLI command.** Writes a pool read from stdin into the provider's pool directory. Stdin rather than a
|
|
36
|
+
file because the provider image runs as a non-root user and cannot read a file copied in as root.
|
|
37
|
+
|
|
38
|
+
**Self-hosted compose and image.** The image now creates its pool directory owned by the runtime user, and the
|
|
39
|
+
self-hosted compose file mounts a `detector_pool` volume there and turns the open format on. The compose file no longer
|
|
40
|
+
defaults to provider 3.8.19, which it had silently stayed on for nineteen releases: `generateSelfHostedEnv.ts` writes
|
|
41
|
+
the version of the checkout it runs from.
|
|
42
|
+
|
|
43
|
+
`SELF_HOSTING.md` gains a "Bring your own detector" section and now loads the widget with `type="module"`, which the
|
|
44
|
+
bundle has needed since it was split into chunks.
|
|
45
|
+
|
|
46
|
+
Tested end to end on a stack built from this branch: stock headless Chromium was flagged by BotD and served a puzzle,
|
|
47
|
+
headed Chromium passed with proof of work, the detector's signals were stored on the session, and a provider without
|
|
48
|
+
the flag rejected the pool.
|
|
49
|
+
- 5a1db28: Fix four things that broke the self-hosting guide for anyone starting from a fresh clone.
|
|
50
|
+
|
|
51
|
+
- **The `fingerprintjs` submodule used an SSH URL**, so it could only be fetched by someone with GitHub SSH keys. It is
|
|
52
|
+
now HTTPS. The repository is public, so nobody needs credentials for it. Without it `pnpm run build:all` fails.
|
|
53
|
+
- **The guide ran the env script before anything was built.** The script imports built workspace packages, so on a fresh
|
|
54
|
+
clone it crashed with `ERR_MODULE_NOT_FOUND`. The guide now clones with `--recurse-submodules` and runs
|
|
55
|
+
`pnpm run build:all` in step 1.
|
|
56
|
+
- **Every `docker compose exec` in the guide failed** with "no configuration file provided", because the compose file is
|
|
57
|
+
not named `docker-compose.yml`. `generateSelfHostedEnv.ts` now writes `COMPOSE_FILE=docker-compose.self-hosted.yml`
|
|
58
|
+
into `.env`, which Compose reads on its own, so plain `docker compose` commands work.
|
|
59
|
+
- **The provider CLI exited 0 on a command it did not have.** An older image given `detector_pool_set` did nothing and
|
|
60
|
+
reported success. It now fails with `Unknown command`.
|
|
61
|
+
- Updated dependencies [d02b3bc]
|
|
62
|
+
- Updated dependencies [159766a]
|
|
63
|
+
- Updated dependencies [5a1db28]
|
|
64
|
+
- @prosopo/provider@5.21.0
|
|
65
|
+
- @prosopo/types@5.18.0
|
|
66
|
+
- @prosopo/cli@3.9.0
|
|
67
|
+
- @prosopo/env@3.6.80
|
|
68
|
+
- @prosopo/common@3.3.0
|
|
69
|
+
- @prosopo/datasets@3.2.11
|
|
70
|
+
- @prosopo/keyring@2.10.11
|
|
71
|
+
- @prosopo/types-env@2.11.26
|
|
72
|
+
|
|
3
73
|
## 3.1.208
|
|
4
74
|
### Patch Changes
|
|
5
75
|
|
|
@@ -7,12 +7,15 @@ const logger = getLogger(parseLogLevel(process.env.PROSOPO_LOG_LEVEL || LogLevel
|
|
|
7
7
|
const usage = `
|
|
8
8
|
Generate a complete .env file for a self-hosted Procaptcha provider.
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
pnpm exec tsx ./dev/scripts/src/scripts/generateSelfHostedEnv.ts --host captcha.example.com
|
|
11
11
|
|
|
12
12
|
Options:
|
|
13
13
|
--host <domain> Hostname clients will reach this provider on (required)
|
|
14
14
|
--output <path> Where to write (default: .env)
|
|
15
15
|
--force Overwrite the output file if it already exists
|
|
16
|
+
--cloudflare Run behind a Cloudflare Tunnel instead of Caddy. Adds the
|
|
17
|
+
cloudflared service and a CLOUDFLARE_TUNNEL_TOKEN to fill in.
|
|
18
|
+
--host is then the Worker's workers.dev hostname.
|
|
16
19
|
`;
|
|
17
20
|
const parseArgs = (argv) => {
|
|
18
21
|
const flagValue = (flag) => {
|
|
@@ -33,10 +36,22 @@ const parseArgs = (argv) => {
|
|
|
33
36
|
host,
|
|
34
37
|
output: flagValue("--output") ?? ".env",
|
|
35
38
|
force: argv.includes("--force"),
|
|
39
|
+
cloudflare: argv.includes("--cloudflare"),
|
|
36
40
|
};
|
|
37
41
|
};
|
|
38
42
|
const generatePassword = () => randomBytes(24).toString("base64url");
|
|
39
|
-
const
|
|
43
|
+
const composeFileSection = (cloudflare) => cloudflare
|
|
44
|
+
? `# Lets every docker compose command find both compose files without -f.
|
|
45
|
+
# The second runs cloudflared and leaves Caddy out.
|
|
46
|
+
COMPOSE_FILE=docker-compose.self-hosted.yml:docker-compose.self-hosted.cloudflare.yml
|
|
47
|
+
|
|
48
|
+
# The token from your tunnel's page in the Cloudflare dashboard.
|
|
49
|
+
CLOUDFLARE_TUNNEL_TOKEN=`
|
|
50
|
+
: `# Lets every docker compose command find docker-compose.self-hosted.yml
|
|
51
|
+
# without -f.
|
|
52
|
+
COMPOSE_FILE=docker-compose.self-hosted.yml`;
|
|
53
|
+
const buildEnvFile = async (host, cloudflare) => {
|
|
54
|
+
const providerImageVersion = readProviderImageVersion();
|
|
40
55
|
const [providerMnemonic, providerAddress] = await generateMnemonic();
|
|
41
56
|
const [siteKeyMnemonic, siteKeyAddress] = await generateMnemonic();
|
|
42
57
|
const databasePassword = generatePassword();
|
|
@@ -52,6 +67,12 @@ NODE_ENV=production
|
|
|
52
67
|
PROSOPO_DEFAULT_ENVIRONMENT=production
|
|
53
68
|
PROSOPO_LOG_LEVEL=info
|
|
54
69
|
|
|
70
|
+
${composeFileSection(cloudflare)}
|
|
71
|
+
|
|
72
|
+
# The provider release this checkout documents. Change it when you pull a
|
|
73
|
+
# newer checkout, so the image and the instructions you follow stay in step.
|
|
74
|
+
PROSOPO_PROVIDER_IMAGE_VERSION=${providerImageVersion}
|
|
75
|
+
|
|
55
76
|
# Read by the provider as its own host identity, and by Caddy as the
|
|
56
77
|
# certificate subject.
|
|
57
78
|
CADDY_DOMAIN=${host}
|
|
@@ -103,13 +124,21 @@ MAXMIND_CITY_DB_PATH=./GeoLite2-City.mmdb
|
|
|
103
124
|
MAXMIND_ASN_DB_PATH=./GeoLite2-ASN.mmdb
|
|
104
125
|
`;
|
|
105
126
|
};
|
|
127
|
+
const readProviderImageVersion = () => {
|
|
128
|
+
const manifestPath = path.resolve(import.meta.dirname, "../../../../packages/cli/package.json");
|
|
129
|
+
const { version } = JSON.parse(fs.readFileSync(manifestPath, "utf8"));
|
|
130
|
+
if (typeof version !== "string") {
|
|
131
|
+
throw new Error(`No version in ${manifestPath}`);
|
|
132
|
+
}
|
|
133
|
+
return version;
|
|
134
|
+
};
|
|
106
135
|
const main = async () => {
|
|
107
136
|
const args = parseArgs(process.argv.slice(2));
|
|
108
137
|
const outputPath = path.resolve(process.cwd(), args.output);
|
|
109
138
|
if (fs.existsSync(outputPath) && !args.force) {
|
|
110
139
|
throw new Error(`${outputPath} already exists. Pass --force to overwrite it, but note that this regenerates every key and password: an existing provider would lose its identity and its database credentials.`);
|
|
111
140
|
}
|
|
112
|
-
const contents = await buildEnvFile(args.host);
|
|
141
|
+
const contents = await buildEnvFile(args.host, args.cloudflare);
|
|
113
142
|
fs.writeFileSync(outputPath, contents, { mode: 0o600 });
|
|
114
143
|
logger.info(() => ({
|
|
115
144
|
data: { outputPath },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateSelfHostedEnv.js","sourceRoot":"","sources":["../../src/scripts/generateSelfHostedEnv.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErE,MAAM,MAAM,GAAG,SAAS,CACvB,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAClE,uBAAuB,CACvB,CAAC;
|
|
1
|
+
{"version":3,"file":"generateSelfHostedEnv.js","sourceRoot":"","sources":["../../src/scripts/generateSelfHostedEnv.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prosopo/scripts",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.209",
|
|
4
4
|
"description": "Dev scripts for working with prosopo packages",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -21,16 +21,16 @@
|
|
|
21
21
|
"@iarna/toml": "2.2.5",
|
|
22
22
|
"@polkadot/util": "14.0.3",
|
|
23
23
|
"@polkadot/util-crypto": "14.0.3",
|
|
24
|
-
"@prosopo/cli": "3.
|
|
24
|
+
"@prosopo/cli": "3.9.0",
|
|
25
25
|
"@prosopo/common": "3.3.0",
|
|
26
26
|
"@prosopo/logger": "2.1.5",
|
|
27
|
-
"@prosopo/datasets": "3.2.
|
|
27
|
+
"@prosopo/datasets": "3.2.11",
|
|
28
28
|
"@prosopo/dotenv": "3.0.62",
|
|
29
|
-
"@prosopo/env": "3.6.
|
|
30
|
-
"@prosopo/keyring": "2.10.
|
|
31
|
-
"@prosopo/provider": "5.
|
|
32
|
-
"@prosopo/types": "5.
|
|
33
|
-
"@prosopo/types-env": "2.11.
|
|
29
|
+
"@prosopo/env": "3.6.80",
|
|
30
|
+
"@prosopo/keyring": "2.10.11",
|
|
31
|
+
"@prosopo/provider": "5.21.0",
|
|
32
|
+
"@prosopo/types": "5.18.0",
|
|
33
|
+
"@prosopo/types-env": "2.11.26",
|
|
34
34
|
"@prosopo/util": "3.3.16",
|
|
35
35
|
"@prosopo/util-crypto": "13.6.1",
|
|
36
36
|
"@prosopo/workspace": "3.2.4",
|