@curekit/wallet-keypair 0.2.4
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.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/keypairWalletProvider.d.ts +24 -0
- package/dist/keypairWalletProvider.d.ts.map +1 -0
- package/dist/keypairWalletProvider.js +62 -0
- package/dist/keypairWalletProvider.js.map +1 -0
- package/dist/keypairWalletProvider.test.d.ts +2 -0
- package/dist/keypairWalletProvider.test.d.ts.map +1 -0
- package/dist/keypairWalletProvider.test.js +47 -0
- package/dist/keypairWalletProvider.test.js.map +1 -0
- package/package.json +46 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { KeypairWalletProvider } from "./keypairWalletProvider";
|
|
2
|
+
import type { KeypairWalletProviderConfig } from "./keypairWalletProvider";
|
|
3
|
+
export { KeypairWalletProvider };
|
|
4
|
+
export type { KeypairWalletProviderConfig };
|
|
5
|
+
export declare function keypairWallet(config: KeypairWalletProviderConfig): KeypairWalletProvider;
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAE3E,OAAO,EAAE,qBAAqB,EAAE,CAAC;AACjC,YAAY,EAAE,2BAA2B,EAAE,CAAC;AAE5C,wBAAgB,aAAa,CAAC,MAAM,EAAE,2BAA2B,GAAG,qBAAqB,CAExF"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EAAE,qBAAqB,EAAE,CAAC;AAGjC,MAAM,UAAU,aAAa,CAAC,MAAmC;IAC/D,OAAO,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import * as StellarSdk from "@stellar/stellar-sdk";
|
|
2
|
+
import { WalletProvider, type StellarNetwork } from "@curekit/core";
|
|
3
|
+
import type { TransactionResult } from "@curekit/core";
|
|
4
|
+
export interface KeypairWalletProviderConfig {
|
|
5
|
+
keypair: StellarSdk.Keypair;
|
|
6
|
+
network: StellarNetwork;
|
|
7
|
+
rpc?: StellarSdk.rpc.Server;
|
|
8
|
+
horizon?: StellarSdk.Horizon.Server;
|
|
9
|
+
}
|
|
10
|
+
export declare class KeypairWalletProvider extends WalletProvider {
|
|
11
|
+
private keypair;
|
|
12
|
+
private network;
|
|
13
|
+
private rpc;
|
|
14
|
+
private horizon;
|
|
15
|
+
constructor(config: KeypairWalletProviderConfig);
|
|
16
|
+
getName(): string;
|
|
17
|
+
getAddress(): string;
|
|
18
|
+
getNetwork(): StellarNetwork;
|
|
19
|
+
getBalance(): Promise<bigint>;
|
|
20
|
+
signAuthEntry(authEntry: string): Promise<string>;
|
|
21
|
+
signAndSubmitTransaction(txXdr: string): Promise<TransactionResult>;
|
|
22
|
+
submitTransaction(txXdr: string): Promise<TransactionResult>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=keypairWalletProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keypairWalletProvider.d.ts","sourceRoot":"","sources":["../src/keypairWalletProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC;IAC5B,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;CACrC;AAED,qBAAa,qBAAsB,SAAQ,cAAc;IACvD,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,GAAG,CAAwB;IACnC,OAAO,CAAC,OAAO,CAA4B;gBAE/B,MAAM,EAAE,2BAA2B;IAQ/C,OAAO,IAAI,MAAM;IAIjB,UAAU,IAAI,MAAM;IAIpB,UAAU,IAAI,cAAc;IAItB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAU7B,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKjD,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA0BnE,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAGnE"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import * as StellarSdk from "@stellar/stellar-sdk";
|
|
2
|
+
import { WalletProvider } from "@curekit/core";
|
|
3
|
+
export class KeypairWalletProvider extends WalletProvider {
|
|
4
|
+
keypair;
|
|
5
|
+
network;
|
|
6
|
+
rpc;
|
|
7
|
+
horizon;
|
|
8
|
+
constructor(config) {
|
|
9
|
+
super();
|
|
10
|
+
this.keypair = config.keypair;
|
|
11
|
+
this.network = config.network;
|
|
12
|
+
this.rpc = config.rpc || new StellarSdk.rpc.Server(config.network.rpcUrl);
|
|
13
|
+
this.horizon = config.horizon || new StellarSdk.Horizon.Server(config.network.horizonUrl);
|
|
14
|
+
}
|
|
15
|
+
getName() {
|
|
16
|
+
return "KeypairWallet";
|
|
17
|
+
}
|
|
18
|
+
getAddress() {
|
|
19
|
+
return this.keypair.publicKey();
|
|
20
|
+
}
|
|
21
|
+
getNetwork() {
|
|
22
|
+
return this.network;
|
|
23
|
+
}
|
|
24
|
+
async getBalance() {
|
|
25
|
+
try {
|
|
26
|
+
const account = await this.horizon.loadAccount(this.keypair.publicKey());
|
|
27
|
+
const native = account.balances.find((b) => b.asset_type === "native");
|
|
28
|
+
return BigInt(Math.floor(parseFloat(native?.balance || "0") * 10_000_000));
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
return 0n;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
async signAuthEntry(authEntry) {
|
|
35
|
+
const entry = StellarSdk.xdr.SorobanAuthorizationEntry.fromXDR(authEntry, "base64");
|
|
36
|
+
return entry.toXDR("base64");
|
|
37
|
+
}
|
|
38
|
+
async signAndSubmitTransaction(txXdr) {
|
|
39
|
+
const transaction = StellarSdk.TransactionBuilder.fromXDR(txXdr, this.network.networkPassphrase);
|
|
40
|
+
transaction.sign(this.keypair);
|
|
41
|
+
const response = await this.rpc.sendTransaction(transaction);
|
|
42
|
+
if (response.status === "ERROR") {
|
|
43
|
+
throw new Error(`Transaction failed: ${response.errorResult}`);
|
|
44
|
+
}
|
|
45
|
+
let getResponse = await this.rpc.getTransaction(response.hash);
|
|
46
|
+
while (getResponse.status === "NOT_FOUND") {
|
|
47
|
+
await new Promise((resolve) => setTimeout(resolve, 1000));
|
|
48
|
+
getResponse = await this.rpc.getTransaction(response.hash);
|
|
49
|
+
}
|
|
50
|
+
if (getResponse.status === "SUCCESS") {
|
|
51
|
+
const result = getResponse.returnValue
|
|
52
|
+
? StellarSdk.scValToNative(getResponse.returnValue).toString()
|
|
53
|
+
: undefined;
|
|
54
|
+
return { hash: response.hash, result };
|
|
55
|
+
}
|
|
56
|
+
throw new Error(`Transaction failed: ${getResponse.status}`);
|
|
57
|
+
}
|
|
58
|
+
async submitTransaction(txXdr) {
|
|
59
|
+
return this.signAndSubmitTransaction(txXdr);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=keypairWalletProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keypairWalletProvider.js","sourceRoot":"","sources":["../src/keypairWalletProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keypairWalletProvider.test.d.ts","sourceRoot":"","sources":["../src/keypairWalletProvider.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { STELLAR_NETWORKS } from "@curekit/core";
|
|
3
|
+
import * as StellarSdk from "@stellar/stellar-sdk";
|
|
4
|
+
import { KeypairWalletProvider } from "./keypairWalletProvider";
|
|
5
|
+
describe("KeypairWalletProvider", () => {
|
|
6
|
+
const keypair = StellarSdk.Keypair.random();
|
|
7
|
+
it("should return wallet name and address", () => {
|
|
8
|
+
const provider = new KeypairWalletProvider({
|
|
9
|
+
keypair,
|
|
10
|
+
network: STELLAR_NETWORKS.testnet,
|
|
11
|
+
});
|
|
12
|
+
expect(provider.getName()).toBe("KeypairWallet");
|
|
13
|
+
expect(provider.getAddress()).toBe(keypair.publicKey());
|
|
14
|
+
});
|
|
15
|
+
it("should return the configured network", () => {
|
|
16
|
+
const provider = new KeypairWalletProvider({
|
|
17
|
+
keypair,
|
|
18
|
+
network: STELLAR_NETWORKS.testnet,
|
|
19
|
+
});
|
|
20
|
+
expect(provider.getNetwork().networkId).toBe("testnet");
|
|
21
|
+
});
|
|
22
|
+
it("should return 0 balance on error", async () => {
|
|
23
|
+
const provider = new KeypairWalletProvider({
|
|
24
|
+
keypair,
|
|
25
|
+
network: STELLAR_NETWORKS.testnet,
|
|
26
|
+
});
|
|
27
|
+
const balance = await provider.getBalance();
|
|
28
|
+
expect(balance).toBe(0n);
|
|
29
|
+
});
|
|
30
|
+
it("should throw on invalid auth entry XDR", async () => {
|
|
31
|
+
const provider = new KeypairWalletProvider({
|
|
32
|
+
keypair,
|
|
33
|
+
network: STELLAR_NETWORKS.testnet,
|
|
34
|
+
});
|
|
35
|
+
await expect(provider.signAuthEntry("invalid")).rejects.toThrow();
|
|
36
|
+
});
|
|
37
|
+
it("should create from factory function", async () => {
|
|
38
|
+
const mod = await import("./index");
|
|
39
|
+
const provider = mod.keypairWallet({
|
|
40
|
+
keypair,
|
|
41
|
+
network: STELLAR_NETWORKS.testnet,
|
|
42
|
+
});
|
|
43
|
+
expect(provider).toBeInstanceOf(KeypairWalletProvider);
|
|
44
|
+
expect(provider.getAddress()).toBe(keypair.publicKey());
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
//# sourceMappingURL=keypairWalletProvider.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keypairWalletProvider.test.js","sourceRoot":"","sources":["../src/keypairWalletProvider.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAM,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,UAAU,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IAE5C,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC;YACzC,OAAO;YACP,OAAO,EAAE,gBAAgB,CAAC,OAAO;SAClC,CAAC,CAAC;QACH,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACjD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC;YACzC,OAAO;YACP,OAAO,EAAE,gBAAgB,CAAC,OAAO;SAClC,CAAC,CAAC;QACH,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC;YACzC,OAAO;YACP,OAAO,EAAE,gBAAgB,CAAC,OAAO;SAClC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC5C,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC;YACzC,OAAO;YACP,OAAO,EAAE,gBAAgB,CAAC,OAAO;SAClC,CAAC,CAAC;QACH,MAAM,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,GAAG,CAAC,aAAa,CAAC;YACjC,OAAO;YACP,OAAO,EAAE,gBAAgB,CAAC,OAAO;SAClC,CAAC,CAAC;QACH,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC;QACvD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@curekit/wallet-keypair",
|
|
3
|
+
"version": "0.2.4",
|
|
4
|
+
"description": "Ed25519 keypair wallet provider for AgentKit Stellar",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"import": "./dist/index.js",
|
|
13
|
+
"default": "./dist/index.js"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"files": [
|
|
17
|
+
"dist"
|
|
18
|
+
],
|
|
19
|
+
"dependencies": {
|
|
20
|
+
"@curekit/core": "0.2.4"
|
|
21
|
+
},
|
|
22
|
+
"peerDependencies": {
|
|
23
|
+
"@stellar/stellar-sdk": "^12.3.0"
|
|
24
|
+
},
|
|
25
|
+
"devDependencies": {
|
|
26
|
+
"@stellar/stellar-sdk": "^12.3.0",
|
|
27
|
+
"typescript": "^5.7.0",
|
|
28
|
+
"vitest": "^3.0.0"
|
|
29
|
+
},
|
|
30
|
+
"publishConfig": {
|
|
31
|
+
"access": "public"
|
|
32
|
+
},
|
|
33
|
+
"license": "MIT",
|
|
34
|
+
"repository": {
|
|
35
|
+
"type": "git",
|
|
36
|
+
"url": "https://github.com/anomalyco/agentkit-stellar.git",
|
|
37
|
+
"directory": "packages/wallet-keypair"
|
|
38
|
+
},
|
|
39
|
+
"scripts": {
|
|
40
|
+
"build": "tsc && node ../../scripts/fix-esm-imports.mjs dist",
|
|
41
|
+
"test": "vitest run",
|
|
42
|
+
"lint": "eslint src/",
|
|
43
|
+
"typecheck": "tsc --noEmit",
|
|
44
|
+
"clean": "rm -rf dist"
|
|
45
|
+
}
|
|
46
|
+
}
|