@prosopo/types 1.0.1 → 2.0.0
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/dist/api/api.d.ts +10 -12
- package/dist/api/api.d.ts.map +1 -1
- package/dist/api/index.d.ts +2 -2
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +2 -2
- package/dist/api/index.js.map +1 -1
- package/dist/api/params.d.ts +3 -2
- package/dist/api/params.d.ts.map +1 -1
- package/dist/api/params.js +2 -1
- package/dist/api/params.js.map +1 -1
- package/dist/cjs/api/params.cjs +2 -1
- package/dist/cjs/config/config.cjs +44 -38
- package/dist/cjs/config/index.cjs +9 -8
- package/dist/cjs/config/network.cjs +6 -1
- package/dist/cjs/config/timeouts.cjs +19 -0
- package/dist/cjs/contract/artifacts.cjs +10 -3
- package/dist/cjs/datasets/captcha.cjs +35 -1
- package/dist/cjs/datasets/dataset.cjs +1 -1
- package/dist/cjs/datasets/index.cjs +5 -0
- package/dist/cjs/dist/api/api.cjs +1 -0
- package/dist/cjs/dist/api/index.cjs +8 -0
- package/dist/cjs/dist/api/params.cjs +30 -0
- package/dist/cjs/dist/config/config.cjs +182 -0
- package/dist/cjs/dist/config/enumMap.cjs +8 -0
- package/dist/cjs/dist/config/index.cjs +33 -0
- package/dist/cjs/dist/config/network.cjs +34 -0
- package/dist/cjs/dist/config/timeouts.cjs +19 -0
- package/dist/cjs/dist/contract/artifacts.cjs +135 -0
- package/dist/cjs/dist/contract/batch.cjs +1 -0
- package/dist/cjs/dist/contract/contract.cjs +1 -0
- package/dist/cjs/dist/contract/index.cjs +22 -0
- package/dist/cjs/dist/contract/interface.cjs +1 -0
- package/dist/cjs/dist/contract/useWeight.cjs +1 -0
- package/dist/cjs/dist/datasets/assets.cjs +1 -0
- package/dist/cjs/dist/datasets/captcha.cjs +118 -0
- package/dist/cjs/dist/datasets/dataset.cjs +32 -0
- package/dist/cjs/dist/datasets/index.cjs +52 -0
- package/dist/cjs/dist/datasets/merkle.cjs +1 -0
- package/dist/cjs/dist/index.cjs +16 -0
- package/dist/cjs/dist/networks/index.cjs +52 -0
- package/dist/cjs/dist/procaptcha/api.cjs +1 -0
- package/dist/cjs/dist/procaptcha/client.cjs +1 -0
- package/dist/cjs/dist/procaptcha/collector.cjs +1 -0
- package/dist/cjs/dist/procaptcha/index.cjs +17 -0
- package/dist/cjs/dist/procaptcha/manager.cjs +10 -0
- package/dist/cjs/dist/procaptcha/props.cjs +1 -0
- package/dist/cjs/dist/procaptcha/storage.cjs +9 -0
- package/dist/cjs/dist/procaptcha/token.cjs +58 -0
- package/dist/cjs/dist/procaptcha/utils.cjs +1 -0
- package/dist/cjs/dist/procaptcha-bundle/index.cjs +8 -0
- package/dist/cjs/dist/procaptcha-frictionless/index.cjs +2 -0
- package/dist/cjs/dist/procaptcha-frictionless/props.cjs +1 -0
- package/dist/cjs/dist/provider/accounts.cjs +7 -0
- package/dist/cjs/dist/provider/api.cjs +113 -0
- package/dist/cjs/dist/provider/argv.cjs +7 -0
- package/dist/cjs/dist/provider/index.cjs +35 -0
- package/dist/cjs/dist/provider/scheduler.cjs +14 -0
- package/dist/cjs/index.cjs +19 -8
- package/dist/cjs/networks/index.cjs +11 -5
- package/dist/cjs/procaptcha/manager.cjs +1 -1
- package/dist/cjs/procaptcha/token.cjs +23 -5
- package/dist/cjs/procaptcha-frictionless/index.cjs +2 -0
- package/dist/cjs/procaptcha-frictionless/props.cjs +1 -0
- package/dist/cjs/provider/accounts.cjs +7 -0
- package/dist/cjs/provider/api.cjs +102 -14
- package/dist/cjs/provider/argv.cjs +3 -2
- package/dist/cjs/provider/index.cjs +4 -1
- package/dist/config/config.d.ts +347 -96
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +65 -30
- package/dist/config/config.js.map +1 -1
- package/dist/config/enumMap.d.ts +1 -1
- package/dist/config/enumMap.d.ts.map +1 -1
- package/dist/config/enumMap.js +1 -1
- package/dist/config/enumMap.js.map +1 -1
- package/dist/config/index.d.ts +3 -2
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +3 -2
- package/dist/config/index.js.map +1 -1
- package/dist/config/network.d.ts +18 -18
- package/dist/config/network.d.ts.map +1 -1
- package/dist/config/network.js +12 -7
- package/dist/config/network.js.map +1 -1
- package/dist/config/timeouts.d.ts +9 -0
- package/dist/config/timeouts.d.ts.map +1 -0
- package/dist/config/timeouts.js +10 -0
- package/dist/config/timeouts.js.map +1 -0
- package/dist/contract/artifacts.d.ts +171 -171
- package/dist/contract/artifacts.d.ts.map +1 -1
- package/dist/contract/artifacts.js +7 -4
- package/dist/contract/artifacts.js.map +1 -1
- package/dist/contract/batch.d.ts +4 -4
- package/dist/contract/batch.d.ts.map +1 -1
- package/dist/contract/contract.d.ts +2 -2
- package/dist/contract/contract.d.ts.map +1 -1
- package/dist/contract/index.d.ts +5 -5
- package/dist/contract/index.d.ts.map +1 -1
- package/dist/contract/index.js +5 -5
- package/dist/contract/index.js.map +1 -1
- package/dist/contract/interface.d.ts +9 -9
- package/dist/contract/interface.d.ts.map +1 -1
- package/dist/contract/useWeight.d.ts +2 -2
- package/dist/contract/useWeight.d.ts.map +1 -1
- package/dist/datasets/assets.d.ts.map +1 -1
- package/dist/datasets/captcha.d.ts +52 -10
- package/dist/datasets/captcha.d.ts.map +1 -1
- package/dist/datasets/captcha.js +31 -3
- package/dist/datasets/captcha.js.map +1 -1
- package/dist/datasets/dataset.d.ts +43 -43
- package/dist/datasets/dataset.d.ts.map +1 -1
- package/dist/datasets/dataset.js +2 -2
- package/dist/datasets/dataset.js.map +1 -1
- package/dist/datasets/index.d.ts +4 -4
- package/dist/datasets/index.d.ts.map +1 -1
- package/dist/datasets/index.js +4 -4
- package/dist/datasets/index.js.map +1 -1
- package/dist/datasets/merkle.d.ts.map +1 -1
- package/dist/index.d.ts +9 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -8
- package/dist/index.js.map +1 -1
- package/dist/networks/index.d.ts +1 -1
- package/dist/networks/index.d.ts.map +1 -1
- package/dist/networks/index.js +22 -20
- package/dist/networks/index.js.map +1 -1
- package/dist/procaptcha/api.d.ts +8 -10
- package/dist/procaptcha/api.d.ts.map +1 -1
- package/dist/procaptcha/client.d.ts +8 -3
- package/dist/procaptcha/client.d.ts.map +1 -1
- package/dist/procaptcha/collector.d.ts.map +1 -1
- package/dist/procaptcha/index.d.ts +8 -8
- package/dist/procaptcha/index.d.ts.map +1 -1
- package/dist/procaptcha/index.js +8 -8
- package/dist/procaptcha/index.js.map +1 -1
- package/dist/procaptcha/manager.d.ts +5 -5
- package/dist/procaptcha/manager.d.ts.map +1 -1
- package/dist/procaptcha/manager.js +3 -3
- package/dist/procaptcha/manager.js.map +1 -1
- package/dist/procaptcha/props.d.ts +2 -2
- package/dist/procaptcha/props.d.ts.map +1 -1
- package/dist/procaptcha/storage.d.ts +1 -1
- package/dist/procaptcha/storage.d.ts.map +1 -1
- package/dist/procaptcha/storage.js +1 -1
- package/dist/procaptcha/storage.js.map +1 -1
- package/dist/procaptcha/token.d.ts +56 -1
- package/dist/procaptcha/token.d.ts.map +1 -1
- package/dist/procaptcha/token.js +21 -5
- package/dist/procaptcha/token.js.map +1 -1
- package/dist/procaptcha/utils.d.ts.map +1 -1
- package/dist/procaptcha-bundle/index.d.ts.map +1 -1
- package/dist/procaptcha-bundle/index.js.map +1 -1
- package/dist/procaptcha-frictionless/index.d.ts +2 -0
- package/dist/procaptcha-frictionless/index.d.ts.map +1 -0
- package/dist/procaptcha-frictionless/index.js +2 -0
- package/dist/procaptcha-frictionless/index.js.map +1 -0
- package/dist/procaptcha-frictionless/props.d.ts +8 -0
- package/dist/procaptcha-frictionless/props.d.ts.map +1 -0
- package/dist/procaptcha-frictionless/props.js +2 -0
- package/dist/procaptcha-frictionless/props.js.map +1 -0
- package/dist/provider/accounts.d.ts +6 -3
- package/dist/provider/accounts.d.ts.map +1 -1
- package/dist/provider/accounts.js +5 -1
- package/dist/provider/accounts.js.map +1 -1
- package/dist/provider/api.d.ts +324 -34
- package/dist/provider/api.d.ts.map +1 -1
- package/dist/provider/api.js +57 -12
- package/dist/provider/api.js.map +1 -1
- package/dist/provider/argv.d.ts +1 -1
- package/dist/provider/argv.d.ts.map +1 -1
- package/dist/provider/argv.js +2 -2
- package/dist/provider/argv.js.map +1 -1
- package/dist/provider/index.d.ts +4 -4
- package/dist/provider/index.d.ts.map +1 -1
- package/dist/provider/index.js +4 -4
- package/dist/provider/index.js.map +1 -1
- package/dist/provider/scheduler.d.ts.map +1 -1
- package/dist/provider/scheduler.js.map +1 -1
- package/package.json +50 -55
- package/vite.cjs.config.ts +3 -3
- package/typedoc.config.js +0 -19
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const network = require("../config/network.cjs");
|
|
3
|
+
const pairTypeSr25519 = network.NetworkPairTypeSchema.parse("sr25519");
|
|
4
|
+
const getContractAddress = (defaultAddress) => {
|
|
5
|
+
return process.env.PROSOPO_CONTRACT_ADDRESS ? process.env.PROSOPO_CONTRACT_ADDRESS : defaultAddress || "";
|
|
6
|
+
};
|
|
7
|
+
const networks = () => {
|
|
8
|
+
return {
|
|
9
|
+
[network.NetworkNamesSchema.Values.development]: {
|
|
10
|
+
endpoint: process.env.PROSOPO_SUBSTRATE_ENDPOINT ? [process.env.PROSOPO_SUBSTRATE_ENDPOINT] : ["ws://127.0.0.1:9944"],
|
|
11
|
+
contract: {
|
|
12
|
+
name: "captcha",
|
|
13
|
+
address: getContractAddress("CONTRACT_NOT_DEPLOYED")
|
|
14
|
+
},
|
|
15
|
+
pairType: pairTypeSr25519,
|
|
16
|
+
ss58Format: 42
|
|
17
|
+
},
|
|
18
|
+
[network.NetworkNamesSchema.Values.rococo]: {
|
|
19
|
+
endpoint: process.env.PROSOPO_SUBSTRATE_ENDPOINT ? [process.env.PROSOPO_SUBSTRATE_ENDPOINT] : ["wss://rococo-contracts-rpc.polkadot.io:443"],
|
|
20
|
+
contract: {
|
|
21
|
+
name: "captcha",
|
|
22
|
+
address: getContractAddress("5HiVWQhJrysNcFNEWf2crArKht16zrhro3FcekVWocyQjx5u")
|
|
23
|
+
},
|
|
24
|
+
pairType: pairTypeSr25519,
|
|
25
|
+
ss58Format: 42
|
|
26
|
+
},
|
|
27
|
+
[network.NetworkNamesSchema.Values.shiden]: {
|
|
28
|
+
endpoint: process.env.PROSOPO_SUBSTRATE_ENDPOINT ? [process.env.PROSOPO_SUBSTRATE_ENDPOINT] : ["wss://shiden.public.blastapi.io"],
|
|
29
|
+
contract: {
|
|
30
|
+
address: getContractAddress("XpRox5bNg6YV8BHafsuHQ3b8i7gSq3GKPeYLA1b8EZwrDb3"),
|
|
31
|
+
name: "captcha"
|
|
32
|
+
},
|
|
33
|
+
pairType: pairTypeSr25519,
|
|
34
|
+
ss58Format: 42
|
|
35
|
+
},
|
|
36
|
+
[network.NetworkNamesSchema.Values.astar]: {
|
|
37
|
+
endpoint: process.env.PROSOPO_SUBSTRATE_ENDPOINT ? [process.env.PROSOPO_SUBSTRATE_ENDPOINT] : [
|
|
38
|
+
"wss://rpc.astar.network",
|
|
39
|
+
"wss://1rpc.io/astr",
|
|
40
|
+
"wss://astar.public.blastapi.io",
|
|
41
|
+
"wss://astar.public.curie.radiumblock.co/ws"
|
|
42
|
+
],
|
|
43
|
+
contract: {
|
|
44
|
+
address: getContractAddress("X2NLPj49L4UKWAzX8tS1LHTwioMHNyVurCsvTyUNYxcPuWA"),
|
|
45
|
+
name: "captcha"
|
|
46
|
+
},
|
|
47
|
+
pairType: pairTypeSr25519,
|
|
48
|
+
ss58Format: 42
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
module.exports = networks;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
require("./api.cjs");
|
|
4
|
+
require("./client.cjs");
|
|
5
|
+
require("./collector.cjs");
|
|
6
|
+
const manager = require("./manager.cjs");
|
|
7
|
+
require("./props.cjs");
|
|
8
|
+
const storage = require("./storage.cjs");
|
|
9
|
+
const token = require("./token.cjs");
|
|
10
|
+
require("./utils.cjs");
|
|
11
|
+
exports.ProcaptchaResponse = manager.ProcaptchaResponse;
|
|
12
|
+
exports.ProsopoLocalStorageSchema = storage.ProsopoLocalStorageSchema;
|
|
13
|
+
exports.ProcaptchaOutputSchema = token.ProcaptchaOutputSchema;
|
|
14
|
+
exports.ProcaptchaTokenCodec = token.ProcaptchaTokenCodec;
|
|
15
|
+
exports.ProcaptchaTokenSpec = token.ProcaptchaTokenSpec;
|
|
16
|
+
exports.decodeProcaptchaOutput = token.decodeProcaptchaOutput;
|
|
17
|
+
exports.encodeProcaptchaOutput = token.encodeProcaptchaOutput;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const z = require("zod");
|
|
4
|
+
require("../api/index.cjs");
|
|
5
|
+
const token = require("./token.cjs");
|
|
6
|
+
const params = require("../api/params.cjs");
|
|
7
|
+
const ProcaptchaResponse = z.object({
|
|
8
|
+
[params.ApiParams.procaptchaResponse]: token.ProcaptchaTokenSpec
|
|
9
|
+
});
|
|
10
|
+
exports.ProcaptchaResponse = ProcaptchaResponse;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const z = require("zod");
|
|
4
|
+
const ProsopoLocalStorageSchema = z.z.object({
|
|
5
|
+
account: z.z.string().optional(),
|
|
6
|
+
blockNumber: z.z.number().optional(),
|
|
7
|
+
providerUrl: z.z.string().optional()
|
|
8
|
+
});
|
|
9
|
+
exports.ProsopoLocalStorageSchema = ProsopoLocalStorageSchema;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const util = require("@polkadot/util");
|
|
4
|
+
const scaleTs = require("scale-ts");
|
|
5
|
+
const z = require("zod");
|
|
6
|
+
const params = require("../api/params.cjs");
|
|
7
|
+
const ProcaptchaOutputSchema = z.object({
|
|
8
|
+
[params.ApiParams.commitmentId]: z.string().optional(),
|
|
9
|
+
[params.ApiParams.providerUrl]: z.string().optional(),
|
|
10
|
+
[params.ApiParams.dapp]: z.string(),
|
|
11
|
+
[params.ApiParams.user]: z.string(),
|
|
12
|
+
[params.ApiParams.blockNumber]: z.number(),
|
|
13
|
+
[params.ApiParams.challenge]: z.string().optional(),
|
|
14
|
+
[params.ApiParams.nonce]: z.number().optional(),
|
|
15
|
+
[params.ApiParams.timestamp]: z.string(),
|
|
16
|
+
[params.ApiParams.signature]: z.object({
|
|
17
|
+
[params.ApiParams.provider]: z.object({
|
|
18
|
+
[params.ApiParams.timestamp]: z.string()
|
|
19
|
+
}),
|
|
20
|
+
[params.ApiParams.user]: z.object({
|
|
21
|
+
[params.ApiParams.timestamp]: z.string()
|
|
22
|
+
}).optional()
|
|
23
|
+
})
|
|
24
|
+
});
|
|
25
|
+
const ProcaptchaTokenCodec = scaleTs.Struct({
|
|
26
|
+
[params.ApiParams.commitmentId]: scaleTs.Option(scaleTs.str),
|
|
27
|
+
[params.ApiParams.providerUrl]: scaleTs.Option(scaleTs.str),
|
|
28
|
+
[params.ApiParams.dapp]: scaleTs.str,
|
|
29
|
+
[params.ApiParams.user]: scaleTs.str,
|
|
30
|
+
[params.ApiParams.blockNumber]: scaleTs.u32,
|
|
31
|
+
[params.ApiParams.challenge]: scaleTs.Option(scaleTs.str),
|
|
32
|
+
[params.ApiParams.nonce]: scaleTs.Option(scaleTs.u32),
|
|
33
|
+
[params.ApiParams.timestamp]: scaleTs.str,
|
|
34
|
+
[params.ApiParams.signature]: scaleTs.Struct({
|
|
35
|
+
[params.ApiParams.provider]: scaleTs.Struct({
|
|
36
|
+
[params.ApiParams.timestamp]: scaleTs.str
|
|
37
|
+
})
|
|
38
|
+
})
|
|
39
|
+
});
|
|
40
|
+
const ProcaptchaTokenSpec = z.string().startsWith("0x");
|
|
41
|
+
const encodeProcaptchaOutput = (procaptchaOutput) => {
|
|
42
|
+
console.log("encoding", procaptchaOutput);
|
|
43
|
+
return util.u8aToHex(ProcaptchaTokenCodec.enc({
|
|
44
|
+
[params.ApiParams.commitmentId]: void 0,
|
|
45
|
+
[params.ApiParams.providerUrl]: void 0,
|
|
46
|
+
[params.ApiParams.challenge]: void 0,
|
|
47
|
+
[params.ApiParams.nonce]: void 0,
|
|
48
|
+
...procaptchaOutput
|
|
49
|
+
}));
|
|
50
|
+
};
|
|
51
|
+
const decodeProcaptchaOutput = (procaptchaToken) => {
|
|
52
|
+
return ProcaptchaOutputSchema.parse(ProcaptchaTokenCodec.dec(util.hexToU8a(procaptchaToken)));
|
|
53
|
+
};
|
|
54
|
+
exports.ProcaptchaOutputSchema = ProcaptchaOutputSchema;
|
|
55
|
+
exports.ProcaptchaTokenCodec = ProcaptchaTokenCodec;
|
|
56
|
+
exports.ProcaptchaTokenSpec = ProcaptchaTokenSpec;
|
|
57
|
+
exports.decodeProcaptchaOutput = decodeProcaptchaOutput;
|
|
58
|
+
exports.encodeProcaptchaOutput = encodeProcaptchaOutput;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
exports.FeaturesEnum = void 0;
|
|
4
|
+
(function(FeaturesEnum) {
|
|
5
|
+
FeaturesEnum["Image"] = "image";
|
|
6
|
+
FeaturesEnum["Pow"] = "pow";
|
|
7
|
+
FeaturesEnum["Frictionless"] = "frictionless";
|
|
8
|
+
})(exports.FeaturesEnum || (exports.FeaturesEnum = {}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const z = require("zod");
|
|
4
|
+
const params = require("../api/params.cjs");
|
|
5
|
+
const timeouts = require("../config/timeouts.cjs");
|
|
6
|
+
require("../datasets/index.cjs");
|
|
7
|
+
require("../procaptcha/index.cjs");
|
|
8
|
+
const captcha = require("../datasets/captcha.cjs");
|
|
9
|
+
const token = require("../procaptcha/token.cjs");
|
|
10
|
+
exports.ApiPaths = void 0;
|
|
11
|
+
(function(ApiPaths) {
|
|
12
|
+
ApiPaths["GetImageCaptchaChallenge"] = "/v1/prosopo/provider/captcha/image";
|
|
13
|
+
ApiPaths["GetPowCaptchaChallenge"] = "/v1/prosopo/provider/captcha/pow";
|
|
14
|
+
ApiPaths["SubmitImageCaptchaSolution"] = "/v1/prosopo/provider/solution";
|
|
15
|
+
ApiPaths["SubmitPowCaptchaSolution"] = "/v1/prosopo/provider/pow/solution";
|
|
16
|
+
ApiPaths["VerifyPowCaptchaSolution"] = "/v1/prosopo/provider/pow/verify";
|
|
17
|
+
ApiPaths["VerifyImageCaptchaSolutionDapp"] = "/v1/prosopo/provider/image/dapp/verify";
|
|
18
|
+
ApiPaths["VerifyImageCaptchaSolutionUser"] = "/v1/prosopo/provider/image/user/verify";
|
|
19
|
+
ApiPaths["GetProviderStatus"] = "/v1/prosopo/provider/status";
|
|
20
|
+
ApiPaths["GetProviderDetails"] = "/v1/prosopo/provider/details";
|
|
21
|
+
ApiPaths["SubmitUserEvents"] = "/v1/prosopo/provider/events";
|
|
22
|
+
})(exports.ApiPaths || (exports.ApiPaths = {}));
|
|
23
|
+
exports.AdminApiPaths = void 0;
|
|
24
|
+
(function(AdminApiPaths) {
|
|
25
|
+
AdminApiPaths["BatchCommit"] = "/v1/prosopo/provider/admin/batch";
|
|
26
|
+
AdminApiPaths["UpdateDataset"] = "/v1/prosopo/provider/admin/dataset";
|
|
27
|
+
AdminApiPaths["ProviderDeregister"] = "/v1/prosopo/provider/admin/deregister";
|
|
28
|
+
AdminApiPaths["ProviderUpdate"] = "/v1/prosopo/provider/admin/update";
|
|
29
|
+
})(exports.AdminApiPaths || (exports.AdminApiPaths = {}));
|
|
30
|
+
const ProviderDefaultRateLimits = {
|
|
31
|
+
[exports.ApiPaths.GetImageCaptchaChallenge]: { windowMs: 6e4, limit: 30 },
|
|
32
|
+
[exports.ApiPaths.GetPowCaptchaChallenge]: { windowMs: 6e4, limit: 60 },
|
|
33
|
+
[exports.ApiPaths.SubmitImageCaptchaSolution]: { windowMs: 6e4, limit: 60 },
|
|
34
|
+
[exports.ApiPaths.SubmitPowCaptchaSolution]: { windowMs: 6e4, limit: 60 },
|
|
35
|
+
[exports.ApiPaths.VerifyPowCaptchaSolution]: { windowMs: 6e4, limit: 60 },
|
|
36
|
+
[exports.ApiPaths.VerifyImageCaptchaSolutionDapp]: { windowMs: 6e4, limit: 60 },
|
|
37
|
+
[exports.ApiPaths.VerifyImageCaptchaSolutionUser]: { windowMs: 6e4, limit: 60 },
|
|
38
|
+
[exports.ApiPaths.GetProviderStatus]: { windowMs: 6e4, limit: 60 },
|
|
39
|
+
[exports.ApiPaths.GetProviderDetails]: { windowMs: 6e4, limit: 60 },
|
|
40
|
+
[exports.ApiPaths.SubmitUserEvents]: { windowMs: 6e4, limit: 60 },
|
|
41
|
+
[exports.AdminApiPaths.BatchCommit]: { windowMs: 6e4, limit: 5 },
|
|
42
|
+
[exports.AdminApiPaths.UpdateDataset]: { windowMs: 6e4, limit: 5 },
|
|
43
|
+
[exports.AdminApiPaths.ProviderDeregister]: { windowMs: 6e4, limit: 1 },
|
|
44
|
+
[exports.AdminApiPaths.ProviderUpdate]: { windowMs: 6e4, limit: 5 }
|
|
45
|
+
};
|
|
46
|
+
const createRateLimitSchemaWithDefaults = (paths) => z.object(Object.entries(paths).reduce((schemas, [path, defaults]) => {
|
|
47
|
+
const enumPath = path;
|
|
48
|
+
schemas[enumPath] = z.object({
|
|
49
|
+
windowMs: z.number().optional().default(defaults.windowMs),
|
|
50
|
+
limit: z.number().optional().default(defaults.limit)
|
|
51
|
+
});
|
|
52
|
+
return schemas;
|
|
53
|
+
}, {}));
|
|
54
|
+
const ApiPathRateLimits = createRateLimitSchemaWithDefaults(ProviderDefaultRateLimits);
|
|
55
|
+
const CaptchaRequestBody = z.object({
|
|
56
|
+
[params.ApiParams.user]: z.string(),
|
|
57
|
+
[params.ApiParams.dapp]: z.string(),
|
|
58
|
+
[params.ApiParams.datasetId]: z.string(),
|
|
59
|
+
[params.ApiParams.blockNumber]: z.string()
|
|
60
|
+
});
|
|
61
|
+
const CaptchaSolutionBody = z.object({
|
|
62
|
+
[params.ApiParams.user]: z.string(),
|
|
63
|
+
[params.ApiParams.dapp]: z.string(),
|
|
64
|
+
[params.ApiParams.captchas]: z.array(captcha.CaptchaSolutionSchema),
|
|
65
|
+
[params.ApiParams.requestHash]: z.string(),
|
|
66
|
+
[params.ApiParams.timestamp]: z.string(),
|
|
67
|
+
[params.ApiParams.signature]: z.object({
|
|
68
|
+
[params.ApiParams.user]: z.object({
|
|
69
|
+
[params.ApiParams.requestHash]: z.string()
|
|
70
|
+
}),
|
|
71
|
+
[params.ApiParams.provider]: z.object({
|
|
72
|
+
[params.ApiParams.timestamp]: z.string()
|
|
73
|
+
})
|
|
74
|
+
})
|
|
75
|
+
});
|
|
76
|
+
const VerifySolutionBody = z.object({
|
|
77
|
+
[params.ApiParams.token]: token.ProcaptchaTokenSpec,
|
|
78
|
+
[params.ApiParams.dappUserSignature]: z.string(),
|
|
79
|
+
[params.ApiParams.maxVerifiedTime]: z.number().optional().default(timeouts.DEFAULT_IMAGE_MAX_VERIFIED_TIME_CACHED)
|
|
80
|
+
});
|
|
81
|
+
const ServerPowCaptchaVerifyRequestBody = z.object({
|
|
82
|
+
[params.ApiParams.token]: token.ProcaptchaTokenSpec,
|
|
83
|
+
[params.ApiParams.dappSignature]: z.string(),
|
|
84
|
+
[params.ApiParams.verifiedTimeout]: z.number().optional().default(timeouts.DEFAULT_POW_CAPTCHA_VERIFIED_TIMEOUT)
|
|
85
|
+
});
|
|
86
|
+
const GetPowCaptchaChallengeRequestBody = z.object({
|
|
87
|
+
[params.ApiParams.user]: z.string(),
|
|
88
|
+
[params.ApiParams.dapp]: z.string()
|
|
89
|
+
});
|
|
90
|
+
const SubmitPowCaptchaSolutionBody = z.object({
|
|
91
|
+
[params.ApiParams.challenge]: captcha.PowChallengeIdSchema,
|
|
92
|
+
[params.ApiParams.difficulty]: z.number(),
|
|
93
|
+
[params.ApiParams.signature]: z.object({
|
|
94
|
+
[params.ApiParams.user]: z.object({
|
|
95
|
+
[params.ApiParams.timestamp]: z.string()
|
|
96
|
+
}),
|
|
97
|
+
[params.ApiParams.provider]: z.object({
|
|
98
|
+
[params.ApiParams.challenge]: z.string()
|
|
99
|
+
})
|
|
100
|
+
}),
|
|
101
|
+
[params.ApiParams.user]: z.string(),
|
|
102
|
+
[params.ApiParams.dapp]: z.string(),
|
|
103
|
+
[params.ApiParams.nonce]: z.number(),
|
|
104
|
+
[params.ApiParams.verifiedTimeout]: z.number().optional().default(timeouts.DEFAULT_POW_CAPTCHA_VERIFIED_TIMEOUT)
|
|
105
|
+
});
|
|
106
|
+
exports.ApiPathRateLimits = ApiPathRateLimits;
|
|
107
|
+
exports.CaptchaRequestBody = CaptchaRequestBody;
|
|
108
|
+
exports.CaptchaSolutionBody = CaptchaSolutionBody;
|
|
109
|
+
exports.GetPowCaptchaChallengeRequestBody = GetPowCaptchaChallengeRequestBody;
|
|
110
|
+
exports.ProviderDefaultRateLimits = ProviderDefaultRateLimits;
|
|
111
|
+
exports.ServerPowCaptchaVerifyRequestBody = ServerPowCaptchaVerifyRequestBody;
|
|
112
|
+
exports.SubmitPowCaptchaSolutionBody = SubmitPowCaptchaSolutionBody;
|
|
113
|
+
exports.VerifySolutionBody = VerifySolutionBody;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
require("../index.cjs");
|
|
4
|
+
const z = require("zod");
|
|
5
|
+
const accounts = require("./accounts.cjs");
|
|
6
|
+
const PayeeSchema = z.nativeEnum(accounts.Payee);
|
|
7
|
+
exports.PayeeSchema = PayeeSchema;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const accounts = require("./accounts.cjs");
|
|
4
|
+
const api = require("./api.cjs");
|
|
5
|
+
const scheduler = require("./scheduler.cjs");
|
|
6
|
+
const argv = require("./argv.cjs");
|
|
7
|
+
Object.defineProperty(exports, "Payee", {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: () => accounts.Payee
|
|
10
|
+
});
|
|
11
|
+
Object.defineProperty(exports, "AdminApiPaths", {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
get: () => api.AdminApiPaths
|
|
14
|
+
});
|
|
15
|
+
exports.ApiPathRateLimits = api.ApiPathRateLimits;
|
|
16
|
+
Object.defineProperty(exports, "ApiPaths", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: () => api.ApiPaths
|
|
19
|
+
});
|
|
20
|
+
exports.CaptchaRequestBody = api.CaptchaRequestBody;
|
|
21
|
+
exports.CaptchaSolutionBody = api.CaptchaSolutionBody;
|
|
22
|
+
exports.GetPowCaptchaChallengeRequestBody = api.GetPowCaptchaChallengeRequestBody;
|
|
23
|
+
exports.ProviderDefaultRateLimits = api.ProviderDefaultRateLimits;
|
|
24
|
+
exports.ServerPowCaptchaVerifyRequestBody = api.ServerPowCaptchaVerifyRequestBody;
|
|
25
|
+
exports.SubmitPowCaptchaSolutionBody = api.SubmitPowCaptchaSolutionBody;
|
|
26
|
+
exports.VerifySolutionBody = api.VerifySolutionBody;
|
|
27
|
+
Object.defineProperty(exports, "ScheduledTaskNames", {
|
|
28
|
+
enumerable: true,
|
|
29
|
+
get: () => scheduler.ScheduledTaskNames
|
|
30
|
+
});
|
|
31
|
+
Object.defineProperty(exports, "ScheduledTaskStatus", {
|
|
32
|
+
enumerable: true,
|
|
33
|
+
get: () => scheduler.ScheduledTaskStatus
|
|
34
|
+
});
|
|
35
|
+
exports.PayeeSchema = argv.PayeeSchema;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
exports.ScheduledTaskNames = void 0;
|
|
4
|
+
(function(ScheduledTaskNames) {
|
|
5
|
+
ScheduledTaskNames["BatchCommitment"] = "BatchCommitment";
|
|
6
|
+
ScheduledTaskNames["CalculateSolution"] = "CalculateSolution";
|
|
7
|
+
})(exports.ScheduledTaskNames || (exports.ScheduledTaskNames = {}));
|
|
8
|
+
exports.ScheduledTaskStatus = void 0;
|
|
9
|
+
(function(ScheduledTaskStatus) {
|
|
10
|
+
ScheduledTaskStatus["Pending"] = "Pending";
|
|
11
|
+
ScheduledTaskStatus["Running"] = "Running";
|
|
12
|
+
ScheduledTaskStatus["Completed"] = "Completed";
|
|
13
|
+
ScheduledTaskStatus["Failed"] = "Failed";
|
|
14
|
+
})(exports.ScheduledTaskStatus || (exports.ScheduledTaskStatus = {}));
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -7,13 +7,16 @@ require("./datasets/index.cjs");
|
|
|
7
7
|
require("./provider/index.cjs");
|
|
8
8
|
require("./procaptcha/index.cjs");
|
|
9
9
|
const index$1 = require("./procaptcha-bundle/index.cjs");
|
|
10
|
+
require("./procaptcha-frictionless/index.cjs");
|
|
10
11
|
const index = require("./networks/index.cjs");
|
|
11
12
|
const params = require("./api/params.cjs");
|
|
12
13
|
const config = require("./config/config.cjs");
|
|
13
14
|
const network = require("./config/network.cjs");
|
|
15
|
+
const timeouts = require("./config/timeouts.cjs");
|
|
14
16
|
const artifacts = require("./contract/artifacts.cjs");
|
|
15
17
|
const captcha = require("./datasets/captcha.cjs");
|
|
16
18
|
const dataset = require("./datasets/dataset.cjs");
|
|
19
|
+
const accounts = require("./provider/accounts.cjs");
|
|
17
20
|
const api = require("./provider/api.cjs");
|
|
18
21
|
const scheduler = require("./provider/scheduler.cjs");
|
|
19
22
|
const argv = require("./provider/argv.cjs");
|
|
@@ -26,14 +29,6 @@ exports.ApiParams = params.ApiParams;
|
|
|
26
29
|
exports.AccountCreatorConfigSchema = config.AccountCreatorConfigSchema;
|
|
27
30
|
exports.BatchCommitConfigSchema = config.BatchCommitConfigSchema;
|
|
28
31
|
exports.CaptchaTimeoutSchema = config.CaptchaTimeoutSchema;
|
|
29
|
-
exports.DEFAULT_IMAGE_CAPTCHA_SOLUTION_TIMEOUT = config.DEFAULT_IMAGE_CAPTCHA_SOLUTION_TIMEOUT;
|
|
30
|
-
exports.DEFAULT_IMAGE_CAPTCHA_TIMEOUT = config.DEFAULT_IMAGE_CAPTCHA_TIMEOUT;
|
|
31
|
-
exports.DEFAULT_IMAGE_CAPTCHA_VERIFIED_TIMEOUT = config.DEFAULT_IMAGE_CAPTCHA_VERIFIED_TIMEOUT;
|
|
32
|
-
exports.DEFAULT_IMAGE_MAX_VERIFIED_TIME_CACHED = config.DEFAULT_IMAGE_MAX_VERIFIED_TIME_CACHED;
|
|
33
|
-
exports.DEFAULT_MAX_VERIFIED_TIME_CONTRACT = config.DEFAULT_MAX_VERIFIED_TIME_CONTRACT;
|
|
34
|
-
exports.DEFAULT_POW_CAPTCHA_CACHED_TIMEOUT = config.DEFAULT_POW_CAPTCHA_CACHED_TIMEOUT;
|
|
35
|
-
exports.DEFAULT_POW_CAPTCHA_SOLUTION_TIMEOUT = config.DEFAULT_POW_CAPTCHA_SOLUTION_TIMEOUT;
|
|
36
|
-
exports.DEFAULT_POW_CAPTCHA_VERIFIED_TIMEOUT = config.DEFAULT_POW_CAPTCHA_VERIFIED_TIMEOUT;
|
|
37
32
|
exports.DatabaseConfigSchema = config.DatabaseConfigSchema;
|
|
38
33
|
exports.DatabaseTypes = config.DatabaseTypes;
|
|
39
34
|
exports.EnvironmentTypesSchema = config.EnvironmentTypesSchema;
|
|
@@ -51,6 +46,14 @@ exports.NetworkConfigSchema = network.NetworkConfigSchema;
|
|
|
51
46
|
exports.NetworkNamesSchema = network.NetworkNamesSchema;
|
|
52
47
|
exports.NetworkPairTypeSchema = network.NetworkPairTypeSchema;
|
|
53
48
|
exports.ProsopoNetworkSchema = network.ProsopoNetworkSchema;
|
|
49
|
+
exports.DEFAULT_IMAGE_CAPTCHA_SOLUTION_TIMEOUT = timeouts.DEFAULT_IMAGE_CAPTCHA_SOLUTION_TIMEOUT;
|
|
50
|
+
exports.DEFAULT_IMAGE_CAPTCHA_TIMEOUT = timeouts.DEFAULT_IMAGE_CAPTCHA_TIMEOUT;
|
|
51
|
+
exports.DEFAULT_IMAGE_CAPTCHA_VERIFIED_TIMEOUT = timeouts.DEFAULT_IMAGE_CAPTCHA_VERIFIED_TIMEOUT;
|
|
52
|
+
exports.DEFAULT_IMAGE_MAX_VERIFIED_TIME_CACHED = timeouts.DEFAULT_IMAGE_MAX_VERIFIED_TIME_CACHED;
|
|
53
|
+
exports.DEFAULT_MAX_VERIFIED_TIME_CONTRACT = timeouts.DEFAULT_MAX_VERIFIED_TIME_CONTRACT;
|
|
54
|
+
exports.DEFAULT_POW_CAPTCHA_CACHED_TIMEOUT = timeouts.DEFAULT_POW_CAPTCHA_CACHED_TIMEOUT;
|
|
55
|
+
exports.DEFAULT_POW_CAPTCHA_SOLUTION_TIMEOUT = timeouts.DEFAULT_POW_CAPTCHA_SOLUTION_TIMEOUT;
|
|
56
|
+
exports.DEFAULT_POW_CAPTCHA_VERIFIED_TIMEOUT = timeouts.DEFAULT_POW_CAPTCHA_VERIFIED_TIMEOUT;
|
|
54
57
|
exports.AbiCellSpec = artifacts.AbiCellSpec;
|
|
55
58
|
exports.AbiDetailsSpec = artifacts.AbiDetailsSpec;
|
|
56
59
|
exports.AbiEnumSpec = artifacts.AbiEnumSpec;
|
|
@@ -72,16 +75,21 @@ exports.CaptchaSchema = captcha.CaptchaSchema;
|
|
|
72
75
|
exports.CaptchaSolutionArraySchema = captcha.CaptchaSolutionArraySchema;
|
|
73
76
|
exports.CaptchaSolutionSchema = captcha.CaptchaSolutionSchema;
|
|
74
77
|
exports.CaptchaStates = captcha.CaptchaStates;
|
|
78
|
+
exports.CaptchaStatus = captcha.CaptchaStatus;
|
|
75
79
|
exports.CaptchaTypes = captcha.CaptchaTypes;
|
|
76
80
|
exports.CaptchasContainerSchema = captcha.CaptchasContainerSchema;
|
|
77
81
|
exports.CaptchasSchema = captcha.CaptchasSchema;
|
|
78
82
|
exports.CaptchasWithNumericSolutionSchema = captcha.CaptchasWithNumericSolutionSchema;
|
|
83
|
+
exports.DappPayee = captcha.DappPayee;
|
|
79
84
|
exports.DataSchema = captcha.DataSchema;
|
|
85
|
+
exports.GovernanceStatus = captcha.GovernanceStatus;
|
|
80
86
|
exports.HashedCaptchaItemSchema = captcha.HashedCaptchaItemSchema;
|
|
81
87
|
exports.LabelledDataSchema = captcha.LabelledDataSchema;
|
|
82
88
|
exports.LabelledItemSchema = captcha.LabelledItemSchema;
|
|
83
89
|
exports.LabelsContainerSchema = captcha.LabelsContainerSchema;
|
|
84
90
|
exports.MaybeLabelledHashedItemSchema = captcha.MaybeLabelledHashedItemSchema;
|
|
91
|
+
exports.POW_SEPARATOR = captcha.POW_SEPARATOR;
|
|
92
|
+
exports.PowChallengeIdSchema = captcha.PowChallengeIdSchema;
|
|
85
93
|
exports.SelectAllCaptchaSchema = captcha.SelectAllCaptchaSchema;
|
|
86
94
|
exports.SelectAllCaptchaSchemaRaw = captcha.SelectAllCaptchaSchemaRaw;
|
|
87
95
|
exports.SelectAllCaptchaSchemaWithNumericSolution = captcha.SelectAllCaptchaSchemaWithNumericSolution;
|
|
@@ -89,11 +97,14 @@ exports.DatasetSchema = dataset.DatasetSchema;
|
|
|
89
97
|
exports.DatasetWithIdsAndTreeSchema = dataset.DatasetWithIdsAndTreeSchema;
|
|
90
98
|
exports.DatasetWithIdsSchema = dataset.DatasetWithIdsSchema;
|
|
91
99
|
exports.DatasetWithNumericSolutionSchema = dataset.DatasetWithNumericSolutionSchema;
|
|
100
|
+
exports.Payee = accounts.Payee;
|
|
92
101
|
exports.AdminApiPaths = api.AdminApiPaths;
|
|
102
|
+
exports.ApiPathRateLimits = api.ApiPathRateLimits;
|
|
93
103
|
exports.ApiPaths = api.ApiPaths;
|
|
94
104
|
exports.CaptchaRequestBody = api.CaptchaRequestBody;
|
|
95
105
|
exports.CaptchaSolutionBody = api.CaptchaSolutionBody;
|
|
96
106
|
exports.GetPowCaptchaChallengeRequestBody = api.GetPowCaptchaChallengeRequestBody;
|
|
107
|
+
exports.ProviderDefaultRateLimits = api.ProviderDefaultRateLimits;
|
|
97
108
|
exports.ServerPowCaptchaVerifyRequestBody = api.ServerPowCaptchaVerifyRequestBody;
|
|
98
109
|
exports.SubmitPowCaptchaSolutionBody = api.SubmitPowCaptchaSolutionBody;
|
|
99
110
|
exports.VerifySolutionBody = api.VerifySolutionBody;
|
|
@@ -19,7 +19,9 @@ const networks = () => {
|
|
|
19
19
|
endpoint: process.env.PROSOPO_SUBSTRATE_ENDPOINT ? [process.env.PROSOPO_SUBSTRATE_ENDPOINT] : ["wss://rococo-contracts-rpc.polkadot.io:443"],
|
|
20
20
|
contract: {
|
|
21
21
|
name: "captcha",
|
|
22
|
-
address: getContractAddress(
|
|
22
|
+
address: getContractAddress(
|
|
23
|
+
"5HiVWQhJrysNcFNEWf2crArKht16zrhro3FcekVWocyQjx5u"
|
|
24
|
+
)
|
|
23
25
|
},
|
|
24
26
|
pairType: pairTypeSr25519,
|
|
25
27
|
ss58Format: 42
|
|
@@ -27,11 +29,13 @@ const networks = () => {
|
|
|
27
29
|
[network.NetworkNamesSchema.Values.shiden]: {
|
|
28
30
|
endpoint: process.env.PROSOPO_SUBSTRATE_ENDPOINT ? [process.env.PROSOPO_SUBSTRATE_ENDPOINT] : ["wss://shiden.public.blastapi.io"],
|
|
29
31
|
contract: {
|
|
30
|
-
address: getContractAddress(
|
|
32
|
+
address: getContractAddress(
|
|
33
|
+
"XpRox5bNg6YV8BHafsuHQ3b8i7gSq3GKPeYLA1b8EZwrDb3"
|
|
34
|
+
),
|
|
31
35
|
name: "captcha"
|
|
32
36
|
},
|
|
33
37
|
pairType: pairTypeSr25519,
|
|
34
|
-
ss58Format:
|
|
38
|
+
ss58Format: 42
|
|
35
39
|
},
|
|
36
40
|
[network.NetworkNamesSchema.Values.astar]: {
|
|
37
41
|
endpoint: process.env.PROSOPO_SUBSTRATE_ENDPOINT ? [process.env.PROSOPO_SUBSTRATE_ENDPOINT] : [
|
|
@@ -41,11 +45,13 @@ const networks = () => {
|
|
|
41
45
|
"wss://astar.public.curie.radiumblock.co/ws"
|
|
42
46
|
],
|
|
43
47
|
contract: {
|
|
44
|
-
address: getContractAddress(
|
|
48
|
+
address: getContractAddress(
|
|
49
|
+
"X2NLPj49L4UKWAzX8tS1LHTwioMHNyVurCsvTyUNYxcPuWA"
|
|
50
|
+
),
|
|
45
51
|
name: "captcha"
|
|
46
52
|
},
|
|
47
53
|
pairType: pairTypeSr25519,
|
|
48
|
-
ss58Format:
|
|
54
|
+
ss58Format: 42
|
|
49
55
|
}
|
|
50
56
|
};
|
|
51
57
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const z = require("zod");
|
|
3
4
|
require("../api/index.cjs");
|
|
4
5
|
const token = require("./token.cjs");
|
|
5
|
-
const z = require("zod");
|
|
6
6
|
const params = require("../api/params.cjs");
|
|
7
7
|
const ProcaptchaResponse = z.object({
|
|
8
8
|
[params.ApiParams.procaptchaResponse]: token.ProcaptchaTokenSpec
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const params = require("../api/params.cjs");
|
|
4
|
-
const scaleTs = require("scale-ts");
|
|
5
3
|
const util = require("@polkadot/util");
|
|
4
|
+
const scaleTs = require("scale-ts");
|
|
6
5
|
const z = require("zod");
|
|
6
|
+
const params = require("../api/params.cjs");
|
|
7
7
|
const ProcaptchaOutputSchema = z.object({
|
|
8
8
|
[params.ApiParams.commitmentId]: z.string().optional(),
|
|
9
9
|
[params.ApiParams.providerUrl]: z.string().optional(),
|
|
@@ -11,7 +11,16 @@ const ProcaptchaOutputSchema = z.object({
|
|
|
11
11
|
[params.ApiParams.user]: z.string(),
|
|
12
12
|
[params.ApiParams.blockNumber]: z.number(),
|
|
13
13
|
[params.ApiParams.challenge]: z.string().optional(),
|
|
14
|
-
[params.ApiParams.nonce]: z.number().optional()
|
|
14
|
+
[params.ApiParams.nonce]: z.number().optional(),
|
|
15
|
+
[params.ApiParams.timestamp]: z.string(),
|
|
16
|
+
[params.ApiParams.signature]: z.object({
|
|
17
|
+
[params.ApiParams.provider]: z.object({
|
|
18
|
+
[params.ApiParams.timestamp]: z.string()
|
|
19
|
+
}),
|
|
20
|
+
[params.ApiParams.user]: z.object({
|
|
21
|
+
[params.ApiParams.timestamp]: z.string()
|
|
22
|
+
}).optional()
|
|
23
|
+
})
|
|
15
24
|
});
|
|
16
25
|
const ProcaptchaTokenCodec = scaleTs.Struct({
|
|
17
26
|
[params.ApiParams.commitmentId]: scaleTs.Option(scaleTs.str),
|
|
@@ -20,10 +29,17 @@ const ProcaptchaTokenCodec = scaleTs.Struct({
|
|
|
20
29
|
[params.ApiParams.user]: scaleTs.str,
|
|
21
30
|
[params.ApiParams.blockNumber]: scaleTs.u32,
|
|
22
31
|
[params.ApiParams.challenge]: scaleTs.Option(scaleTs.str),
|
|
23
|
-
[params.ApiParams.nonce]: scaleTs.Option(scaleTs.u32)
|
|
32
|
+
[params.ApiParams.nonce]: scaleTs.Option(scaleTs.u32),
|
|
33
|
+
[params.ApiParams.timestamp]: scaleTs.str,
|
|
34
|
+
[params.ApiParams.signature]: scaleTs.Struct({
|
|
35
|
+
[params.ApiParams.provider]: scaleTs.Struct({
|
|
36
|
+
[params.ApiParams.timestamp]: scaleTs.str
|
|
37
|
+
})
|
|
38
|
+
})
|
|
24
39
|
});
|
|
25
40
|
const ProcaptchaTokenSpec = z.string().startsWith("0x");
|
|
26
41
|
const encodeProcaptchaOutput = (procaptchaOutput) => {
|
|
42
|
+
console.log("encoding", procaptchaOutput);
|
|
27
43
|
return util.u8aToHex(
|
|
28
44
|
ProcaptchaTokenCodec.enc({
|
|
29
45
|
[params.ApiParams.commitmentId]: void 0,
|
|
@@ -36,7 +52,9 @@ const encodeProcaptchaOutput = (procaptchaOutput) => {
|
|
|
36
52
|
);
|
|
37
53
|
};
|
|
38
54
|
const decodeProcaptchaOutput = (procaptchaToken) => {
|
|
39
|
-
return ProcaptchaOutputSchema.parse(
|
|
55
|
+
return ProcaptchaOutputSchema.parse(
|
|
56
|
+
ProcaptchaTokenCodec.dec(util.hexToU8a(procaptchaToken))
|
|
57
|
+
);
|
|
40
58
|
};
|
|
41
59
|
exports.ProcaptchaOutputSchema = ProcaptchaOutputSchema;
|
|
42
60
|
exports.ProcaptchaTokenCodec = ProcaptchaTokenCodec;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|