@prosopo/datasets 3.1.64 → 3.1.66
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 +3 -3
- package/.turbo/turbo-build$colon$tsc.log +11 -11
- package/.turbo/turbo-build.log +4 -4
- package/CHANGELOG.md +13 -0
- package/dist/captcha/merkle.d.ts +1 -0
- package/dist/captcha/merkle.d.ts.map +1 -1
- package/dist/captcha/merkle.js +18 -0
- package/dist/captcha/merkle.js.map +1 -1
- package/dist/cjs/captcha/merkle.cjs +19 -0
- package/package.json +3 -3
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> @prosopo/datasets@3.1.
|
|
2
|
+
> @prosopo/datasets@3.1.66 build:cjs
|
|
3
3
|
> NODE_ENV=${NODE_ENV:-development}; vite build --config vite.cjs.config.ts --mode $NODE_ENV
|
|
4
4
|
|
|
5
5
|
ViteCommonJSConfig: .
|
|
@@ -34,11 +34,11 @@ dist/cjs/captcha/util.cjs 0.59 kB │ gzip: 0.36 kB
|
|
|
34
34
|
dist/cjs/captcha/index.cjs 1.58 kB │ gzip: 0.40 kB
|
|
35
35
|
dist/cjs/index.cjs 1.92 kB │ gzip: 0.49 kB
|
|
36
36
|
dist/cjs/captcha/dataset.cjs 3.22 kB │ gzip: 1.03 kB
|
|
37
|
-
dist/cjs/captcha/merkle.cjs
|
|
37
|
+
dist/cjs/captcha/merkle.cjs 4.37 kB │ gzip: 1.41 kB
|
|
38
38
|
dist/cjs/captcha/captcha.cjs 7.89 kB │ gzip: 2.27 kB
|
|
39
39
|
dist/cjs/tests/mocks/data/captchas.cjs 41.00 kB │ gzip: 5.46 kB
|
|
40
40
|
|
|
41
|
-
[32m✓ built in
|
|
41
|
+
[32m✓ built in 69ms[39m
|
|
42
42
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/datasets/src/tests/mocks/data/captchas.json to /home/runner/work/captcha/captcha/packages/datasets/dist/tests/mocks/data/captchas.json
|
|
43
43
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/datasets/src/tests/mocks/data/captchas1.json to /home/runner/work/captcha/captcha/packages/datasets/dist/tests/mocks/data/captchas1.json
|
|
44
44
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/datasets/src/tests/mocks/data/captchas2.json to /home/runner/work/captcha/captcha/packages/datasets/dist/tests/mocks/data/captchas2.json
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
> @prosopo/datasets@3.1.
|
|
2
|
+
> @prosopo/datasets@3.1.66 build:tsc
|
|
3
3
|
> tsc --build --verbose
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
12:12:43 PM - Projects in this build:
|
|
6
6
|
* ../../dev/config/tsconfig.json
|
|
7
7
|
* ../locale/tsconfig.json
|
|
8
8
|
* ../util/tsconfig.json
|
|
@@ -12,21 +12,21 @@
|
|
|
12
12
|
* ../common/tsconfig.json
|
|
13
13
|
* tsconfig.json
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
12:12:44 PM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/webpack/webpack.config.ts' is older than output '../../dev/config/tsconfig.tsbuildinfo'
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
12:12:44 PM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/translationKey.ts' is older than output '../locale/tsconfig.tsbuildinfo'
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
12:12:44 PM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/tsconfig.tsbuildinfo'
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
12:12:44 PM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/tests/loggerBrowser.unit.test.ts' is older than output '../logger/tsconfig.tsbuildinfo'
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
12:12:44 PM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/tsconfig.tsbuildinfo'
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
12:12:44 PM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/types.test-d.ts' is older than output '../types/tsconfig.tsbuildinfo'
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
12:12:44 PM - Project '../common/tsconfig.json' is up to date because newest input '../common/src/index.ts' is older than output '../common/tsconfig.tsbuildinfo'
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
12:12:44 PM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
12:12:44 PM - Building project '/home/runner/work/captcha/captcha/packages/datasets/tsconfig.json'...
|
|
32
32
|
|
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
|
|
2
|
-
> @prosopo/datasets@3.1.
|
|
2
|
+
> @prosopo/datasets@3.1.66 build
|
|
3
3
|
> npm run build:cross-env -- --mode ${NODE_ENV:-development}
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
> @prosopo/datasets@3.1.
|
|
6
|
+
> @prosopo/datasets@3.1.66 build:cross-env
|
|
7
7
|
> vite build --config vite.esm.config.ts --mode production
|
|
8
8
|
|
|
9
9
|
ViteEsmConfig: .
|
|
@@ -39,11 +39,11 @@ dist/captcha/util.js 0.57 kB │ gzip: 0.36 kB
|
|
|
39
39
|
dist/captcha/index.js 1.00 kB │ gzip: 0.31 kB
|
|
40
40
|
dist/index.js 1.23 kB │ gzip: 0.37 kB
|
|
41
41
|
dist/captcha/dataset.js 2.99 kB │ gzip: 0.98 kB
|
|
42
|
-
dist/captcha/merkle.js 3.
|
|
42
|
+
dist/captcha/merkle.js 3.89 kB │ gzip: 1.37 kB
|
|
43
43
|
dist/captcha/captcha.js 7.19 kB │ gzip: 2.19 kB
|
|
44
44
|
dist/tests/mocks/data/captchas.js 40.94 kB │ gzip: 5.44 kB
|
|
45
45
|
|
|
46
|
-
[32m✓ built in
|
|
46
|
+
[32m✓ built in 223ms[39m
|
|
47
47
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/datasets/src/tests/mocks/data/captchas.json to /home/runner/work/captcha/captcha/packages/datasets/dist/tests/mocks/data/captchas.json
|
|
48
48
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/datasets/src/tests/mocks/data/captchas1.json to /home/runner/work/captcha/captcha/packages/datasets/dist/tests/mocks/data/captchas1.json
|
|
49
49
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/datasets/src/tests/mocks/data/captchas2.json to /home/runner/work/captcha/captcha/packages/datasets/dist/tests/mocks/data/captchas2.json
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @prosopo/datasets
|
|
2
2
|
|
|
3
|
+
## 3.1.66
|
|
4
|
+
### Patch Changes
|
|
5
|
+
|
|
6
|
+
- 6db5d8b: Move image-captcha merkle tree computation and per-solution leaf hashing to a Rust napi module (@prosopo/native-merkle). ~4× faster on realistic 9-solution commits. Extends the cli bundle plugin so multiple native-* .node files can coexist without basename collision.
|
|
7
|
+
- Updated dependencies [ae475a5]
|
|
8
|
+
- @prosopo/types@5.2.2
|
|
9
|
+
|
|
10
|
+
## 3.1.65
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Updated dependencies [35f640f]
|
|
14
|
+
- @prosopo/types@5.2.1
|
|
15
|
+
|
|
3
16
|
## 3.1.64
|
|
4
17
|
### Patch Changes
|
|
5
18
|
|
package/dist/captcha/merkle.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export declare class CaptchaMerkleTree {
|
|
|
10
10
|
root: MerkleNode | undefined;
|
|
11
11
|
constructor();
|
|
12
12
|
getRoot(): MerkleNode;
|
|
13
|
+
hydrateFromLayers(layers: MerkleLayer[]): void;
|
|
13
14
|
build(leaves: string[]): void;
|
|
14
15
|
buildMerkleTree(leaves: MerkleNode[]): MerkleNode[];
|
|
15
16
|
createParent(leftChild: MerkleNode, rightChild: MerkleNode): MerkleNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merkle.d.ts","sourceRoot":"","sources":["../../src/captcha/merkle.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACX,WAAW,EACX,UAAU,EACV,mBAAmB,EACnB,WAAW,EAEX,MAAM,gBAAgB,CAAC;AAIxB,cAAM,UAAW,YAAW,mBAAmB;IAC9C,IAAI,EAAE,MAAM,CAAC;IAEb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;gBAEV,IAAI,EAAE,MAAM;CAIxB;AAED,qBAAa,iBAAiB;IAC7B,MAAM,EAAE,UAAU,EAAE,CAAC;IAErB,MAAM,EAAE,WAAW,EAAE,CAAC;IAEtB,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;;IAO7B,OAAO;
|
|
1
|
+
{"version":3,"file":"merkle.d.ts","sourceRoot":"","sources":["../../src/captcha/merkle.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACX,WAAW,EACX,UAAU,EACV,mBAAmB,EACnB,WAAW,EAEX,MAAM,gBAAgB,CAAC;AAIxB,cAAM,UAAW,YAAW,mBAAmB;IAC9C,IAAI,EAAE,MAAM,CAAC;IAEb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;gBAEV,IAAI,EAAE,MAAM;CAIxB;AAED,qBAAa,iBAAiB;IAC7B,MAAM,EAAE,UAAU,EAAE,CAAC;IAErB,MAAM,EAAE,WAAW,EAAE,CAAC;IAEtB,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;;IAO7B,OAAO;IAmBP,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI;IAiB9C,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE;IAetB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE;IA+BnD,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU;IASvE,KAAK,CAAC,QAAQ,EAAE,UAAU,GAAG,WAAW;CAsCxC;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAmBzE"}
|
package/dist/captcha/merkle.js
CHANGED
|
@@ -20,6 +20,24 @@ var CaptchaMerkleTree = class {
|
|
|
20
20
|
} });
|
|
21
21
|
return this.root;
|
|
22
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* Populate leaves + layers + root from a precomputed layer stack (layer 0
|
|
25
|
+
* = raw leaf hashes, last layer = single root). The caller is trusted to
|
|
26
|
+
* have produced the layers with the same hashing scheme this class uses;
|
|
27
|
+
* we do no re-hashing here. Used to graft results from the native
|
|
28
|
+
* @prosopo/native-merkle module into a JS tree so `.proof()` still works.
|
|
29
|
+
*/
|
|
30
|
+
hydrateFromLayers(layers) {
|
|
31
|
+
if (layers.length === 0) throw new ProsopoError("DATASET.MERKLE_ERROR", { context: {
|
|
32
|
+
error: "cannot hydrate from empty layers",
|
|
33
|
+
failedFuncName: this.hydrateFromLayers.name
|
|
34
|
+
} });
|
|
35
|
+
const leafLayer = at(layers, 0);
|
|
36
|
+
this.leaves = leafLayer.map((h) => new MerkleNode(h));
|
|
37
|
+
this.layers = layers.map((l) => [...l]);
|
|
38
|
+
const rootHash = at(at(layers, layers.length - 1), 0);
|
|
39
|
+
this.root = new MerkleNode(rootHash);
|
|
40
|
+
}
|
|
23
41
|
build(leaves) {
|
|
24
42
|
if (this.layers.length) this.layers = [];
|
|
25
43
|
const layerZero = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merkle.js","sourceRoot":"","sources":["../../src/captcha/merkle.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"merkle.js","sourceRoot":"","sources":["../../src/captcha/merkle.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,25 @@ var CaptchaMerkleTree = class {
|
|
|
20
20
|
} });
|
|
21
21
|
return this.root;
|
|
22
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* Populate leaves + layers + root from a precomputed layer stack (layer 0
|
|
25
|
+
* = raw leaf hashes, last layer = single root). The caller is trusted to
|
|
26
|
+
* have produced the layers with the same hashing scheme this class uses;
|
|
27
|
+
* we do no re-hashing here. Used to graft results from the native
|
|
28
|
+
* @prosopo/native-merkle module into a JS tree so `.proof()` still works.
|
|
29
|
+
*/
|
|
30
|
+
hydrateFromLayers(layers) {
|
|
31
|
+
if (layers.length === 0) throw new _prosopo_common.ProsopoError("DATASET.MERKLE_ERROR", { context: {
|
|
32
|
+
error: "cannot hydrate from empty layers",
|
|
33
|
+
failedFuncName: this.hydrateFromLayers.name
|
|
34
|
+
} });
|
|
35
|
+
const leafLayer = (0, _prosopo_util.at)(layers, 0);
|
|
36
|
+
this.leaves = leafLayer.map((h) => new MerkleNode(h));
|
|
37
|
+
this.layers = layers.map((l) => [...l]);
|
|
38
|
+
const rootLayer = (0, _prosopo_util.at)(layers, layers.length - 1);
|
|
39
|
+
const rootHash = (0, _prosopo_util.at)(rootLayer, 0);
|
|
40
|
+
this.root = new MerkleNode(rootHash);
|
|
41
|
+
}
|
|
23
42
|
build(leaves) {
|
|
24
43
|
if (this.layers.length) this.layers = [];
|
|
25
44
|
const layerZero = [];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prosopo/datasets",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.66",
|
|
4
4
|
"author": "PROSOPO LIMITED <info@prosopo.io>",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"private": false,
|
|
@@ -44,12 +44,12 @@
|
|
|
44
44
|
"@polkadot/util": "13.5.7",
|
|
45
45
|
"@prosopo/common": "3.1.50",
|
|
46
46
|
"@prosopo/logger": "2.0.6",
|
|
47
|
-
"@prosopo/types": "5.2.
|
|
47
|
+
"@prosopo/types": "5.2.2",
|
|
48
48
|
"@prosopo/util": "3.3.6",
|
|
49
49
|
"@prosopo/util-crypto": "13.5.30"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
|
-
"@prosopo/config": "3.3.
|
|
52
|
+
"@prosopo/config": "3.3.11",
|
|
53
53
|
"@types/node": "22.10.2",
|
|
54
54
|
"@vitest/coverage-v8": "4.1.10",
|
|
55
55
|
"concurrently": "9.0.1",
|