@nucypher/taco-auth 0.4.0-alpha.1 → 0.4.0-dev.viem
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/cjs/auth-provider.d.ts +1 -1
- package/dist/cjs/auth-sig.d.ts +2 -2
- package/dist/cjs/index.d.ts +3 -3
- package/dist/cjs/index.js +3 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/providers/eip1271/auth.d.ts +5 -3
- package/dist/cjs/providers/eip1271/auth.js +2 -2
- package/dist/cjs/providers/eip1271/auth.js.map +1 -1
- package/dist/cjs/providers/eip1271/eip1271.d.ts +2 -2
- package/dist/cjs/providers/eip1271/eip1271.js +2 -2
- package/dist/cjs/providers/eip1271/eip1271.js.map +1 -1
- package/dist/cjs/providers/eip4361/auth.d.ts +5 -3
- package/dist/cjs/providers/eip4361/auth.js +2 -2
- package/dist/cjs/providers/eip4361/auth.js.map +1 -1
- package/dist/cjs/providers/eip4361/eip4361.d.ts +41 -5
- package/dist/cjs/providers/eip4361/eip4361.js +27 -28
- package/dist/cjs/providers/eip4361/eip4361.js.map +1 -1
- package/dist/cjs/providers/eip4361/external-eip4361.d.ts +2 -2
- package/dist/cjs/providers/eip4361/external-eip4361.js +4 -4
- package/dist/cjs/providers/eip4361/external-eip4361.js.map +1 -1
- package/dist/cjs/providers/index.d.ts +5 -5
- package/dist/cjs/providers/index.js +5 -5
- package/dist/cjs/providers/index.js.map +1 -1
- package/dist/cjs/storage.d.ts +1 -1
- package/dist/es/auth-provider.d.ts +1 -1
- package/dist/es/auth-sig.d.ts +2 -2
- package/dist/es/index.d.ts +3 -3
- package/dist/es/index.js +3 -3
- package/dist/es/index.js.map +1 -1
- package/dist/es/package.json +3 -0
- package/dist/es/providers/eip1271/auth.d.ts +5 -3
- package/dist/es/providers/eip1271/auth.js +1 -1
- package/dist/es/providers/eip1271/auth.js.map +1 -1
- package/dist/es/providers/eip1271/eip1271.d.ts +2 -2
- package/dist/es/providers/eip1271/eip1271.js +1 -1
- package/dist/es/providers/eip1271/eip1271.js.map +1 -1
- package/dist/es/providers/eip4361/auth.d.ts +5 -3
- package/dist/es/providers/eip4361/auth.js +1 -1
- package/dist/es/providers/eip4361/auth.js.map +1 -1
- package/dist/es/providers/eip4361/eip4361.d.ts +41 -5
- package/dist/es/providers/eip4361/eip4361.js +24 -25
- package/dist/es/providers/eip4361/eip4361.js.map +1 -1
- package/dist/es/providers/eip4361/external-eip4361.d.ts +2 -2
- package/dist/es/providers/eip4361/external-eip4361.js +2 -2
- package/dist/es/providers/eip4361/external-eip4361.js.map +1 -1
- package/dist/es/providers/index.d.ts +5 -5
- package/dist/es/providers/index.js +4 -4
- package/dist/es/providers/index.js.map +1 -1
- package/dist/es/storage.d.ts +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.es.tsbuildinfo +1 -1
- package/package.json +9 -5
- package/dist/cjs/providers/eip4361/common.d.ts +0 -3
- package/dist/cjs/providers/eip4361/common.js +0 -19
- package/dist/cjs/providers/eip4361/common.js.map +0 -1
- package/dist/cjs/providers/eip4361.d.ts +0 -18
- package/dist/cjs/providers/eip4361.js +0 -85
- package/dist/cjs/providers/eip4361.js.map +0 -1
- package/dist/cjs/providers/external-eip4361.d.ts +0 -9
- package/dist/cjs/providers/external-eip4361.js +0 -34
- package/dist/cjs/providers/external-eip4361.js.map +0 -1
- package/dist/es/providers/eip4361/common.d.ts +0 -3
- package/dist/es/providers/eip4361/common.js +0 -16
- package/dist/es/providers/eip4361/common.js.map +0 -1
- package/dist/es/providers/eip4361.d.ts +0 -18
- package/dist/es/providers/eip4361.js +0 -81
- package/dist/es/providers/eip4361.js.map +0 -1
- package/dist/es/providers/external-eip4361.d.ts +0 -9
- package/dist/es/providers/external-eip4361.js +0 -30
- package/dist/es/providers/external-eip4361.js.map +0 -1
package/dist/cjs/auth-sig.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { EIP1271AuthSignature } from './providers/eip1271/auth';
|
|
3
|
-
import { EIP4361AuthSignature } from './providers/eip4361/auth';
|
|
2
|
+
import { EIP1271AuthSignature } from './providers/eip1271/auth.js';
|
|
3
|
+
import { EIP4361AuthSignature } from './providers/eip4361/auth.js';
|
|
4
4
|
export declare const baseAuthSignatureSchema: z.ZodObject<{
|
|
5
5
|
signature: z.ZodString;
|
|
6
6
|
address: z.ZodEffects<z.ZodString, string, string>;
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './auth-provider';
|
|
2
|
-
export * from './auth-sig';
|
|
3
|
-
export * from './providers';
|
|
1
|
+
export * from './auth-provider.js';
|
|
2
|
+
export * from './auth-sig.js';
|
|
3
|
+
export * from './providers/index.js';
|
package/dist/cjs/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./auth-provider"), exports);
|
|
18
|
-
__exportStar(require("./auth-sig"), exports);
|
|
19
|
-
__exportStar(require("./providers"), exports);
|
|
17
|
+
__exportStar(require("./auth-provider.js"), exports);
|
|
18
|
+
__exportStar(require("./auth-sig.js"), exports);
|
|
19
|
+
__exportStar(require("./providers/index.js"), exports);
|
|
20
20
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,gDAA8B;AAC9B,uDAAqC"}
|
|
@@ -10,10 +10,12 @@ export declare const EIP1271TypedDataSchema: z.ZodObject<{
|
|
|
10
10
|
chain: number;
|
|
11
11
|
dataHash: string;
|
|
12
12
|
}>;
|
|
13
|
-
export declare const eip1271AuthSignatureSchema: z.ZodObject<{
|
|
13
|
+
export declare const eip1271AuthSignatureSchema: z.ZodObject<z.objectUtil.extendShape<{
|
|
14
14
|
signature: z.ZodString;
|
|
15
15
|
address: z.ZodEffects<z.ZodString, string, string>;
|
|
16
|
-
|
|
16
|
+
scheme: z.ZodString;
|
|
17
|
+
typedData: z.ZodUnknown;
|
|
18
|
+
}, {
|
|
17
19
|
scheme: z.ZodLiteral<"EIP1271">;
|
|
18
20
|
typedData: z.ZodObject<{
|
|
19
21
|
chain: z.ZodNumber;
|
|
@@ -25,7 +27,7 @@ export declare const eip1271AuthSignatureSchema: z.ZodObject<{
|
|
|
25
27
|
chain: number;
|
|
26
28
|
dataHash: string;
|
|
27
29
|
}>;
|
|
28
|
-
}
|
|
30
|
+
}>, "strip", z.ZodTypeAny, {
|
|
29
31
|
signature: string;
|
|
30
32
|
address: string;
|
|
31
33
|
scheme: "EIP1271";
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.eip1271AuthSignatureSchema = exports.EIP1271TypedDataSchema = exports.EIP1271_AUTH_METHOD = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
|
-
const
|
|
5
|
+
const auth_sig_js_1 = require("../../auth-sig.js");
|
|
6
6
|
exports.EIP1271_AUTH_METHOD = 'EIP1271';
|
|
7
7
|
exports.EIP1271TypedDataSchema = zod_1.z.object({
|
|
8
8
|
chain: zod_1.z.number().int().nonnegative(),
|
|
9
9
|
dataHash: zod_1.z.string().startsWith('0x'), // hex string
|
|
10
10
|
});
|
|
11
|
-
exports.eip1271AuthSignatureSchema =
|
|
11
|
+
exports.eip1271AuthSignatureSchema = auth_sig_js_1.baseAuthSignatureSchema.extend({
|
|
12
12
|
scheme: zod_1.z.literal(exports.EIP1271_AUTH_METHOD),
|
|
13
13
|
typedData: exports.EIP1271TypedDataSchema,
|
|
14
14
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/providers/eip1271/auth.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/providers/eip1271/auth.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,mDAA4D;AAE/C,QAAA,mBAAmB,GAAG,SAAS,CAAC;AAEhC,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACrC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,aAAa;CACrD,CAAC,CAAC;AAEU,QAAA,0BAA0B,GAAG,qCAAuB,CAAC,MAAM,CAAC;IACvE,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,2BAAmB,CAAC;IACtC,SAAS,EAAE,8BAAsB;CAClC,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AuthProvider } from '../../auth-provider';
|
|
2
|
-
import { EIP1271AuthSignature } from './auth';
|
|
1
|
+
import { AuthProvider } from '../../auth-provider.js';
|
|
2
|
+
import { EIP1271AuthSignature } from './auth.js';
|
|
3
3
|
/**
|
|
4
4
|
* EIP1271AuthProvider handles EIP-1271 contract-based authentication.
|
|
5
5
|
* This provider manages authentication signatures from smart contracts that implement EIP-1271's `isValidSignature` solidity function.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.EIP1271AuthProvider = void 0;
|
|
4
|
-
const
|
|
4
|
+
const auth_js_1 = require("./auth.js");
|
|
5
5
|
/**
|
|
6
6
|
* EIP1271AuthProvider handles EIP-1271 contract-based authentication.
|
|
7
7
|
* This provider manages authentication signatures from smart contracts that implement EIP-1271's `isValidSignature` solidity function.
|
|
@@ -41,7 +41,7 @@ class EIP1271AuthProvider {
|
|
|
41
41
|
return {
|
|
42
42
|
signature: this.signature,
|
|
43
43
|
address: this.contractAddress,
|
|
44
|
-
scheme:
|
|
44
|
+
scheme: auth_js_1.EIP1271_AUTH_METHOD,
|
|
45
45
|
typedData: {
|
|
46
46
|
chain: this.chain,
|
|
47
47
|
dataHash: this.dataHash,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eip1271.js","sourceRoot":"","sources":["../../../../src/providers/eip1271/eip1271.ts"],"names":[],"mappings":";;;AAEA,
|
|
1
|
+
{"version":3,"file":"eip1271.js","sourceRoot":"","sources":["../../../../src/providers/eip1271/eip1271.ts"],"names":[],"mappings":";;;AAEA,uCAAsE;AAEtE;;;GAGG;AACH,MAAa,mBAAmB;IAUZ;IACA;IACA;IACA;IAZlB;;;;;;;OAOG;IACH,YACkB,eAAuB,EACvB,KAAa,EACb,QAAgB,EAChB,SAAiB;QAHjB,oBAAe,GAAf,eAAe,CAAQ;QACvB,UAAK,GAAL,KAAK,CAAQ;QACb,aAAQ,GAAR,QAAQ,CAAQ;QAChB,cAAS,GAAT,SAAS,CAAQ;IAChC,CAAC;IAEJ;;;;;;;;;;;OAWG;IACI,KAAK,CAAC,wBAAwB;QACnC,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,eAAe;YAC7B,MAAM,EAAE,6BAAmB;YAC3B,SAAS,EAAE;gBACT,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB;SACF,CAAC;IACJ,CAAC;CACF;AAvCD,kDAuCC"}
|
|
@@ -2,13 +2,15 @@ import { z } from 'zod';
|
|
|
2
2
|
export declare const EIP4361_AUTH_METHOD = "EIP4361";
|
|
3
3
|
export declare const USER_ADDRESS_PARAM_DEFAULT = ":userAddress";
|
|
4
4
|
export declare const EIP4361TypedDataSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
5
|
-
export declare const eip4361AuthSignatureSchema: z.ZodObject<{
|
|
5
|
+
export declare const eip4361AuthSignatureSchema: z.ZodObject<z.objectUtil.extendShape<{
|
|
6
6
|
signature: z.ZodString;
|
|
7
7
|
address: z.ZodEffects<z.ZodString, string, string>;
|
|
8
|
-
|
|
8
|
+
scheme: z.ZodString;
|
|
9
|
+
typedData: z.ZodUnknown;
|
|
10
|
+
}, {
|
|
9
11
|
scheme: z.ZodLiteral<"EIP4361">;
|
|
10
12
|
typedData: z.ZodEffects<z.ZodString, string, string>;
|
|
11
|
-
}
|
|
13
|
+
}>, "strip", z.ZodTypeAny, {
|
|
12
14
|
signature: string;
|
|
13
15
|
address: string;
|
|
14
16
|
scheme: "EIP4361";
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.eip4361AuthSignatureSchema = exports.EIP4361TypedDataSchema = exports.USER_ADDRESS_PARAM_DEFAULT = exports.EIP4361_AUTH_METHOD = void 0;
|
|
4
4
|
const siwe_1 = require("siwe");
|
|
5
5
|
const zod_1 = require("zod");
|
|
6
|
-
const
|
|
6
|
+
const auth_sig_js_1 = require("../../auth-sig.js");
|
|
7
7
|
exports.EIP4361_AUTH_METHOD = 'EIP4361';
|
|
8
8
|
exports.USER_ADDRESS_PARAM_DEFAULT = ':userAddress';
|
|
9
9
|
const isSiweMessage = (message) => {
|
|
@@ -18,7 +18,7 @@ const isSiweMessage = (message) => {
|
|
|
18
18
|
exports.EIP4361TypedDataSchema = zod_1.z
|
|
19
19
|
.string()
|
|
20
20
|
.refine(isSiweMessage, { message: 'Invalid SIWE message' });
|
|
21
|
-
exports.eip4361AuthSignatureSchema =
|
|
21
|
+
exports.eip4361AuthSignatureSchema = auth_sig_js_1.baseAuthSignatureSchema.extend({
|
|
22
22
|
scheme: zod_1.z.literal(exports.EIP4361_AUTH_METHOD),
|
|
23
23
|
typedData: exports.EIP4361TypedDataSchema,
|
|
24
24
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/providers/eip4361/auth.ts"],"names":[],"mappings":";;;AAAA,+BAAmC;AACnC,6BAAwB;AAExB,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/providers/eip4361/auth.ts"],"names":[],"mappings":";;;AAAA,+BAAmC;AACnC,6BAAwB;AAExB,mDAA4D;AAE/C,QAAA,mBAAmB,GAAG,SAAS,CAAC;AAEhC,QAAA,0BAA0B,GAAG,cAAc,CAAC;AAEzD,MAAM,aAAa,GAAG,CAAC,OAAe,EAAW,EAAE;IACjD,IAAI,CAAC;QACH,IAAI,kBAAW,CAAC,OAAO,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEW,QAAA,sBAAsB,GAAG,OAAC;KACpC,MAAM,EAAE;KACR,MAAM,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC,CAAC;AAEjD,QAAA,0BAA0B,GAAG,qCAAuB,CAAC,MAAM,CAAC;IACvE,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,2BAAmB,CAAC;IACtC,SAAS,EAAE,8BAAsB;CAClC,CAAC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { PublicClient, SignerAccount } from '@nucypher/shared';
|
|
1
2
|
import { ethers } from 'ethers';
|
|
2
|
-
import { AuthProvider } from '../../auth-provider';
|
|
3
|
-
import { EIP4361AuthSignature } from './auth';
|
|
3
|
+
import { AuthProvider } from '../../auth-provider.js';
|
|
4
|
+
import { EIP4361AuthSignature } from './auth.js';
|
|
4
5
|
export type EIP4361AuthProviderParams = {
|
|
5
6
|
domain: string;
|
|
6
7
|
uri: string;
|
|
@@ -17,15 +18,31 @@ export declare const FRESHNESS_IN_MILLISECONDS: number;
|
|
|
17
18
|
*
|
|
18
19
|
* Messages are valid for 2 hours from creation and stored locally keyed by the signer's address.
|
|
19
20
|
*
|
|
21
|
+
* Supports both ethers.js and viem.
|
|
22
|
+
*
|
|
20
23
|
* @implements {AuthProvider}
|
|
24
|
+
*
|
|
25
|
+
* @example Ethers.js usage
|
|
26
|
+
* ```typescript
|
|
27
|
+
* const provider = new ethers.providers.JsonRpcProvider();
|
|
28
|
+
* const signer = new ethers.Wallet(privateKey, provider);
|
|
29
|
+
* const authProvider = new EIP4361AuthProvider(provider, signer);
|
|
30
|
+
* ```
|
|
31
|
+
*
|
|
32
|
+
* @example Viem usage
|
|
33
|
+
* ```typescript
|
|
34
|
+
* const publicClient = createPublicClient({ chain: polygon, transport: http() });
|
|
35
|
+
* const account = privateKeyToAccount('0x...');
|
|
36
|
+
* const authProvider = new EIP4361AuthProvider(publicClient, account);
|
|
37
|
+
* ```
|
|
21
38
|
*/
|
|
22
39
|
export declare class EIP4361AuthProvider implements AuthProvider {
|
|
23
|
-
private readonly provider;
|
|
24
|
-
private readonly signer;
|
|
25
40
|
private readonly storage;
|
|
26
41
|
private readonly providerParams;
|
|
42
|
+
private readonly provider;
|
|
43
|
+
private readonly signer;
|
|
27
44
|
/**
|
|
28
|
-
* Creates a new EIP4361AuthProvider instance.
|
|
45
|
+
* Creates a new EIP4361AuthProvider instance with ethers.js objects.
|
|
29
46
|
*
|
|
30
47
|
* @param provider - Ethers provider used to fetch the current chainId
|
|
31
48
|
* @param signer - Ethers signer used to sign SIWE messages
|
|
@@ -43,6 +60,25 @@ export declare class EIP4361AuthProvider implements AuthProvider {
|
|
|
43
60
|
* - Nonce: Auto-generated
|
|
44
61
|
*/
|
|
45
62
|
constructor(provider: ethers.providers.Provider, signer: ethers.Signer, providerParams?: EIP4361AuthProviderParams);
|
|
63
|
+
/**
|
|
64
|
+
* Creates a new EIP4361AuthProvider instance with viem objects.
|
|
65
|
+
*
|
|
66
|
+
* @param publicClient - Viem public client used to fetch the current chainId
|
|
67
|
+
* @param account - Viem account used to sign SIWE messages
|
|
68
|
+
* @param providerParams - Optional SIWE message configuration
|
|
69
|
+
* @param providerParams.domain - Domain name for the signing request (e.g. 'app.example.com').
|
|
70
|
+
* Defaults to current website domain or 'taco.build'
|
|
71
|
+
* @param providerParams.uri - Full URI of signing request origin (e.g. 'https://app.example.com').
|
|
72
|
+
* Defaults to current website URL or 'https://taco.build'
|
|
73
|
+
*
|
|
74
|
+
* The SIWE message will include:
|
|
75
|
+
* - A human-readable statement: "{domain} wants you to sign in with your Ethereum account: {address}"
|
|
76
|
+
* - Version: "1"
|
|
77
|
+
* - 2 hour expiration from creation time
|
|
78
|
+
* - Chain ID from the provided provider
|
|
79
|
+
* - Nonce: Auto-generated
|
|
80
|
+
*/
|
|
81
|
+
constructor(publicClient: PublicClient, account: SignerAccount, providerParams?: EIP4361AuthProviderParams);
|
|
46
82
|
/**
|
|
47
83
|
* Gets default domain and URI parameters based on runtime environment.
|
|
48
84
|
*
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.EIP4361AuthProvider = exports.FRESHNESS_IN_MILLISECONDS = void 0;
|
|
4
|
+
const shared_1 = require("@nucypher/shared");
|
|
4
5
|
const siwe_1 = require("siwe");
|
|
5
|
-
const
|
|
6
|
-
const
|
|
6
|
+
const storage_js_1 = require("../../storage.js");
|
|
7
|
+
const auth_js_1 = require("./auth.js");
|
|
7
8
|
exports.FRESHNESS_IN_MILLISECONDS = 2 * 60 * 60 * 1000;
|
|
8
9
|
const TACO_DEFAULT_DOMAIN = 'taco.build';
|
|
9
10
|
const TACO_DEFAULT_URI = 'https://taco.build';
|
|
@@ -18,35 +19,33 @@ const TACO_DEFAULT_URI = 'https://taco.build';
|
|
|
18
19
|
*
|
|
19
20
|
* Messages are valid for 2 hours from creation and stored locally keyed by the signer's address.
|
|
20
21
|
*
|
|
22
|
+
* Supports both ethers.js and viem.
|
|
23
|
+
*
|
|
21
24
|
* @implements {AuthProvider}
|
|
25
|
+
*
|
|
26
|
+
* @example Ethers.js usage
|
|
27
|
+
* ```typescript
|
|
28
|
+
* const provider = new ethers.providers.JsonRpcProvider();
|
|
29
|
+
* const signer = new ethers.Wallet(privateKey, provider);
|
|
30
|
+
* const authProvider = new EIP4361AuthProvider(provider, signer);
|
|
31
|
+
* ```
|
|
32
|
+
*
|
|
33
|
+
* @example Viem usage
|
|
34
|
+
* ```typescript
|
|
35
|
+
* const publicClient = createPublicClient({ chain: polygon, transport: http() });
|
|
36
|
+
* const account = privateKeyToAccount('0x...');
|
|
37
|
+
* const authProvider = new EIP4361AuthProvider(publicClient, account);
|
|
38
|
+
* ```
|
|
22
39
|
*/
|
|
23
40
|
class EIP4361AuthProvider {
|
|
24
|
-
provider;
|
|
25
|
-
signer;
|
|
26
41
|
storage;
|
|
27
42
|
providerParams;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
* @param providerParams.domain - Domain name for the signing request (e.g. 'app.example.com').
|
|
35
|
-
* Defaults to current website domain or 'taco.build'
|
|
36
|
-
* @param providerParams.uri - Full URI of signing request origin (e.g. 'https://app.example.com').
|
|
37
|
-
* Defaults to current website URL or 'https://taco.build'
|
|
38
|
-
*
|
|
39
|
-
* The SIWE message will include:
|
|
40
|
-
* - A human-readable statement: "{domain} wants you to sign in with your Ethereum account: {address}"
|
|
41
|
-
* - Version: "1"
|
|
42
|
-
* - 2 hour expiration from creation time
|
|
43
|
-
* - Chain ID from the provided provider
|
|
44
|
-
* - Nonce: Auto-generated
|
|
45
|
-
*/
|
|
46
|
-
constructor(provider, signer, providerParams) {
|
|
47
|
-
this.provider = provider;
|
|
48
|
-
this.signer = signer;
|
|
49
|
-
this.storage = new storage_1.LocalStorage(auth_1.eip4361AuthSignatureSchema);
|
|
43
|
+
provider;
|
|
44
|
+
signer;
|
|
45
|
+
constructor(providerLike, signerLike, providerParams) {
|
|
46
|
+
this.storage = new storage_js_1.LocalStorage(auth_js_1.eip4361AuthSignatureSchema);
|
|
47
|
+
this.provider = (0, shared_1.toEthersProvider)(providerLike);
|
|
48
|
+
this.signer = (0, shared_1.toTacoSigner)(signerLike);
|
|
50
49
|
if (providerParams) {
|
|
51
50
|
this.providerParams = providerParams;
|
|
52
51
|
}
|
|
@@ -93,7 +92,7 @@ class EIP4361AuthProvider {
|
|
|
93
92
|
*/
|
|
94
93
|
async getOrCreateAuthSignature() {
|
|
95
94
|
const address = await this.signer.getAddress();
|
|
96
|
-
const storageKey = `eth-${
|
|
95
|
+
const storageKey = `eth-${auth_js_1.EIP4361_AUTH_METHOD}-message-${address}`;
|
|
97
96
|
// If we have a signature in localStorage, return it
|
|
98
97
|
const maybeSignature = this.storage.getAuthSignature(storageKey);
|
|
99
98
|
if (maybeSignature) {
|
|
@@ -140,7 +139,7 @@ class EIP4361AuthProvider {
|
|
|
140
139
|
// set the expirationTime to 2 hours from now
|
|
141
140
|
expirationTime: new Date(Date.now() + exports.FRESHNESS_IN_MILLISECONDS).toISOString(),
|
|
142
141
|
});
|
|
143
|
-
const scheme =
|
|
142
|
+
const scheme = auth_js_1.EIP4361_AUTH_METHOD;
|
|
144
143
|
const message = siweMessage.prepareMessage();
|
|
145
144
|
const signature = await this.signer.signMessage(message);
|
|
146
145
|
return { signature, address, scheme, typedData: message };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eip4361.js","sourceRoot":"","sources":["../../../../src/providers/eip4361/eip4361.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"eip4361.js","sourceRoot":"","sources":["../../../../src/providers/eip4361/eip4361.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AuthProvider } from '../../auth-provider';
|
|
2
|
-
import { EIP4361AuthSignature } from './auth';
|
|
1
|
+
import { AuthProvider } from '../../auth-provider.js';
|
|
2
|
+
import { EIP4361AuthSignature } from './auth.js';
|
|
3
3
|
/**
|
|
4
4
|
* SingleSignOnEIP4361AuthProvider handles Sign-In with Ethereum (EIP-4361/SIWE) authentication
|
|
5
5
|
* using an existing SIWE message and signature.
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SingleSignOnEIP4361AuthProvider = void 0;
|
|
4
4
|
const siwe_1 = require("siwe");
|
|
5
|
-
const
|
|
6
|
-
const
|
|
5
|
+
const auth_js_1 = require("./auth.js");
|
|
6
|
+
const eip4361_js_1 = require("./eip4361.js");
|
|
7
7
|
async function generateAndVerifySiweMessage(message, signature) {
|
|
8
8
|
const siweMessage = new siwe_1.SiweMessage(message);
|
|
9
9
|
// this will trigger validation for the signature and all parameters (`expirationTime`, `notBefore`...).
|
|
10
10
|
await siweMessage.verify({ signature });
|
|
11
|
-
const twoHoursBeforeNow = new Date(Date.now() -
|
|
11
|
+
const twoHoursBeforeNow = new Date(Date.now() - eip4361_js_1.FRESHNESS_IN_MILLISECONDS);
|
|
12
12
|
if (!siweMessage.issuedAt) {
|
|
13
13
|
throw new Error(
|
|
14
14
|
// this should never happen
|
|
@@ -71,7 +71,7 @@ class SingleSignOnEIP4361AuthProvider {
|
|
|
71
71
|
*/
|
|
72
72
|
async getOrCreateAuthSignature() {
|
|
73
73
|
await generateAndVerifySiweMessage(this.existingSiweMessage, this.signature);
|
|
74
|
-
const scheme =
|
|
74
|
+
const scheme = auth_js_1.EIP4361_AUTH_METHOD;
|
|
75
75
|
return {
|
|
76
76
|
signature: this.signature,
|
|
77
77
|
address: this.address,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external-eip4361.js","sourceRoot":"","sources":["../../../../src/providers/eip4361/external-eip4361.ts"],"names":[],"mappings":";;;AAAA,+BAAmC;AAInC,
|
|
1
|
+
{"version":3,"file":"external-eip4361.js","sourceRoot":"","sources":["../../../../src/providers/eip4361/external-eip4361.ts"],"names":[],"mappings":";;;AAAA,+BAAmC;AAInC,uCAAsE;AACtE,6CAAyD;AAEzD,KAAK,UAAU,4BAA4B,CACzC,OAAe,EACf,SAAiB;IAEjB,MAAM,WAAW,GAAG,IAAI,kBAAW,CAAC,OAAO,CAAC,CAAC;IAC7C,wGAAwG;IACxG,MAAM,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IACxC,MAAM,iBAAiB,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,sCAAyB,CAAC,CAAC;IAC3E,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK;QACb,2BAA2B;QAC3B,wFAAwF,CACzF,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,iBAAiB,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CACb,wFAAwF,CACzF,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,GAAG,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CACb,qDAAqD,WAAW,CAAC,QAAQ,uCAAuC,CACjH,CAAC;IACJ,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAa,+BAA+B;IAmCvB;IACD;IACC;IApCnB;;;;;;;OAOG;IACI,MAAM,CAAC,KAAK,CAAC,oBAAoB,CACtC,mBAA2B,EAC3B,SAAiB;QAEjB,MAAM,WAAW,GAAG,MAAM,4BAA4B,CACpD,mBAAmB,EACnB,SAAS,CACV,CAAC;QAEF,kBAAkB;QAClB,MAAM,YAAY,GAAG,IAAI,+BAA+B,CACtD,WAAW,CAAC,cAAc,EAAE,EAC5B,WAAW,CAAC,OAAO,EACnB,SAAS,CACV,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;;;;OAMG;IACH,YACmB,mBAA2B,EAC5B,OAAe,EACd,SAAiB;QAFjB,wBAAmB,GAAnB,mBAAmB,CAAQ;QAC5B,YAAO,GAAP,OAAO,CAAQ;QACd,cAAS,GAAT,SAAS,CAAQ;IACjC,CAAC;IAEJ;;;;;;;;OAQG;IACI,KAAK,CAAC,wBAAwB;QACnC,MAAM,4BAA4B,CAChC,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,SAAS,CACf,CAAC;QAEF,MAAM,MAAM,GAAG,6BAAmB,CAAC;QACnC,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,SAAS,EAAE,IAAI,CAAC,mBAAmB;SACpC,CAAC;IACJ,CAAC;CACF;AA/DD,0EA+DC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { EIP1271AuthSignature } from './eip1271/auth';
|
|
2
|
-
export * from './eip1271/eip1271';
|
|
3
|
-
export { EIP4361AuthSignature, USER_ADDRESS_PARAM_DEFAULT, } from './eip4361/auth';
|
|
4
|
-
export * from './eip4361/eip4361';
|
|
5
|
-
export * from './eip4361/external-eip4361';
|
|
1
|
+
export { EIP1271AuthSignature } from './eip1271/auth.js';
|
|
2
|
+
export * from './eip1271/eip1271.js';
|
|
3
|
+
export { EIP4361AuthSignature, USER_ADDRESS_PARAM_DEFAULT, } from './eip4361/auth.js';
|
|
4
|
+
export * from './eip4361/eip4361.js';
|
|
5
|
+
export * from './eip4361/external-eip4361.js';
|
|
@@ -15,9 +15,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.USER_ADDRESS_PARAM_DEFAULT = void 0;
|
|
18
|
-
__exportStar(require("./eip1271/eip1271"), exports);
|
|
19
|
-
var
|
|
20
|
-
Object.defineProperty(exports, "USER_ADDRESS_PARAM_DEFAULT", { enumerable: true, get: function () { return
|
|
21
|
-
__exportStar(require("./eip4361/eip4361"), exports);
|
|
22
|
-
__exportStar(require("./eip4361/external-eip4361"), exports);
|
|
18
|
+
__exportStar(require("./eip1271/eip1271.js"), exports);
|
|
19
|
+
var auth_js_1 = require("./eip4361/auth.js");
|
|
20
|
+
Object.defineProperty(exports, "USER_ADDRESS_PARAM_DEFAULT", { enumerable: true, get: function () { return auth_js_1.USER_ADDRESS_PARAM_DEFAULT; } });
|
|
21
|
+
__exportStar(require("./eip4361/eip4361.js"), exports);
|
|
22
|
+
__exportStar(require("./eip4361/external-eip4361.js"), exports);
|
|
23
23
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,uDAAqC;AACrC,6CAG2B;AADzB,qHAAA,0BAA0B,OAAA;AAE5B,uDAAqC;AACrC,gEAA8C"}
|
package/dist/cjs/storage.d.ts
CHANGED
package/dist/es/auth-sig.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { EIP1271AuthSignature } from './providers/eip1271/auth';
|
|
3
|
-
import { EIP4361AuthSignature } from './providers/eip4361/auth';
|
|
2
|
+
import { EIP1271AuthSignature } from './providers/eip1271/auth.js';
|
|
3
|
+
import { EIP4361AuthSignature } from './providers/eip4361/auth.js';
|
|
4
4
|
export declare const baseAuthSignatureSchema: z.ZodObject<{
|
|
5
5
|
signature: z.ZodString;
|
|
6
6
|
address: z.ZodEffects<z.ZodString, string, string>;
|
package/dist/es/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './auth-provider';
|
|
2
|
-
export * from './auth-sig';
|
|
3
|
-
export * from './providers';
|
|
1
|
+
export * from './auth-provider.js';
|
|
2
|
+
export * from './auth-sig.js';
|
|
3
|
+
export * from './providers/index.js';
|
package/dist/es/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './auth-provider';
|
|
2
|
-
export * from './auth-sig';
|
|
3
|
-
export * from './providers';
|
|
1
|
+
export * from './auth-provider.js';
|
|
2
|
+
export * from './auth-sig.js';
|
|
3
|
+
export * from './providers/index.js';
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/es/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC"}
|
|
@@ -10,10 +10,12 @@ export declare const EIP1271TypedDataSchema: z.ZodObject<{
|
|
|
10
10
|
chain: number;
|
|
11
11
|
dataHash: string;
|
|
12
12
|
}>;
|
|
13
|
-
export declare const eip1271AuthSignatureSchema: z.ZodObject<{
|
|
13
|
+
export declare const eip1271AuthSignatureSchema: z.ZodObject<z.objectUtil.extendShape<{
|
|
14
14
|
signature: z.ZodString;
|
|
15
15
|
address: z.ZodEffects<z.ZodString, string, string>;
|
|
16
|
-
|
|
16
|
+
scheme: z.ZodString;
|
|
17
|
+
typedData: z.ZodUnknown;
|
|
18
|
+
}, {
|
|
17
19
|
scheme: z.ZodLiteral<"EIP1271">;
|
|
18
20
|
typedData: z.ZodObject<{
|
|
19
21
|
chain: z.ZodNumber;
|
|
@@ -25,7 +27,7 @@ export declare const eip1271AuthSignatureSchema: z.ZodObject<{
|
|
|
25
27
|
chain: number;
|
|
26
28
|
dataHash: string;
|
|
27
29
|
}>;
|
|
28
|
-
}
|
|
30
|
+
}>, "strip", z.ZodTypeAny, {
|
|
29
31
|
signature: string;
|
|
30
32
|
address: string;
|
|
31
33
|
scheme: "EIP1271";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { baseAuthSignatureSchema } from '../../auth-sig';
|
|
2
|
+
import { baseAuthSignatureSchema } from '../../auth-sig.js';
|
|
3
3
|
export const EIP1271_AUTH_METHOD = 'EIP1271';
|
|
4
4
|
export const EIP1271TypedDataSchema = z.object({
|
|
5
5
|
chain: z.number().int().nonnegative(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/providers/eip1271/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/providers/eip1271/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,CAAC,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAE7C,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACrC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,aAAa;CACrD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,0BAA0B,GAAG,uBAAuB,CAAC,MAAM,CAAC;IACvE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC;IACtC,SAAS,EAAE,sBAAsB;CAClC,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AuthProvider } from '../../auth-provider';
|
|
2
|
-
import { EIP1271AuthSignature } from './auth';
|
|
1
|
+
import { AuthProvider } from '../../auth-provider.js';
|
|
2
|
+
import { EIP1271AuthSignature } from './auth.js';
|
|
3
3
|
/**
|
|
4
4
|
* EIP1271AuthProvider handles EIP-1271 contract-based authentication.
|
|
5
5
|
* This provider manages authentication signatures from smart contracts that implement EIP-1271's `isValidSignature` solidity function.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EIP1271_AUTH_METHOD } from './auth';
|
|
1
|
+
import { EIP1271_AUTH_METHOD } from './auth.js';
|
|
2
2
|
/**
|
|
3
3
|
* EIP1271AuthProvider handles EIP-1271 contract-based authentication.
|
|
4
4
|
* This provider manages authentication signatures from smart contracts that implement EIP-1271's `isValidSignature` solidity function.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eip1271.js","sourceRoot":"","sources":["../../../../src/providers/eip1271/eip1271.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAwB,MAAM,
|
|
1
|
+
{"version":3,"file":"eip1271.js","sourceRoot":"","sources":["../../../../src/providers/eip1271/eip1271.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAwB,MAAM,WAAW,CAAC;AAEtE;;;GAGG;AACH,MAAM,OAAO,mBAAmB;IAUZ;IACA;IACA;IACA;IAZlB;;;;;;;OAOG;IACH,YACkB,eAAuB,EACvB,KAAa,EACb,QAAgB,EAChB,SAAiB;QAHjB,oBAAe,GAAf,eAAe,CAAQ;QACvB,UAAK,GAAL,KAAK,CAAQ;QACb,aAAQ,GAAR,QAAQ,CAAQ;QAChB,cAAS,GAAT,SAAS,CAAQ;IAChC,CAAC;IAEJ;;;;;;;;;;;OAWG;IACI,KAAK,CAAC,wBAAwB;QACnC,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,eAAe;YAC7B,MAAM,EAAE,mBAAmB;YAC3B,SAAS,EAAE;gBACT,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -2,13 +2,15 @@ import { z } from 'zod';
|
|
|
2
2
|
export declare const EIP4361_AUTH_METHOD = "EIP4361";
|
|
3
3
|
export declare const USER_ADDRESS_PARAM_DEFAULT = ":userAddress";
|
|
4
4
|
export declare const EIP4361TypedDataSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
5
|
-
export declare const eip4361AuthSignatureSchema: z.ZodObject<{
|
|
5
|
+
export declare const eip4361AuthSignatureSchema: z.ZodObject<z.objectUtil.extendShape<{
|
|
6
6
|
signature: z.ZodString;
|
|
7
7
|
address: z.ZodEffects<z.ZodString, string, string>;
|
|
8
|
-
|
|
8
|
+
scheme: z.ZodString;
|
|
9
|
+
typedData: z.ZodUnknown;
|
|
10
|
+
}, {
|
|
9
11
|
scheme: z.ZodLiteral<"EIP4361">;
|
|
10
12
|
typedData: z.ZodEffects<z.ZodString, string, string>;
|
|
11
|
-
}
|
|
13
|
+
}>, "strip", z.ZodTypeAny, {
|
|
12
14
|
signature: string;
|
|
13
15
|
address: string;
|
|
14
16
|
scheme: "EIP4361";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SiweMessage } from 'siwe';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { baseAuthSignatureSchema } from '../../auth-sig';
|
|
3
|
+
import { baseAuthSignatureSchema } from '../../auth-sig.js';
|
|
4
4
|
export const EIP4361_AUTH_METHOD = 'EIP4361';
|
|
5
5
|
export const USER_ADDRESS_PARAM_DEFAULT = ':userAddress';
|
|
6
6
|
const isSiweMessage = (message) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/providers/eip4361/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/providers/eip4361/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,CAAC,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAE7C,MAAM,CAAC,MAAM,0BAA0B,GAAG,cAAc,CAAC;AAEzD,MAAM,aAAa,GAAG,CAAC,OAAe,EAAW,EAAE;IACjD,IAAI,CAAC;QACH,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC;KACpC,MAAM,EAAE;KACR,MAAM,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC,CAAC;AAE9D,MAAM,CAAC,MAAM,0BAA0B,GAAG,uBAAuB,CAAC,MAAM,CAAC;IACvE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC;IACtC,SAAS,EAAE,sBAAsB;CAClC,CAAC,CAAC"}
|