@prosopo/types 2.0.0 → 2.0.2
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 +1 -1
- package/dist/api/api.d.ts.map +1 -1
- package/dist/api/params.d.ts.map +1 -1
- package/dist/api/params.js.map +1 -1
- package/dist/cjs/config/config.cjs +0 -4
- package/dist/cjs/config/index.cjs +0 -3
- package/dist/cjs/config/network.cjs +0 -27
- package/dist/cjs/datasets/captcha.cjs +2 -0
- package/dist/cjs/datasets/index.cjs +1 -0
- package/dist/cjs/dist/config/config.cjs +0 -4
- package/dist/cjs/dist/config/index.cjs +0 -3
- package/dist/cjs/dist/config/network.cjs +0 -24
- package/dist/cjs/dist/datasets/captcha.cjs +2 -0
- package/dist/cjs/dist/datasets/index.cjs +1 -0
- package/dist/cjs/dist/index.cjs +2 -4
- package/dist/cjs/dist/procaptcha/index.cjs +3 -0
- package/dist/cjs/dist/procaptcha/token.cjs +33 -11
- package/dist/cjs/dist/provider/api.cjs +4 -9
- package/dist/cjs/dist/provider/scheduler.cjs +1 -0
- package/dist/cjs/index.cjs +6 -7
- package/dist/cjs/procaptcha/index.cjs +3 -0
- package/dist/cjs/procaptcha/token.cjs +33 -11
- package/dist/cjs/provider/api.cjs +4 -9
- package/dist/cjs/provider/scheduler.cjs +1 -0
- package/dist/config/config.d.ts +4 -350
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +0 -4
- package/dist/config/config.js.map +1 -1
- package/dist/config/network.d.ts +0 -82
- package/dist/config/network.d.ts.map +1 -1
- package/dist/config/network.js +1 -22
- package/dist/config/network.js.map +1 -1
- package/dist/datasets/captcha.d.ts +17 -30
- package/dist/datasets/captcha.d.ts.map +1 -1
- package/dist/datasets/captcha.js +2 -1
- package/dist/datasets/captcha.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/procaptcha/api.d.ts +1 -4
- package/dist/procaptcha/api.d.ts.map +1 -1
- package/dist/procaptcha/manager.d.ts +0 -1
- package/dist/procaptcha/manager.d.ts.map +1 -1
- package/dist/procaptcha/token.d.ts +87 -29
- package/dist/procaptcha/token.d.ts.map +1 -1
- package/dist/procaptcha/token.js +29 -10
- package/dist/procaptcha/token.js.map +1 -1
- package/dist/provider/api.d.ts +19 -27
- package/dist/provider/api.d.ts.map +1 -1
- package/dist/provider/api.js +4 -9
- package/dist/provider/api.js.map +1 -1
- package/dist/provider/scheduler.d.ts +2 -1
- package/dist/provider/scheduler.d.ts.map +1 -1
- package/dist/provider/scheduler.js +1 -0
- package/dist/provider/scheduler.js.map +1 -1
- package/package.json +50 -50
- package/dist/cjs/config/enumMap.cjs +0 -8
- package/dist/cjs/dist/config/enumMap.cjs +0 -8
- package/dist/cjs/dist/networks/index.cjs +0 -52
- package/dist/cjs/networks/index.cjs +0 -58
- package/dist/networks/index.d.ts +0 -4
- package/dist/networks/index.d.ts.map +0 -1
- package/dist/networks/index.js +0 -61
- package/dist/networks/index.js.map +0 -1
package/dist/config/network.d.ts
CHANGED
|
@@ -1,84 +1,2 @@
|
|
|
1
|
-
import { type infer as zInfer } from "zod";
|
|
2
|
-
export declare const NetworkNamesSchema: import("zod").ZodEnum<["development", "rococo", "shiden", "astar"]>;
|
|
3
|
-
export type NetworkNames = zInfer<typeof NetworkNamesSchema>;
|
|
4
1
|
export declare const NetworkPairTypeSchema: import("zod").ZodUnion<[import("zod").ZodLiteral<"sr25519">, import("zod").ZodLiteral<"ed25519">, import("zod").ZodLiteral<"ecdsa">, import("zod").ZodLiteral<"ethereum">]>;
|
|
5
|
-
export declare const NetworkConfigSchema: import("zod").ZodObject<{
|
|
6
|
-
endpoint: import("zod").ZodArray<import("zod").ZodString, "many">;
|
|
7
|
-
contract: import("zod").ZodObject<{
|
|
8
|
-
address: import("zod").ZodString;
|
|
9
|
-
name: import("zod").ZodString;
|
|
10
|
-
}, "strip", import("zod").ZodTypeAny, {
|
|
11
|
-
name: string;
|
|
12
|
-
address: string;
|
|
13
|
-
}, {
|
|
14
|
-
name: string;
|
|
15
|
-
address: string;
|
|
16
|
-
}>;
|
|
17
|
-
pairType: import("zod").ZodUnion<[import("zod").ZodLiteral<"sr25519">, import("zod").ZodLiteral<"ed25519">, import("zod").ZodLiteral<"ecdsa">, import("zod").ZodLiteral<"ethereum">]>;
|
|
18
|
-
ss58Format: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
19
|
-
}, "strip", import("zod").ZodTypeAny, {
|
|
20
|
-
contract: {
|
|
21
|
-
name: string;
|
|
22
|
-
address: string;
|
|
23
|
-
};
|
|
24
|
-
endpoint: string[];
|
|
25
|
-
pairType: "sr25519" | "ed25519" | "ecdsa" | "ethereum";
|
|
26
|
-
ss58Format: number;
|
|
27
|
-
}, {
|
|
28
|
-
contract: {
|
|
29
|
-
name: string;
|
|
30
|
-
address: string;
|
|
31
|
-
};
|
|
32
|
-
endpoint: string[];
|
|
33
|
-
pairType: "sr25519" | "ed25519" | "ecdsa" | "ethereum";
|
|
34
|
-
ss58Format?: number | undefined;
|
|
35
|
-
}>;
|
|
36
|
-
export type NetworkConfig = zInfer<typeof NetworkConfigSchema>;
|
|
37
|
-
export declare const ProsopoNetworkSchema: import("zod").ZodEffects<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodObject<{
|
|
38
|
-
contract: import("zod").ZodObject<{
|
|
39
|
-
address: import("zod").ZodString;
|
|
40
|
-
name: import("zod").ZodString;
|
|
41
|
-
}, "strip", import("zod").ZodTypeAny, {
|
|
42
|
-
name: string;
|
|
43
|
-
address: string;
|
|
44
|
-
}, {
|
|
45
|
-
name: string;
|
|
46
|
-
address: string;
|
|
47
|
-
}>;
|
|
48
|
-
endpoint: import("zod").ZodArray<import("zod").ZodString, "many">;
|
|
49
|
-
pairType: import("zod").ZodUnion<[import("zod").ZodLiteral<"sr25519">, import("zod").ZodLiteral<"ed25519">, import("zod").ZodLiteral<"ecdsa">, import("zod").ZodLiteral<"ethereum">]>;
|
|
50
|
-
ss58Format: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
51
|
-
}, "strip", import("zod").ZodTypeAny, {
|
|
52
|
-
contract: {
|
|
53
|
-
name: string;
|
|
54
|
-
address: string;
|
|
55
|
-
};
|
|
56
|
-
endpoint: string[];
|
|
57
|
-
pairType: "sr25519" | "ed25519" | "ecdsa" | "ethereum";
|
|
58
|
-
ss58Format: number;
|
|
59
|
-
}, {
|
|
60
|
-
contract: {
|
|
61
|
-
name: string;
|
|
62
|
-
address: string;
|
|
63
|
-
};
|
|
64
|
-
endpoint: string[];
|
|
65
|
-
pairType: "sr25519" | "ed25519" | "ecdsa" | "ethereum";
|
|
66
|
-
ss58Format?: number | undefined;
|
|
67
|
-
}>>, Record<"development" | "rococo" | "shiden" | "astar", {
|
|
68
|
-
contract: {
|
|
69
|
-
name: string;
|
|
70
|
-
address: string;
|
|
71
|
-
};
|
|
72
|
-
endpoint: string[];
|
|
73
|
-
pairType: "sr25519" | "ed25519" | "ecdsa" | "ethereum";
|
|
74
|
-
ss58Format: number;
|
|
75
|
-
}>, Record<string, {
|
|
76
|
-
contract: {
|
|
77
|
-
name: string;
|
|
78
|
-
address: string;
|
|
79
|
-
};
|
|
80
|
-
endpoint: string[];
|
|
81
|
-
pairType: "sr25519" | "ed25519" | "ecdsa" | "ethereum";
|
|
82
|
-
ss58Format?: number | undefined;
|
|
83
|
-
}>>;
|
|
84
2
|
//# sourceMappingURL=network.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/config/network.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/config/network.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,qBAAqB,6KAKhC,CAAC"}
|
package/dist/config/network.js
CHANGED
|
@@ -1,29 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { enumMap } from "./enumMap.js";
|
|
3
|
-
export const NetworkNamesSchema = zEnum([
|
|
4
|
-
"development",
|
|
5
|
-
"rococo",
|
|
6
|
-
"shiden",
|
|
7
|
-
"astar",
|
|
8
|
-
]);
|
|
1
|
+
import { literal, union, } from "zod";
|
|
9
2
|
export const NetworkPairTypeSchema = union([
|
|
10
3
|
literal("sr25519"),
|
|
11
4
|
literal("ed25519"),
|
|
12
5
|
literal("ecdsa"),
|
|
13
6
|
literal("ethereum"),
|
|
14
7
|
]);
|
|
15
|
-
export const NetworkConfigSchema = object({
|
|
16
|
-
endpoint: array(string().url()),
|
|
17
|
-
contract: object({
|
|
18
|
-
address: string(),
|
|
19
|
-
name: string(),
|
|
20
|
-
}),
|
|
21
|
-
pairType: NetworkPairTypeSchema,
|
|
22
|
-
ss58Format: number().positive().default(42),
|
|
23
|
-
});
|
|
24
|
-
export const ProsopoNetworkSchema = enumMap(NetworkNamesSchema, NetworkConfigSchema.required({
|
|
25
|
-
endpoint: true,
|
|
26
|
-
pairType: true,
|
|
27
|
-
ss58Format: true,
|
|
28
|
-
}));
|
|
29
8
|
//# sourceMappingURL=network.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/config/network.ts"],"names":[],"mappings":"AAaA,OAAO,EACN,
|
|
1
|
+
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/config/network.ts"],"names":[],"mappings":"AAaA,OAAO,EACN,OAAO,EACP,KAAK,GACL,MAAM,KAAK,CAAC;AAEb,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC;IAC1C,OAAO,CAAC,SAAS,CAAC;IAClB,OAAO,CAAC,SAAS,CAAC;IAClB,OAAO,CAAC,OAAO,CAAC;IAChB,OAAO,CAAC,UAAU,CAAC;CACnB,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { u32 } from "@polkadot/types-codec/primitive";
|
|
2
1
|
import type { AccountId } from "@polkadot/types/interfaces/runtime";
|
|
3
2
|
import { type infer as zInfer } from "zod";
|
|
3
|
+
import { TranslationKey } from "@prosopo/common";
|
|
4
4
|
export declare enum CaptchaTypes {
|
|
5
5
|
SelectAll = "SelectAll"
|
|
6
6
|
}
|
|
@@ -18,9 +18,7 @@ export type Item = zInfer<typeof CaptchaItemSchema>;
|
|
|
18
18
|
export type HashedItem = zInfer<typeof HashedCaptchaItemSchema>;
|
|
19
19
|
export type LabelledItem = zInfer<typeof LabelledItemSchema>;
|
|
20
20
|
export type Data = zInfer<typeof DataSchema>;
|
|
21
|
-
export type LabelledData = zInfer<typeof LabelledDataSchema>;
|
|
22
21
|
export type CaptchasContainer = zInfer<typeof CaptchasContainerSchema>;
|
|
23
|
-
export type LabelsContainer = zInfer<typeof LabelsContainerSchema>;
|
|
24
22
|
export interface Captchas {
|
|
25
23
|
captchas: CaptchaWithoutId[];
|
|
26
24
|
format: CaptchaTypes;
|
|
@@ -36,12 +34,6 @@ export interface CaptchaWithoutId extends CaptchaWithoutIdBase {
|
|
|
36
34
|
solution?: HashedSolution[] | RawSolution[];
|
|
37
35
|
unlabelled?: HashedSolution[] | RawSolution[];
|
|
38
36
|
}
|
|
39
|
-
export type CaptchaSolutionToUpdate = {
|
|
40
|
-
captchaId: string;
|
|
41
|
-
captchaContentId: string;
|
|
42
|
-
salt: string;
|
|
43
|
-
solution: HashedSolution[];
|
|
44
|
-
};
|
|
45
37
|
export interface Captcha extends CaptchaWithoutId {
|
|
46
38
|
captchaId: string;
|
|
47
39
|
captchaContentId: string;
|
|
@@ -49,6 +41,10 @@ export interface Captcha extends CaptchaWithoutId {
|
|
|
49
41
|
datasetId?: string;
|
|
50
42
|
datasetContentId?: string;
|
|
51
43
|
}
|
|
44
|
+
export interface CaptchaResult {
|
|
45
|
+
status: CaptchaStatus;
|
|
46
|
+
reason?: TranslationKey;
|
|
47
|
+
}
|
|
52
48
|
export declare enum CaptchaStatus {
|
|
53
49
|
pending = "Pending",
|
|
54
50
|
approved = "Approved",
|
|
@@ -59,12 +55,9 @@ export type Commit = {
|
|
|
59
55
|
id: Hash;
|
|
60
56
|
userAccount: string;
|
|
61
57
|
datasetId: Hash;
|
|
62
|
-
|
|
63
|
-
dappContract: string;
|
|
58
|
+
dappAccount: string;
|
|
64
59
|
providerAccount: string;
|
|
65
|
-
|
|
66
|
-
completedAt: number;
|
|
67
|
-
userSignature: Array<number>;
|
|
60
|
+
userSignature: string;
|
|
68
61
|
};
|
|
69
62
|
export declare enum GovernanceStatus {
|
|
70
63
|
active = "Active",
|
|
@@ -81,19 +74,13 @@ export declare enum DappPayee {
|
|
|
81
74
|
dapp = "Dapp",
|
|
82
75
|
any = "Any"
|
|
83
76
|
}
|
|
84
|
-
export
|
|
77
|
+
export declare const TimestampSchema: import("zod").ZodNumber;
|
|
78
|
+
export type Timestamp = zInfer<typeof TimestampSchema>;
|
|
85
79
|
export type UserAccount = string;
|
|
86
80
|
export type DappAccount = string;
|
|
87
81
|
export declare const POW_SEPARATOR = "___";
|
|
88
82
|
export type PoWChallengeId = `${Timestamp}${typeof POW_SEPARATOR}${UserAccount}${typeof POW_SEPARATOR}${DappAccount}`;
|
|
89
83
|
export declare const PowChallengeIdSchema: import("zod").ZodType<`${number}___${string}___${string}`, import("zod").ZodTypeDef, `${number}___${string}___${string}`>;
|
|
90
|
-
export interface PowCaptcha {
|
|
91
|
-
challenge: PoWChallengeId;
|
|
92
|
-
timestamp: Timestamp;
|
|
93
|
-
userAccount: UserAccount;
|
|
94
|
-
dappAccount: DappAccount;
|
|
95
|
-
checked: boolean;
|
|
96
|
-
}
|
|
97
84
|
export interface CaptchaSolution {
|
|
98
85
|
captchaId: string;
|
|
99
86
|
captchaContentId: string;
|
|
@@ -101,16 +88,20 @@ export interface CaptchaSolution {
|
|
|
101
88
|
solution: HashedSolution[];
|
|
102
89
|
}
|
|
103
90
|
export type PoWChallengeComponents = {
|
|
104
|
-
|
|
91
|
+
requestedAtTimestamp: Timestamp;
|
|
105
92
|
userAccount: UserAccount;
|
|
106
93
|
dappAccount: DappAccount;
|
|
107
94
|
};
|
|
108
95
|
export interface PoWCaptcha {
|
|
109
96
|
challenge: PoWChallengeId;
|
|
110
97
|
difficulty: number;
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
98
|
+
providerSignature: string;
|
|
99
|
+
requestedAtTimestamp: number;
|
|
100
|
+
userSignature?: string;
|
|
101
|
+
}
|
|
102
|
+
export interface PoWCaptchaUser extends PoWCaptcha {
|
|
103
|
+
userAccount: UserAccount;
|
|
104
|
+
dappAccount: DappAccount;
|
|
114
105
|
}
|
|
115
106
|
export type CaptchaConfig = {
|
|
116
107
|
solved: {
|
|
@@ -125,10 +116,6 @@ export type CaptchaSolutionConfig = {
|
|
|
125
116
|
solutionWinningPercentage: number;
|
|
126
117
|
captchaBlockRecency: number;
|
|
127
118
|
};
|
|
128
|
-
export type LastCorrectCaptchaSchema = {
|
|
129
|
-
beforeMs: u32;
|
|
130
|
-
dappId: AccountId;
|
|
131
|
-
};
|
|
132
119
|
export declare const CaptchaSchema: import("zod").ZodObject<{
|
|
133
120
|
captchaId: import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodUndefined]>;
|
|
134
121
|
captchaContentId: import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodUndefined]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captcha.d.ts","sourceRoot":"","sources":["../../src/datasets/captcha.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"captcha.d.ts","sourceRoot":"","sources":["../../src/datasets/captcha.ts"],"names":[],"mappings":"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"}
|
package/dist/datasets/captcha.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { array, custom, nativeEnum, number, object, string, union, undefined as zUndefined, } from "zod";
|
|
1
|
+
import { array, custom, nativeEnum, number, object, string, union, undefined as zUndefined, number as zNumber, } from "zod";
|
|
2
2
|
export var CaptchaTypes;
|
|
3
3
|
(function (CaptchaTypes) {
|
|
4
4
|
CaptchaTypes["SelectAll"] = "SelectAll";
|
|
@@ -30,6 +30,7 @@ export var DappPayee;
|
|
|
30
30
|
DappPayee["dapp"] = "Dapp";
|
|
31
31
|
DappPayee["any"] = "Any";
|
|
32
32
|
})(DappPayee || (DappPayee = {}));
|
|
33
|
+
export const TimestampSchema = zNumber();
|
|
33
34
|
export const POW_SEPARATOR = "___";
|
|
34
35
|
export const PowChallengeIdSchema = custom((val) => {
|
|
35
36
|
const valSplit = val.split(POW_SEPARATOR);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captcha.js","sourceRoot":"","sources":["../../src/datasets/captcha.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"captcha.js","sourceRoot":"","sources":["../../src/datasets/captcha.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,5 +6,4 @@ export * from "./provider/index.js";
|
|
|
6
6
|
export * from "./procaptcha/index.js";
|
|
7
7
|
export * from "./procaptcha-bundle/index.js";
|
|
8
8
|
export * from "./procaptcha-frictionless/index.js";
|
|
9
|
-
export { default as networks } from "./networks/index.js";
|
|
10
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -6,5 +6,4 @@ export * from "./provider/index.js";
|
|
|
6
6
|
export * from "./procaptcha/index.js";
|
|
7
7
|
export * from "./procaptcha-bundle/index.js";
|
|
8
8
|
export * from "./procaptcha-frictionless/index.js";
|
|
9
|
-
export { default as networks } from "./networks/index.js";
|
|
10
9
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC"}
|
package/dist/procaptcha/api.d.ts
CHANGED
|
@@ -1,17 +1,14 @@
|
|
|
1
|
-
import type { Signer } from "@polkadot/api/types";
|
|
2
1
|
import type { ProviderApiInterface } from "../api/index.js";
|
|
3
|
-
import type { IProsopoCaptchaContract } from "../contract/index.js";
|
|
4
2
|
import type { CaptchaSolution } from "../datasets/index.js";
|
|
5
3
|
import type { CaptchaResponseBody, RandomProvider } from "../provider/index.js";
|
|
6
4
|
import type { TCaptchaSubmitResult } from "./client.js";
|
|
7
5
|
export interface ProsopoCaptchaApiInterface {
|
|
8
6
|
userAccount: string;
|
|
9
|
-
contract: IProsopoCaptchaContract | string;
|
|
10
7
|
provider: RandomProvider;
|
|
11
8
|
providerApi: ProviderApiInterface;
|
|
12
9
|
dappAccount: string;
|
|
13
10
|
web2: boolean;
|
|
14
11
|
getCaptchaChallenge(): Promise<CaptchaResponseBody>;
|
|
15
|
-
submitCaptchaSolution(
|
|
12
|
+
submitCaptchaSolution(userRequestHashSignature: string, requestHash: string, solutions: CaptchaSolution[], timestamp: string, providerRequestHashSignature: string): Promise<TCaptchaSubmitResult>;
|
|
16
13
|
}
|
|
17
14
|
//# sourceMappingURL=api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/procaptcha/api.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/procaptcha/api.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAE5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EACV,mBAAmB,EAGnB,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,oBAAoB,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACpD,qBAAqB,CACnB,wBAAwB,EAAE,MAAM,EAChC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,eAAe,EAAE,EAC5B,SAAS,EAAE,MAAM,EACjB,4BAA4B,EAAE,MAAM,GACnC,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAClC"}
|
|
@@ -40,7 +40,6 @@ export interface ProcaptchaState {
|
|
|
40
40
|
submission: TCaptchaSubmitResult | undefined;
|
|
41
41
|
timeout: NodeJS.Timeout | undefined;
|
|
42
42
|
successfullChallengeTimeout: NodeJS.Timeout | undefined;
|
|
43
|
-
blockNumber: number | undefined;
|
|
44
43
|
sendData: boolean;
|
|
45
44
|
}
|
|
46
45
|
export type ProcaptchaStateUpdateFn = (state: Partial<ProcaptchaState>) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/procaptcha/manager.ts"],"names":[],"mappings":";;AAaA,OAAO,KAAK,EACX,eAAe,EACf,iBAAiB,EACjB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,KAAK,eAAe,EAAuB,MAAM,YAAY,CAAC;AAIvE,MAAM,WAAW,OAAO;IACvB,OAAO,EAAE,eAAe,CAAC;IACzB,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB;;;;;;EAE7B,CAAC;AAMH,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAK5D,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,OAAO,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3C,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACpB;AAMD,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC;IACtB,UAAU,EAAE,0BAA0B,GAAG,SAAS,CAAC;IACnD,SAAS,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAC3C,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,UAAU,EAAE,oBAAoB,GAAG,SAAS,CAAC;IAC7C,OAAO,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IACpC,2BAA2B,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IACxD,
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/procaptcha/manager.ts"],"names":[],"mappings":";;AAaA,OAAO,KAAK,EACX,eAAe,EACf,iBAAiB,EACjB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,KAAK,eAAe,EAAuB,MAAM,YAAY,CAAC;AAIvE,MAAM,WAAW,OAAO;IACvB,OAAO,EAAE,eAAe,CAAC;IACzB,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB;;;;;;EAE7B,CAAC;AAMH,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAK5D,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,OAAO,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3C,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACpB;AAMD,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC;IACtB,UAAU,EAAE,0BAA0B,GAAG,SAAS,CAAC;IACnD,SAAS,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAC3C,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,UAAU,EAAE,oBAAoB,GAAG,SAAS,CAAC;IAC7C,OAAO,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IACpC,2BAA2B,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IACxD,QAAQ,EAAE,OAAO,CAAC;CAClB;AAQD,MAAM,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC"}
|
|
@@ -1,55 +1,106 @@
|
|
|
1
1
|
import { type infer as zInfer } from "zod";
|
|
2
|
+
export declare const RequestHashSignatureSchema: import("zod").ZodObject<{
|
|
3
|
+
requestHash: import("zod").ZodString;
|
|
4
|
+
}, "strip", import("zod").ZodTypeAny, {
|
|
5
|
+
requestHash: string;
|
|
6
|
+
}, {
|
|
7
|
+
requestHash: string;
|
|
8
|
+
}>;
|
|
9
|
+
export type RequestHashSignature = zInfer<typeof RequestHashSignatureSchema>;
|
|
10
|
+
export declare const ChallengeSignatureSchema: import("zod").ZodObject<{
|
|
11
|
+
challenge: import("zod").ZodString;
|
|
12
|
+
}, "strip", import("zod").ZodTypeAny, {
|
|
13
|
+
challenge: string;
|
|
14
|
+
}, {
|
|
15
|
+
challenge: string;
|
|
16
|
+
}>;
|
|
17
|
+
export type ChallengeSignature = zInfer<typeof ChallengeSignatureSchema>;
|
|
18
|
+
export declare const SignatureTypesSchema: import("zod").ZodObject<{
|
|
19
|
+
challenge: import("zod").ZodOptional<import("zod").ZodString>;
|
|
20
|
+
requestHash: import("zod").ZodOptional<import("zod").ZodString>;
|
|
21
|
+
timestamp: import("zod").ZodOptional<import("zod").ZodString>;
|
|
22
|
+
}, "strip", import("zod").ZodTypeAny, {
|
|
23
|
+
requestHash?: string | undefined;
|
|
24
|
+
challenge?: string | undefined;
|
|
25
|
+
timestamp?: string | undefined;
|
|
26
|
+
}, {
|
|
27
|
+
requestHash?: string | undefined;
|
|
28
|
+
challenge?: string | undefined;
|
|
29
|
+
timestamp?: string | undefined;
|
|
30
|
+
}>;
|
|
2
31
|
export declare const ProcaptchaOutputSchema: import("zod").ZodObject<{
|
|
3
32
|
commitmentId: import("zod").ZodOptional<import("zod").ZodString>;
|
|
4
33
|
providerUrl: import("zod").ZodOptional<import("zod").ZodString>;
|
|
5
34
|
dapp: import("zod").ZodString;
|
|
6
35
|
user: import("zod").ZodString;
|
|
7
|
-
blockNumber: import("zod").ZodNumber;
|
|
8
36
|
challenge: import("zod").ZodOptional<import("zod").ZodString>;
|
|
9
37
|
nonce: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
10
38
|
timestamp: import("zod").ZodString;
|
|
11
39
|
signature: import("zod").ZodObject<{
|
|
12
40
|
provider: import("zod").ZodObject<{
|
|
13
|
-
|
|
41
|
+
challenge: import("zod").ZodOptional<import("zod").ZodString>;
|
|
42
|
+
requestHash: import("zod").ZodOptional<import("zod").ZodString>;
|
|
43
|
+
timestamp: import("zod").ZodOptional<import("zod").ZodString>;
|
|
14
44
|
}, "strip", import("zod").ZodTypeAny, {
|
|
15
|
-
|
|
45
|
+
requestHash?: string | undefined;
|
|
46
|
+
challenge?: string | undefined;
|
|
47
|
+
timestamp?: string | undefined;
|
|
16
48
|
}, {
|
|
17
|
-
|
|
49
|
+
requestHash?: string | undefined;
|
|
50
|
+
challenge?: string | undefined;
|
|
51
|
+
timestamp?: string | undefined;
|
|
18
52
|
}>;
|
|
19
|
-
user: import("zod").
|
|
20
|
-
|
|
53
|
+
user: import("zod").ZodObject<{
|
|
54
|
+
challenge: import("zod").ZodOptional<import("zod").ZodString>;
|
|
55
|
+
requestHash: import("zod").ZodOptional<import("zod").ZodString>;
|
|
56
|
+
timestamp: import("zod").ZodOptional<import("zod").ZodString>;
|
|
21
57
|
}, "strip", import("zod").ZodTypeAny, {
|
|
22
|
-
|
|
58
|
+
requestHash?: string | undefined;
|
|
59
|
+
challenge?: string | undefined;
|
|
60
|
+
timestamp?: string | undefined;
|
|
23
61
|
}, {
|
|
24
|
-
|
|
25
|
-
|
|
62
|
+
requestHash?: string | undefined;
|
|
63
|
+
challenge?: string | undefined;
|
|
64
|
+
timestamp?: string | undefined;
|
|
65
|
+
}>;
|
|
26
66
|
}, "strip", import("zod").ZodTypeAny, {
|
|
67
|
+
user: {
|
|
68
|
+
requestHash?: string | undefined;
|
|
69
|
+
challenge?: string | undefined;
|
|
70
|
+
timestamp?: string | undefined;
|
|
71
|
+
};
|
|
27
72
|
provider: {
|
|
28
|
-
|
|
73
|
+
requestHash?: string | undefined;
|
|
74
|
+
challenge?: string | undefined;
|
|
75
|
+
timestamp?: string | undefined;
|
|
29
76
|
};
|
|
30
|
-
user?: {
|
|
31
|
-
timestamp: string;
|
|
32
|
-
} | undefined;
|
|
33
77
|
}, {
|
|
78
|
+
user: {
|
|
79
|
+
requestHash?: string | undefined;
|
|
80
|
+
challenge?: string | undefined;
|
|
81
|
+
timestamp?: string | undefined;
|
|
82
|
+
};
|
|
34
83
|
provider: {
|
|
35
|
-
|
|
84
|
+
requestHash?: string | undefined;
|
|
85
|
+
challenge?: string | undefined;
|
|
86
|
+
timestamp?: string | undefined;
|
|
36
87
|
};
|
|
37
|
-
user?: {
|
|
38
|
-
timestamp: string;
|
|
39
|
-
} | undefined;
|
|
40
88
|
}>;
|
|
41
89
|
}, "strip", import("zod").ZodTypeAny, {
|
|
42
90
|
user: string;
|
|
43
91
|
dapp: string;
|
|
44
|
-
blockNumber: number;
|
|
45
92
|
timestamp: string;
|
|
46
93
|
signature: {
|
|
94
|
+
user: {
|
|
95
|
+
requestHash?: string | undefined;
|
|
96
|
+
challenge?: string | undefined;
|
|
97
|
+
timestamp?: string | undefined;
|
|
98
|
+
};
|
|
47
99
|
provider: {
|
|
48
|
-
|
|
100
|
+
requestHash?: string | undefined;
|
|
101
|
+
challenge?: string | undefined;
|
|
102
|
+
timestamp?: string | undefined;
|
|
49
103
|
};
|
|
50
|
-
user?: {
|
|
51
|
-
timestamp: string;
|
|
52
|
-
} | undefined;
|
|
53
104
|
};
|
|
54
105
|
commitmentId?: string | undefined;
|
|
55
106
|
providerUrl?: string | undefined;
|
|
@@ -58,15 +109,18 @@ export declare const ProcaptchaOutputSchema: import("zod").ZodObject<{
|
|
|
58
109
|
}, {
|
|
59
110
|
user: string;
|
|
60
111
|
dapp: string;
|
|
61
|
-
blockNumber: number;
|
|
62
112
|
timestamp: string;
|
|
63
113
|
signature: {
|
|
114
|
+
user: {
|
|
115
|
+
requestHash?: string | undefined;
|
|
116
|
+
challenge?: string | undefined;
|
|
117
|
+
timestamp?: string | undefined;
|
|
118
|
+
};
|
|
64
119
|
provider: {
|
|
65
|
-
|
|
120
|
+
requestHash?: string | undefined;
|
|
121
|
+
challenge?: string | undefined;
|
|
122
|
+
timestamp?: string | undefined;
|
|
66
123
|
};
|
|
67
|
-
user?: {
|
|
68
|
-
timestamp: string;
|
|
69
|
-
} | undefined;
|
|
70
124
|
};
|
|
71
125
|
commitmentId?: string | undefined;
|
|
72
126
|
providerUrl?: string | undefined;
|
|
@@ -79,13 +133,17 @@ export declare const ProcaptchaTokenCodec: import("scale-ts").Codec<{
|
|
|
79
133
|
providerUrl: string | undefined;
|
|
80
134
|
dapp: string;
|
|
81
135
|
user: string;
|
|
82
|
-
blockNumber: number;
|
|
83
136
|
challenge: string | undefined;
|
|
84
137
|
nonce: number | undefined;
|
|
85
138
|
timestamp: string;
|
|
86
139
|
signature: {
|
|
87
140
|
provider: {
|
|
88
|
-
|
|
141
|
+
challenge: string | undefined;
|
|
142
|
+
requestHash: string | undefined;
|
|
143
|
+
};
|
|
144
|
+
user: {
|
|
145
|
+
timestamp: string | undefined;
|
|
146
|
+
requestHash: string | undefined;
|
|
89
147
|
};
|
|
90
148
|
};
|
|
91
149
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../src/procaptcha/token.ts"],"names":[],"mappings":"AAeA,OAAO,EAAkC,KAAK,KAAK,IAAI,MAAM,EAAE,MAAM,KAAK,CAAC;AAG3E,eAAO,MAAM,sBAAsB
|
|
1
|
+
{"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../src/procaptcha/token.ts"],"names":[],"mappings":"AAeA,OAAO,EAAkC,KAAK,KAAK,IAAI,MAAM,EAAE,MAAM,KAAK,CAAC;AAG3E,eAAO,MAAM,0BAA0B;;;;;;EAErC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE7E,eAAO,MAAM,wBAAwB;;;;;;EAEnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAEzE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYjC,CAAC;AAOH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAKrE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;EAkB/B,CAAC;AAEH,eAAO,MAAM,mBAAmB,yBAA4B,CAAC;AAC7D,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEjE,eAAO,MAAM,sBAAsB,qBACf,gBAAgB,KACjC,eAwBF,CAAC;AAEF,eAAO,MAAM,sBAAsB,oBAChB,eAAe,KAC/B,gBAIF,CAAC"}
|
package/dist/procaptcha/token.js
CHANGED
|
@@ -2,22 +2,28 @@ import { hexToU8a, u8aToHex } from "@polkadot/util";
|
|
|
2
2
|
import { Option, Struct, str, u32 } from "scale-ts";
|
|
3
3
|
import { number, object, string } from "zod";
|
|
4
4
|
import { ApiParams } from "../api/params.js";
|
|
5
|
+
export const RequestHashSignatureSchema = object({
|
|
6
|
+
[ApiParams.requestHash]: string(),
|
|
7
|
+
});
|
|
8
|
+
export const ChallengeSignatureSchema = object({
|
|
9
|
+
[ApiParams.challenge]: string(),
|
|
10
|
+
});
|
|
11
|
+
export const SignatureTypesSchema = object({
|
|
12
|
+
[ApiParams.challenge]: string().optional(),
|
|
13
|
+
[ApiParams.requestHash]: string().optional(),
|
|
14
|
+
[ApiParams.timestamp]: string().optional(),
|
|
15
|
+
});
|
|
5
16
|
export const ProcaptchaOutputSchema = object({
|
|
6
17
|
[ApiParams.commitmentId]: string().optional(),
|
|
7
18
|
[ApiParams.providerUrl]: string().optional(),
|
|
8
19
|
[ApiParams.dapp]: string(),
|
|
9
20
|
[ApiParams.user]: string(),
|
|
10
|
-
[ApiParams.blockNumber]: number(),
|
|
11
21
|
[ApiParams.challenge]: string().optional(),
|
|
12
22
|
[ApiParams.nonce]: number().optional(),
|
|
13
23
|
[ApiParams.timestamp]: string(),
|
|
14
24
|
[ApiParams.signature]: object({
|
|
15
|
-
[ApiParams.provider]:
|
|
16
|
-
|
|
17
|
-
}),
|
|
18
|
-
[ApiParams.user]: object({
|
|
19
|
-
[ApiParams.timestamp]: string(),
|
|
20
|
-
}).optional(),
|
|
25
|
+
[ApiParams.provider]: SignatureTypesSchema,
|
|
26
|
+
[ApiParams.user]: SignatureTypesSchema,
|
|
21
27
|
}),
|
|
22
28
|
});
|
|
23
29
|
export const ProcaptchaTokenCodec = Struct({
|
|
@@ -25,25 +31,38 @@ export const ProcaptchaTokenCodec = Struct({
|
|
|
25
31
|
[ApiParams.providerUrl]: Option(str),
|
|
26
32
|
[ApiParams.dapp]: str,
|
|
27
33
|
[ApiParams.user]: str,
|
|
28
|
-
[ApiParams.blockNumber]: u32,
|
|
29
34
|
[ApiParams.challenge]: Option(str),
|
|
30
35
|
[ApiParams.nonce]: Option(u32),
|
|
31
36
|
[ApiParams.timestamp]: str,
|
|
32
37
|
[ApiParams.signature]: Struct({
|
|
33
38
|
[ApiParams.provider]: Struct({
|
|
34
|
-
[ApiParams.
|
|
39
|
+
[ApiParams.challenge]: Option(str),
|
|
40
|
+
[ApiParams.requestHash]: Option(str),
|
|
41
|
+
}),
|
|
42
|
+
[ApiParams.user]: Struct({
|
|
43
|
+
[ApiParams.timestamp]: Option(str),
|
|
44
|
+
[ApiParams.requestHash]: Option(str),
|
|
35
45
|
}),
|
|
36
46
|
}),
|
|
37
47
|
});
|
|
38
48
|
export const ProcaptchaTokenSpec = string().startsWith("0x");
|
|
39
49
|
export const encodeProcaptchaOutput = (procaptchaOutput) => {
|
|
40
|
-
console.log("encoding", procaptchaOutput);
|
|
41
50
|
return u8aToHex(ProcaptchaTokenCodec.enc({
|
|
42
51
|
[ApiParams.commitmentId]: undefined,
|
|
43
52
|
[ApiParams.providerUrl]: undefined,
|
|
44
53
|
[ApiParams.challenge]: undefined,
|
|
45
54
|
[ApiParams.nonce]: undefined,
|
|
46
55
|
...procaptchaOutput,
|
|
56
|
+
signature: {
|
|
57
|
+
provider: {
|
|
58
|
+
challenge: procaptchaOutput.signature.provider?.challenge || undefined,
|
|
59
|
+
requestHash: procaptchaOutput.signature.provider?.requestHash || undefined,
|
|
60
|
+
},
|
|
61
|
+
user: {
|
|
62
|
+
timestamp: procaptchaOutput.signature.user?.timestamp || undefined,
|
|
63
|
+
requestHash: procaptchaOutput.signature.user?.requestHash || undefined,
|
|
64
|
+
},
|
|
65
|
+
},
|
|
47
66
|
}));
|
|
48
67
|
};
|
|
49
68
|
export const decodeProcaptchaOutput = (procaptchaToken) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token.js","sourceRoot":"","sources":["../../src/procaptcha/token.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAO,MAAM,UAAU,CAAC;AACzD,OAAO,EAAU,MAAM,EAAE,MAAM,EAAE,MAAM,EAAwB,MAAM,KAAK,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"token.js","sourceRoot":"","sources":["../../src/procaptcha/token.ts"],"names":[],"mappings":"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"}
|