@gardenfi/utils 2.0.4 → 2.0.6-beta.1
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/index.cjs +1 -1
- package/dist/index.js +35 -24
- package/dist/index10.cjs +1 -1
- package/dist/index10.js +42 -32
- package/dist/index100.cjs +1 -0
- package/dist/index100.js +4 -0
- package/dist/index101.cjs +1 -0
- package/dist/index101.js +7 -0
- package/dist/index102.cjs +1 -0
- package/dist/index102.js +13 -0
- package/dist/index103.cjs +1 -0
- package/dist/index103.js +23 -0
- package/dist/index104.cjs +1 -0
- package/dist/index104.js +9 -0
- package/dist/index105.cjs +1 -0
- package/dist/index105.js +7 -0
- package/dist/index106.cjs +1 -0
- package/dist/index106.js +40 -0
- package/dist/index107.cjs +1 -0
- package/dist/index107.js +130 -0
- package/dist/index108.cjs +1 -0
- package/dist/index108.js +4 -0
- package/dist/index109.cjs +2 -0
- package/dist/index109.js +5 -0
- package/dist/index11.cjs +1 -1
- package/dist/index11.js +21 -14
- package/dist/index110.cjs +1 -0
- package/dist/index110.js +70 -0
- package/dist/index111.cjs +1 -0
- package/dist/index111.js +72 -0
- package/dist/index112.cjs +1 -0
- package/dist/index112.js +4 -0
- package/dist/index113.cjs +1 -0
- package/dist/index113.js +37 -0
- package/dist/index114.cjs +1 -0
- package/dist/index114.js +43 -0
- package/dist/index115.cjs +1 -0
- package/dist/index115.js +646 -0
- package/dist/index116.cjs +1 -0
- package/dist/index116.js +234 -0
- package/dist/index117.cjs +1 -0
- package/dist/index117.js +175 -0
- package/dist/index118.cjs +1 -0
- package/dist/index118.js +21 -0
- package/dist/index12.cjs +1 -1
- package/dist/index12.js +126 -173
- package/dist/index13.cjs +1 -1
- package/dist/index13.js +14 -93
- package/dist/index14.cjs +1 -16
- package/dist/index14.js +2 -114
- package/dist/index15.cjs +1 -1
- package/dist/index15.js +33 -31
- package/dist/index16.cjs +1 -1
- package/dist/index16.js +19 -31
- package/dist/index17.cjs +1 -1
- package/dist/index17.js +188 -17
- package/dist/index18.cjs +1 -1
- package/dist/index18.js +93 -7
- package/dist/index19.cjs +1 -1
- package/dist/index19.js +35 -20
- package/dist/index20.cjs +1 -1
- package/dist/index20.js +32 -22
- package/dist/index21.cjs +16 -1
- package/dist/index21.js +113 -8
- package/dist/index22.cjs +1 -1
- package/dist/index22.js +30 -31
- package/dist/index23.cjs +1 -1
- package/dist/index23.js +17 -26
- package/dist/index24.cjs +1 -1
- package/dist/index24.js +6 -22
- package/dist/index25.cjs +1 -1
- package/dist/index25.js +44 -50
- package/dist/index26.cjs +1 -1
- package/dist/index26.js +21 -12
- package/dist/index27.cjs +1 -1
- package/dist/index27.js +8 -24
- package/dist/index28.cjs +1 -1
- package/dist/index28.js +31 -75
- package/dist/index29.cjs +1 -1
- package/dist/index29.js +25 -22
- package/dist/index3.cjs +1 -1
- package/dist/index3.js +30 -7
- package/dist/index30.cjs +2 -1
- package/dist/index30.js +65 -7
- package/dist/index31.cjs +1 -1
- package/dist/index31.js +51 -32
- package/dist/index32.cjs +1 -1
- package/dist/index32.js +12 -15
- package/dist/index33.cjs +1 -1
- package/dist/index33.js +25 -2
- package/dist/index34.cjs +1 -1
- package/dist/index34.js +75 -8
- package/dist/index35.cjs +1 -1
- package/dist/index35.js +23 -20
- package/dist/index36.cjs +1 -1
- package/dist/index36.js +7 -12
- package/dist/index37.cjs +1 -1
- package/dist/index37.js +32 -34
- package/dist/index38.cjs +1 -2
- package/dist/index38.js +15 -59
- package/dist/index39.cjs +1 -1
- package/dist/index39.js +2 -2
- package/dist/index4.cjs +1 -1
- package/dist/index4.js +2 -2
- package/dist/index40.cjs +1 -1
- package/dist/index40.js +8 -4
- package/dist/index41.cjs +1 -1
- package/dist/index41.js +20 -11
- package/dist/index42.cjs +1 -1
- package/dist/index42.js +41 -3
- package/dist/index43.cjs +1 -1
- package/dist/index43.js +25 -21
- package/dist/index44.cjs +1 -1
- package/dist/index44.js +6 -12
- package/dist/index45.cjs +1 -1
- package/dist/index45.js +13 -55
- package/dist/index46.cjs +1 -1
- package/dist/index46.js +15 -6
- package/dist/index47.cjs +1 -1
- package/dist/index47.js +5 -21
- package/dist/index48.cjs +1 -1
- package/dist/index48.js +13 -11
- package/dist/index49.cjs +1 -1
- package/dist/index49.js +10 -3
- package/dist/index50.cjs +1 -1
- package/dist/index50.js +10 -9
- package/dist/index51.cjs +1 -1
- package/dist/index51.js +11 -19
- package/dist/index52.cjs +1 -1
- package/dist/index52.js +13 -6
- package/dist/index53.cjs +1 -1
- package/dist/index53.js +55 -8
- package/dist/index54.cjs +1 -1
- package/dist/index54.js +16 -104
- package/dist/index55.cjs +1 -1
- package/dist/index55.js +5 -28
- package/dist/index56.cjs +1 -1
- package/dist/index56.js +8 -18
- package/dist/index57.cjs +1 -1
- package/dist/index57.js +165 -32
- package/dist/index58.cjs +1 -0
- package/dist/index58.js +106 -0
- package/dist/index59.cjs +1 -0
- package/dist/index59.js +24 -0
- package/dist/index6.cjs +1 -1
- package/dist/index6.js +45 -22
- package/dist/index60.cjs +1 -0
- package/dist/index60.js +15 -0
- package/dist/index61.cjs +1 -0
- package/dist/index61.js +37 -0
- package/dist/index62.cjs +1 -0
- package/dist/index62.js +9 -0
- package/dist/index63.cjs +2 -0
- package/dist/index63.js +62 -0
- package/dist/index64.cjs +1 -0
- package/dist/index64.js +4 -0
- package/dist/index65.cjs +1 -0
- package/dist/index65.js +9 -0
- package/dist/index66.cjs +1 -0
- package/dist/index66.js +7 -0
- package/dist/index67.cjs +1 -0
- package/dist/index67.js +14 -0
- package/dist/index68.cjs +5 -0
- package/dist/index68.js +59 -0
- package/dist/index69.cjs +2 -0
- package/dist/index69.js +37 -0
- package/dist/index7.cjs +1 -1
- package/dist/index7.js +19 -104
- package/dist/index70.cjs +1 -0
- package/dist/index70.js +8 -0
- package/dist/index71.cjs +1 -0
- package/dist/index71.js +6 -0
- package/dist/index72.cjs +1 -0
- package/dist/index72.js +24 -0
- package/dist/index73.cjs +1 -0
- package/dist/index73.js +11 -0
- package/dist/index74.cjs +1 -0
- package/dist/index74.js +13 -0
- package/dist/index75.cjs +1 -0
- package/dist/index75.js +14 -0
- package/dist/index76.cjs +1 -0
- package/dist/index76.js +9 -0
- package/dist/index77.cjs +1 -0
- package/dist/index77.js +16 -0
- package/dist/index78.cjs +1 -0
- package/dist/index78.js +35 -0
- package/dist/index79.cjs +1 -0
- package/dist/index79.js +17 -0
- package/dist/index8.cjs +1 -1
- package/dist/index8.js +2 -15
- package/dist/index80.cjs +1 -0
- package/dist/index80.js +67 -0
- package/dist/index81.cjs +1 -0
- package/dist/index81.js +30 -0
- package/dist/index82.cjs +1 -0
- package/dist/index82.js +5 -0
- package/dist/index83.cjs +1 -0
- package/dist/index83.js +194 -0
- package/dist/index84.cjs +1 -0
- package/dist/index84.js +21 -0
- package/dist/index85.cjs +1 -0
- package/dist/index85.js +6 -0
- package/dist/index86.cjs +1 -0
- package/dist/index86.js +11 -0
- package/dist/index87.cjs +1 -0
- package/dist/index87.js +115 -0
- package/dist/index88.cjs +1 -0
- package/dist/index88.js +19 -0
- package/dist/index89.cjs +1 -0
- package/dist/index89.js +226 -0
- package/dist/index9.cjs +1 -1
- package/dist/index9.js +100 -2
- package/dist/index90.cjs +1 -0
- package/dist/index90.js +45 -0
- package/dist/index91.cjs +1 -0
- package/dist/index91.js +107 -0
- package/dist/index92.cjs +1 -0
- package/dist/index92.js +20 -0
- package/dist/index93.cjs +1 -0
- package/dist/index93.js +81 -0
- package/dist/index94.cjs +1 -0
- package/dist/index94.js +21 -0
- package/dist/index95.cjs +1 -0
- package/dist/index95.js +11 -0
- package/dist/index96.cjs +1 -0
- package/dist/index96.js +15 -0
- package/dist/index97.cjs +1 -0
- package/dist/index97.js +14 -0
- package/dist/index98.cjs +1 -0
- package/dist/index98.js +22 -0
- package/dist/index99.cjs +1 -0
- package/dist/index99.js +41 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/lib/auth/apikey/apikey.d.ts +12 -0
- package/dist/src/lib/auth/auth.types.d.ts +21 -8
- package/dist/src/lib/auth/index.d.ts +5 -1
- package/dist/src/lib/auth/passkey/passkey.d.ts +10 -0
- package/dist/src/lib/auth/passkey/passkey.types.d.ts +17 -0
- package/dist/src/lib/auth/passkey/passkeyLogin.d.ts +37 -0
- package/dist/src/lib/auth/{siwe.d.ts → siwe/siwe.d.ts} +5 -15
- package/dist/src/lib/digestKey/digestKey.d.ts +12 -0
- package/dist/src/lib/utils.d.ts +3 -0
- package/package.json +3 -1
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { AsyncResult, Result } from '@catalogfi/utils';
|
|
2
|
+
import { Url } from 'src/lib/url';
|
|
3
|
+
import { PasskeyToken } from './passkey.types';
|
|
4
|
+
import { IStore } from 'src/lib/store';
|
|
5
|
+
|
|
6
|
+
export declare class PasskeyLogin {
|
|
7
|
+
private url;
|
|
8
|
+
private store;
|
|
9
|
+
private storeKey;
|
|
10
|
+
private token;
|
|
11
|
+
private userName;
|
|
12
|
+
constructor(url: Url, store: IStore);
|
|
13
|
+
getPasskeyFromStore(): Result<PasskeyToken, string>;
|
|
14
|
+
/**
|
|
15
|
+
* Validates the username according to predefined rules.
|
|
16
|
+
* @param username The username to validate.
|
|
17
|
+
* @returns Result<string, string> - Ok if valid, Err with message if invalid.
|
|
18
|
+
*/
|
|
19
|
+
private validateUsername;
|
|
20
|
+
/**
|
|
21
|
+
* Handles user registration using WebAuthn passkeys.
|
|
22
|
+
* @param username The username to register.
|
|
23
|
+
* @returns AsyncResult<PasskeyToken, string> - Ok if successful, Err if failed.
|
|
24
|
+
*/
|
|
25
|
+
register(username: string): AsyncResult<PasskeyToken, string>;
|
|
26
|
+
/**
|
|
27
|
+
* Handles user login using WebAuthn passkeys.
|
|
28
|
+
* @param username The username to log in.
|
|
29
|
+
* @returns AsyncResult<PasskeyToken, string> - Ok if successful, Err if failed.
|
|
30
|
+
*/
|
|
31
|
+
login(username: string): AsyncResult<PasskeyToken, string>;
|
|
32
|
+
/**
|
|
33
|
+
* Handles conditional login (without username) for existing users.
|
|
34
|
+
* @returns AsyncResult<PasskeyToken, string> - Ok if successful, Err if failed.
|
|
35
|
+
*/
|
|
36
|
+
conditionalLogin(): AsyncResult<PasskeyToken, string>;
|
|
37
|
+
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { AuthHeader, IAuth,
|
|
1
|
+
import { AuthHeader, IAuth, SiweOpts } from '../auth.types';
|
|
2
2
|
import { AsyncResult, Result } from '@catalogfi/utils';
|
|
3
|
-
import { Url } from '
|
|
3
|
+
import { Url } from '../../url';
|
|
4
4
|
import { WalletClient } from 'viem';
|
|
5
|
+
import { DigestKey } from '../../digestKey/digestKey';
|
|
5
6
|
|
|
6
|
-
export declare class Siwe implements
|
|
7
|
+
export declare class Siwe implements IAuth {
|
|
7
8
|
private readonly API;
|
|
8
9
|
private readonly url;
|
|
9
10
|
private store;
|
|
@@ -11,20 +12,9 @@ export declare class Siwe implements ISiwe {
|
|
|
11
12
|
private readonly signingStatement;
|
|
12
13
|
private readonly domain;
|
|
13
14
|
constructor(url: Url, walletClient: WalletClient, opts?: SiweOpts);
|
|
15
|
+
static fromDigestKey(url: Url, digestKey: DigestKey, siweOpts?: SiweOpts): Siwe;
|
|
14
16
|
verifyToken(token: string, account: string): Result<boolean, string>;
|
|
15
17
|
getToken(): AsyncResult<string, string>;
|
|
16
18
|
private signStatement;
|
|
17
|
-
}
|
|
18
|
-
export declare const parseJwt: (token: string) => {
|
|
19
|
-
user_id: string;
|
|
20
|
-
exp: number;
|
|
21
|
-
} | undefined;
|
|
22
|
-
export declare class Auth implements IAuth {
|
|
23
|
-
siwe?: ISiwe;
|
|
24
|
-
apiKey?: string;
|
|
25
|
-
constructor(opts: {
|
|
26
|
-
siwe?: ISiwe;
|
|
27
|
-
apiKey?: string;
|
|
28
|
-
});
|
|
29
19
|
getAuthHeaders(): AsyncResult<AuthHeader, string>;
|
|
30
20
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare class DigestKey {
|
|
2
|
+
private _digestKey;
|
|
3
|
+
private _userId;
|
|
4
|
+
constructor(digestKey: string);
|
|
5
|
+
static from(digestKey: string): import('../result').Result<never, string> | import('../result').Result<DigestKey, never>;
|
|
6
|
+
static generateRandom(): import('../result').Result<never, string> | import('../result').Result<DigestKey, never>;
|
|
7
|
+
private static isValidDigestKey;
|
|
8
|
+
private static isValidPrivateKey;
|
|
9
|
+
private static generateRandomDigestKey;
|
|
10
|
+
get digestKey(): string;
|
|
11
|
+
get userId(): string;
|
|
12
|
+
}
|
package/dist/src/lib/utils.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export declare const with0x: (str: string) => `0x${string}`;
|
|
|
6
6
|
*/
|
|
7
7
|
export declare const Authorization: (authToken: string) => string;
|
|
8
8
|
export declare const sleep: (ms: number) => Promise<unknown>;
|
|
9
|
+
export declare const parseJwt: <T>(token: string) => T | undefined;
|
|
9
10
|
export declare enum Network {
|
|
10
11
|
MAINNET = "mainnet",
|
|
11
12
|
TESTNET = "testnet"
|
|
@@ -15,3 +16,5 @@ export declare enum Environment {
|
|
|
15
16
|
TESTNET = "testnet",
|
|
16
17
|
LOCALNET = "localnet"
|
|
17
18
|
}
|
|
19
|
+
export declare const add0x: (str: string) => `0x${string}`;
|
|
20
|
+
export declare function hexToU32Array(hexString: string, endian?: 'big' | 'little'): number[];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gardenfi/utils",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.6-beta.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "vite build",
|
|
@@ -35,6 +35,8 @@
|
|
|
35
35
|
},
|
|
36
36
|
"sideEffects": false,
|
|
37
37
|
"dependencies": {
|
|
38
|
+
"@simplewebauthn/browser": "^13.1.0",
|
|
39
|
+
"crypto-browserify": "^3.12.1",
|
|
38
40
|
"jwt-decode": "^4.0.0",
|
|
39
41
|
"viem": "^2.21.23"
|
|
40
42
|
}
|