@airgap/mina 0.13.45-beta.1 → 0.13.45-beta.3

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.
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
3
  if (k2 === undefined) k2 = k;
15
4
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -26,71 +15,46 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
26
15
  }) : function(o, v) {
27
16
  o["default"] = v;
28
17
  });
29
- var __importStar = (this && this.__importStar) || function (mod) {
30
- if (mod && mod.__esModule) return mod;
31
- var result = {};
32
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
- __setModuleDefault(result, mod);
34
- return result;
35
- };
36
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
37
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
38
- return new (P || (P = Promise))(function (resolve, reject) {
39
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
40
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
41
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
42
- step((generator = generator.apply(thisArg, _arguments || [])).next());
43
- });
44
- };
45
- var __generator = (this && this.__generator) || function (thisArg, body) {
46
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
47
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
48
- function verb(n) { return function (v) { return step([n, v]); }; }
49
- function step(op) {
50
- if (f) throw new TypeError("Generator is already executing.");
51
- while (_) try {
52
- 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;
53
- if (y = 0, t) op = [op[0] & 2, t.value];
54
- switch (op[0]) {
55
- case 0: case 1: t = op; break;
56
- case 4: _.label++; return { value: op[1], done: false };
57
- case 5: _.label++; y = op[1]; op = [0]; continue;
58
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
59
- default:
60
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
61
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
62
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
63
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
64
- if (t[2]) _.ops.pop();
65
- _.trys.pop(); continue;
66
- }
67
- op = body.call(thisArg, _);
68
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
69
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
70
- }
71
- };
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
+ })();
72
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
73
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
74
37
  };
75
38
  Object.defineProperty(exports, "__esModule", { value: true });
76
- exports.createMinaProtocolOptions = exports.MINA_TESTNET_PROTOCOL_NETWORK = exports.MINA_MAINNET_PROTOCOL_NETWORK = exports.createMinaProtocol = exports.MinaProtocolImpl = void 0;
77
- var coinlib_core_1 = require("@airgap/coinlib-core");
78
- var bignumber_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber"));
39
+ exports.MINA_TESTNET_PROTOCOL_NETWORK = exports.MINA_MAINNET_PROTOCOL_NETWORK = exports.MinaProtocolImpl = void 0;
40
+ exports.createMinaProtocol = createMinaProtocol;
41
+ exports.createMinaProtocolOptions = createMinaProtocolOptions;
42
+ const coinlib_core_1 = require("@airgap/coinlib-core");
43
+ const bignumber_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber"));
79
44
  // @ts-ignore
80
- var BitGo = __importStar(require("@airgap/coinlib-core/dependencies/src/bitgo-utxo-lib-5d91049fd7a988382df81c8260e244ee56d57aac/src"));
81
- var errors_1 = require("@airgap/coinlib-core/errors");
82
- var crypto_1 = require("@airgap/crypto");
83
- var module_kit_1 = require("@airgap/module-kit");
84
- var mina_signer_1 = __importDefault(require("mina-signer"));
85
- var MinaExplorerIndexer_1 = require("../indexer/MinaExplorerIndexer");
86
- var GraphQLNode_1 = require("../node/GraphQLNode");
87
- var indexer_1 = require("../types/indexer");
88
- var key_1 = require("../utils/key");
89
- var math_1 = require("../utils/math");
45
+ const BitGo = __importStar(require("@airgap/coinlib-core/dependencies/src/bitgo-utxo-lib-5d91049fd7a988382df81c8260e244ee56d57aac/src"));
46
+ const errors_1 = require("@airgap/coinlib-core/errors");
47
+ const crypto_1 = require("@airgap/crypto");
48
+ const module_kit_1 = require("@airgap/module-kit");
49
+ const mina_signer_1 = __importDefault(require("mina-signer"));
50
+ const MinaExplorerIndexer_1 = require("../indexer/MinaExplorerIndexer");
51
+ const GraphQLNode_1 = require("../node/GraphQLNode");
52
+ const indexer_1 = require("../types/indexer");
53
+ const key_1 = require("../utils/key");
54
+ const math_1 = require("../utils/math");
90
55
  // Implementation
91
- var MinaProtocolImpl = /** @class */ (function () {
92
- function MinaProtocolImpl(options, node, indexer) {
93
- if (options === void 0) { options = {}; }
56
+ class MinaProtocolImpl {
57
+ constructor(options = {}, node, indexer) {
94
58
  this.bitcoinJS = {
95
59
  lib: BitGo,
96
60
  config: { network: BitGo.networks.bitcoin }
@@ -108,7 +72,7 @@ var MinaProtocolImpl = /** @class */ (function () {
108
72
  units: this.units,
109
73
  mainUnit: 'MINA',
110
74
  account: {
111
- standardDerivationPath: "m/44'/12586'/0'/0/0",
75
+ standardDerivationPath: `m/44'/12586'/0'/0/0`,
112
76
  address: {
113
77
  isCaseSensitive: true,
114
78
  regex: '^B62[a-km-zA-HJ-NP-Z1-9]{52}$',
@@ -121,31 +85,19 @@ var MinaProtocolImpl = /** @class */ (function () {
121
85
  algorithm: 'secp256k1'
122
86
  };
123
87
  this.options = createMinaProtocolOptions(options.network);
124
- this.node = node !== null && node !== void 0 ? node : new GraphQLNode_1.GraphQLNode(this.options.network.rpcUrl);
125
- this.indexer = indexer !== null && indexer !== void 0 ? indexer : new MinaExplorerIndexer_1.MinaExplorerIndexer(this.options.network.blockExplorerApi);
88
+ this.node = node ?? new GraphQLNode_1.GraphQLNode(this.options.network.rpcUrl);
89
+ this.indexer = indexer ?? new MinaExplorerIndexer_1.MinaExplorerIndexer(this.options.network.blockExplorerApi);
126
90
  }
127
- MinaProtocolImpl.prototype.getMetadata = function () {
128
- return __awaiter(this, void 0, void 0, function () {
129
- return __generator(this, function (_a) {
130
- return [2 /*return*/, this.metadata];
131
- });
132
- });
133
- };
134
- MinaProtocolImpl.prototype.getAddressFromPublicKey = function (publicKey) {
135
- return __awaiter(this, void 0, void 0, function () {
136
- return __generator(this, function (_a) {
137
- return [2 /*return*/, publicKey.value];
138
- });
139
- });
140
- };
141
- MinaProtocolImpl.prototype.getDetailsFromTransaction = function (transaction, publicKey) {
142
- return __awaiter(this, void 0, void 0, function () {
143
- return __generator(this, function (_a) {
144
- return [2 /*return*/, this.getDetailsFromMinaPayment(publicKey, transaction.data)];
145
- });
146
- });
147
- };
148
- MinaProtocolImpl.prototype.getDetailsFromMinaPayment = function (publicKey, payment) {
91
+ async getMetadata() {
92
+ return this.metadata;
93
+ }
94
+ async getAddressFromPublicKey(publicKey) {
95
+ return publicKey.value;
96
+ }
97
+ async getDetailsFromTransaction(transaction, publicKey) {
98
+ return this.getDetailsFromMinaPayment(publicKey, transaction.data);
99
+ }
100
+ getDetailsFromMinaPayment(publicKey, payment) {
149
101
  return [
150
102
  {
151
103
  from: [payment.from],
@@ -157,233 +109,145 @@ var MinaProtocolImpl = /** @class */ (function () {
157
109
  network: this.options.network
158
110
  }
159
111
  ];
160
- };
161
- MinaProtocolImpl.prototype.getCryptoConfiguration = function () {
162
- return __awaiter(this, void 0, void 0, function () {
163
- return __generator(this, function (_a) {
164
- return [2 /*return*/, this.cryptoConfiguration];
165
- });
166
- });
167
- };
168
- MinaProtocolImpl.prototype.getKeyPairFromDerivative = function (derivative) {
169
- return __awaiter(this, void 0, void 0, function () {
170
- var node, secretKey;
171
- return __generator(this, function (_a) {
172
- node = this.derivativeToBip32Node(derivative);
173
- secretKey = (0, key_1.finalizeSecretKey)(node.keyPair.getPrivateKeyBuffer());
174
- return [2 /*return*/, {
175
- secretKey: secretKey,
176
- publicKey: (0, key_1.derivePublicKey)(this.getMinaClient(), secretKey)
177
- }];
178
- });
179
- });
180
- };
181
- MinaProtocolImpl.prototype.signTransactionWithSecretKey = function (transaction, secretKey) {
182
- var _a;
183
- return __awaiter(this, void 0, void 0, function () {
184
- var client, signed;
185
- return __generator(this, function (_b) {
186
- client = this.getMinaClient(transaction.networkType);
187
- signed = client.signPayment({
188
- to: transaction.data.to,
189
- from: transaction.data.from,
190
- amount: transaction.data.amount,
191
- fee: transaction.data.fee,
192
- nonce: transaction.data.nonce,
193
- memo: transaction.data.memo,
194
- validUntil: transaction.data.validUntil
195
- }, secretKey.value);
196
- return [2 /*return*/, (0, module_kit_1.newSignedTransaction)({
197
- data: {
198
- to: signed.data.to,
199
- from: signed.data.from,
200
- amount: signed.data.amount.toString(),
201
- fee: signed.data.fee.toString(),
202
- nonce: signed.data.nonce.toString(),
203
- memo: signed.data.memo,
204
- validUntil: (_a = signed.data.validUntil) === null || _a === void 0 ? void 0 : _a.toString()
205
- },
206
- signature: {
207
- type: 'legacy',
208
- field: signed.signature.field,
209
- scalar: signed.signature.scalar
210
- }
211
- })];
212
- });
112
+ }
113
+ async getCryptoConfiguration() {
114
+ return this.cryptoConfiguration;
115
+ }
116
+ async getKeyPairFromDerivative(derivative) {
117
+ const node = this.derivativeToBip32Node(derivative);
118
+ const secretKey = (0, key_1.finalizeSecretKey)(node.keyPair.getPrivateKeyBuffer());
119
+ return {
120
+ secretKey,
121
+ publicKey: (0, key_1.derivePublicKey)(this.getMinaClient(), secretKey)
122
+ };
123
+ }
124
+ async signTransactionWithSecretKey(transaction, secretKey) {
125
+ const client = this.getMinaClient(transaction.networkType);
126
+ const signed = client.signPayment({
127
+ to: transaction.data.to,
128
+ from: transaction.data.from,
129
+ amount: transaction.data.amount,
130
+ fee: transaction.data.fee,
131
+ nonce: transaction.data.nonce,
132
+ memo: transaction.data.memo,
133
+ validUntil: transaction.data.validUntil
134
+ }, secretKey.value);
135
+ return (0, module_kit_1.newSignedTransaction)({
136
+ data: {
137
+ to: signed.data.to,
138
+ from: signed.data.from,
139
+ amount: signed.data.amount.toString(),
140
+ fee: signed.data.fee.toString(),
141
+ nonce: signed.data.nonce.toString(),
142
+ memo: signed.data.memo,
143
+ validUntil: signed.data.validUntil?.toString()
144
+ },
145
+ signature: {
146
+ type: 'legacy',
147
+ field: signed.signature.field,
148
+ scalar: signed.signature.scalar
149
+ }
213
150
  });
214
- };
151
+ }
215
152
  // Online
216
- MinaProtocolImpl.prototype.getNetwork = function () {
217
- return __awaiter(this, void 0, void 0, function () {
218
- return __generator(this, function (_a) {
219
- return [2 /*return*/, this.options.network];
220
- });
221
- });
222
- };
223
- MinaProtocolImpl.prototype.getTransactionsForPublicKey = function (publicKey, limit, cursor) {
224
- var _a;
225
- return __awaiter(this, void 0, void 0, function () {
226
- var transactions, lastDateTime, hasNext, airGapTransactions;
227
- var _this = this;
228
- return __generator(this, function (_b) {
229
- switch (_b.label) {
230
- case 0: return [4 /*yield*/, this.indexer.getTransactions(publicKey.value, limit, cursor === null || cursor === void 0 ? void 0 : cursor.lastDateTime)];
231
- case 1:
232
- transactions = _b.sent();
233
- lastDateTime = (_a = transactions[transactions.length - 1]) === null || _a === void 0 ? void 0 : _a.dateTime;
234
- hasNext = transactions.length >= limit;
235
- airGapTransactions = transactions.map(function (transaction) { return ({
236
- from: [transaction.from],
237
- to: [transaction.to],
238
- isInbound: transaction.to === publicKey.value,
239
- amount: (0, module_kit_1.newAmount)(transaction.amount, 'blockchain'),
240
- fee: (0, module_kit_1.newAmount)(transaction.fee, 'blockchain'),
241
- arbitraryData: transaction.memo,
242
- network: _this.options.network,
243
- type: transaction.kind !== indexer_1.ACCOUNT_TRANSFER_KIND ? transaction.kind : undefined,
244
- timestamp: Date.parse(transaction.dateTime),
245
- status: {
246
- type: transaction.hash ? 'applied' : transaction.failureReason ? 'failed' : 'unknown',
247
- hash: transaction.hash
248
- }
249
- }); });
250
- return [2 /*return*/, {
251
- transactions: airGapTransactions,
252
- cursor: {
253
- hasNext: hasNext,
254
- lastDateTime: lastDateTime
255
- }
256
- }];
257
- }
258
- });
259
- });
260
- };
261
- MinaProtocolImpl.prototype.getBalanceOfPublicKey = function (publicKey) {
262
- return __awaiter(this, void 0, void 0, function () {
263
- var balance;
264
- return __generator(this, function (_a) {
265
- switch (_a.label) {
266
- case 0: return [4 /*yield*/, this.node.getBalance(publicKey.value)];
267
- case 1:
268
- balance = _a.sent();
269
- return [2 /*return*/, {
270
- total: (0, module_kit_1.newAmount)(balance.total, 'blockchain'),
271
- transferable: (0, module_kit_1.newAmount)(balance.liquid, 'blockchain')
272
- }];
273
- }
274
- });
275
- });
276
- };
277
- MinaProtocolImpl.prototype.getTransactionMaxAmountWithPublicKey = function (publicKey, _to, configuration) {
278
- return __awaiter(this, void 0, void 0, function () {
279
- var balance, fee, maxAmount;
280
- return __generator(this, function (_a) {
281
- switch (_a.label) {
282
- case 0: return [4 /*yield*/, this.node.getBalance(publicKey.value)];
283
- case 1:
284
- balance = _a.sent();
285
- fee = (configuration === null || configuration === void 0 ? void 0 : configuration.fee) ? (0, module_kit_1.newAmount)(configuration.fee).blockchain(this.units).value : '0';
286
- maxAmount = new bignumber_1.default(balance.liquid).minus(fee);
287
- return [2 /*return*/, (0, module_kit_1.newAmount)(maxAmount, 'blockchain')];
288
- }
289
- });
290
- });
291
- };
292
- MinaProtocolImpl.prototype.getTransactionFeeWithPublicKey = function (_publicKey, _details, _configuration) {
293
- return __awaiter(this, void 0, void 0, function () {
294
- var fees, feesQuantile;
295
- return __generator(this, function (_a) {
296
- switch (_a.label) {
297
- case 0: return [4 /*yield*/, this.indexer.getLatestFees(20)];
298
- case 1:
299
- fees = _a.sent();
300
- feesQuantile = function (q) {
301
- return (0, math_1.quantile)(fees, q, {
302
- isSorted: true /* `getLatestFees` returns an already sorted (ASC) list */,
303
- roundingMode: bignumber_1.default.ROUND_CEIL
304
- });
305
- };
306
- return [2 /*return*/, {
307
- low: (0, module_kit_1.newAmount)(feesQuantile(0.25), 'blockchain'),
308
- medium: (0, module_kit_1.newAmount)(feesQuantile(0.5), 'blockchain'),
309
- high: (0, module_kit_1.newAmount)(feesQuantile(0.75), 'blockchain')
310
- }];
311
- }
312
- });
313
- });
314
- };
315
- MinaProtocolImpl.prototype.prepareTransactionWithPublicKey = function (publicKey, details, configuration) {
316
- var _a, _b;
317
- return __awaiter(this, void 0, void 0, function () {
318
- var paymentDetails, nonce, fee, _c, balance, amountBlockchain, feeBlockchain, transferableBlockchain;
319
- return __generator(this, function (_d) {
320
- switch (_d.label) {
321
- case 0:
322
- if (details.length !== 1) {
323
- throw new errors_1.ConditionViolationError(coinlib_core_1.Domain.MINA, 'Multiple transactions not supported.');
324
- }
325
- paymentDetails = details[0];
326
- return [4 /*yield*/, this.node.getNonce(publicKey.value)];
327
- case 1:
328
- nonce = _d.sent();
329
- if (!((_a = configuration === null || configuration === void 0 ? void 0 : configuration.fee) !== null && _a !== void 0)) return [3 /*break*/, 2];
330
- _c = _a;
331
- return [3 /*break*/, 4];
332
- case 2: return [4 /*yield*/, this.getTransactionFeeWithPublicKey(publicKey, details, configuration)];
333
- case 3:
334
- _c = (_d.sent()).medium;
335
- _d.label = 4;
336
- case 4:
337
- fee = _c;
338
- return [4 /*yield*/, this.getBalanceOfPublicKey(publicKey)];
339
- case 5:
340
- balance = _d.sent();
341
- amountBlockchain = (0, module_kit_1.newAmount)(paymentDetails.amount).blockchain(this.units);
342
- feeBlockchain = (0, module_kit_1.newAmount)(fee).blockchain(this.units);
343
- transferableBlockchain = (0, module_kit_1.newAmount)((_b = balance.transferable) !== null && _b !== void 0 ? _b : balance.total).blockchain(this.units);
344
- if (new bignumber_1.default(transferableBlockchain.value).minus(amountBlockchain.value).minus(feeBlockchain.value).lt(0)) {
345
- throw new errors_1.BalanceError(coinlib_core_1.Domain.MINA, 'Insfficient balance.');
346
- }
347
- return [2 /*return*/, (0, module_kit_1.newUnsignedTransaction)({
348
- networkType: this.options.network.minaType,
349
- data: {
350
- to: paymentDetails.to,
351
- from: publicKey.value,
352
- amount: amountBlockchain.value,
353
- fee: feeBlockchain.value,
354
- nonce: nonce,
355
- memo: paymentDetails.arbitraryData
356
- }
357
- })];
358
- }
359
- });
153
+ async getNetwork() {
154
+ return this.options.network;
155
+ }
156
+ async getTransactionsForPublicKey(publicKey, limit, cursor) {
157
+ const transactions = await this.indexer.getTransactions(publicKey.value, limit, cursor?.lastDateTime);
158
+ const lastDateTime = transactions[transactions.length - 1]?.dateTime;
159
+ const hasNext = transactions.length >= limit;
160
+ const airGapTransactions = transactions.map((transaction) => ({
161
+ from: [transaction.from],
162
+ to: [transaction.to],
163
+ isInbound: transaction.to === publicKey.value,
164
+ amount: (0, module_kit_1.newAmount)(transaction.amount, 'blockchain'),
165
+ fee: (0, module_kit_1.newAmount)(transaction.fee, 'blockchain'),
166
+ arbitraryData: transaction.memo,
167
+ network: this.options.network,
168
+ type: transaction.kind !== indexer_1.ACCOUNT_TRANSFER_KIND ? transaction.kind : undefined,
169
+ timestamp: Date.parse(transaction.dateTime),
170
+ status: {
171
+ type: transaction.hash ? 'applied' : transaction.failureReason ? 'failed' : 'unknown',
172
+ hash: transaction.hash
173
+ }
174
+ }));
175
+ return {
176
+ transactions: airGapTransactions,
177
+ cursor: {
178
+ hasNext,
179
+ lastDateTime
180
+ }
181
+ };
182
+ }
183
+ async getBalanceOfPublicKey(publicKey) {
184
+ const balance = await this.node.getBalance(publicKey.value);
185
+ return {
186
+ total: (0, module_kit_1.newAmount)(balance.total, 'blockchain'),
187
+ transferable: (0, module_kit_1.newAmount)(balance.liquid, 'blockchain')
188
+ };
189
+ }
190
+ async getTransactionMaxAmountWithPublicKey(publicKey, _to, configuration) {
191
+ const balance = await this.node.getBalance(publicKey.value);
192
+ const fee = configuration?.fee ? (0, module_kit_1.newAmount)(configuration.fee).blockchain(this.units).value : '0';
193
+ const maxAmount = new bignumber_1.default(balance.liquid).minus(fee);
194
+ return (0, module_kit_1.newAmount)(maxAmount, 'blockchain');
195
+ }
196
+ async getTransactionFeeWithPublicKey(_publicKey, _details, _configuration) {
197
+ const fees = await this.indexer.getLatestFees(20);
198
+ const feesQuantile = (q) => (0, math_1.quantile)(fees, q, {
199
+ isSorted: true /* `getLatestFees` returns an already sorted (ASC) list */,
200
+ roundingMode: bignumber_1.default.ROUND_CEIL
360
201
  });
361
- };
362
- MinaProtocolImpl.prototype.broadcastTransaction = function (transaction) {
363
- return __awaiter(this, void 0, void 0, function () {
364
- return __generator(this, function (_a) {
365
- return [2 /*return*/, this.node.sendTransaction(transaction.data, transaction.signature)];
366
- });
202
+ return {
203
+ low: (0, module_kit_1.newAmount)(feesQuantile(0.25), 'blockchain'),
204
+ medium: (0, module_kit_1.newAmount)(feesQuantile(0.5), 'blockchain'),
205
+ high: (0, module_kit_1.newAmount)(feesQuantile(0.75), 'blockchain')
206
+ };
207
+ }
208
+ async prepareTransactionWithPublicKey(publicKey, details, configuration) {
209
+ if (details.length !== 1) {
210
+ throw new errors_1.ConditionViolationError(coinlib_core_1.Domain.MINA, 'Multiple transactions not supported.');
211
+ }
212
+ const paymentDetails = details[0];
213
+ const nonce = await this.node.getNonce(publicKey.value);
214
+ const fee = configuration?.fee ?? (await this.getTransactionFeeWithPublicKey(publicKey, details, configuration)).medium;
215
+ const balance = await this.getBalanceOfPublicKey(publicKey);
216
+ const amountBlockchain = (0, module_kit_1.newAmount)(paymentDetails.amount).blockchain(this.units);
217
+ const feeBlockchain = (0, module_kit_1.newAmount)(fee).blockchain(this.units);
218
+ const transferableBlockchain = (0, module_kit_1.newAmount)(balance.transferable ?? balance.total).blockchain(this.units);
219
+ if (new bignumber_1.default(transferableBlockchain.value).minus(amountBlockchain.value).minus(feeBlockchain.value).lt(0)) {
220
+ throw new errors_1.BalanceError(coinlib_core_1.Domain.MINA, 'Insfficient balance.');
221
+ }
222
+ return (0, module_kit_1.newUnsignedTransaction)({
223
+ networkType: this.options.network.minaType,
224
+ data: {
225
+ to: paymentDetails.to,
226
+ from: publicKey.value,
227
+ amount: amountBlockchain.value,
228
+ fee: feeBlockchain.value,
229
+ nonce,
230
+ memo: paymentDetails.arbitraryData
231
+ }
367
232
  });
368
- };
233
+ }
234
+ async broadcastTransaction(transaction) {
235
+ return this.node.sendTransaction(transaction.data, transaction.signature);
236
+ }
369
237
  // Custom
370
- MinaProtocolImpl.prototype.getMinaClient = function (network) {
371
- if (network === void 0) { network = this.options.network.minaType; }
372
- return new mina_signer_1.default({ network: network });
373
- };
374
- MinaProtocolImpl.prototype.derivativeToBip32Node = function (derivative) {
375
- var bip32Node = (0, crypto_1.encodeDerivative)('bip32', derivative);
238
+ getMinaClient(network = this.options.network.minaType) {
239
+ return new mina_signer_1.default({ network });
240
+ }
241
+ derivativeToBip32Node(derivative) {
242
+ const bip32Node = (0, crypto_1.encodeDerivative)('bip32', derivative);
376
243
  return this.bitcoinJS.lib.HDNode.fromBase58(bip32Node.secretKey, this.bitcoinJS.config.network);
377
- };
378
- return MinaProtocolImpl;
379
- }());
244
+ }
245
+ }
380
246
  exports.MinaProtocolImpl = MinaProtocolImpl;
381
247
  // Factory
382
- function createMinaProtocol(options) {
383
- if (options === void 0) { options = {}; }
248
+ function createMinaProtocol(options = {}) {
384
249
  return new MinaProtocolImpl(options);
385
250
  }
386
- exports.createMinaProtocol = createMinaProtocol;
387
251
  exports.MINA_MAINNET_PROTOCOL_NETWORK = {
388
252
  name: 'Mainnet',
389
253
  type: 'mainnet',
@@ -400,12 +264,10 @@ exports.MINA_TESTNET_PROTOCOL_NETWORK = {
400
264
  blockExplorerApi: 'https://devnet.graphql.minaexplorer.com',
401
265
  minaType: 'testnet'
402
266
  };
403
- var DEFAULT_MINA_PROTOCOL_NETWORK = exports.MINA_MAINNET_PROTOCOL_NETWORK;
404
- function createMinaProtocolOptions(network) {
405
- if (network === void 0) { network = {}; }
267
+ const DEFAULT_MINA_PROTOCOL_NETWORK = exports.MINA_MAINNET_PROTOCOL_NETWORK;
268
+ function createMinaProtocolOptions(network = {}) {
406
269
  return {
407
- network: __assign(__assign({}, DEFAULT_MINA_PROTOCOL_NETWORK), network)
270
+ network: { ...DEFAULT_MINA_PROTOCOL_NETWORK, ...network }
408
271
  };
409
272
  }
410
- exports.createMinaProtocolOptions = createMinaProtocolOptions;
411
273
  //# sourceMappingURL=MinaProtocol.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MinaProtocol.js","sourceRoot":"","sources":["../../../src/v1/protocol/MinaProtocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MinaProtocol.js","sourceRoot":"","sources":["../../../src/v1/protocol/MinaProtocol.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqUA,gDAEC;AAsBD,8DAIC;AAjWD,uDAAkE;AAClE,mHAA0F;AAC1F,aAAa;AACb,yIAA0H;AAC1H,wDAAmF;AACnF,2CAAiD;AACjD,mDAqB2B;AAC3B,8DAAgC;AAEhC,wEAAoE;AAEpE,qDAAiD;AAGjD,8CAA4E;AAI5E,sCAAiE;AACjE,wCAAwC;AAgBxC,iBAAiB;AAEjB,MAAa,gBAAgB;IAe3B,YAAmB,UAAiD,EAAE,EAAE,IAAe,EAAE,OAAqB;QAV7F,cAAS,GAKtB;YACF,GAAG,EAAE,KAAK;YACV,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE;SAC5C,CAAA;QAQD,SAAS;QAEQ,UAAK,GAAqC;YACzD,IAAI,EAAE;gBACJ,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;gBACzB,QAAQ,EAAE,CAAC;aACZ;SACF,CAAA;QAEe,aAAQ,GAAgC;YACtD,UAAU,EAAE,kCAAmB,CAAC,IAAI;YACpC,IAAI,EAAE,MAAM;YAEZ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,MAAM;YAEhB,OAAO,EAAE;gBACP,sBAAsB,EAAE,qBAAqB;gBAC7C,OAAO,EAAE;oBACP,eAAe,EAAE,IAAI;oBACrB,KAAK,EAAE,+BAA+B;oBACtC,WAAW,EAAE,QAAQ;iBACtB;aACF;SACF,CAAA;QA+BD,UAAU;QAEO,wBAAmB,GAA4B;YAC9D,SAAS,EAAE,WAAW;SACvB,CAAA;QAhEC,IAAI,CAAC,OAAO,GAAG,yBAAyB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACzD,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI,yBAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAChE,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,IAAI,yCAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAC1F,CAAC;IA4BM,KAAK,CAAC,WAAW;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,uBAAuB,CAAC,SAAoB;QACvD,OAAO,SAAS,CAAC,KAAK,CAAA;IACxB,CAAC;IAEM,KAAK,CAAC,yBAAyB,CACpC,WAA4D,EAC5D,SAAoB;QAEpB,OAAO,IAAI,CAAC,yBAAyB,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,CAAA;IACpE,CAAC;IAEO,yBAAyB,CAAC,SAAoB,EAAE,OAAoB;QAC1E,OAAO;YACL;gBACE,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;gBACpB,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChB,SAAS,EAAE,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC,KAAK;gBACzC,MAAM,EAAE,IAAA,sBAAS,EAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC;gBAC/C,GAAG,EAAE,IAAA,sBAAS,EAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC;gBACzC,aAAa,EAAE,OAAO,CAAC,IAAI;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;aAC9B;SACF,CAAA;IACH,CAAC;IAQM,KAAK,CAAC,sBAAsB;QACjC,OAAO,IAAI,CAAC,mBAAmB,CAAA;IACjC,CAAC;IAEM,KAAK,CAAC,wBAAwB,CAAC,UAA4B;QAChE,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAA;QACnD,MAAM,SAAS,GAAc,IAAA,uBAAiB,EAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAA;QAElF,OAAO;YACL,SAAS;YACT,SAAS,EAAE,IAAA,qBAAe,EAAC,IAAI,CAAC,aAAa,EAAE,EAAE,SAAS,CAAC;SAC5D,CAAA;IACH,CAAC;IAEM,KAAK,CAAC,4BAA4B,CAAC,WAAoC,EAAE,SAAoB;QAClG,MAAM,MAAM,GAAW,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;QAClE,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAC/B;YACE,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE;YACvB,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI;YAC3B,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM;YAC/B,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG;YACzB,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK;YAC7B,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI;YAC3B,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU;SACxC,EACD,SAAS,CAAC,KAAK,CAChB,CAAA;QAED,OAAO,IAAA,iCAAoB,EAAwB;YACjD,IAAI,EAAE;gBACJ,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;gBAClB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;gBACtB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;gBACrC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;gBAC/B,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACnC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;gBACtB,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE;aAC/C;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,KAAK;gBAC7B,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM;aAChC;SACF,CAAC,CAAA;IACJ,CAAC;IAED,SAAS;IAEF,KAAK,CAAC,UAAU;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;IAC7B,CAAC;IAEM,KAAK,CAAC,2BAA2B,CACtC,SAAoB,EACpB,KAAa,EACb,MAA0C;QAE1C,MAAM,YAAY,GAAyB,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,CAAA;QAE3H,MAAM,YAAY,GAAuB,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAA;QACxF,MAAM,OAAO,GAAY,YAAY,CAAC,MAAM,IAAI,KAAK,CAAA;QAErD,MAAM,kBAAkB,GAAmC,YAAY,CAAC,GAAG,CAAC,CAAC,WAA+B,EAAE,EAAE,CAAC,CAAC;YAChH,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC;YACxB,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;YACpB,SAAS,EAAE,WAAW,CAAC,EAAE,KAAK,SAAS,CAAC,KAAK;YAC7C,MAAM,EAAE,IAAA,sBAAS,EAAC,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC;YACnD,GAAG,EAAE,IAAA,sBAAS,EAAC,WAAW,CAAC,GAAG,EAAE,YAAY,CAAC;YAC7C,aAAa,EAAE,WAAW,CAAC,IAAI;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;YAC7B,IAAI,EAAE,WAAW,CAAC,IAAI,KAAK,+BAAqB,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YAC/E,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC;YAC3C,MAAM,EAAE;gBACN,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;gBACrF,IAAI,EAAE,WAAW,CAAC,IAAI;aACvB;SACF,CAAC,CAAC,CAAA;QAEH,OAAO;YACL,YAAY,EAAE,kBAAkB;YAChC,MAAM,EAAE;gBACN,OAAO;gBACP,YAAY;aACb;SACF,CAAA;IACH,CAAC;IAEM,KAAK,CAAC,qBAAqB,CAAC,SAAoB;QACrD,MAAM,OAAO,GAAmB,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAE3E,OAAO;YACL,KAAK,EAAE,IAAA,sBAAS,EAAC,OAAO,CAAC,KAAK,EAAE,YAAY,CAAC;YAC7C,YAAY,EAAE,IAAA,sBAAS,EAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC;SACtD,CAAA;IACH,CAAC;IAEM,KAAK,CAAC,oCAAoC,CAC/C,SAAoB,EACpB,GAAa,EACb,aAAuD;QAEvD,MAAM,OAAO,GAAmB,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAC3E,MAAM,GAAG,GAAG,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC,IAAA,sBAAS,EAAC,aAAa,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAA;QAEhG,MAAM,SAAS,GAAG,IAAI,mBAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAE1D,OAAO,IAAA,sBAAS,EAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IAC3C,CAAC;IAEM,KAAK,CAAC,8BAA8B,CACzC,UAAqB,EACrB,QAAyC,EACzC,cAA+C;QAE/C,MAAM,IAAI,GAAa,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;QAC3D,MAAM,YAAY,GAAG,CAAC,CAAS,EAAa,EAAE,CAC5C,IAAA,eAAQ,EAAC,IAAI,EAAE,CAAC,EAAE;YAChB,QAAQ,EAAE,IAAI,CAAC,0DAA0D;YACzE,YAAY,EAAE,mBAAS,CAAC,UAAU;SACnC,CAAC,CAAA;QAEJ,OAAO;YACL,GAAG,EAAE,IAAA,sBAAS,EAAC,YAAY,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC;YAChD,MAAM,EAAE,IAAA,sBAAS,EAAC,YAAY,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC;YAClD,IAAI,EAAE,IAAA,sBAAS,EAAC,YAAY,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC;SAClD,CAAA;IACH,CAAC;IAEM,KAAK,CAAC,+BAA+B,CAC1C,SAAoB,EACpB,OAAwC,EACxC,aAAuD;QAEvD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,gCAAuB,CAAC,qBAAM,CAAC,IAAI,EAAE,sCAAsC,CAAC,CAAA;QACxF,CAAC;QAED,MAAM,cAAc,GAAkC,OAAO,CAAC,CAAC,CAAC,CAAA;QAChE,MAAM,KAAK,GAAW,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAC/D,MAAM,GAAG,GACP,aAAa,EAAE,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,8BAA8B,CAAC,SAAS,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAA;QAE7G,MAAM,OAAO,GAAuB,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAA;QAE/E,MAAM,gBAAgB,GAAsB,IAAA,sBAAS,EAAC,cAAc,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACnG,MAAM,aAAa,GAAsB,IAAA,sBAAS,EAAC,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC9E,MAAM,sBAAsB,GAAsB,IAAA,sBAAS,EAAC,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAEzH,IAAI,IAAI,mBAAS,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/G,MAAM,IAAI,qBAAY,CAAC,qBAAM,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAA;QAC7D,CAAC;QAED,OAAO,IAAA,mCAAsB,EAA0B;YACrD,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ;YAC1C,IAAI,EAAE;gBACJ,EAAE,EAAE,cAAc,CAAC,EAAE;gBACrB,IAAI,EAAE,SAAS,CAAC,KAAK;gBACrB,MAAM,EAAE,gBAAgB,CAAC,KAAK;gBAC9B,GAAG,EAAE,aAAa,CAAC,KAAK;gBACxB,KAAK;gBACL,IAAI,EAAE,cAAc,CAAC,aAAa;aACnC;SACF,CAAC,CAAA;IACJ,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAAC,WAAkC;QAClE,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;IAC3E,CAAC;IAED,SAAS;IAED,aAAa,CAAC,UAA2B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ;QAC5E,OAAO,IAAI,qBAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAChC,CAAC;IAEO,qBAAqB,CAAC,UAA4B;QACxD,MAAM,SAAS,GAAG,IAAA,yBAAgB,EAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QAEvD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACjG,CAAC;CACF;AAvQD,4CAuQC;AAED,UAAU;AAEV,SAAgB,kBAAkB,CAAC,UAAiD,EAAE;IACpF,OAAO,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAA;AACtC,CAAC;AAEY,QAAA,6BAA6B,GAAwB;IAChE,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,gCAAgC;IACxC,gBAAgB,EAAE,2BAA2B;IAC7C,gBAAgB,EAAE,kCAAkC;IACpD,QAAQ,EAAE,SAAS;CACpB,CAAA;AAEY,QAAA,6BAA6B,GAAwB;IAChE,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,uCAAuC;IAC/C,gBAAgB,EAAE,iCAAiC;IACnD,gBAAgB,EAAE,yCAAyC;IAC3D,QAAQ,EAAE,SAAS;CACpB,CAAA;AAED,MAAM,6BAA6B,GAAwB,qCAA6B,CAAA;AAExF,SAAgB,yBAAyB,CAAC,UAAwC,EAAE;IAClF,OAAO;QACL,OAAO,EAAE,EAAE,GAAG,6BAA6B,EAAE,GAAG,OAAO,EAAE;KAC1D,CAAA;AACH,CAAC"}