@xchainjs/xchain-utxo-providers 0.1.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.
Files changed (35) hide show
  1. package/README.md +72 -0
  2. package/lib/index.d.ts +1 -0
  3. package/lib/index.js +14 -0
  4. package/lib/index.js.map +1 -0
  5. package/lib/providers/blockcypher/blockcypher-api-types.d.ts +96 -0
  6. package/lib/providers/blockcypher/blockcypher-api-types.js +11 -0
  7. package/lib/providers/blockcypher/blockcypher-api-types.js.map +1 -0
  8. package/lib/providers/blockcypher/blockcypher-api.d.ts +69 -0
  9. package/lib/providers/blockcypher/blockcypher-api.js +233 -0
  10. package/lib/providers/blockcypher/blockcypher-api.js.map +1 -0
  11. package/lib/providers/blockcypher/blockcypher-data-provider.d.ts +52 -0
  12. package/lib/providers/blockcypher/blockcypher-data-provider.js +366 -0
  13. package/lib/providers/blockcypher/blockcypher-data-provider.js.map +1 -0
  14. package/lib/providers/haskoin/haskoin-api-types.d.ts +113 -0
  15. package/lib/providers/haskoin/haskoin-api-types.js +14 -0
  16. package/lib/providers/haskoin/haskoin-api-types.js.map +1 -0
  17. package/lib/providers/haskoin/haskoin-api.d.ts +150 -0
  18. package/lib/providers/haskoin/haskoin-api.js +485 -0
  19. package/lib/providers/haskoin/haskoin-api.js.map +1 -0
  20. package/lib/providers/haskoin/haskoin-data-provider.d.ts +37 -0
  21. package/lib/providers/haskoin/haskoin-data-provider.js +269 -0
  22. package/lib/providers/haskoin/haskoin-data-provider.js.map +1 -0
  23. package/lib/providers/index.d.ts +8 -0
  24. package/lib/providers/index.js +34 -0
  25. package/lib/providers/index.js.map +1 -0
  26. package/lib/providers/sochainv3/sochain-api-types.d.ts +101 -0
  27. package/lib/providers/sochainv3/sochain-api-types.js +13 -0
  28. package/lib/providers/sochainv3/sochain-api-types.js.map +1 -0
  29. package/lib/providers/sochainv3/sochain-api.d.ts +113 -0
  30. package/lib/providers/sochainv3/sochain-api.js +354 -0
  31. package/lib/providers/sochainv3/sochain-api.js.map +1 -0
  32. package/lib/providers/sochainv3/sochain-data-provider.d.ts +42 -0
  33. package/lib/providers/sochainv3/sochain-data-provider.js +312 -0
  34. package/lib/providers/sochainv3/sochain-data-provider.js.map +1 -0
  35. package/package.json +45 -0
@@ -0,0 +1,312 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23
+ return new (P || (P = Promise))(function (resolve, reject) {
24
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
28
+ });
29
+ };
30
+ var __generator = (this && this.__generator) || function (thisArg, body) {
31
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
32
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
33
+ function verb(n) { return function (v) { return step([n, v]); }; }
34
+ function step(op) {
35
+ if (f) throw new TypeError("Generator is already executing.");
36
+ while (_) try {
37
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
38
+ if (y = 0, t) op = [op[0] & 2, t.value];
39
+ switch (op[0]) {
40
+ case 0: case 1: t = op; break;
41
+ case 4: _.label++; return { value: op[1], done: false };
42
+ case 5: _.label++; y = op[1]; op = [0]; continue;
43
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
44
+ default:
45
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
46
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
47
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
48
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
49
+ if (t[2]) _.ops.pop();
50
+ _.trys.pop(); continue;
51
+ }
52
+ op = body.call(thisArg, _);
53
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
54
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
55
+ }
56
+ };
57
+ Object.defineProperty(exports, "__esModule", { value: true });
58
+ exports.SochainProvider = void 0;
59
+ var xchain_client_1 = require("@xchainjs/xchain-client");
60
+ var xchain_util_1 = require("@xchainjs/xchain-util");
61
+ var sochain = __importStar(require("./sochain-api"));
62
+ var SochainProvider = /** @class */ (function () {
63
+ function SochainProvider(baseUrl, apiKey, chain, asset, assetDecimals, sochainNetwork) {
64
+ if (baseUrl === void 0) { baseUrl = 'https://sochain.com/api/v3'; }
65
+ this.baseUrl = baseUrl;
66
+ this._apiKey = apiKey;
67
+ this.chain = chain;
68
+ this.asset = asset;
69
+ this.assetDecimals = assetDecimals;
70
+ this.sochainNetwork = sochainNetwork;
71
+ this.asset;
72
+ this.chain;
73
+ }
74
+ Object.defineProperty(SochainProvider.prototype, "apiKey", {
75
+ get: function () {
76
+ return this._apiKey;
77
+ },
78
+ set: function (value) {
79
+ this._apiKey = value;
80
+ },
81
+ enumerable: false,
82
+ configurable: true
83
+ });
84
+ SochainProvider.prototype.broadcastTx = function (txHex) {
85
+ return __awaiter(this, void 0, void 0, function () {
86
+ return __generator(this, function (_a) {
87
+ switch (_a.label) {
88
+ case 0: return [4 /*yield*/, sochain.broadcastTx({
89
+ apiKey: this._apiKey,
90
+ sochainUrl: this.baseUrl,
91
+ network: this.sochainNetwork,
92
+ txHex: txHex,
93
+ })];
94
+ case 1: return [2 /*return*/, _a.sent()];
95
+ }
96
+ });
97
+ });
98
+ };
99
+ SochainProvider.prototype.getConfirmedUnspentTxs = function (address) {
100
+ return __awaiter(this, void 0, void 0, function () {
101
+ var allUnspent, confirmedUnspent;
102
+ return __generator(this, function (_a) {
103
+ switch (_a.label) {
104
+ case 0: return [4 /*yield*/, sochain.getUnspentTxs({
105
+ apiKey: this._apiKey,
106
+ sochainUrl: this.baseUrl,
107
+ network: this.sochainNetwork,
108
+ address: address,
109
+ page: 1,
110
+ })];
111
+ case 1:
112
+ allUnspent = _a.sent();
113
+ confirmedUnspent = allUnspent.filter(function (i) { return i.block; }) //if it has a block noumber it's been confirmed
114
+ ;
115
+ return [2 /*return*/, this.mapUTXOs(confirmedUnspent)];
116
+ }
117
+ });
118
+ });
119
+ };
120
+ SochainProvider.prototype.getUnspentTxs = function (address) {
121
+ return __awaiter(this, void 0, void 0, function () {
122
+ var allUnspent;
123
+ return __generator(this, function (_a) {
124
+ switch (_a.label) {
125
+ case 0: return [4 /*yield*/, sochain.getUnspentTxs({
126
+ apiKey: this._apiKey,
127
+ sochainUrl: this.baseUrl,
128
+ network: this.sochainNetwork,
129
+ address: address,
130
+ page: 1,
131
+ })];
132
+ case 1:
133
+ allUnspent = _a.sent();
134
+ return [2 /*return*/, this.mapUTXOs(allUnspent)];
135
+ }
136
+ });
137
+ });
138
+ };
139
+ SochainProvider.prototype.getBalance = function (address, assets /*ignored*/, confirmedOnly) {
140
+ return __awaiter(this, void 0, void 0, function () {
141
+ var amount, error_1;
142
+ return __generator(this, function (_a) {
143
+ switch (_a.label) {
144
+ case 0:
145
+ assets; // TODO can we fix this?
146
+ _a.label = 1;
147
+ case 1:
148
+ _a.trys.push([1, 3, , 4]);
149
+ return [4 /*yield*/, sochain.getBalance({
150
+ apiKey: this._apiKey,
151
+ sochainUrl: this.baseUrl,
152
+ network: this.sochainNetwork,
153
+ address: address,
154
+ confirmedOnly: !!confirmedOnly,
155
+ assetDecimals: this.assetDecimals,
156
+ })];
157
+ case 2:
158
+ amount = _a.sent();
159
+ return [2 /*return*/, [{ amount: amount, asset: this.asset }]];
160
+ case 3:
161
+ error_1 = _a.sent();
162
+ throw new Error("Could not get balances for address " + address);
163
+ case 4: return [2 /*return*/];
164
+ }
165
+ });
166
+ });
167
+ };
168
+ /**
169
+ * Get transaction history of a given address with pagination options.
170
+ * By default it will return the transaction history of the current wallet.
171
+ *
172
+ * @param {TxHistoryParams} params The options to get transaction history. (optional)
173
+ * @returns {TxsPage} The transaction history.
174
+ */
175
+ SochainProvider.prototype.getTransactions = function (params) {
176
+ var _a;
177
+ return __awaiter(this, void 0, void 0, function () {
178
+ var offset, limit, firstPage, lastPage, offsetOnFirstPage, txHashesToFetch, page, response, txsToGet, error_2, total, transactions, result;
179
+ var _this = this;
180
+ return __generator(this, function (_b) {
181
+ switch (_b.label) {
182
+ case 0:
183
+ offset = (_a = params === null || params === void 0 ? void 0 : params.offset) !== null && _a !== void 0 ? _a : 0;
184
+ limit = (params === null || params === void 0 ? void 0 : params.limit) || 10;
185
+ if (offset < 0 || limit < 0)
186
+ throw Error('ofset and limit must be equal or greater than 0');
187
+ firstPage = Math.floor(offset / 10) + 1;
188
+ lastPage = limit > 10 ? firstPage + Math.floor(limit / 10) : firstPage;
189
+ offsetOnFirstPage = offset % 10;
190
+ txHashesToFetch = [];
191
+ page = firstPage;
192
+ _b.label = 1;
193
+ case 1:
194
+ _b.trys.push([1, 5, , 6]);
195
+ _b.label = 2;
196
+ case 2:
197
+ if (!(page <= lastPage)) return [3 /*break*/, 4];
198
+ return [4 /*yield*/, sochain.getTxs({
199
+ apiKey: this._apiKey,
200
+ sochainUrl: this.baseUrl,
201
+ network: this.sochainNetwork,
202
+ address: "" + (params === null || params === void 0 ? void 0 : params.address),
203
+ page: page,
204
+ })];
205
+ case 3:
206
+ response = _b.sent();
207
+ if (response.transactions.length === 0)
208
+ return [3 /*break*/, 4];
209
+ if (page === firstPage && response.transactions.length > offsetOnFirstPage) {
210
+ txsToGet = response.transactions.slice(offsetOnFirstPage);
211
+ this.addArrayUpToLimit(txHashesToFetch, txsToGet.map(function (i) { return i.hash; }), limit);
212
+ }
213
+ else {
214
+ this.addArrayUpToLimit(txHashesToFetch, response.transactions.map(function (i) { return i.hash; }), limit);
215
+ }
216
+ page++;
217
+ return [3 /*break*/, 2];
218
+ case 4: return [3 /*break*/, 6];
219
+ case 5:
220
+ error_2 = _b.sent();
221
+ console.error(error_2);
222
+ return [3 /*break*/, 6];
223
+ case 6:
224
+ total = txHashesToFetch.length;
225
+ return [4 /*yield*/, Promise.all(txHashesToFetch.map(function (hash) { return _this.getTransactionData(hash); }))];
226
+ case 7:
227
+ transactions = _b.sent();
228
+ result = {
229
+ total: total,
230
+ txs: transactions,
231
+ };
232
+ return [2 /*return*/, result];
233
+ }
234
+ });
235
+ });
236
+ };
237
+ /**
238
+ * Get the transaction details of a given transaction id.
239
+ *
240
+ * @param {string} txId The transaction id.
241
+ * @returns {Tx} The transaction details of the given transaction id.
242
+ */
243
+ SochainProvider.prototype.getTransactionData = function (txId) {
244
+ return __awaiter(this, void 0, void 0, function () {
245
+ var rawTx, error_3;
246
+ var _this = this;
247
+ return __generator(this, function (_a) {
248
+ switch (_a.label) {
249
+ case 0:
250
+ _a.trys.push([0, 2, , 3]);
251
+ return [4 /*yield*/, sochain.getTx({
252
+ apiKey: this._apiKey,
253
+ sochainUrl: this.baseUrl,
254
+ network: this.sochainNetwork,
255
+ hash: txId,
256
+ })];
257
+ case 1:
258
+ rawTx = _a.sent();
259
+ return [2 /*return*/, {
260
+ asset: this.asset,
261
+ from: rawTx.inputs.map(function (i) { return ({
262
+ from: i.address,
263
+ amount: xchain_util_1.assetToBase(xchain_util_1.assetAmount(i.value, _this.assetDecimals)),
264
+ }); }),
265
+ to: rawTx.outputs
266
+ .filter(function (i) { return i.type !== 'nulldata'; }) //filter out op_return outputs
267
+ .map(function (i) { return ({ to: i.address, amount: xchain_util_1.assetToBase(xchain_util_1.assetAmount(i.value, _this.assetDecimals)) }); }),
268
+ date: new Date(rawTx.time * 1000),
269
+ type: xchain_client_1.TxType.Transfer,
270
+ hash: rawTx.hash,
271
+ }];
272
+ case 2:
273
+ error_3 = _a.sent();
274
+ console.error(error_3);
275
+ throw error_3;
276
+ case 3: return [2 /*return*/];
277
+ }
278
+ });
279
+ });
280
+ };
281
+ SochainProvider.prototype.mapUTXOs = function (utxos) {
282
+ var _this = this;
283
+ return utxos.map(function (utxo) { return ({
284
+ hash: utxo.hash,
285
+ index: utxo.index,
286
+ value: xchain_util_1.assetToBase(xchain_util_1.assetAmount(utxo.value, _this.assetDecimals)).amount().toNumber(),
287
+ witnessUtxo: {
288
+ value: xchain_util_1.assetToBase(xchain_util_1.assetAmount(utxo.value, _this.assetDecimals)).amount().toNumber(),
289
+ script: Buffer.from(utxo.script, 'hex'),
290
+ },
291
+ txHex: utxo.tx_hex,
292
+ }); });
293
+ };
294
+ /**
295
+ * helper function tto limit adding to an array
296
+ *
297
+ * @param arr array to be added to
298
+ * @param toAdd elements to add
299
+ * @param limit do not add more than this limit
300
+ */
301
+ SochainProvider.prototype.addArrayUpToLimit = function (arr, toAdd, limit) {
302
+ for (var index = 0; index < toAdd.length; index++) {
303
+ var element = toAdd[index];
304
+ if (arr.length < limit) {
305
+ arr.push(element);
306
+ }
307
+ }
308
+ };
309
+ return SochainProvider;
310
+ }());
311
+ exports.SochainProvider = SochainProvider;
312
+ //# sourceMappingURL=sochain-data-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sochain-data-provider.js","sourceRoot":"","sources":["../../../src/providers/sochainv3/sochain-data-provider.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,45 @@
1
+ {
2
+ "name": "@xchainjs/xchain-utxo-providers",
3
+ "version": "0.1.0",
4
+ "license": "MIT",
5
+ "main": "lib/index.js",
6
+ "module": "lib/index.esm.js",
7
+ "typings": "lib/index.d.ts",
8
+ "directories": {
9
+ "lib": "lib",
10
+ "test": "__tests__"
11
+ },
12
+ "files": [
13
+ "lib"
14
+ ],
15
+ "repository": {
16
+ "type": "git",
17
+ "url": "git@github.com:xchainjs/xchainjs-lib.git"
18
+ },
19
+ "scripts": {
20
+ "build": "yarn run clean && yarn run compile",
21
+ "clean": "rimraf -rf ./lib",
22
+ "compile": "tsc -p tsconfig.build.json",
23
+ "prepublishOnly": "yarn run build",
24
+ "e2e": "jest --config jest.config.e2e.js",
25
+ "test": "jest --passWithNoTests"
26
+ },
27
+ "publishConfig": {
28
+ "access": "public"
29
+ },
30
+ "devDependencies": {
31
+ "@xchainjs/xchain-client": "^0.13.6",
32
+ "@xchainjs/xchain-crypto": "^0.2.6",
33
+ "@xchainjs/xchain-util": "^0.12.0",
34
+ "axios": "^0.25.0"
35
+ },
36
+ "peerDependencies": {
37
+ "@xchainjs/xchain-client": "^0.13.6",
38
+ "@xchainjs/xchain-crypto": "^0.2.6",
39
+ "@xchainjs/xchain-util": "^0.12.0",
40
+ "axios": "^0.25.0"
41
+ },
42
+ "dependencies": {
43
+ "@supercharge/promise-pool": "^2.4.0"
44
+ }
45
+ }