@ordanetwork/sdk 1.2.0 → 2.0.0-beta.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/README.md +39 -34
- package/dist/browser/api/Balances.d.ts +32 -0
- package/dist/browser/api/Balances.d.ts.map +1 -0
- package/dist/browser/api/Balances.js +39 -0
- package/dist/browser/api/Balances.js.map +1 -0
- package/dist/browser/api/Prices.d.ts +26 -0
- package/dist/browser/api/Prices.d.ts.map +1 -0
- package/dist/browser/api/Prices.js +33 -0
- package/dist/browser/api/Prices.js.map +1 -0
- package/dist/browser/crypto/web-crypto.js.map +1 -1
- package/dist/browser/index.d.ts +8 -6
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/browser/index.js +9 -9
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/types/balances.d.ts +49 -0
- package/dist/browser/types/balances.d.ts.map +1 -0
- package/dist/browser/types/balances.js +2 -0
- package/dist/browser/types/balances.js.map +1 -0
- package/dist/browser/types/jwt.d.ts +0 -1
- package/dist/browser/types/jwt.d.ts.map +1 -1
- package/dist/browser/types/prices.d.ts +25 -0
- package/dist/browser/types/prices.d.ts.map +1 -0
- package/dist/browser/types/prices.js +2 -0
- package/dist/browser/types/prices.js.map +1 -0
- package/dist/cjs/api/Balances.d.ts +32 -0
- package/dist/cjs/api/Balances.d.ts.map +1 -0
- package/dist/cjs/api/Balances.js +43 -0
- package/dist/cjs/api/Balances.js.map +1 -0
- package/dist/cjs/api/Prices.d.ts +26 -0
- package/dist/cjs/api/Prices.d.ts.map +1 -0
- package/dist/cjs/api/Prices.js +37 -0
- package/dist/cjs/api/Prices.js.map +1 -0
- package/dist/cjs/crypto/web-crypto.js.map +1 -1
- package/dist/cjs/index.d.ts +8 -6
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +12 -19
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/balances.d.ts +49 -0
- package/dist/cjs/types/balances.d.ts.map +1 -0
- package/dist/cjs/types/balances.js +3 -0
- package/dist/cjs/types/balances.js.map +1 -0
- package/dist/cjs/types/jwt.d.ts +0 -1
- package/dist/cjs/types/jwt.d.ts.map +1 -1
- package/dist/cjs/types/prices.d.ts +25 -0
- package/dist/cjs/types/prices.d.ts.map +1 -0
- package/dist/cjs/{smart-wallets/types.js → types/prices.js} +1 -1
- package/dist/cjs/types/prices.js.map +1 -0
- package/dist/esm/api/Balances.d.ts +32 -0
- package/dist/esm/api/Balances.d.ts.map +1 -0
- package/dist/esm/api/Balances.js +39 -0
- package/dist/esm/api/Balances.js.map +1 -0
- package/dist/esm/api/Prices.d.ts +26 -0
- package/dist/esm/api/Prices.d.ts.map +1 -0
- package/dist/esm/api/Prices.js +33 -0
- package/dist/esm/api/Prices.js.map +1 -0
- package/dist/esm/crypto/web-crypto.js.map +1 -1
- package/dist/esm/index.d.ts +8 -6
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +9 -9
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/balances.d.ts +49 -0
- package/dist/esm/types/balances.d.ts.map +1 -0
- package/dist/esm/types/balances.js +2 -0
- package/dist/esm/types/balances.js.map +1 -0
- package/dist/esm/types/jwt.d.ts +0 -1
- package/dist/esm/types/jwt.d.ts.map +1 -1
- package/dist/esm/types/prices.d.ts +25 -0
- package/dist/esm/types/prices.d.ts.map +1 -0
- package/dist/esm/types/prices.js +2 -0
- package/dist/esm/types/prices.js.map +1 -0
- package/dist/types/api/Balances.d.ts +32 -0
- package/dist/types/api/Balances.d.ts.map +1 -0
- package/dist/types/api/Prices.d.ts +26 -0
- package/dist/types/api/Prices.d.ts.map +1 -0
- package/dist/types/index.d.ts +8 -6
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/balances.d.ts +49 -0
- package/dist/types/types/balances.d.ts.map +1 -0
- package/dist/types/types/jwt.d.ts +0 -1
- package/dist/types/types/jwt.d.ts.map +1 -1
- package/dist/types/types/prices.d.ts +25 -0
- package/dist/types/types/prices.d.ts.map +1 -0
- package/package.json +2 -10
- package/dist/browser/smart-wallets/LocalSigner.d.ts +0 -19
- package/dist/browser/smart-wallets/LocalSigner.d.ts.map +0 -1
- package/dist/browser/smart-wallets/LocalSigner.js +0 -57
- package/dist/browser/smart-wallets/LocalSigner.js.map +0 -1
- package/dist/browser/smart-wallets/SmartWalletClient.d.ts +0 -19
- package/dist/browser/smart-wallets/SmartWalletClient.d.ts.map +0 -1
- package/dist/browser/smart-wallets/SmartWalletClient.js +0 -180
- package/dist/browser/smart-wallets/SmartWalletClient.js.map +0 -1
- package/dist/browser/smart-wallets/SmartWalletManager.d.ts +0 -17
- package/dist/browser/smart-wallets/SmartWalletManager.d.ts.map +0 -1
- package/dist/browser/smart-wallets/SmartWalletManager.js +0 -59
- package/dist/browser/smart-wallets/SmartWalletManager.js.map +0 -1
- package/dist/browser/smart-wallets/chains.d.ts +0 -11
- package/dist/browser/smart-wallets/chains.d.ts.map +0 -1
- package/dist/browser/smart-wallets/chains.js +0 -30
- package/dist/browser/smart-wallets/chains.js.map +0 -1
- package/dist/browser/smart-wallets/errors.d.ts +0 -23
- package/dist/browser/smart-wallets/errors.d.ts.map +0 -1
- package/dist/browser/smart-wallets/errors.js +0 -44
- package/dist/browser/smart-wallets/errors.js.map +0 -1
- package/dist/browser/smart-wallets/index.d.ts +0 -11
- package/dist/browser/smart-wallets/index.d.ts.map +0 -1
- package/dist/browser/smart-wallets/index.js +0 -13
- package/dist/browser/smart-wallets/index.js.map +0 -1
- package/dist/browser/smart-wallets/types.d.ts +0 -47
- package/dist/browser/smart-wallets/types.d.ts.map +0 -1
- package/dist/browser/smart-wallets/types.js +0 -2
- package/dist/browser/smart-wallets/types.js.map +0 -1
- package/dist/browser/smart-wallets/utils.d.ts +0 -22
- package/dist/browser/smart-wallets/utils.d.ts.map +0 -1
- package/dist/browser/smart-wallets/utils.js +0 -57
- package/dist/browser/smart-wallets/utils.js.map +0 -1
- package/dist/cjs/smart-wallets/LocalSigner.d.ts +0 -19
- package/dist/cjs/smart-wallets/LocalSigner.d.ts.map +0 -1
- package/dist/cjs/smart-wallets/LocalSigner.js +0 -61
- package/dist/cjs/smart-wallets/LocalSigner.js.map +0 -1
- package/dist/cjs/smart-wallets/SmartWalletClient.d.ts +0 -19
- package/dist/cjs/smart-wallets/SmartWalletClient.d.ts.map +0 -1
- package/dist/cjs/smart-wallets/SmartWalletClient.js +0 -184
- package/dist/cjs/smart-wallets/SmartWalletClient.js.map +0 -1
- package/dist/cjs/smart-wallets/SmartWalletManager.d.ts +0 -17
- package/dist/cjs/smart-wallets/SmartWalletManager.d.ts.map +0 -1
- package/dist/cjs/smart-wallets/SmartWalletManager.js +0 -63
- package/dist/cjs/smart-wallets/SmartWalletManager.js.map +0 -1
- package/dist/cjs/smart-wallets/chains.d.ts +0 -11
- package/dist/cjs/smart-wallets/chains.d.ts.map +0 -1
- package/dist/cjs/smart-wallets/chains.js +0 -36
- package/dist/cjs/smart-wallets/chains.js.map +0 -1
- package/dist/cjs/smart-wallets/errors.d.ts +0 -23
- package/dist/cjs/smart-wallets/errors.d.ts.map +0 -1
- package/dist/cjs/smart-wallets/errors.js +0 -54
- package/dist/cjs/smart-wallets/errors.js.map +0 -1
- package/dist/cjs/smart-wallets/index.d.ts +0 -11
- package/dist/cjs/smart-wallets/index.d.ts.map +0 -1
- package/dist/cjs/smart-wallets/index.js +0 -36
- package/dist/cjs/smart-wallets/index.js.map +0 -1
- package/dist/cjs/smart-wallets/types.d.ts +0 -47
- package/dist/cjs/smart-wallets/types.d.ts.map +0 -1
- package/dist/cjs/smart-wallets/types.js.map +0 -1
- package/dist/cjs/smart-wallets/utils.d.ts +0 -22
- package/dist/cjs/smart-wallets/utils.d.ts.map +0 -1
- package/dist/cjs/smart-wallets/utils.js +0 -64
- package/dist/cjs/smart-wallets/utils.js.map +0 -1
- package/dist/esm/smart-wallets/LocalSigner.d.ts +0 -19
- package/dist/esm/smart-wallets/LocalSigner.d.ts.map +0 -1
- package/dist/esm/smart-wallets/LocalSigner.js +0 -57
- package/dist/esm/smart-wallets/LocalSigner.js.map +0 -1
- package/dist/esm/smart-wallets/SmartWalletClient.d.ts +0 -19
- package/dist/esm/smart-wallets/SmartWalletClient.d.ts.map +0 -1
- package/dist/esm/smart-wallets/SmartWalletClient.js +0 -180
- package/dist/esm/smart-wallets/SmartWalletClient.js.map +0 -1
- package/dist/esm/smart-wallets/SmartWalletManager.d.ts +0 -17
- package/dist/esm/smart-wallets/SmartWalletManager.d.ts.map +0 -1
- package/dist/esm/smart-wallets/SmartWalletManager.js +0 -59
- package/dist/esm/smart-wallets/SmartWalletManager.js.map +0 -1
- package/dist/esm/smart-wallets/chains.d.ts +0 -11
- package/dist/esm/smart-wallets/chains.d.ts.map +0 -1
- package/dist/esm/smart-wallets/chains.js +0 -30
- package/dist/esm/smart-wallets/chains.js.map +0 -1
- package/dist/esm/smart-wallets/errors.d.ts +0 -23
- package/dist/esm/smart-wallets/errors.d.ts.map +0 -1
- package/dist/esm/smart-wallets/errors.js +0 -44
- package/dist/esm/smart-wallets/errors.js.map +0 -1
- package/dist/esm/smart-wallets/index.d.ts +0 -11
- package/dist/esm/smart-wallets/index.d.ts.map +0 -1
- package/dist/esm/smart-wallets/index.js +0 -13
- package/dist/esm/smart-wallets/index.js.map +0 -1
- package/dist/esm/smart-wallets/types.d.ts +0 -47
- package/dist/esm/smart-wallets/types.d.ts.map +0 -1
- package/dist/esm/smart-wallets/types.js +0 -2
- package/dist/esm/smart-wallets/types.js.map +0 -1
- package/dist/esm/smart-wallets/utils.d.ts +0 -22
- package/dist/esm/smart-wallets/utils.d.ts.map +0 -1
- package/dist/esm/smart-wallets/utils.js +0 -57
- package/dist/esm/smart-wallets/utils.js.map +0 -1
- package/dist/types/smart-wallets/LocalSigner.d.ts +0 -19
- package/dist/types/smart-wallets/LocalSigner.d.ts.map +0 -1
- package/dist/types/smart-wallets/SmartWalletClient.d.ts +0 -19
- package/dist/types/smart-wallets/SmartWalletClient.d.ts.map +0 -1
- package/dist/types/smart-wallets/SmartWalletManager.d.ts +0 -17
- package/dist/types/smart-wallets/SmartWalletManager.d.ts.map +0 -1
- package/dist/types/smart-wallets/chains.d.ts +0 -11
- package/dist/types/smart-wallets/chains.d.ts.map +0 -1
- package/dist/types/smart-wallets/errors.d.ts +0 -23
- package/dist/types/smart-wallets/errors.d.ts.map +0 -1
- package/dist/types/smart-wallets/index.d.ts +0 -11
- package/dist/types/smart-wallets/index.d.ts.map +0 -1
- package/dist/types/smart-wallets/types.d.ts +0 -47
- package/dist/types/smart-wallets/types.d.ts.map +0 -1
- package/dist/types/smart-wallets/utils.d.ts +0 -22
- package/dist/types/smart-wallets/utils.d.ts.map +0 -1
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LocalSigner = void 0;
|
|
4
|
-
const core_1 = require("@aa-sdk/core");
|
|
5
|
-
const accounts_1 = require("viem/accounts");
|
|
6
|
-
const errors_1 = require("./errors");
|
|
7
|
-
class LocalSigner {
|
|
8
|
-
constructor(privateKey, entityType) {
|
|
9
|
-
if (!LocalSigner.isValidPrivateKey(privateKey)) {
|
|
10
|
-
throw new errors_1.InvalidPrivateKeyError();
|
|
11
|
-
}
|
|
12
|
-
this.privateKey = privateKey;
|
|
13
|
-
this.entityType = entityType;
|
|
14
|
-
this.signer = core_1.LocalAccountSigner.privateKeyToAccountSigner(privateKey);
|
|
15
|
-
}
|
|
16
|
-
getSigner() {
|
|
17
|
-
return this.signer;
|
|
18
|
-
}
|
|
19
|
-
getEntityType() {
|
|
20
|
-
return this.entityType;
|
|
21
|
-
}
|
|
22
|
-
async getAddress() {
|
|
23
|
-
const account = (0, accounts_1.privateKeyToAccount)(this.privateKey);
|
|
24
|
-
return account.address;
|
|
25
|
-
}
|
|
26
|
-
static isValidPrivateKey(privateKey) {
|
|
27
|
-
if (!privateKey || typeof privateKey !== 'string') {
|
|
28
|
-
return false;
|
|
29
|
-
}
|
|
30
|
-
// Check if it starts with 0x and has correct length (64 hex chars + 0x = 66)
|
|
31
|
-
if (!/^0x[0-9a-fA-F]{64}$/.test(privateKey)) {
|
|
32
|
-
return false;
|
|
33
|
-
}
|
|
34
|
-
try {
|
|
35
|
-
(0, accounts_1.privateKeyToAccount)(privateKey);
|
|
36
|
-
return true;
|
|
37
|
-
}
|
|
38
|
-
catch {
|
|
39
|
-
return false;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
static async generateNewSigner() {
|
|
43
|
-
const privateKey = (0, accounts_1.generatePrivateKey)();
|
|
44
|
-
const signer = core_1.LocalAccountSigner.privateKeyToAccountSigner(privateKey);
|
|
45
|
-
const account = (0, accounts_1.privateKeyToAccount)(privateKey);
|
|
46
|
-
return {
|
|
47
|
-
signer,
|
|
48
|
-
privateKey,
|
|
49
|
-
address: account.address
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
static async getAddressFromPrivateKey(privateKey) {
|
|
53
|
-
if (!LocalSigner.isValidPrivateKey(privateKey)) {
|
|
54
|
-
throw new errors_1.InvalidPrivateKeyError();
|
|
55
|
-
}
|
|
56
|
-
const account = (0, accounts_1.privateKeyToAccount)(privateKey);
|
|
57
|
-
return account.address;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
exports.LocalSigner = LocalSigner;
|
|
61
|
-
//# sourceMappingURL=LocalSigner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LocalSigner.js","sourceRoot":"","sources":["../../../src/smart-wallets/LocalSigner.ts"],"names":[],"mappings":";;;AAAA,uCAA2E;AAC3E,4CAAwE;AACxE,qCAAkD;AAGlD,MAAa,WAAW;IAKtB,YAAY,UAAkB,EAAE,UAAsB;QACpD,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,+BAAsB,EAAE,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,yBAAkB,CAAC,yBAAyB,CAAC,UAA2B,CAAC,CAAC;IAC1F,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,OAAO,GAAG,IAAA,8BAAmB,EAAC,IAAI,CAAC,UAA2B,CAAC,CAAC;QACtE,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,UAAkB;QACzC,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAClD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,6EAA6E;QAC7E,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,IAAA,8BAAmB,EAAC,UAA2B,CAAC,CAAC;YACjD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,iBAAiB;QAK5B,MAAM,UAAU,GAAG,IAAA,6BAAkB,GAAE,CAAC;QACxC,MAAM,MAAM,GAAG,yBAAkB,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,IAAA,8BAAmB,EAAC,UAAU,CAAC,CAAC;QAEhD,OAAO;YACL,MAAM;YACN,UAAU;YACV,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,UAAkB;QACtD,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,+BAAsB,EAAE,CAAC;QACrC,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,8BAAmB,EAAC,UAA2B,CAAC,CAAC;QACjE,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;CACF;AAtED,kCAsEC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { SmartWalletConfig, SmartWalletInterface, SmartWalletState, UserOperationRequest, TransactionResult } from './types';
|
|
2
|
-
export declare class SmartWalletClient implements SmartWalletInterface {
|
|
3
|
-
private client?;
|
|
4
|
-
private publicClient?;
|
|
5
|
-
private config;
|
|
6
|
-
private state;
|
|
7
|
-
private signer;
|
|
8
|
-
constructor(config: SmartWalletConfig);
|
|
9
|
-
connect(): Promise<void>;
|
|
10
|
-
disconnect(): void;
|
|
11
|
-
sendUserOperation(request: UserOperationRequest): Promise<TransactionResult>;
|
|
12
|
-
sendBatchUserOperation(requests: UserOperationRequest[]): Promise<TransactionResult>;
|
|
13
|
-
getAddress(): string;
|
|
14
|
-
isDeployed(): Promise<boolean>;
|
|
15
|
-
getState(): SmartWalletState;
|
|
16
|
-
private getTransport;
|
|
17
|
-
waitForUserOperationReceipt(hash: string, timeout?: number): Promise<TransactionResult>;
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=SmartWalletClient.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SmartWalletClient.d.ts","sourceRoot":"","sources":["../../../src/smart-wallets/SmartWalletClient.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAMjB,qBAAa,iBAAkB,YAAW,oBAAoB;IAC5D,OAAO,CAAC,MAAM,CAAC,CAAqB;IACpC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,MAAM,CAAc;gBAEhB,MAAM,EAAE,iBAAiB;IAc/B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA+C9B,UAAU,IAAI,IAAI;IAOZ,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA4B5E,sBAAsB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgC1F,UAAU,IAAI,MAAM;IAOd,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAiBpC,QAAQ,IAAI,gBAAgB;IAI5B,OAAO,CAAC,YAAY;IAmBd,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,SAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC;CA+B7F"}
|
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SmartWalletClient = void 0;
|
|
4
|
-
const smart_contracts_1 = require("@account-kit/smart-contracts");
|
|
5
|
-
const infra_1 = require("@account-kit/infra");
|
|
6
|
-
const viem_1 = require("viem");
|
|
7
|
-
const LocalSigner_1 = require("./LocalSigner");
|
|
8
|
-
const chains_1 = require("./chains");
|
|
9
|
-
const utils_1 = require("./utils");
|
|
10
|
-
const errors_1 = require("./errors");
|
|
11
|
-
class SmartWalletClient {
|
|
12
|
-
constructor(config) {
|
|
13
|
-
if (!(0, chains_1.isSupportedChain)(config.chain)) {
|
|
14
|
-
throw new errors_1.ChainNotSupportedError(config.chain);
|
|
15
|
-
}
|
|
16
|
-
this.config = config;
|
|
17
|
-
this.signer = new LocalSigner_1.LocalSigner(config.credentials.privateKey, config.credentials.entityType);
|
|
18
|
-
this.state = {
|
|
19
|
-
isConnected: false,
|
|
20
|
-
chainId: config.chain,
|
|
21
|
-
address: config.credentials.address
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
async connect() {
|
|
25
|
-
try {
|
|
26
|
-
const chain = (0, chains_1.getChainConfig)(this.config.chain);
|
|
27
|
-
if (!chain) {
|
|
28
|
-
throw new errors_1.ChainNotSupportedError(this.config.chain);
|
|
29
|
-
}
|
|
30
|
-
// validate address matches private key (skip if address is empty for new wallet generation)
|
|
31
|
-
if (this.config.credentials.address && this.config.credentials.address !== '') {
|
|
32
|
-
const derivedAddress = await this.signer.getAddress();
|
|
33
|
-
if (derivedAddress.toLowerCase() !== this.config.credentials.address.toLowerCase()) {
|
|
34
|
-
throw new errors_1.ConnectionError(`Private key address mismatch. Expected: ${this.config.credentials.address}, got: ${derivedAddress}`);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
const transport = this.getTransport();
|
|
38
|
-
const signer = this.signer.getSigner();
|
|
39
|
-
// TODO: Add support for Light Account when credentials.type === 'LIGHT_ACCOUNT'
|
|
40
|
-
// TODO: Add support for '7702' mode variant
|
|
41
|
-
this.client = await (0, smart_contracts_1.createModularAccountV2Client)({
|
|
42
|
-
chain,
|
|
43
|
-
transport,
|
|
44
|
-
signer,
|
|
45
|
-
mode: 'default' // default for modular acc v2
|
|
46
|
-
});
|
|
47
|
-
this.publicClient = (0, viem_1.createPublicClient)({
|
|
48
|
-
chain,
|
|
49
|
-
transport: (0, viem_1.http)(chain.rpcUrls?.default?.http?.[0] || this.config.rpcUrl)
|
|
50
|
-
});
|
|
51
|
-
this.state.isConnected = true;
|
|
52
|
-
this.state.address = this.client.account?.address || this.config.credentials.address;
|
|
53
|
-
this.state.isDeployed = await this.isDeployed(); // check if account is deployed
|
|
54
|
-
}
|
|
55
|
-
catch (error) {
|
|
56
|
-
this.state.isConnected = false;
|
|
57
|
-
throw new errors_1.ConnectionError(error instanceof Error ? error.message : 'Failed to connect to smart wallet', error);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
disconnect() {
|
|
61
|
-
this.client = undefined;
|
|
62
|
-
this.publicClient = undefined;
|
|
63
|
-
this.state.isConnected = false;
|
|
64
|
-
this.state.isDeployed = undefined;
|
|
65
|
-
}
|
|
66
|
-
async sendUserOperation(request) {
|
|
67
|
-
if (!this.client || !this.client.account) {
|
|
68
|
-
throw new errors_1.ConnectionError('Client not connected. Call connect() first.');
|
|
69
|
-
}
|
|
70
|
-
try {
|
|
71
|
-
const result = await this.client.sendUserOperation({
|
|
72
|
-
uo: {
|
|
73
|
-
target: (0, utils_1.toAddress)(request.target),
|
|
74
|
-
data: (0, utils_1.toHex)(request.data),
|
|
75
|
-
value: (0, utils_1.toBigInt)(request.value)
|
|
76
|
-
},
|
|
77
|
-
account: this.client.account
|
|
78
|
-
});
|
|
79
|
-
return {
|
|
80
|
-
hash: result.hash,
|
|
81
|
-
sender: result.request.sender,
|
|
82
|
-
status: 'pending'
|
|
83
|
-
};
|
|
84
|
-
}
|
|
85
|
-
catch (error) {
|
|
86
|
-
throw new errors_1.UserOperationError(error instanceof Error ? error.message : 'Failed to send user operation', error);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
async sendBatchUserOperation(requests) {
|
|
90
|
-
if (!this.client || !this.client.account) {
|
|
91
|
-
throw new errors_1.ConnectionError('Client not connected. Call connect() first.');
|
|
92
|
-
}
|
|
93
|
-
try {
|
|
94
|
-
// convert requests to the format expected by the client
|
|
95
|
-
// the uo field accepts arrays directly for batch operations
|
|
96
|
-
const operations = requests.map((req) => ({
|
|
97
|
-
target: (0, utils_1.toAddress)(req.target),
|
|
98
|
-
data: (0, utils_1.toHex)(req.data),
|
|
99
|
-
value: (0, utils_1.toBigInt)(req.value)
|
|
100
|
-
}));
|
|
101
|
-
const result = await this.client.sendUserOperation({
|
|
102
|
-
uo: operations,
|
|
103
|
-
account: this.client.account
|
|
104
|
-
});
|
|
105
|
-
return {
|
|
106
|
-
hash: result.hash,
|
|
107
|
-
sender: result.request.sender,
|
|
108
|
-
status: 'pending'
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
|
-
catch (error) {
|
|
112
|
-
throw new errors_1.UserOperationError(error instanceof Error ? error.message : 'Failed to send batch user operation', error);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
getAddress() {
|
|
116
|
-
if (!this.state.address) {
|
|
117
|
-
throw new errors_1.ConnectionError('Address not available. Call connect() first.');
|
|
118
|
-
}
|
|
119
|
-
return this.state.address;
|
|
120
|
-
}
|
|
121
|
-
async isDeployed() {
|
|
122
|
-
if (!this.client || !this.client.account || !this.publicClient) {
|
|
123
|
-
throw new errors_1.ConnectionError('Client not connected. Call connect() first.');
|
|
124
|
-
}
|
|
125
|
-
try {
|
|
126
|
-
const code = await this.publicClient.getCode({
|
|
127
|
-
address: (0, utils_1.toAddress)(this.client.account.address)
|
|
128
|
-
});
|
|
129
|
-
return code !== undefined && code !== '0x';
|
|
130
|
-
}
|
|
131
|
-
catch (error) {
|
|
132
|
-
// Return false if unable to check deployment status
|
|
133
|
-
return false;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
getState() {
|
|
137
|
-
return { ...this.state };
|
|
138
|
-
}
|
|
139
|
-
getTransport() {
|
|
140
|
-
if (this.config.transport === 'alchemy' && this.config.alchemyApiKey) {
|
|
141
|
-
return (0, infra_1.alchemy)({ apiKey: this.config.alchemyApiKey });
|
|
142
|
-
}
|
|
143
|
-
// default to HTTP transport
|
|
144
|
-
if (this.config.rpcUrl) {
|
|
145
|
-
return (0, viem_1.http)(this.config.rpcUrl);
|
|
146
|
-
}
|
|
147
|
-
// use chain's default RPC if available
|
|
148
|
-
const chain = (0, chains_1.getChainConfig)(this.config.chain);
|
|
149
|
-
if (chain?.rpcUrls?.default?.http?.[0]) {
|
|
150
|
-
return (0, viem_1.http)(chain.rpcUrls.default.http[0]);
|
|
151
|
-
}
|
|
152
|
-
throw new errors_1.ConnectionError('No valid transport configuration provided');
|
|
153
|
-
}
|
|
154
|
-
async waitForUserOperationReceipt(hash, timeout = 60000) {
|
|
155
|
-
if (!this.client || !this.client.account || !this.publicClient) {
|
|
156
|
-
throw new errors_1.ConnectionError('Client not connected. Call connect() first.');
|
|
157
|
-
}
|
|
158
|
-
const startTime = Date.now();
|
|
159
|
-
const pollInterval = 5000;
|
|
160
|
-
const maxPollTime = 10000; // 10 seconds per attempt
|
|
161
|
-
while (Date.now() - startTime < timeout) {
|
|
162
|
-
try {
|
|
163
|
-
const receipt = await this.publicClient.waitForTransactionReceipt({
|
|
164
|
-
hash: (0, utils_1.toHex)(hash),
|
|
165
|
-
timeout: maxPollTime
|
|
166
|
-
});
|
|
167
|
-
return {
|
|
168
|
-
hash,
|
|
169
|
-
sender: this.client.account.address,
|
|
170
|
-
status: receipt.status === 'success' ? 'success' : 'failed'
|
|
171
|
-
};
|
|
172
|
-
}
|
|
173
|
-
catch (error) {
|
|
174
|
-
// continue polling if not found yet
|
|
175
|
-
if (Date.now() - startTime < timeout) {
|
|
176
|
-
await new Promise((resolve) => setTimeout(resolve, pollInterval));
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
throw new errors_1.UserOperationError(`Timeout waiting for user operation receipt: ${hash}`);
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
exports.SmartWalletClient = SmartWalletClient;
|
|
184
|
-
//# sourceMappingURL=SmartWalletClient.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SmartWalletClient.js","sourceRoot":"","sources":["../../../src/smart-wallets/SmartWalletClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { SmartWalletClient } from './SmartWalletClient';
|
|
2
|
-
export interface SmartWalletManagerConfig {
|
|
3
|
-
alchemyApiKey?: string;
|
|
4
|
-
}
|
|
5
|
-
export declare class SmartWalletManager {
|
|
6
|
-
private config;
|
|
7
|
-
constructor(config?: SmartWalletManagerConfig);
|
|
8
|
-
createProjectWallet(projectId: string, privateKey: string, chainId: number, accountType?: 'MODULAR_ACCOUNT_V2' | 'LIGHT_ACCOUNT'): Promise<SmartWalletClient>;
|
|
9
|
-
createRecipientWallet(recipientId: string, privateKey: string, chainId: number, accountType?: 'MODULAR_ACCOUNT_V2' | 'LIGHT_ACCOUNT'): Promise<SmartWalletClient>;
|
|
10
|
-
validatePrivateKey(privateKey: string): boolean;
|
|
11
|
-
generatePrivateKey(): Promise<{
|
|
12
|
-
privateKey: string;
|
|
13
|
-
address: string;
|
|
14
|
-
}>;
|
|
15
|
-
getAddressFromPrivateKey(privateKey: string): Promise<string>;
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=SmartWalletManager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SmartWalletManager.d.ts","sourceRoot":"","sources":["../../../src/smart-wallets/SmartWalletManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIxD,MAAM,WAAW,wBAAwB;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAA2B;gBAE7B,MAAM,GAAE,wBAA6B;IAI3C,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,oBAAoB,GAAG,eAAsC,GACzE,OAAO,CAAC,iBAAiB,CAAC;IAsBvB,qBAAqB,CACzB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,oBAAoB,GAAG,eAAsC,GACzE,OAAO,CAAC,iBAAiB,CAAC;IAsB7B,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIzC,kBAAkB,IAAI,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAQtE,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAGpE"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SmartWalletManager = void 0;
|
|
4
|
-
const SmartWalletClient_1 = require("./SmartWalletClient");
|
|
5
|
-
const LocalSigner_1 = require("./LocalSigner");
|
|
6
|
-
class SmartWalletManager {
|
|
7
|
-
constructor(config = {}) {
|
|
8
|
-
this.config = config;
|
|
9
|
-
}
|
|
10
|
-
async createProjectWallet(projectId, privateKey, chainId, accountType = 'MODULAR_ACCOUNT_V2') {
|
|
11
|
-
const address = await LocalSigner_1.LocalSigner.getAddressFromPrivateKey(privateKey);
|
|
12
|
-
const config = {
|
|
13
|
-
credentials: {
|
|
14
|
-
address,
|
|
15
|
-
privateKey,
|
|
16
|
-
type: accountType,
|
|
17
|
-
entityType: 'project',
|
|
18
|
-
entityId: projectId,
|
|
19
|
-
chainId
|
|
20
|
-
},
|
|
21
|
-
chain: chainId,
|
|
22
|
-
transport: this.config.alchemyApiKey ? 'alchemy' : 'http',
|
|
23
|
-
alchemyApiKey: this.config.alchemyApiKey
|
|
24
|
-
};
|
|
25
|
-
const wallet = new SmartWalletClient_1.SmartWalletClient(config);
|
|
26
|
-
await wallet.connect();
|
|
27
|
-
return wallet;
|
|
28
|
-
}
|
|
29
|
-
async createRecipientWallet(recipientId, privateKey, chainId, accountType = 'MODULAR_ACCOUNT_V2') {
|
|
30
|
-
const address = await LocalSigner_1.LocalSigner.getAddressFromPrivateKey(privateKey);
|
|
31
|
-
const config = {
|
|
32
|
-
credentials: {
|
|
33
|
-
address,
|
|
34
|
-
privateKey,
|
|
35
|
-
type: accountType,
|
|
36
|
-
entityType: 'recipient',
|
|
37
|
-
entityId: recipientId,
|
|
38
|
-
chainId
|
|
39
|
-
},
|
|
40
|
-
chain: chainId,
|
|
41
|
-
transport: this.config.alchemyApiKey ? 'alchemy' : 'http',
|
|
42
|
-
alchemyApiKey: this.config.alchemyApiKey
|
|
43
|
-
};
|
|
44
|
-
const wallet = new SmartWalletClient_1.SmartWalletClient(config);
|
|
45
|
-
await wallet.connect();
|
|
46
|
-
return wallet;
|
|
47
|
-
}
|
|
48
|
-
validatePrivateKey(privateKey) {
|
|
49
|
-
return LocalSigner_1.LocalSigner.isValidPrivateKey(privateKey);
|
|
50
|
-
}
|
|
51
|
-
async generatePrivateKey() {
|
|
52
|
-
const result = await LocalSigner_1.LocalSigner.generateNewSigner();
|
|
53
|
-
return {
|
|
54
|
-
privateKey: result.privateKey,
|
|
55
|
-
address: result.address
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
async getAddressFromPrivateKey(privateKey) {
|
|
59
|
-
return LocalSigner_1.LocalSigner.getAddressFromPrivateKey(privateKey);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
exports.SmartWalletManager = SmartWalletManager;
|
|
63
|
-
//# sourceMappingURL=SmartWalletManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SmartWalletManager.js","sourceRoot":"","sources":["../../../src/smart-wallets/SmartWalletManager.ts"],"names":[],"mappings":";;;AAAA,2DAAwD;AACxD,+CAA4C;AAO5C,MAAa,kBAAkB;IAG7B,YAAY,SAAmC,EAAE;QAC/C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,SAAiB,EACjB,UAAkB,EAClB,OAAe,EACf,cAAsD,oBAAoB;QAE1E,MAAM,OAAO,GAAG,MAAM,yBAAW,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;QAEvE,MAAM,MAAM,GAAsB;YAChC,WAAW,EAAE;gBACX,OAAO;gBACP,UAAU;gBACV,IAAI,EAAE,WAAW;gBACjB,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,SAAS;gBACnB,OAAO;aACR;YACD,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;YACzD,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;SACzC,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,qCAAiB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,WAAmB,EACnB,UAAkB,EAClB,OAAe,EACf,cAAsD,oBAAoB;QAE1E,MAAM,OAAO,GAAG,MAAM,yBAAW,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;QAEvE,MAAM,MAAM,GAAsB;YAChC,WAAW,EAAE;gBACX,OAAO;gBACP,UAAU;gBACV,IAAI,EAAE,WAAW;gBACjB,UAAU,EAAE,WAAW;gBACvB,QAAQ,EAAE,WAAW;gBACrB,OAAO;aACR;YACD,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;YACzD,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;SACzC,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,qCAAiB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kBAAkB,CAAC,UAAkB;QACnC,OAAO,yBAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,MAAM,GAAG,MAAM,yBAAW,CAAC,iBAAiB,EAAE,CAAC;QACrD,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,UAAkB;QAC/C,OAAO,yBAAW,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;CACF;AA5ED,gDA4EC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Chain } from 'viem';
|
|
2
|
-
/**
|
|
3
|
-
* Supported chains for smart wallets
|
|
4
|
-
*
|
|
5
|
-
* NOTE: The orda backend API only supports mainnet chains (1, 137, 10, 42161, 8453).
|
|
6
|
-
*/
|
|
7
|
-
export declare const SUPPORTED_CHAINS: Record<number, Chain>;
|
|
8
|
-
export declare function getChainConfig(chainId: number): Chain | undefined;
|
|
9
|
-
export declare function isSupportedChain(chainId: number): boolean;
|
|
10
|
-
export declare function getSupportedChainIds(): number[];
|
|
11
|
-
//# sourceMappingURL=chains.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/smart-wallets/chains.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAclD,CAAC;AAEF,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAEjE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAE/C"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SUPPORTED_CHAINS = void 0;
|
|
4
|
-
exports.getChainConfig = getChainConfig;
|
|
5
|
-
exports.isSupportedChain = isSupportedChain;
|
|
6
|
-
exports.getSupportedChainIds = getSupportedChainIds;
|
|
7
|
-
const infra_1 = require("@account-kit/infra");
|
|
8
|
-
/**
|
|
9
|
-
* Supported chains for smart wallets
|
|
10
|
-
*
|
|
11
|
-
* NOTE: The orda backend API only supports mainnet chains (1, 137, 10, 42161, 8453).
|
|
12
|
-
*/
|
|
13
|
-
exports.SUPPORTED_CHAINS = {
|
|
14
|
-
// Mainnet chains
|
|
15
|
-
1: infra_1.mainnet, // Ethereum
|
|
16
|
-
137: infra_1.polygon, // Polygon
|
|
17
|
-
10: infra_1.optimism, // Optimism
|
|
18
|
-
42161: infra_1.arbitrum, // Arbitrum
|
|
19
|
-
8453: infra_1.base // Base
|
|
20
|
-
// // Testnet chains (not supported)
|
|
21
|
-
// 11155111: sepolia, // Ethereum Sepolia
|
|
22
|
-
// 80002: polygonAmoy, // Polygon Amoy
|
|
23
|
-
// 11155420: optimismSepolia, // Optimism Sepolia
|
|
24
|
-
// 421614: arbitrumSepolia, // Arbitrum Sepolia
|
|
25
|
-
// 84532: baseSepolia, // Base Sepolia
|
|
26
|
-
};
|
|
27
|
-
function getChainConfig(chainId) {
|
|
28
|
-
return exports.SUPPORTED_CHAINS[chainId];
|
|
29
|
-
}
|
|
30
|
-
function isSupportedChain(chainId) {
|
|
31
|
-
return chainId in exports.SUPPORTED_CHAINS;
|
|
32
|
-
}
|
|
33
|
-
function getSupportedChainIds() {
|
|
34
|
-
return Object.keys(exports.SUPPORTED_CHAINS).map((id) => parseInt(id, 10));
|
|
35
|
-
}
|
|
36
|
-
//# sourceMappingURL=chains.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chains.js","sourceRoot":"","sources":["../../../src/smart-wallets/chains.ts"],"names":[],"mappings":";;;AAwBA,wCAEC;AAED,4CAEC;AAED,oDAEC;AAlCD,8CAAgF;AAGhF;;;;GAIG;AACU,QAAA,gBAAgB,GAA0B;IACrD,iBAAiB;IACjB,CAAC,EAAE,eAAO,EAAE,WAAW;IACvB,GAAG,EAAE,eAAO,EAAE,UAAU;IACxB,EAAE,EAAE,gBAAQ,EAAE,WAAW;IACzB,KAAK,EAAE,gBAAQ,EAAE,WAAW;IAC5B,IAAI,EAAE,YAAI,CAAC,OAAO;IAElB,oCAAoC;IACpC,mDAAmD;IACnD,+CAA+C;IAC/C,mDAAmD;IACnD,mDAAmD;IACnD,+CAA+C;CAChD,CAAC;AAEF,SAAgB,cAAc,CAAC,OAAe;IAC5C,OAAO,wBAAgB,CAAC,OAAO,CAAC,CAAC;AACnC,CAAC;AAED,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,OAAO,OAAO,IAAI,wBAAgB,CAAC;AACrC,CAAC;AAED,SAAgB,oBAAoB;IAClC,OAAO,MAAM,CAAC,IAAI,CAAC,wBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AACrE,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { OrdaError } from '../errors';
|
|
2
|
-
export declare class SmartWalletError extends OrdaError {
|
|
3
|
-
constructor(message: string, details?: unknown);
|
|
4
|
-
}
|
|
5
|
-
export declare class ConnectionError extends SmartWalletError {
|
|
6
|
-
constructor(message: string, details?: unknown);
|
|
7
|
-
}
|
|
8
|
-
export declare class UserOperationError extends SmartWalletError {
|
|
9
|
-
constructor(message: string, details?: unknown);
|
|
10
|
-
}
|
|
11
|
-
export declare class InsufficientFundsError extends SmartWalletError {
|
|
12
|
-
constructor(message?: string, details?: unknown);
|
|
13
|
-
}
|
|
14
|
-
export declare class AccountNotDeployedError extends SmartWalletError {
|
|
15
|
-
constructor(address: string, details?: unknown);
|
|
16
|
-
}
|
|
17
|
-
export declare class InvalidPrivateKeyError extends SmartWalletError {
|
|
18
|
-
constructor(message?: string, details?: unknown);
|
|
19
|
-
}
|
|
20
|
-
export declare class ChainNotSupportedError extends SmartWalletError {
|
|
21
|
-
constructor(chainId: number, details?: unknown);
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/smart-wallets/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,qBAAa,gBAAiB,SAAQ,SAAS;gBACjC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;CAI/C;AAED,qBAAa,eAAgB,SAAQ,gBAAgB;gBACvC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;CAI/C;AAED,qBAAa,kBAAmB,SAAQ,gBAAgB;gBAC1C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;CAI/C;AAED,qBAAa,sBAAuB,SAAQ,gBAAgB;gBAC9C,OAAO,GAAE,MAA6C,EAAE,OAAO,CAAC,EAAE,OAAO;CAItF;AAED,qBAAa,uBAAwB,SAAQ,gBAAgB;gBAC/C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;CAI/C;AAED,qBAAa,sBAAuB,SAAQ,gBAAgB;gBAC9C,OAAO,GAAE,MAAqC,EAAE,OAAO,CAAC,EAAE,OAAO;CAI9E;AAED,qBAAa,sBAAuB,SAAQ,gBAAgB;gBAC9C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;CAI/C"}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ChainNotSupportedError = exports.InvalidPrivateKeyError = exports.AccountNotDeployedError = exports.InsufficientFundsError = exports.UserOperationError = exports.ConnectionError = exports.SmartWalletError = void 0;
|
|
4
|
-
const errors_1 = require("../errors");
|
|
5
|
-
class SmartWalletError extends errors_1.OrdaError {
|
|
6
|
-
constructor(message, details) {
|
|
7
|
-
super(message, 500, details);
|
|
8
|
-
this.code = 'SMART_WALLET_ERROR';
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
exports.SmartWalletError = SmartWalletError;
|
|
12
|
-
class ConnectionError extends SmartWalletError {
|
|
13
|
-
constructor(message, details) {
|
|
14
|
-
super(message, details);
|
|
15
|
-
this.code = 'CONNECTION_ERROR';
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.ConnectionError = ConnectionError;
|
|
19
|
-
class UserOperationError extends SmartWalletError {
|
|
20
|
-
constructor(message, details) {
|
|
21
|
-
super(message, details);
|
|
22
|
-
this.code = 'USER_OPERATION_ERROR';
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
exports.UserOperationError = UserOperationError;
|
|
26
|
-
class InsufficientFundsError extends SmartWalletError {
|
|
27
|
-
constructor(message = 'Insufficient funds for transaction', details) {
|
|
28
|
-
super(message, details);
|
|
29
|
-
this.code = 'INSUFFICIENT_FUNDS_ERROR';
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
exports.InsufficientFundsError = InsufficientFundsError;
|
|
33
|
-
class AccountNotDeployedError extends SmartWalletError {
|
|
34
|
-
constructor(address, details) {
|
|
35
|
-
super(`Smart account at ${address} is not deployed`, details);
|
|
36
|
-
this.code = 'ACCOUNT_NOT_DEPLOYED_ERROR';
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
exports.AccountNotDeployedError = AccountNotDeployedError;
|
|
40
|
-
class InvalidPrivateKeyError extends SmartWalletError {
|
|
41
|
-
constructor(message = 'Invalid private key format', details) {
|
|
42
|
-
super(message, details);
|
|
43
|
-
this.code = 'INVALID_PRIVATE_KEY_ERROR';
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
exports.InvalidPrivateKeyError = InvalidPrivateKeyError;
|
|
47
|
-
class ChainNotSupportedError extends SmartWalletError {
|
|
48
|
-
constructor(chainId, details) {
|
|
49
|
-
super(`Chain ${chainId} is not supported`, details);
|
|
50
|
-
this.code = 'CHAIN_NOT_SUPPORTED_ERROR';
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
exports.ChainNotSupportedError = ChainNotSupportedError;
|
|
54
|
-
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/smart-wallets/errors.ts"],"names":[],"mappings":";;;AAAA,sCAAsC;AAEtC,MAAa,gBAAiB,SAAQ,kBAAS;IAC7C,YAAY,OAAe,EAAE,OAAiB;QAC5C,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AALD,4CAKC;AAED,MAAa,eAAgB,SAAQ,gBAAgB;IACnD,YAAY,OAAe,EAAE,OAAiB;QAC5C,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AALD,0CAKC;AAED,MAAa,kBAAmB,SAAQ,gBAAgB;IACtD,YAAY,OAAe,EAAE,OAAiB;QAC5C,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AALD,gDAKC;AAED,MAAa,sBAAuB,SAAQ,gBAAgB;IAC1D,YAAY,UAAkB,oCAAoC,EAAE,OAAiB;QACnF,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AALD,wDAKC;AAED,MAAa,uBAAwB,SAAQ,gBAAgB;IAC3D,YAAY,OAAe,EAAE,OAAiB;QAC5C,KAAK,CAAC,oBAAoB,OAAO,kBAAkB,EAAE,OAAO,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AALD,0DAKC;AAED,MAAa,sBAAuB,SAAQ,gBAAgB;IAC1D,YAAY,UAAkB,4BAA4B,EAAE,OAAiB;QAC3E,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;IAC1C,CAAC;CACF;AALD,wDAKC;AAED,MAAa,sBAAuB,SAAQ,gBAAgB;IAC1D,YAAY,OAAe,EAAE,OAAiB;QAC5C,KAAK,CAAC,SAAS,OAAO,mBAAmB,EAAE,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;IAC1C,CAAC;CACF;AALD,wDAKC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { SmartWalletClient } from './SmartWalletClient';
|
|
2
|
-
import type { SmartWalletConfig } from './types';
|
|
3
|
-
export { SmartWalletClient } from './SmartWalletClient';
|
|
4
|
-
export { SmartWalletManager, type SmartWalletManagerConfig } from './SmartWalletManager';
|
|
5
|
-
export { LocalSigner } from './LocalSigner';
|
|
6
|
-
export { getChainConfig, isSupportedChain, getSupportedChainIds, SUPPORTED_CHAINS } from './chains';
|
|
7
|
-
export { SmartWalletError, ConnectionError, UserOperationError, InsufficientFundsError, AccountNotDeployedError, InvalidPrivateKeyError, ChainNotSupportedError } from './errors';
|
|
8
|
-
export { toHex, toAddress, toBigInt, isHexString, isAddress } from './utils';
|
|
9
|
-
export type { AccountType, EntityType, TransportType, SmartWalletCredentials, SmartWalletConfig, UserOperationRequest, UserOperationBatch, TransactionResult, SmartWalletState, SmartWalletInterface } from './types';
|
|
10
|
-
export declare function createSmartWallet(config: SmartWalletConfig): Promise<SmartWalletClient>;
|
|
11
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/smart-wallets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,KAAK,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACpG,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7E,YAAY,EACV,WAAW,EACX,UAAU,EACV,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,SAAS,CAAC;AAEjB,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAI7F"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isAddress = exports.isHexString = exports.toBigInt = exports.toAddress = exports.toHex = exports.ChainNotSupportedError = exports.InvalidPrivateKeyError = exports.AccountNotDeployedError = exports.InsufficientFundsError = exports.UserOperationError = exports.ConnectionError = exports.SmartWalletError = exports.SUPPORTED_CHAINS = exports.getSupportedChainIds = exports.isSupportedChain = exports.getChainConfig = exports.LocalSigner = exports.SmartWalletManager = exports.SmartWalletClient = void 0;
|
|
4
|
-
exports.createSmartWallet = createSmartWallet;
|
|
5
|
-
const SmartWalletClient_1 = require("./SmartWalletClient");
|
|
6
|
-
var SmartWalletClient_2 = require("./SmartWalletClient");
|
|
7
|
-
Object.defineProperty(exports, "SmartWalletClient", { enumerable: true, get: function () { return SmartWalletClient_2.SmartWalletClient; } });
|
|
8
|
-
var SmartWalletManager_1 = require("./SmartWalletManager");
|
|
9
|
-
Object.defineProperty(exports, "SmartWalletManager", { enumerable: true, get: function () { return SmartWalletManager_1.SmartWalletManager; } });
|
|
10
|
-
var LocalSigner_1 = require("./LocalSigner");
|
|
11
|
-
Object.defineProperty(exports, "LocalSigner", { enumerable: true, get: function () { return LocalSigner_1.LocalSigner; } });
|
|
12
|
-
var chains_1 = require("./chains");
|
|
13
|
-
Object.defineProperty(exports, "getChainConfig", { enumerable: true, get: function () { return chains_1.getChainConfig; } });
|
|
14
|
-
Object.defineProperty(exports, "isSupportedChain", { enumerable: true, get: function () { return chains_1.isSupportedChain; } });
|
|
15
|
-
Object.defineProperty(exports, "getSupportedChainIds", { enumerable: true, get: function () { return chains_1.getSupportedChainIds; } });
|
|
16
|
-
Object.defineProperty(exports, "SUPPORTED_CHAINS", { enumerable: true, get: function () { return chains_1.SUPPORTED_CHAINS; } });
|
|
17
|
-
var errors_1 = require("./errors");
|
|
18
|
-
Object.defineProperty(exports, "SmartWalletError", { enumerable: true, get: function () { return errors_1.SmartWalletError; } });
|
|
19
|
-
Object.defineProperty(exports, "ConnectionError", { enumerable: true, get: function () { return errors_1.ConnectionError; } });
|
|
20
|
-
Object.defineProperty(exports, "UserOperationError", { enumerable: true, get: function () { return errors_1.UserOperationError; } });
|
|
21
|
-
Object.defineProperty(exports, "InsufficientFundsError", { enumerable: true, get: function () { return errors_1.InsufficientFundsError; } });
|
|
22
|
-
Object.defineProperty(exports, "AccountNotDeployedError", { enumerable: true, get: function () { return errors_1.AccountNotDeployedError; } });
|
|
23
|
-
Object.defineProperty(exports, "InvalidPrivateKeyError", { enumerable: true, get: function () { return errors_1.InvalidPrivateKeyError; } });
|
|
24
|
-
Object.defineProperty(exports, "ChainNotSupportedError", { enumerable: true, get: function () { return errors_1.ChainNotSupportedError; } });
|
|
25
|
-
var utils_1 = require("./utils");
|
|
26
|
-
Object.defineProperty(exports, "toHex", { enumerable: true, get: function () { return utils_1.toHex; } });
|
|
27
|
-
Object.defineProperty(exports, "toAddress", { enumerable: true, get: function () { return utils_1.toAddress; } });
|
|
28
|
-
Object.defineProperty(exports, "toBigInt", { enumerable: true, get: function () { return utils_1.toBigInt; } });
|
|
29
|
-
Object.defineProperty(exports, "isHexString", { enumerable: true, get: function () { return utils_1.isHexString; } });
|
|
30
|
-
Object.defineProperty(exports, "isAddress", { enumerable: true, get: function () { return utils_1.isAddress; } });
|
|
31
|
-
async function createSmartWallet(config) {
|
|
32
|
-
const wallet = new SmartWalletClient_1.SmartWalletClient(config);
|
|
33
|
-
await wallet.connect();
|
|
34
|
-
return wallet;
|
|
35
|
-
}
|
|
36
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/smart-wallets/index.ts"],"names":[],"mappings":";;;AA8BA,8CAIC;AAlCD,2DAAwD;AAGxD,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA;AAC1B,2DAAyF;AAAhF,wHAAA,kBAAkB,OAAA;AAC3B,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,mCAAoG;AAA3F,wGAAA,cAAc,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AAAE,8GAAA,oBAAoB,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AACjF,mCAQkB;AAPhB,0GAAA,gBAAgB,OAAA;AAChB,yGAAA,eAAe,OAAA;AACf,4GAAA,kBAAkB,OAAA;AAClB,gHAAA,sBAAsB,OAAA;AACtB,iHAAA,uBAAuB,OAAA;AACvB,gHAAA,sBAAsB,OAAA;AACtB,gHAAA,sBAAsB,OAAA;AAExB,iCAA6E;AAApE,8FAAA,KAAK,OAAA;AAAE,kGAAA,SAAS,OAAA;AAAE,iGAAA,QAAQ,OAAA;AAAE,oGAAA,WAAW,OAAA;AAAE,kGAAA,SAAS,OAAA;AAcpD,KAAK,UAAU,iBAAiB,CAAC,MAAyB;IAC/D,MAAM,MAAM,GAAG,IAAI,qCAAiB,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;IACvB,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
export type AccountType = 'MODULAR_ACCOUNT_V2' | 'LIGHT_ACCOUNT';
|
|
2
|
-
export type EntityType = 'project' | 'recipient';
|
|
3
|
-
export type TransportType = 'alchemy' | 'http';
|
|
4
|
-
export interface SmartWalletCredentials {
|
|
5
|
-
address: string;
|
|
6
|
-
privateKey: string;
|
|
7
|
-
type: AccountType;
|
|
8
|
-
entityType: EntityType;
|
|
9
|
-
entityId: string;
|
|
10
|
-
chainId: number;
|
|
11
|
-
}
|
|
12
|
-
export interface SmartWalletConfig {
|
|
13
|
-
credentials: SmartWalletCredentials;
|
|
14
|
-
chain: number;
|
|
15
|
-
transport?: TransportType;
|
|
16
|
-
alchemyApiKey?: string;
|
|
17
|
-
rpcUrl?: string;
|
|
18
|
-
}
|
|
19
|
-
export interface UserOperationRequest {
|
|
20
|
-
target: string;
|
|
21
|
-
data?: string;
|
|
22
|
-
value?: bigint;
|
|
23
|
-
}
|
|
24
|
-
export interface UserOperationBatch {
|
|
25
|
-
operations: UserOperationRequest[];
|
|
26
|
-
}
|
|
27
|
-
export interface TransactionResult {
|
|
28
|
-
hash: string;
|
|
29
|
-
sender: string;
|
|
30
|
-
status?: 'pending' | 'success' | 'failed';
|
|
31
|
-
}
|
|
32
|
-
export interface SmartWalletState {
|
|
33
|
-
isConnected: boolean;
|
|
34
|
-
isDeployed?: boolean;
|
|
35
|
-
address?: string;
|
|
36
|
-
chainId?: number;
|
|
37
|
-
}
|
|
38
|
-
export interface SmartWalletInterface {
|
|
39
|
-
connect(): Promise<void>;
|
|
40
|
-
disconnect(): void;
|
|
41
|
-
sendUserOperation(request: UserOperationRequest): Promise<TransactionResult>;
|
|
42
|
-
sendBatchUserOperation(requests: UserOperationRequest[]): Promise<TransactionResult>;
|
|
43
|
-
getAddress(): string;
|
|
44
|
-
isDeployed(): Promise<boolean>;
|
|
45
|
-
getState(): SmartWalletState;
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/smart-wallets/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,oBAAoB,GAAG,eAAe,CAAC;AACjE,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;AACjD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,MAAM,CAAC;AAE/C,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,sBAAsB,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,oBAAoB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;CAC3C;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,UAAU,IAAI,IAAI,CAAC;IACnB,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC7E,sBAAsB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACrF,UAAU,IAAI,MAAM,CAAC;IACrB,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,QAAQ,IAAI,gBAAgB,CAAC;CAC9B"}
|