@kynesyslabs/demosdk 2.1.10 → 2.1.12
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 +48 -48
- package/build/multichain/core/btc.d.ts +40 -0
- package/build/multichain/core/btc.js +372 -0
- package/build/multichain/core/btc.js.map +1 -0
- package/build/multichain/core/index.d.ts +1 -0
- package/build/multichain/core/index.js +3 -1
- package/build/multichain/core/index.js.map +1 -1
- package/build/multichain/localsdk/btc.d.ts +11 -0
- package/build/multichain/localsdk/btc.js +89 -0
- package/build/multichain/localsdk/btc.js.map +1 -0
- package/build/multichain/localsdk/index.d.ts +1 -0
- package/build/multichain/localsdk/index.js +3 -1
- package/build/multichain/localsdk/index.js.map +1 -1
- package/build/multichain/websdk/btc.d.ts +4 -0
- package/build/multichain/websdk/btc.js +11 -0
- package/build/multichain/websdk/btc.js.map +1 -0
- package/build/multichain/websdk/index.d.ts +1 -0
- package/build/multichain/websdk/index.js +3 -1
- package/build/multichain/websdk/index.js.map +1 -1
- package/build/types/abstraction/index.d.ts +5 -1
- package/build/websdk/DemosTransactions.js +10 -1
- package/build/websdk/DemosTransactions.js.map +1 -1
- package/build/websdk/GCRGeneration.js +3 -3
- package/build/websdk/GCRGeneration.js.map +1 -1
- package/package.json +7 -2
package/README.md
CHANGED
|
@@ -1,12 +1,18 @@
|
|
|
1
|
-
Demos SDKs
|
|
1
|
+
# Demos SDKs
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
To use this package, install it in your project using:
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
```sh
|
|
6
|
+
yarn add @kynesyslabs/demosdk
|
|
7
|
+
|
|
8
|
+
# or
|
|
9
|
+
|
|
10
|
+
npm -i @kynesyslabs/demosdk
|
|
11
|
+
```
|
|
6
12
|
|
|
7
|
-
###
|
|
13
|
+
### Installing from local source
|
|
8
14
|
|
|
9
|
-
To use this package
|
|
15
|
+
To use this package from a local folder, follow these steps:
|
|
10
16
|
|
|
11
17
|
On the root of this repo, run:
|
|
12
18
|
|
|
@@ -26,85 +32,59 @@ Assuming both repos are in the same directory, that would be:
|
|
|
26
32
|
yarn add file:../sdks
|
|
27
33
|
```
|
|
28
34
|
|
|
29
|
-
Then you can import stuff from the package normally,
|
|
35
|
+
Then you can import stuff from the package normally, eg:
|
|
30
36
|
|
|
31
37
|
```ts
|
|
32
38
|
import { Demos } from "@kynesyslabs/demosdk/websdk"
|
|
33
39
|
```
|
|
34
40
|
|
|
35
|
-
> [!
|
|
41
|
+
> [!IMPORTANT]
|
|
36
42
|
> Installing this package will replace the NPM version of the package.
|
|
43
|
+
>
|
|
44
|
+
> Changes to the sdks will not be reflected on your project until you rebuild and reinstall the sdk in your project.
|
|
37
45
|
|
|
38
|
-
>
|
|
39
|
-
> Changes to the sdks will not be reflected on your project until you rebuild the sdks and reinstall them in your project all over again.
|
|
46
|
+
<br>
|
|
40
47
|
|
|
41
|
-
###
|
|
48
|
+
### Exporting modules
|
|
42
49
|
|
|
43
|
-
|
|
50
|
+
To export a `src/module/index.ts` from the package as a module, configure `package.json` as shown:
|
|
44
51
|
|
|
45
52
|
```jsonc
|
|
46
53
|
"exports": {
|
|
47
54
|
// ...
|
|
48
|
-
"./
|
|
55
|
+
"./module": "./build/module/index.js"
|
|
49
56
|
}
|
|
50
57
|
```
|
|
51
58
|
|
|
52
|
-
This will allow users to use the
|
|
59
|
+
This will allow users to use the module exports as follows:
|
|
53
60
|
|
|
54
61
|
```js
|
|
55
|
-
import {
|
|
62
|
+
import { ModuleItem, otherModuleItem } from "@kynesyslabs/demosdk/module"
|
|
56
63
|
```
|
|
57
64
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
Here are all the available tests:
|
|
61
|
-
|
|
62
|
-
### 1. Multichain
|
|
63
|
-
|
|
64
|
-
Tests for the multichain SDKs.
|
|
65
|
-
|
|
66
|
-
```sh
|
|
67
|
-
yarn test:multichain
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
### 2. A crosschain write transaction on DEMOS
|
|
71
|
-
|
|
72
|
-
Creates a demos crosschain transaction to send tokens on Sepolia via the DEMOS testnet.
|
|
73
|
-
|
|
74
|
-
```sh
|
|
75
|
-
yarn test:tx
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
### 3. Demoswork
|
|
79
|
-
|
|
80
|
-
```sh
|
|
81
|
-
yarn test:demoswork
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
### 4. Native Transactions
|
|
85
|
-
|
|
86
|
-
```sh
|
|
87
|
-
yarn test:native
|
|
88
|
-
```
|
|
65
|
+
<br>
|
|
89
66
|
|
|
90
67
|
### Publishing on NPM
|
|
91
68
|
|
|
92
69
|
Publishing to NPM is automated using a Github Workflow. To publish a new version:
|
|
93
70
|
|
|
94
|
-
1.
|
|
71
|
+
1. Increment the `package.json` version field
|
|
95
72
|
2. Commit your changes with a message starting with the word `release`
|
|
96
73
|
3. Push to Github.
|
|
97
74
|
|
|
75
|
+
For example:
|
|
76
|
+
|
|
98
77
|
```sh
|
|
99
|
-
# Example:
|
|
100
78
|
git commit -m "release v1.0.5"
|
|
101
79
|
```
|
|
102
80
|
|
|
103
81
|
The commit will trigger a workflow run to build the files and publish a new version on NPM.
|
|
104
82
|
|
|
83
|
+
<br>
|
|
84
|
+
|
|
105
85
|
### Setup pre-push hook
|
|
106
86
|
|
|
107
|
-
The release pre-push hook will prevent you from pushing a release commit, if the code can't build.
|
|
87
|
+
The release pre-push hook will prevent you from pushing a release commit, if the code can't build successfully.
|
|
108
88
|
|
|
109
89
|
```sh
|
|
110
90
|
yarn setup:pre-push
|
|
@@ -114,3 +94,23 @@ The command will copy the pre-push file from `.github/hooks/pre-push` to the `.g
|
|
|
114
94
|
|
|
115
95
|
> [!TIP]
|
|
116
96
|
> This hook is not pushed to Github, so you need to run the command again if you reclone the repository.
|
|
97
|
+
|
|
98
|
+
### Tests
|
|
99
|
+
|
|
100
|
+
```sh
|
|
101
|
+
yarn test:multichain multichain sdks payload generation
|
|
102
|
+
|
|
103
|
+
yarn test:tx sending crosschain pay txs
|
|
104
|
+
|
|
105
|
+
yarn test:demoswork demoswork operations
|
|
106
|
+
|
|
107
|
+
yarn test:native native pay txs
|
|
108
|
+
|
|
109
|
+
yarn test:identities adding xm identities
|
|
110
|
+
|
|
111
|
+
yarn test:identities:web2 adding web2 identities
|
|
112
|
+
|
|
113
|
+
yarn test:web2 using the web2 proxy
|
|
114
|
+
|
|
115
|
+
yarn test:rubic-service rubic brigde service
|
|
116
|
+
```
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import * as bitcoin from "bitcoinjs-lib";
|
|
2
|
+
import { ECPairInterface } from "ecpair";
|
|
3
|
+
import { DefaultChain } from "./types/defaultChain";
|
|
4
|
+
import { IPayParams } from "./types/interfaces";
|
|
5
|
+
export declare class BTC extends DefaultChain {
|
|
6
|
+
provider: string;
|
|
7
|
+
network: bitcoin.Network;
|
|
8
|
+
wallet: ECPairInterface;
|
|
9
|
+
address?: string;
|
|
10
|
+
private changeIndex;
|
|
11
|
+
private lastUsedUtxos;
|
|
12
|
+
private usedChangeAddresses;
|
|
13
|
+
constructor(rpc_url: string, network?: bitcoin.Network);
|
|
14
|
+
connect(): Promise<boolean>;
|
|
15
|
+
/**
|
|
16
|
+
* Generate a private key for the BTC chain
|
|
17
|
+
* @param seed - The seed to generate the private key from (optional)
|
|
18
|
+
* @returns The private key as a WIF string
|
|
19
|
+
*/
|
|
20
|
+
generatePrivateKey(seed?: Buffer): string;
|
|
21
|
+
private generateChangeAddress;
|
|
22
|
+
connectWallet(privateKeyWIF: string): Promise<ECPairInterface>;
|
|
23
|
+
getAddress(): string;
|
|
24
|
+
private getApiUrl;
|
|
25
|
+
fetchUTXOs(address: string): Promise<any[]>;
|
|
26
|
+
fetchAllUTXOs(): Promise<any[]>;
|
|
27
|
+
getTxHex(txid: string): Promise<string>;
|
|
28
|
+
private toSigner;
|
|
29
|
+
preparePay(address: string, amount: string, overrideFeeRate?: number, addNoise?: boolean): Promise<string>;
|
|
30
|
+
preparePays(payments: IPayParams[], overrideFeeRate?: number, addNoise?: boolean): Promise<string[]>;
|
|
31
|
+
private createUnsignedPSBT;
|
|
32
|
+
getFeeRate(overrideRate?: number): Promise<number>;
|
|
33
|
+
private calculateFee;
|
|
34
|
+
signTransaction(psbt: bitcoin.Psbt): Promise<string>;
|
|
35
|
+
signTransactions(psbts: bitcoin.Psbt[]): Promise<string[]>;
|
|
36
|
+
getBalance(): Promise<string>;
|
|
37
|
+
getEmptyTransaction(): Promise<any>;
|
|
38
|
+
signMessage(): Promise<string>;
|
|
39
|
+
verifyMessage(): Promise<boolean>;
|
|
40
|
+
}
|
|
@@ -0,0 +1,372 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.BTC = void 0;
|
|
40
|
+
const bitcoin = __importStar(require("bitcoinjs-lib"));
|
|
41
|
+
const bip32_1 = require("bip32");
|
|
42
|
+
const ecc = __importStar(require("tiny-secp256k1"));
|
|
43
|
+
const utils_1 = require("./utils");
|
|
44
|
+
const axios_1 = __importDefault(require("axios"));
|
|
45
|
+
const ecpair_1 = require("ecpair");
|
|
46
|
+
const defaultChain_1 = require("./types/defaultChain");
|
|
47
|
+
const ECPair = (0, ecpair_1.ECPairFactory)(ecc);
|
|
48
|
+
const bip32 = (0, bip32_1.BIP32Factory)(ecc);
|
|
49
|
+
const BITCOIN_CONSTANTS = {
|
|
50
|
+
DUST_LIMIT_P2WPKH: 294,
|
|
51
|
+
BASE_TX_SIZE: 10,
|
|
52
|
+
INPUT_SIZE: 68,
|
|
53
|
+
OUTPUT_SIZE: 31,
|
|
54
|
+
SAT_PER_VBYTE: 1,
|
|
55
|
+
MAX_ATTEMPTS: 100,
|
|
56
|
+
MAX_INDEX: 100,
|
|
57
|
+
DEFAULT_NETWORK: bitcoin.networks.testnet,
|
|
58
|
+
MAX_EMPTY: 5,
|
|
59
|
+
};
|
|
60
|
+
class BTC extends defaultChain_1.DefaultChain {
|
|
61
|
+
constructor(rpc_url, network = BITCOIN_CONSTANTS.DEFAULT_NETWORK) {
|
|
62
|
+
super(rpc_url);
|
|
63
|
+
this.changeIndex = 0;
|
|
64
|
+
this.lastUsedUtxos = [];
|
|
65
|
+
this.usedChangeAddresses = new Set(); // For storing used change addresses
|
|
66
|
+
this.name = "btc";
|
|
67
|
+
this.provider = rpc_url;
|
|
68
|
+
this.network = network;
|
|
69
|
+
}
|
|
70
|
+
async connect() {
|
|
71
|
+
try {
|
|
72
|
+
const url = this.getApiUrl("/blocks/tip/height");
|
|
73
|
+
const response = await axios_1.default.get(url);
|
|
74
|
+
this.connected = !!response.data;
|
|
75
|
+
return this.connected;
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
console.error("BTC connection error:", error);
|
|
79
|
+
this.connected = false;
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Generate a private key for the BTC chain
|
|
85
|
+
* @param seed - The seed to generate the private key from (optional)
|
|
86
|
+
* @returns The private key as a WIF string
|
|
87
|
+
*/
|
|
88
|
+
generatePrivateKey(seed) {
|
|
89
|
+
if (seed) {
|
|
90
|
+
// Generate deterministic key from seed using BIP32
|
|
91
|
+
const root = bip32.fromSeed(seed, this.network);
|
|
92
|
+
const path = this.network === bitcoin.networks.testnet
|
|
93
|
+
? "m/84'/1'/0'/0/0"
|
|
94
|
+
: "m/84'/0'/0'/0/0";
|
|
95
|
+
const child = root.derivePath(path);
|
|
96
|
+
return child.toWIF();
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
// Generate random key if no seed provided
|
|
100
|
+
const keyPair = ECPair.makeRandom({ network: this.network });
|
|
101
|
+
return keyPair.toWIF();
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
async generateChangeAddress() {
|
|
105
|
+
const seed = this.wallet.privateKey;
|
|
106
|
+
const root = bip32.fromSeed(seed, this.network);
|
|
107
|
+
let address;
|
|
108
|
+
let attempts = 0;
|
|
109
|
+
// Check if the address has been used before
|
|
110
|
+
while (attempts < BITCOIN_CONSTANTS.MAX_ATTEMPTS) {
|
|
111
|
+
const child = root.derivePath(`m/84'/1'/0'/1/${this.changeIndex}`);
|
|
112
|
+
const payment = bitcoin.payments.p2wpkh({
|
|
113
|
+
pubkey: Buffer.from(child.publicKey),
|
|
114
|
+
network: this.network,
|
|
115
|
+
});
|
|
116
|
+
address = payment.address;
|
|
117
|
+
// Check if there is a UTXO at this address (i.e., if it was used)
|
|
118
|
+
const utxos = await this.fetchUTXOs(address);
|
|
119
|
+
if (utxos.length === 0 && !this.usedChangeAddresses.has(address)) {
|
|
120
|
+
this.usedChangeAddresses.add(address); // Add to the list of used addresses
|
|
121
|
+
this.changeIndex++;
|
|
122
|
+
return address;
|
|
123
|
+
}
|
|
124
|
+
this.changeIndex++;
|
|
125
|
+
attempts++;
|
|
126
|
+
}
|
|
127
|
+
throw new Error("Failed to generate a unique change address after maximum attempts");
|
|
128
|
+
}
|
|
129
|
+
async connectWallet(privateKeyWIF) {
|
|
130
|
+
try {
|
|
131
|
+
this.wallet = ECPair.fromWIF(privateKeyWIF, this.network);
|
|
132
|
+
const { address } = bitcoin.payments.p2wpkh({
|
|
133
|
+
pubkey: Buffer.from(this.wallet.publicKey),
|
|
134
|
+
network: this.network,
|
|
135
|
+
});
|
|
136
|
+
this.address = address;
|
|
137
|
+
return this.wallet;
|
|
138
|
+
}
|
|
139
|
+
catch (error) {
|
|
140
|
+
throw new Error(`Failed to connect wallet: ${error}`);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
getAddress() {
|
|
144
|
+
(0, utils_1.required)(this.address, "Wallet not connected");
|
|
145
|
+
return this.address;
|
|
146
|
+
}
|
|
147
|
+
getApiUrl(path) {
|
|
148
|
+
const baseUrl = this.provider.replace(/\/api$/, "");
|
|
149
|
+
return `${baseUrl}/api${path}`;
|
|
150
|
+
}
|
|
151
|
+
async fetchUTXOs(address) {
|
|
152
|
+
try {
|
|
153
|
+
const url = this.getApiUrl(`/address/${address}/utxo`);
|
|
154
|
+
const response = await axios_1.default.get(url);
|
|
155
|
+
const utxos = response.data || [];
|
|
156
|
+
return utxos;
|
|
157
|
+
}
|
|
158
|
+
catch (error) {
|
|
159
|
+
throw new Error(`Error receiving UTXOs: ${error}`);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
async fetchAllUTXOs() {
|
|
163
|
+
const mainAddressUTXOs = await this.fetchUTXOs(this.getAddress());
|
|
164
|
+
const seed = this.wallet.privateKey;
|
|
165
|
+
const root = bip32.fromSeed(seed, this.network);
|
|
166
|
+
let changeUTXOs = [];
|
|
167
|
+
let i = 0;
|
|
168
|
+
let emptyCount = 0;
|
|
169
|
+
while (i < BITCOIN_CONSTANTS.MAX_INDEX &&
|
|
170
|
+
emptyCount < BITCOIN_CONSTANTS.MAX_EMPTY) {
|
|
171
|
+
const child = root.derivePath(`m/84'/1'/0'/1/${i}`);
|
|
172
|
+
const { address } = bitcoin.payments.p2wpkh({
|
|
173
|
+
pubkey: Buffer.from(child.publicKey),
|
|
174
|
+
network: this.network,
|
|
175
|
+
});
|
|
176
|
+
const utxos = await this.fetchUTXOs(address);
|
|
177
|
+
if (utxos.length === 0) {
|
|
178
|
+
emptyCount++;
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
emptyCount = 0;
|
|
182
|
+
}
|
|
183
|
+
changeUTXOs = changeUTXOs.concat(utxos.map(utxo => ({
|
|
184
|
+
...utxo,
|
|
185
|
+
derivedKey: child,
|
|
186
|
+
})));
|
|
187
|
+
i++;
|
|
188
|
+
}
|
|
189
|
+
return [...mainAddressUTXOs, ...changeUTXOs];
|
|
190
|
+
}
|
|
191
|
+
async getTxHex(txid) {
|
|
192
|
+
try {
|
|
193
|
+
const url = this.getApiUrl(`/tx/${txid}/hex`);
|
|
194
|
+
const response = await axios_1.default.get(url);
|
|
195
|
+
const txHex = response.data;
|
|
196
|
+
return txHex;
|
|
197
|
+
}
|
|
198
|
+
catch (error) {
|
|
199
|
+
throw new Error(`Failed to get transaction hex: ${error}`);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
toSigner(ecpair) {
|
|
203
|
+
return {
|
|
204
|
+
publicKey: Buffer.from(ecpair.publicKey),
|
|
205
|
+
sign: (hash, lowR) => {
|
|
206
|
+
const signature = ecpair.sign(hash, lowR);
|
|
207
|
+
return Buffer.from(signature);
|
|
208
|
+
},
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
async preparePay(address, amount, overrideFeeRate, addNoise = false) {
|
|
212
|
+
const txs = await this.preparePays([{ address, amount }], overrideFeeRate, addNoise);
|
|
213
|
+
return txs[0];
|
|
214
|
+
}
|
|
215
|
+
async preparePays(payments, overrideFeeRate, addNoise = false) {
|
|
216
|
+
(0, utils_1.required)(this.wallet, "Wallet not connected");
|
|
217
|
+
let availableUtxos = await this.fetchAllUTXOs();
|
|
218
|
+
const psbts = [];
|
|
219
|
+
for (const payment of payments) {
|
|
220
|
+
const { psbt, usedUtxos } = await this.createUnsignedPSBT(payment.address, payment.amount, availableUtxos, overrideFeeRate, addNoise);
|
|
221
|
+
psbts.push(psbt);
|
|
222
|
+
this.lastUsedUtxos = usedUtxos.map((u, i) => ({
|
|
223
|
+
...u,
|
|
224
|
+
derivedKey: availableUtxos.find(utxo => utxo.txid === u.txid && utxo.vout === u.vout)?.derivedKey,
|
|
225
|
+
}));
|
|
226
|
+
availableUtxos = availableUtxos.filter(utxo => !usedUtxos.some(used => used.txid === utxo.txid && used.vout === utxo.vout));
|
|
227
|
+
}
|
|
228
|
+
return this.signTransactions(psbts);
|
|
229
|
+
}
|
|
230
|
+
async createUnsignedPSBT(address, amount, availableUtxos, overrideFeeRate, addNoise = false) {
|
|
231
|
+
const amountNum = Number(amount);
|
|
232
|
+
if (isNaN(amountNum) || amountNum <= 0)
|
|
233
|
+
throw new Error("Incorrect amount");
|
|
234
|
+
if (availableUtxos.length === 0)
|
|
235
|
+
throw new Error("No UTXOs available");
|
|
236
|
+
const psbt = new bitcoin.Psbt({ network: this.network });
|
|
237
|
+
let totalInput = 0;
|
|
238
|
+
let inputCount = 0;
|
|
239
|
+
const usedUtxos = [];
|
|
240
|
+
const inputAddresses = new Set(); // Store input addresses for verification
|
|
241
|
+
const sortedUtxos = [...availableUtxos].sort((a, b) => b.value - a.value);
|
|
242
|
+
const outputCount = addNoise ? 3 : 2;
|
|
243
|
+
let estimatedFee = await this.calculateFee(1, outputCount, overrideFeeRate);
|
|
244
|
+
for (const utxo of sortedUtxos) {
|
|
245
|
+
const pubkey = utxo.derivedKey
|
|
246
|
+
? utxo.derivedKey.publicKey
|
|
247
|
+
: this.wallet.publicKey;
|
|
248
|
+
const p2wpkh = bitcoin.payments.p2wpkh({
|
|
249
|
+
pubkey: Buffer.from(pubkey),
|
|
250
|
+
network: this.network,
|
|
251
|
+
});
|
|
252
|
+
const utxoAddress = p2wpkh.address;
|
|
253
|
+
inputAddresses.add(utxoAddress); // Save input address
|
|
254
|
+
psbt.addInput({
|
|
255
|
+
hash: utxo.txid,
|
|
256
|
+
index: utxo.vout,
|
|
257
|
+
witnessUtxo: {
|
|
258
|
+
script: p2wpkh.output,
|
|
259
|
+
value: utxo.value,
|
|
260
|
+
},
|
|
261
|
+
sequence: 0xfffffffe, // Enable RBF
|
|
262
|
+
});
|
|
263
|
+
totalInput += utxo.value;
|
|
264
|
+
inputCount++;
|
|
265
|
+
usedUtxos.push({ txid: utxo.txid, vout: utxo.vout });
|
|
266
|
+
estimatedFee = await this.calculateFee(inputCount, outputCount, overrideFeeRate);
|
|
267
|
+
if (totalInput >= amountNum + estimatedFee)
|
|
268
|
+
break;
|
|
269
|
+
}
|
|
270
|
+
const finalFee = await this.calculateFee(inputCount, outputCount, overrideFeeRate);
|
|
271
|
+
if (totalInput < amountNum + finalFee) {
|
|
272
|
+
throw new Error(`Insufficient funds: There is ${totalInput}, need ${amountNum + finalFee}`);
|
|
273
|
+
}
|
|
274
|
+
psbt.addOutput({
|
|
275
|
+
address,
|
|
276
|
+
value: amountNum,
|
|
277
|
+
});
|
|
278
|
+
const change = totalInput - amountNum - finalFee;
|
|
279
|
+
let remainingChange = change;
|
|
280
|
+
if (addNoise &&
|
|
281
|
+
remainingChange >= BITCOIN_CONSTANTS.DUST_LIMIT_P2WPKH * 2) {
|
|
282
|
+
const noiseAmount = Math.floor(remainingChange / 3);
|
|
283
|
+
if (noiseAmount >= BITCOIN_CONSTANTS.DUST_LIMIT_P2WPKH) {
|
|
284
|
+
const noiseAddress = await this.generateChangeAddress();
|
|
285
|
+
if (inputAddresses.has(noiseAddress)) {
|
|
286
|
+
throw new Error("Generated noise address matches an input address");
|
|
287
|
+
}
|
|
288
|
+
psbt.addOutput({
|
|
289
|
+
address: noiseAddress,
|
|
290
|
+
value: noiseAmount,
|
|
291
|
+
});
|
|
292
|
+
remainingChange -= noiseAmount;
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
if (remainingChange >= BITCOIN_CONSTANTS.DUST_LIMIT_P2WPKH) {
|
|
296
|
+
const changeAddress = await this.generateChangeAddress();
|
|
297
|
+
if (inputAddresses.has(changeAddress)) {
|
|
298
|
+
throw new Error("Generated change address matches an input address");
|
|
299
|
+
}
|
|
300
|
+
psbt.addOutput({
|
|
301
|
+
address: changeAddress,
|
|
302
|
+
value: remainingChange,
|
|
303
|
+
});
|
|
304
|
+
}
|
|
305
|
+
else if (remainingChange > 0) {
|
|
306
|
+
console.log(`The remaining ${remainingChange} satoshi went to the commission`);
|
|
307
|
+
}
|
|
308
|
+
return { psbt, usedUtxos };
|
|
309
|
+
}
|
|
310
|
+
async getFeeRate(overrideRate) {
|
|
311
|
+
if (overrideRate !== undefined) {
|
|
312
|
+
return overrideRate;
|
|
313
|
+
}
|
|
314
|
+
try {
|
|
315
|
+
const url = this.getApiUrl("/fee-estimates");
|
|
316
|
+
const response = await axios_1.default.get(url);
|
|
317
|
+
const feeRate = Math.ceil(response.data["2"]) || BITCOIN_CONSTANTS.SAT_PER_VBYTE;
|
|
318
|
+
return feeRate > 0 ? feeRate : BITCOIN_CONSTANTS.SAT_PER_VBYTE;
|
|
319
|
+
}
|
|
320
|
+
catch (error) {
|
|
321
|
+
console.error("Error receiving commission, using standard:", error);
|
|
322
|
+
return BITCOIN_CONSTANTS.SAT_PER_VBYTE;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
async calculateFee(inputsCount, outputsCount, overrideFeeRate) {
|
|
326
|
+
const txSize = BITCOIN_CONSTANTS.BASE_TX_SIZE +
|
|
327
|
+
inputsCount * BITCOIN_CONSTANTS.INPUT_SIZE +
|
|
328
|
+
outputsCount * BITCOIN_CONSTANTS.OUTPUT_SIZE;
|
|
329
|
+
const feeRate = await this.getFeeRate(overrideFeeRate);
|
|
330
|
+
const fee = Math.ceil(txSize * feeRate);
|
|
331
|
+
return fee;
|
|
332
|
+
}
|
|
333
|
+
async signTransaction(psbt) {
|
|
334
|
+
const [signed] = await this.signTransactions([psbt]);
|
|
335
|
+
return signed;
|
|
336
|
+
}
|
|
337
|
+
async signTransactions(psbts) {
|
|
338
|
+
(0, utils_1.required)(this.wallet, "Wallet not connected");
|
|
339
|
+
return psbts.map(psbt => {
|
|
340
|
+
psbt.data.inputs.forEach((input, index) => {
|
|
341
|
+
const utxo = this.lastUsedUtxos[index];
|
|
342
|
+
const keyPair = utxo.derivedKey || this.wallet;
|
|
343
|
+
psbt.signInput(index, this.toSigner(keyPair));
|
|
344
|
+
});
|
|
345
|
+
psbt.finalizeAllInputs();
|
|
346
|
+
const tx = psbt.extractTransaction();
|
|
347
|
+
const txHex = tx.toHex();
|
|
348
|
+
return txHex;
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
async getBalance() {
|
|
352
|
+
const utxos = await this.fetchAllUTXOs();
|
|
353
|
+
const totalBalance = utxos.reduce((sum, utxo) => sum + utxo.value, 0);
|
|
354
|
+
return totalBalance.toString();
|
|
355
|
+
}
|
|
356
|
+
async getEmptyTransaction() {
|
|
357
|
+
return {
|
|
358
|
+
version: 2,
|
|
359
|
+
locktime: 0,
|
|
360
|
+
ins: [],
|
|
361
|
+
outs: [],
|
|
362
|
+
};
|
|
363
|
+
}
|
|
364
|
+
async signMessage() {
|
|
365
|
+
throw new Error("Method not implemented");
|
|
366
|
+
}
|
|
367
|
+
async verifyMessage() {
|
|
368
|
+
throw new Error("Method not implemented");
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
exports.BTC = BTC;
|
|
372
|
+
//# sourceMappingURL=btc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"btc.js","sourceRoot":"","sources":["../../../../src/multichain/core/btc.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NEAR = exports.xrplGetLastSequence = exports.XRPL = exports.TON = exports.SOLANA = exports.MULTIVERSX = exports.IBC = exports.EVM = exports.required = exports.DefaultChain = void 0;
|
|
3
|
+
exports.NEAR = exports.xrplGetLastSequence = exports.XRPL = exports.BTC = exports.TON = exports.SOLANA = exports.MULTIVERSX = exports.IBC = exports.EVM = exports.required = exports.DefaultChain = void 0;
|
|
4
4
|
var defaultChain_1 = require("./types/defaultChain");
|
|
5
5
|
Object.defineProperty(exports, "DefaultChain", { enumerable: true, get: function () { return defaultChain_1.DefaultChain; } });
|
|
6
6
|
var utils_1 = require("./utils");
|
|
@@ -16,6 +16,8 @@ var solana_1 = require("./solana");
|
|
|
16
16
|
Object.defineProperty(exports, "SOLANA", { enumerable: true, get: function () { return solana_1.SOLANA; } });
|
|
17
17
|
var ton_1 = require("./ton");
|
|
18
18
|
Object.defineProperty(exports, "TON", { enumerable: true, get: function () { return ton_1.TON; } });
|
|
19
|
+
var btc_1 = require("./btc");
|
|
20
|
+
Object.defineProperty(exports, "BTC", { enumerable: true, get: function () { return btc_1.BTC; } });
|
|
19
21
|
// The official XRPL Library is called "xrpl" which conflicts with the name of our XRPL SDK
|
|
20
22
|
var xrp_1 = require("./xrp");
|
|
21
23
|
Object.defineProperty(exports, "XRPL", { enumerable: true, get: function () { return xrp_1.XRPL; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/multichain/core/index.ts"],"names":[],"mappings":";;;AAAA,qDAM6B;AALzB,4GAAA,YAAY,OAAA;AAkBhB,iCAAkC;AAAzB,iGAAA,QAAQ,OAAA;AAEjB,sBAAsB;AACtB,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AAEZ,2FAA2F;AAC3F,6BAAiD;AAAxC,2FAAA,IAAI,OAAA;AAAE,0GAAA,mBAAmB,OAAA;AAClC,+BAA6B;AAApB,4FAAA,IAAI,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/multichain/core/index.ts"],"names":[],"mappings":";;;AAAA,qDAM6B;AALzB,4GAAA,YAAY,OAAA;AAkBhB,iCAAkC;AAAzB,iGAAA,QAAQ,OAAA;AAEjB,sBAAsB;AACtB,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AAEZ,2FAA2F;AAC3F,6BAAiD;AAAxC,2FAAA,IAAI,OAAA;AAAE,0GAAA,mBAAmB,OAAA;AAClC,+BAA6B;AAApB,4FAAA,IAAI,OAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BTC as BTCCore } from "../core/btc";
|
|
2
|
+
import * as bitcoin from "bitcoinjs-lib";
|
|
3
|
+
export declare class BTC extends BTCCore {
|
|
4
|
+
private static instances;
|
|
5
|
+
constructor(rpcUrl: string, network?: bitcoin.Network);
|
|
6
|
+
sendTransaction(signedTxHex: string): Promise<{
|
|
7
|
+
result: string;
|
|
8
|
+
hash: string;
|
|
9
|
+
}>;
|
|
10
|
+
static createInstance(networkType: string, rpcUrl: string, network: bitcoin.Network): BTC;
|
|
11
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.BTC = void 0;
|
|
40
|
+
const btc_1 = require("../core/btc");
|
|
41
|
+
const utils_1 = require("../core/utils");
|
|
42
|
+
const axios_1 = __importDefault(require("axios"));
|
|
43
|
+
const bitcoin = __importStar(require("bitcoinjs-lib"));
|
|
44
|
+
const interfaces_1 = require("../core/types/interfaces");
|
|
45
|
+
class BTC extends btc_1.BTC {
|
|
46
|
+
constructor(rpcUrl, network = bitcoin.networks.testnet) {
|
|
47
|
+
super(rpcUrl, network);
|
|
48
|
+
}
|
|
49
|
+
async sendTransaction(signedTxHex) {
|
|
50
|
+
(0, utils_1.required)(this.provider, "Provider not connected");
|
|
51
|
+
try {
|
|
52
|
+
const url = this.provider.includes("blockstream.info") &&
|
|
53
|
+
this.provider.endsWith("/api")
|
|
54
|
+
? `${this.provider.slice(0, -4)}/api/tx`
|
|
55
|
+
: `${this.provider}/tx`;
|
|
56
|
+
const response = await axios_1.default.post(url, signedTxHex, {
|
|
57
|
+
headers: { "Content-Type": "text/plain" },
|
|
58
|
+
});
|
|
59
|
+
// Blockstream returns txid as a string; adjust if other providers differ
|
|
60
|
+
if (response.data) {
|
|
61
|
+
return {
|
|
62
|
+
result: interfaces_1.XmTransactionResult.success,
|
|
63
|
+
hash: response.data,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
throw new Error("Failed to send transaction: no txid in response");
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
console.error("Error sending transaction:", error);
|
|
72
|
+
throw new Error(`Failed to send transaction: ${axios_1.default.isAxiosError(error) ? error.message : String(error)}`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
static createInstance(networkType, rpcUrl, network) {
|
|
76
|
+
if (!BTC.instances.has(networkType)) {
|
|
77
|
+
const instance = new BTC(rpcUrl, network);
|
|
78
|
+
BTC.instances.set(networkType, instance);
|
|
79
|
+
}
|
|
80
|
+
const instance = BTC.instances.get(networkType);
|
|
81
|
+
if (instance) {
|
|
82
|
+
return instance;
|
|
83
|
+
}
|
|
84
|
+
throw new Error("Could not create or retrieve instance");
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.BTC = BTC;
|
|
88
|
+
BTC.instances = new Map();
|
|
89
|
+
//# sourceMappingURL=btc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"btc.js","sourceRoot":"","sources":["../../../../src/multichain/localsdk/btc.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAsD;AACtD,mDAAkD;AAClD,kDAAyB;AACzB,uDAAwC;AACxC,mEAAwE;AAExE,MAAa,GAAI,SAAQ,SAAO;IAG5B,YACI,MAAc,EACd,UAA2B,OAAO,CAAC,QAAQ,CAAC,OAAO;QAEnD,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC1B,CAAC;IAED,KAAK,CAAC,eAAe,CACjB,WAAmB;QAEnB,IAAA,gBAAQ,EAAC,IAAI,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAA;QAEjD,IAAI,CAAC;YACD,MAAM,GAAG,GACL,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,CAAC;gBAC1C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC1B,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;gBACxC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,KAAK,CAAA;YAE/B,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE;gBAChD,OAAO,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE;aAC5C,CAAC,CAAA;YAEF,yEAAyE;YACzE,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAChB,OAAO;oBACH,MAAM,EAAE,gCAAmB,CAAC,OAAO;oBACnC,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACtB,CAAA;YACL,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,KAAK,CACX,iDAAiD,CACpD,CAAA;YACL,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAA;YAClD,MAAM,IAAI,KAAK,CACX,+BACI,eAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAC5D,EAAE,CACL,CAAA;QACL,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,cAAc,CACxB,WAAmB,EACnB,MAAc,EACd,OAAwB;QAExB,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;YACzC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QAC5C,CAAC;QACD,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QAC/C,IAAI,QAAQ,EAAE,CAAC;YACX,OAAO,QAAQ,CAAA;QACnB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAC5D,CAAC;;AA7DL,kBA8DC;AA7DkB,aAAS,GAAqB,IAAI,GAAG,EAAe,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NEAR = exports.MULTIVERSX = exports.SOLANA = exports.TON = exports.IBC = exports.EVM = exports.XRPL = void 0;
|
|
3
|
+
exports.BTC = exports.NEAR = exports.MULTIVERSX = exports.SOLANA = exports.TON = exports.IBC = exports.EVM = exports.XRPL = void 0;
|
|
4
4
|
var xrp_1 = require("./xrp");
|
|
5
5
|
Object.defineProperty(exports, "XRPL", { enumerable: true, get: function () { return xrp_1.XRPL; } });
|
|
6
6
|
var evm_1 = require("./evm");
|
|
@@ -15,4 +15,6 @@ var multiversx_1 = require("./multiversx");
|
|
|
15
15
|
Object.defineProperty(exports, "MULTIVERSX", { enumerable: true, get: function () { return multiversx_1.MULTIVERSX; } });
|
|
16
16
|
var near_1 = require("./near");
|
|
17
17
|
Object.defineProperty(exports, "NEAR", { enumerable: true, get: function () { return near_1.NEAR; } });
|
|
18
|
+
var btc_1 = require("./btc");
|
|
19
|
+
Object.defineProperty(exports, "BTC", { enumerable: true, get: function () { return btc_1.BTC; } });
|
|
18
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/multichain/localsdk/index.ts"],"names":[],"mappings":";;;AAAA,6BAA4B;AAAnB,2FAAA,IAAI,OAAA;AACb,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,+BAA6B;AAApB,4FAAA,IAAI,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/multichain/localsdk/index.ts"],"names":[],"mappings":";;;AAAA,6BAA4B;AAAnB,2FAAA,IAAI,OAAA;AACb,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,6BAA2B;AAAlB,0FAAA,GAAG,OAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BTC = void 0;
|
|
4
|
+
const core_1 = require("../core");
|
|
5
|
+
class BTC extends core_1.BTC {
|
|
6
|
+
constructor(rpc_url) {
|
|
7
|
+
super(rpc_url);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.BTC = BTC;
|
|
11
|
+
//# sourceMappingURL=btc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"btc.js","sourceRoot":"","sources":["../../../../src/multichain/websdk/btc.ts"],"names":[],"mappings":";;;AAAA,4CAAuE;AAEvE,MAAa,GAAI,SAAQ,UAAU;IAC/B,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAA;IAClB,CAAC;CAGJ;AAND,kBAMC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NEAR = exports.MULTIVERSX = exports.SOLANA = exports.TON = exports.IBC = exports.EVM = exports.XRPL = void 0;
|
|
3
|
+
exports.BTC = exports.NEAR = exports.MULTIVERSX = exports.SOLANA = exports.TON = exports.IBC = exports.EVM = exports.XRPL = void 0;
|
|
4
4
|
var xrp_1 = require("./xrp");
|
|
5
5
|
Object.defineProperty(exports, "XRPL", { enumerable: true, get: function () { return xrp_1.XRPL; } });
|
|
6
6
|
var evm_1 = require("./evm");
|
|
@@ -15,4 +15,6 @@ var multiversx_1 = require("./multiversx");
|
|
|
15
15
|
Object.defineProperty(exports, "MULTIVERSX", { enumerable: true, get: function () { return multiversx_1.MULTIVERSX; } });
|
|
16
16
|
var near_1 = require("./near");
|
|
17
17
|
Object.defineProperty(exports, "NEAR", { enumerable: true, get: function () { return near_1.NEAR; } });
|
|
18
|
+
var btc_1 = require("./btc");
|
|
19
|
+
Object.defineProperty(exports, "BTC", { enumerable: true, get: function () { return btc_1.BTC; } });
|
|
18
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/multichain/websdk/index.ts"],"names":[],"mappings":";;;AAAA,6BAA4B;AAAnB,2FAAA,IAAI,OAAA;AACb,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,+BAA6B;AAApB,4FAAA,IAAI,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/multichain/websdk/index.ts"],"names":[],"mappings":";;;AAAA,6BAA4B;AAAnB,2FAAA,IAAI,OAAA;AACb,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,6BAA2B;AAAlB,0FAAA,GAAG,OAAA"}
|
|
@@ -50,7 +50,10 @@ export interface Web2CoreTargetIdentityPayload {
|
|
|
50
50
|
context: string;
|
|
51
51
|
proof: string;
|
|
52
52
|
}
|
|
53
|
-
|
|
53
|
+
type GistProofUrl = `https://gist.github.com/${string}/${string}`;
|
|
54
|
+
type RawGistProofUrl = `https://gist.githubusercontent.com/${string}/${string}`;
|
|
55
|
+
type RawGithubProofUrl = `https://raw.githubusercontent.com/${string}/${string}`;
|
|
56
|
+
export type GithubProof = RawGistProofUrl | GistProofUrl | RawGithubProofUrl;
|
|
54
57
|
export interface InferFromGithubPayload extends Web2CoreTargetIdentityPayload {
|
|
55
58
|
context: "github";
|
|
56
59
|
proof: GithubProof;
|
|
@@ -74,3 +77,4 @@ export interface Web2IdentityPayload {
|
|
|
74
77
|
payload: InferFromGithubPayload | InferFromTwitterPayload;
|
|
75
78
|
}
|
|
76
79
|
export type IdentityPayload = XmIdentityPayload | Web2IdentityPayload;
|
|
80
|
+
export {};
|
|
@@ -178,7 +178,16 @@ exports.DemosTransactions = {
|
|
|
178
178
|
// ! Problem: we are tampering the ValidityData, so the tx will fail miserably (see validateTransaction.ts -> signValidityData)
|
|
179
179
|
// See prepare(data) for a possible solution
|
|
180
180
|
//validationData.response.data.transaction = signedTx
|
|
181
|
-
|
|
181
|
+
const res = await demos.call("execute", "", validationData, "broadcastTx");
|
|
182
|
+
try {
|
|
183
|
+
return {
|
|
184
|
+
...res,
|
|
185
|
+
response: JSON.parse(res.response),
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
catch (error) {
|
|
189
|
+
return res;
|
|
190
|
+
}
|
|
182
191
|
},
|
|
183
192
|
// NOTE Subnet transactions methods are imported and exposed in demos.ts from the l2ps.ts file.
|
|
184
193
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DemosTransactions.js","sourceRoot":"","sources":["../../../src/websdk/DemosTransactions.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"DemosTransactions.js","sourceRoot":"","sources":["../../../src/websdk/DemosTransactions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA8B;AAG9B,2CAAuC;AACvC,6DAA8C;AAI9C,mDAA+C;AAC/C,+CAAwD;AAG3C,QAAA,iBAAiB,GAAG;IAC7B,uBAAuB;IACvB,oDAAoD;IACpD,KAAK,EAAE;QACH,OAAO,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;IACjD,CAAC;IACD,4DAA4D;IAC5D,OAAO,EAAE,KAAK,WAAW,OAAY,IAAI;QACrC,sDAAsD;QACtD,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;QAErD,mDAAmD;QACnD,+CAA+C;QAC/C,IAAI,IAAI;YAAE,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QACpC,OAAO,MAAM,CAAA;IACjB,CAAC;IACD;;;;;;;;OAQG;IACH,KAAK,CAAC,GAAG,CAAC,EAAU,EAAE,MAAc,EAAE,KAAY;QAC9C,IAAA,oBAAQ,EAAC,KAAK,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAA;QAC/C,IAAI,EAAE,GAAG,yBAAiB,CAAC,KAAK,EAAE,CAAA;QAElC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACpD,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;QAE/C,+BAA+B;QAC/B,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QACtB,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAA;QAClB,EAAE,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAA;QAC5B,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;QAC1B,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAA;QAC1B,EAAE,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACjC,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG;YACd,QAAQ;YACR,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE;SAClD,CAAA;QAED,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC/B,CAAC;IACD;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAU,EAAE,MAAc,EAAE,KAAY;QAC7C,OAAO,yBAAiB,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IACnD,CAAC;IACD,8CAA8C;IAC9C;;;;;;OAMG;IACH,IAAI,EAAE,KAAK,WACP,MAAmB,EACnB,OAAiB;QAEjB,IAAA,oBAAQ,EAAC,OAAO,EAAE,0BAA0B,CAAC,CAAA;QAE7C,uFAAuF;QACvF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;YAC9D,MAAM,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACzC,CAAC;QAED,wCAAwC;QACxC,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,SAAuB,CAAA;QAErD,2EAA2E;QAC3E,wEAAwE;QACxE,MAAM,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,6BAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAE/D,sCAAsC;QACtC,MAAM,CAAC,IAAI,GAAG,MAAM,IAAA,eAAM,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;QAE1D,+BAA+B;QAC/B,IAAI,aAAa,GAAG,oBAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;YACvC,OAAO,EAAE,MAAM,CAAC,IAAI;YACpB,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,OAAO,CAAC,UAAwB;SAC/C,CAAC,CAAA;QAEF,uCAAuC;QACvC,MAAM,CAAC,SAAS,GAAG;YACf,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,aAAa;SACtB,CAAA;QAED,gDAAgD;QAChD,IAAI,QAAQ,GAAG,oBAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;YACpC,OAAO,EAAE,MAAM,CAAC,IAAI;YACpB,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,aAAa;YACxB,SAAS,EAAE,OAAO,CAAC,SAAuB;SAC7C,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;QACpD,CAAC;QAED,OAAO,MAAM,CAAA,CAAC,2CAA2C;IAC7D,CAAC;IACD,8CAA8C;IAC9C;;;;;OAKG;IACH,OAAO,EAAE,KAAK,WAAW,WAAwB,EAAE,KAAY;QAC3D,IAAI,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,CAAC,CAAA;QACxE,6CAA6C;QAC7C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACX,sCAAsC;gBAClC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CACrC,CAAA;QACL,CAAC;QAED,OAAO,QAAuC,CAAA;IAClD,CAAC;IACD;;;;;;;OAOG;IACH,SAAS,EAAE,KAAK,WACZ,cAA2C,EAC3C,KAAY;QAEZ,gDAAgD;QAChD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CACX,wCAAwC;gBACpC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAC3C,CAAA;QACL,CAAC;QACD,6EAA6E;QAC7E,mDAAmD;QACnD,0DAA0D;QAC1D,wCAAwC;QACxC,+HAA+H;QAC/H,4CAA4C;QAC5C,qDAAqD;QAErD,MAAM,GAAG,GAAI,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,cAAc,EAAE,aAAa,CAAC,CAAA;QAE3E,IAAI,CAAC;YACD,OAAO;gBACH,GAAG,GAAG;gBACN,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;aACrC,CAAA;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAA;QACd,CAAC;IACL,CAAC;IACD,+FAA+F;CAClG,CAAA"}
|
|
@@ -156,11 +156,11 @@ class Web2IdentityParsers {
|
|
|
156
156
|
}
|
|
157
157
|
parseTwitterUsername() {
|
|
158
158
|
// https://x.com/demos_xyz/status/1901630063692365884
|
|
159
|
-
|
|
160
|
-
return username;
|
|
159
|
+
return this.proof_url.split("/")[3];
|
|
161
160
|
}
|
|
162
161
|
parseGithubUsername() {
|
|
163
|
-
|
|
162
|
+
// https://gist.github.com/cwilvx/abf8db960c16dfc7f6dc1da840852f79
|
|
163
|
+
return this.proof_url.split("/")[3];
|
|
164
164
|
}
|
|
165
165
|
parse() {
|
|
166
166
|
switch (this.context) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GCRGeneration.js","sourceRoot":"","sources":["../../../src/websdk/GCRGeneration.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"GCRGeneration.js","sourceRoot":"","sources":["../../../src/websdk/GCRGeneration.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kynesyslabs/demosdk",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.12",
|
|
4
4
|
"main": "build/index.js",
|
|
5
5
|
"types": "build/index.d.ts",
|
|
6
6
|
"author": "Kynesys Labs",
|
|
@@ -36,7 +36,8 @@
|
|
|
36
36
|
"test:native": "rm -rf build && jest --testMatch '**/tests/native*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
|
|
37
37
|
"test:web2": "rm -rf build && jest --testMatch '**/tests/web2*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
|
|
38
38
|
"test:demos": "rm -rf build && jest --testMatch '**/tests/communication/demos.spec.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
|
|
39
|
-
"test:rubic-service": "rm -rf build && jest --testMatch '**/tests/**/rubic*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose"
|
|
39
|
+
"test:rubic-service": "rm -rf build && jest --testMatch '**/tests/**/rubic*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
|
|
40
|
+
"test:btc": "rm -rf build && jest --testMatch '**/tests/multichain**/bitcoin*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose"
|
|
40
41
|
},
|
|
41
42
|
"dependencies": {
|
|
42
43
|
"@cosmjs/proto-signing": "^0.32.3",
|
|
@@ -59,9 +60,12 @@
|
|
|
59
60
|
"axios": "^1.7.4",
|
|
60
61
|
"big-integer": "^1.6.52",
|
|
61
62
|
"bignumber.js": "^9.1.2",
|
|
63
|
+
"bip32": "^5.0.0-rc.0",
|
|
64
|
+
"bitcoinjs-lib": "^6.1.7",
|
|
62
65
|
"bs58": "^5.0.0",
|
|
63
66
|
"buffer": "^6.0.3",
|
|
64
67
|
"dotenv": "^16.4.7",
|
|
68
|
+
"ecpair": "^3.0.0",
|
|
65
69
|
"ethers": "^6.11.1",
|
|
66
70
|
"libsodium-wrappers-sumo": "^0.7.15",
|
|
67
71
|
"lodash": "^4.17.21",
|
|
@@ -75,6 +79,7 @@
|
|
|
75
79
|
"rubic-sdk": "^5.52.6",
|
|
76
80
|
"socket.io-client": "^4.7.2",
|
|
77
81
|
"superdilithium": "^2.0.6",
|
|
82
|
+
"tiny-secp256k1": "^2.2.3",
|
|
78
83
|
"tweetnacl": "^1.0.3",
|
|
79
84
|
"tweetnacl-util": "^0.15.1",
|
|
80
85
|
"twitter-api-sdk": "^1.2.1",
|