@airgap/tezos 0.13.13 → 0.13.14-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/index.d.ts +1 -1
  2. package/index.js +1 -1
  3. package/package.json +5 -5
  4. package/v0/protocol/TezosProtocol.js +4 -1
  5. package/v0/protocol/TezosProtocol.js.map +1 -1
  6. package/v1/block-explorer/factory.d.ts +2 -2
  7. package/v1/block-explorer/factory.js +4 -4
  8. package/v1/block-explorer/factory.js.map +1 -1
  9. package/v1/contract/TezosContract.js +1 -1
  10. package/v1/contract/TezosContract.js.map +1 -1
  11. package/v1/domains/TezosDomains.d.ts +20 -0
  12. package/v1/domains/TezosDomains.js +309 -0
  13. package/v1/domains/TezosDomains.js.map +1 -0
  14. package/v1/index.d.ts +23 -4
  15. package/v1/index.js +22 -1
  16. package/v1/index.js.map +1 -1
  17. package/v1/indexer/factory.d.ts +2 -2
  18. package/v1/indexer/factory.js +4 -4
  19. package/v1/indexer/factory.js.map +1 -1
  20. package/v1/module/TezosModule.d.ts +6 -3
  21. package/v1/module/TezosModule.js +7 -6
  22. package/v1/module/TezosModule.js.map +1 -1
  23. package/v1/protocol/TezosProtocol.d.ts +26 -1
  24. package/v1/protocol/TezosProtocol.js +349 -18
  25. package/v1/protocol/TezosProtocol.js.map +1 -1
  26. package/v1/protocol/fa/TezosFA1Protocol.d.ts +15 -2
  27. package/v1/protocol/fa/TezosFA1Protocol.js +17 -6
  28. package/v1/protocol/fa/TezosFA1Protocol.js.map +1 -1
  29. package/v1/protocol/fa/TezosFA1p2Protocol.d.ts +15 -2
  30. package/v1/protocol/fa/TezosFA1p2Protocol.js +11 -5
  31. package/v1/protocol/fa/TezosFA1p2Protocol.js.map +1 -1
  32. package/v1/protocol/fa/TezosFA2Protocol.d.ts +20 -5
  33. package/v1/protocol/fa/TezosFA2Protocol.js +34 -6
  34. package/v1/protocol/fa/TezosFA2Protocol.js.map +1 -1
  35. package/v1/protocol/fa/TezosFAProtocol.d.ts +5 -2
  36. package/v1/protocol/fa/TezosFAProtocol.js +18 -4
  37. package/v1/protocol/fa/TezosFAProtocol.js.map +1 -1
  38. package/v1/protocol/fa/tokens/BTCTezProtocol.js +1 -1
  39. package/v1/protocol/fa/tokens/BTCTezProtocol.js.map +1 -1
  40. package/v1/protocol/fa/tokens/CTezProtocol.js +1 -1
  41. package/v1/protocol/fa/tokens/CTezProtocol.js.map +1 -1
  42. package/v1/protocol/fa/tokens/DogamiProtocol.js +1 -1
  43. package/v1/protocol/fa/tokens/DogamiProtocol.js.map +1 -1
  44. package/v1/protocol/fa/tokens/ETHTezProtocol.js +1 -1
  45. package/v1/protocol/fa/tokens/ETHTezProtocol.js.map +1 -1
  46. package/v1/protocol/fa/tokens/KolibriUSDProtocol.js +1 -1
  47. package/v1/protocol/fa/tokens/KolibriUSDProtocol.js.map +1 -1
  48. package/v1/protocol/fa/tokens/PlentyProtocol.js +1 -1
  49. package/v1/protocol/fa/tokens/PlentyProtocol.js.map +1 -1
  50. package/v1/protocol/fa/tokens/QuipuswapProtocol.js +1 -1
  51. package/v1/protocol/fa/tokens/QuipuswapProtocol.js.map +1 -1
  52. package/v1/protocol/fa/tokens/SiriusProtocol.js +1 -1
  53. package/v1/protocol/fa/tokens/SiriusProtocol.js.map +1 -1
  54. package/v1/protocol/fa/tokens/StakerProtocol.js +1 -1
  55. package/v1/protocol/fa/tokens/StakerProtocol.js.map +1 -1
  56. package/v1/protocol/fa/tokens/TetherUSDProtocol.js +1 -1
  57. package/v1/protocol/fa/tokens/TetherUSDProtocol.js.map +1 -1
  58. package/v1/protocol/fa/tokens/TzBTCProtocol.js +1 -1
  59. package/v1/protocol/fa/tokens/TzBTCProtocol.js.map +1 -1
  60. package/v1/protocol/fa/tokens/UBTCProtocol.js +1 -1
  61. package/v1/protocol/fa/tokens/UBTCProtocol.js.map +1 -1
  62. package/v1/protocol/fa/tokens/UDEFIProtocol.js +1 -1
  63. package/v1/protocol/fa/tokens/UDEFIProtocol.js.map +1 -1
  64. package/v1/protocol/fa/tokens/USDTezProtocol.js +1 -1
  65. package/v1/protocol/fa/tokens/USDTezProtocol.js.map +1 -1
  66. package/v1/protocol/fa/tokens/UUSDProtocol.js +1 -1
  67. package/v1/protocol/fa/tokens/UUSDProtocol.js.map +1 -1
  68. package/v1/protocol/fa/tokens/WrapProtocol.js +1 -1
  69. package/v1/protocol/fa/tokens/WrapProtocol.js.map +1 -1
  70. package/v1/protocol/fa/tokens/WrappedTezosProtocol.js +1 -1
  71. package/v1/protocol/fa/tokens/WrappedTezosProtocol.js.map +1 -1
  72. package/v1/protocol/fa/tokens/YouProtocol.js +1 -1
  73. package/v1/protocol/fa/tokens/YouProtocol.js.map +1 -1
  74. package/v1/protocol/kt/TezosKtProtocol.js +26 -13
  75. package/v1/protocol/kt/TezosKtProtocol.js.map +1 -1
  76. package/v1/protocol/sapling/TezosSaplingProtocol.d.ts +2 -1
  77. package/v1/protocol/sapling/TezosSaplingProtocol.js +10 -0
  78. package/v1/protocol/sapling/TezosSaplingProtocol.js.map +1 -1
  79. package/v1/protocol/sapling/TezosShieldedTezProtocol.js +1 -1
  80. package/v1/protocol/sapling/TezosShieldedTezProtocol.js.map +1 -1
  81. package/v1/types/block-explorer.d.ts +1 -6
  82. package/v1/types/domains/TezosDomainsRecord.d.ts +8 -0
  83. package/v1/types/domains/TezosDomainsRecord.js +3 -0
  84. package/v1/types/domains/TezosDomainsRecord.js.map +1 -0
  85. package/v1/types/domains/TezosDomainsReverseRecord.d.ts +5 -0
  86. package/v1/types/domains/TezosDomainsReverseRecord.js +3 -0
  87. package/v1/types/domains/TezosDomainsReverseRecord.js.map +1 -0
  88. package/v1/types/indexer.d.ts +1 -6
  89. package/v1/types/protocol.d.ts +11 -5
  90. package/v1/types/staking/BakerDetails.d.ts +10 -0
  91. package/v1/types/staking/BakerDetails.js +3 -0
  92. package/v1/types/staking/BakerDetails.js.map +1 -0
  93. package/v1/types/staking/TezosDelegatorAction.d.ts +5 -0
  94. package/v1/types/staking/TezosDelegatorAction.js +10 -0
  95. package/v1/types/staking/TezosDelegatorAction.js.map +1 -0
  96. package/v1/utils/protocol/instance.d.ts +16 -0
  97. package/v1/utils/protocol/instance.js +44 -0
  98. package/v1/utils/protocol/instance.js.map +1 -0
  99. package/v1/utils/protocol/tezos/TezosAccountant.d.ts +2 -1
  100. package/v1/utils/protocol/tezos/TezosAccountant.js.map +1 -1
@@ -1,8 +1,11 @@
1
+ import { DelegateeDetails, DelegationDetails, DelegatorDetails } from '@airgap/coinlib-core';
1
2
  import { Address, AirGapProtocol, AirGapTransaction, AirGapTransactionsWithCursor, Amount, Balance, CryptoDerivative, FeeDefaults, KeyPair, ProtocolAccountMetadata, ProtocolMetadata, ProtocolUnitsMetadata, PublicKey, RecursivePartial, SecretKey, Signature, TransactionConfiguration, TransactionDetails } from '@airgap/module-kit';
3
+ import { AirGapDelegateProtocol } from '@airgap/module-kit/internal';
2
4
  import { TezosCryptoConfiguration } from '../types/crypto';
3
5
  import { TezosOperation } from '../types/operations/kinds/TezosOperation';
4
6
  import { TezosWrappedOperation } from '../types/operations/TezosWrappedOperation';
5
7
  import { TezosProtocolNetwork, TezosProtocolOptions, TezosUnits } from '../types/protocol';
8
+ import { BakerDetails } from '../types/staking/BakerDetails';
6
9
  import { TezosSignedTransaction, TezosTransactionCursor, TezosUnsignedTransaction } from '../types/transaction';
7
10
  export interface TezosProtocol extends AirGapProtocol<{
8
11
  AddressResult: Address;
@@ -13,7 +16,10 @@ export interface TezosProtocol extends AirGapProtocol<{
13
16
  UnsignedTransaction: TezosUnsignedTransaction;
14
17
  SignedTransaction: TezosSignedTransaction;
15
18
  TransactionCursor: TezosTransactionCursor;
16
- }, 'Crypto', 'FetchDataForAddress'> {
19
+ }, 'Crypto', 'FetchDataForAddress'>, AirGapDelegateProtocol {
20
+ isTezosProtocol: true;
21
+ getMinCycleDuration(): Promise<number>;
22
+ getDetailsFromWrappedOperation(wrappedOperation: TezosWrappedOperation): Promise<AirGapTransaction<TezosUnits, TezosUnits>[]>;
17
23
  forgeOperation(wrappedOperation: TezosWrappedOperation): Promise<string>;
18
24
  unforgeOperation(forged: string, type?: (TezosSignedTransaction | TezosUnsignedTransaction)['type']): Promise<TezosWrappedOperation>;
19
25
  getOperationFeeDefaults(publicKey: PublicKey, operations: TezosOperation[]): Promise<FeeDefaults<TezosUnits>>;
@@ -21,11 +27,13 @@ export interface TezosProtocol extends AirGapProtocol<{
21
27
  prepareTransactionsWithPublicKey(publicKey: PublicKey, details: TransactionDetails<TezosUnits>[], configuration?: TransactionConfiguration<TezosUnits> & {
22
28
  operationsPerGroup?: number;
23
29
  }): Promise<TezosUnsignedTransaction[]>;
30
+ bakerDetails(address: string | undefined): Promise<BakerDetails>;
24
31
  }
25
32
  export declare const TEZOS_UNITS: ProtocolUnitsMetadata<TezosUnits>;
26
33
  export declare const TEZOS_DERIVATION_PATH: string;
27
34
  export declare const TEZOS_ACCOUNT_METADATA: ProtocolAccountMetadata;
28
35
  export declare class TezosProtocolImpl implements TezosProtocol {
36
+ readonly isTezosProtocol: true;
29
37
  private readonly options;
30
38
  private readonly forger;
31
39
  private readonly accountant;
@@ -59,6 +67,22 @@ export declare class TezosProtocolImpl implements TezosProtocol {
59
67
  getOperationFeeDefaults(publicKey: PublicKey, operations: TezosOperation[]): Promise<FeeDefaults<TezosUnits>>;
60
68
  prepareTransactionWithPublicKey(publicKey: PublicKey, details: TransactionDetails<TezosUnits>[], configuration?: TransactionConfiguration<TezosUnits>): Promise<TezosUnsignedTransaction>;
61
69
  broadcastTransaction(transaction: TezosSignedTransaction): Promise<string>;
70
+ getDefaultDelegatee(): Promise<string>;
71
+ getCurrentDelegateesForPublicKey(publicKey: PublicKey): Promise<string[]>;
72
+ getCurrentDelegateesForAddress(address: string): Promise<string[]>;
73
+ getDelegateeDetails(address: string): Promise<DelegateeDetails>;
74
+ isPublicKeyDelegating(publicKey: PublicKey): Promise<boolean>;
75
+ isAddressDelegating(address: string): Promise<boolean>;
76
+ getDelegatorDetailsFromPublicKey(publicKey: PublicKey): Promise<DelegatorDetails>;
77
+ getDelegatorDetailsFromAddress(address: string): Promise<DelegatorDetails>;
78
+ getDelegationDetailsFromPublicKey(publicKey: PublicKey, delegatees: string[]): Promise<DelegationDetails>;
79
+ getDelegationDetailsFromAddress(address: string, delegatees: string[]): Promise<DelegationDetails>;
80
+ private getDelegatorDetails;
81
+ prepareDelegatorActionFromPublicKey(publicKey: PublicKey, type: any, data?: any): Promise<any[]>;
82
+ undelegate(publicKey: PublicKey): Promise<TezosUnsignedTransaction>;
83
+ delegate(publicKey: PublicKey, delegate?: string | string[]): Promise<TezosUnsignedTransaction>;
84
+ getMinCycleDuration(): Promise<number>;
85
+ getDetailsFromWrappedOperation(wrappedOperation: TezosWrappedOperation): Promise<AirGapTransaction<TezosUnits, TezosUnits>[]>;
62
86
  forgeOperation(wrappedOperation: TezosWrappedOperation): Promise<string>;
63
87
  unforgeOperation(forged: string, type?: (TezosSignedTransaction | TezosUnsignedTransaction)['type']): Promise<TezosWrappedOperation>;
64
88
  prepareTransactionsWithPublicKey(publicKey: PublicKey, details: TransactionDetails<TezosUnits>[], configuration?: TransactionConfiguration<TezosUnits> & {
@@ -67,6 +91,7 @@ export declare class TezosProtocolImpl implements TezosProtocol {
67
91
  prepareOperations(publicKey: PublicKey, operationRequests: TezosOperation[], overrideParameters?: boolean): Promise<TezosWrappedOperation>;
68
92
  private estimateAndReplaceLimitsAndFee;
69
93
  private createTransactionOperations;
94
+ bakerDetails(address: string | undefined): Promise<BakerDetails>;
70
95
  }
71
96
  export declare function createTezosProtocol(options?: RecursivePartial<TezosProtocolOptions>): TezosProtocol;
72
97
  export declare const TEZOS_MAINNET_PROTOCOL_NETWORK: TezosProtocolNetwork;
@@ -61,6 +61,7 @@ var TezosAddress_1 = require("../data/TezosAddress");
61
61
  var factory_1 = require("../indexer/factory");
62
62
  var network_1 = require("../types/network");
63
63
  var TezosOperationType_1 = require("../types/operations/TezosOperationType");
64
+ var TezosDelegatorAction_1 = require("../types/staking/TezosDelegatorAction");
64
65
  var key_1 = require("../utils/key");
65
66
  var operations_1 = require("../utils/operations");
66
67
  var TezosAccountant_1 = require("../utils/protocol/tezos/TezosAccountant");
@@ -69,12 +70,14 @@ var signature_1 = require("../utils/signature");
69
70
  // Implementation
70
71
  var MAX_OPERATIONS_PER_GROUP = 200;
71
72
  var MAX_GAS_PER_BLOCK = 5200000;
73
+ var MIN_CYCLE_DURATION = 4096 * 60 * 1000; // ms
72
74
  var GAS_LIMIT_PLACEHOLDER = '1040000';
73
75
  var STORAGE_LIMIT_PLACEHOLDER = '60000';
74
76
  var FEE_PLACEHOLDER = '0';
75
77
  var MINIMAL_FEE = 100;
76
78
  var MINIMAL_FEE_PER_GAS_UNIT = 0.1;
77
79
  var MINIMAL_FEE_PER_BYTE = 1;
80
+ var SELF_BOND_REQUIREMENT = 0.0825; // 8.25%
78
81
  exports.TEZOS_UNITS = {
79
82
  tez: {
80
83
  symbol: { value: 'XTZ', market: 'xtz' },
@@ -100,6 +103,7 @@ exports.TEZOS_ACCOUNT_METADATA = {
100
103
  };
101
104
  var TezosProtocolImpl = /** @class */ (function () {
102
105
  function TezosProtocolImpl(options) {
106
+ this.isTezosProtocol = true;
103
107
  // Common
104
108
  this.units = exports.TEZOS_UNITS;
105
109
  this.feeDefaults = {
@@ -124,7 +128,7 @@ var TezosProtocolImpl = /** @class */ (function () {
124
128
  this.options = createTezosProtocolOptions(options.network);
125
129
  this.forger = new TezosForger_1.TezosForger();
126
130
  this.accountant = new TezosAccountant_1.TezosAccountant(this.forger, this.options.network);
127
- this.indexerClient = (0, factory_1.createTezosIndexerClient)(this.options.network.indexer);
131
+ this.indexerClient = (0, factory_1.createTezosIndexerClient)(this.options.network.indexerType, this.options.network.indexerApi);
128
132
  this.cryptoClient = new TezosCryptoClient_1.TezosCryptoClient();
129
133
  }
130
134
  TezosProtocolImpl.prototype.getMetadata = function () {
@@ -482,7 +486,298 @@ var TezosProtocolImpl = /** @class */ (function () {
482
486
  });
483
487
  });
484
488
  };
489
+ // Staking
490
+ TezosProtocolImpl.prototype.getDefaultDelegatee = function () {
491
+ return __awaiter(this, void 0, void 0, function () {
492
+ var activeBakers;
493
+ return __generator(this, function (_a) {
494
+ switch (_a.label) {
495
+ case 0: return [4 /*yield*/, index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/delegates?active"))];
496
+ case 1:
497
+ activeBakers = (_a.sent()).data;
498
+ return [2 /*return*/, activeBakers[0] || ''];
499
+ }
500
+ });
501
+ });
502
+ };
503
+ TezosProtocolImpl.prototype.getCurrentDelegateesForPublicKey = function (publicKey) {
504
+ return __awaiter(this, void 0, void 0, function () {
505
+ var address;
506
+ return __generator(this, function (_a) {
507
+ switch (_a.label) {
508
+ case 0: return [4 /*yield*/, this.getAddressFromPublicKey(publicKey)];
509
+ case 1:
510
+ address = _a.sent();
511
+ return [2 /*return*/, this.getCurrentDelegateesForAddress(address)];
512
+ }
513
+ });
514
+ });
515
+ };
516
+ TezosProtocolImpl.prototype.getCurrentDelegateesForAddress = function (address) {
517
+ return __awaiter(this, void 0, void 0, function () {
518
+ var data;
519
+ return __generator(this, function (_a) {
520
+ switch (_a.label) {
521
+ case 0: return [4 /*yield*/, index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/contracts/").concat(address))];
522
+ case 1:
523
+ data = (_a.sent()).data;
524
+ return [2 /*return*/, data.delegate ? [data.delegate] : []];
525
+ }
526
+ });
527
+ });
528
+ };
529
+ TezosProtocolImpl.prototype.getDelegateeDetails = function (address) {
530
+ return __awaiter(this, void 0, void 0, function () {
531
+ var response, isBakingActive;
532
+ return __generator(this, function (_a) {
533
+ switch (_a.label) {
534
+ case 0: return [4 /*yield*/, index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/delegates/").concat(address, "/deactivated"))];
535
+ case 1:
536
+ response = _a.sent();
537
+ isBakingActive = !response.data;
538
+ return [2 /*return*/, {
539
+ status: isBakingActive ? 'Active' : 'Inactive',
540
+ address: address
541
+ }];
542
+ }
543
+ });
544
+ });
545
+ };
546
+ TezosProtocolImpl.prototype.isPublicKeyDelegating = function (publicKey) {
547
+ return __awaiter(this, void 0, void 0, function () {
548
+ var address;
549
+ return __generator(this, function (_a) {
550
+ switch (_a.label) {
551
+ case 0: return [4 /*yield*/, this.getAddressFromPublicKey(publicKey)];
552
+ case 1:
553
+ address = _a.sent();
554
+ return [2 /*return*/, this.isAddressDelegating(address)];
555
+ }
556
+ });
557
+ });
558
+ };
559
+ TezosProtocolImpl.prototype.isAddressDelegating = function (address) {
560
+ return __awaiter(this, void 0, void 0, function () {
561
+ var data;
562
+ return __generator(this, function (_a) {
563
+ switch (_a.label) {
564
+ case 0: return [4 /*yield*/, index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/contracts/").concat(address))];
565
+ case 1:
566
+ data = (_a.sent()).data;
567
+ return [2 /*return*/, !!data.delegate];
568
+ }
569
+ });
570
+ });
571
+ };
572
+ TezosProtocolImpl.prototype.getDelegatorDetailsFromPublicKey = function (publicKey) {
573
+ return __awaiter(this, void 0, void 0, function () {
574
+ var address;
575
+ return __generator(this, function (_a) {
576
+ switch (_a.label) {
577
+ case 0: return [4 /*yield*/, this.getAddressFromPublicKey(publicKey)];
578
+ case 1:
579
+ address = _a.sent();
580
+ return [2 /*return*/, this.getDelegatorDetailsFromAddress(address)];
581
+ }
582
+ });
583
+ });
584
+ };
585
+ TezosProtocolImpl.prototype.getDelegatorDetailsFromAddress = function (address) {
586
+ return __awaiter(this, void 0, void 0, function () {
587
+ return __generator(this, function (_a) {
588
+ return [2 /*return*/, this.getDelegatorDetails(address)];
589
+ });
590
+ });
591
+ };
592
+ TezosProtocolImpl.prototype.getDelegationDetailsFromPublicKey = function (publicKey, delegatees) {
593
+ return __awaiter(this, void 0, void 0, function () {
594
+ var address;
595
+ return __generator(this, function (_a) {
596
+ switch (_a.label) {
597
+ case 0: return [4 /*yield*/, this.getAddressFromPublicKey(publicKey)];
598
+ case 1:
599
+ address = _a.sent();
600
+ return [2 /*return*/, this.getDelegationDetailsFromAddress(address, delegatees)];
601
+ }
602
+ });
603
+ });
604
+ };
605
+ TezosProtocolImpl.prototype.getDelegationDetailsFromAddress = function (address, delegatees) {
606
+ return __awaiter(this, void 0, void 0, function () {
607
+ var bakerAddress, results, delegatorDetails, bakerDetails;
608
+ return __generator(this, function (_a) {
609
+ switch (_a.label) {
610
+ case 0:
611
+ if (delegatees.length > 1) {
612
+ return [2 /*return*/, Promise.reject('Multiple delegation is not supported.')];
613
+ }
614
+ bakerAddress = delegatees[0];
615
+ return [4 /*yield*/, Promise.all([this.getDelegatorDetails(address, bakerAddress), this.getDelegateeDetails(bakerAddress)])];
616
+ case 1:
617
+ results = _a.sent();
618
+ delegatorDetails = results[0];
619
+ bakerDetails = results[1];
620
+ return [2 /*return*/, {
621
+ delegator: delegatorDetails,
622
+ delegatees: [bakerDetails]
623
+ }];
624
+ }
625
+ });
626
+ });
627
+ };
628
+ TezosProtocolImpl.prototype.getDelegatorDetails = function (address, bakerAddress) {
629
+ return __awaiter(this, void 0, void 0, function () {
630
+ var results, accountDetails, balance, isDelegating, availableActions;
631
+ return __generator(this, function (_a) {
632
+ switch (_a.label) {
633
+ case 0: return [4 /*yield*/, Promise.all([index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/contracts/").concat(address))])];
634
+ case 1:
635
+ results = _a.sent();
636
+ accountDetails = results[0].data;
637
+ balance = accountDetails.balance;
638
+ isDelegating = !!accountDetails.delegate;
639
+ availableActions = [];
640
+ if (!isDelegating) {
641
+ availableActions.push({
642
+ type: TezosDelegatorAction_1.TezosDelegatorAction.DELEGATE,
643
+ args: ['delegate']
644
+ });
645
+ }
646
+ else if (!bakerAddress || accountDetails.delegate === bakerAddress) {
647
+ availableActions.push({
648
+ type: TezosDelegatorAction_1.TezosDelegatorAction.UNDELEGATE
649
+ });
650
+ }
651
+ else {
652
+ availableActions.push({
653
+ type: TezosDelegatorAction_1.TezosDelegatorAction.CHANGE_BAKER,
654
+ args: ['delegate']
655
+ });
656
+ }
657
+ return [2 /*return*/, {
658
+ address: address,
659
+ balance: balance,
660
+ delegatees: [accountDetails.delegate],
661
+ availableActions: availableActions
662
+ }];
663
+ }
664
+ });
665
+ });
666
+ };
667
+ TezosProtocolImpl.prototype.prepareDelegatorActionFromPublicKey = function (publicKey, type, data) {
668
+ return __awaiter(this, void 0, void 0, function () {
669
+ var _a;
670
+ return __generator(this, function (_b) {
671
+ switch (_b.label) {
672
+ case 0:
673
+ _a = type;
674
+ switch (_a) {
675
+ case TezosDelegatorAction_1.TezosDelegatorAction.DELEGATE: return [3 /*break*/, 1];
676
+ case TezosDelegatorAction_1.TezosDelegatorAction.CHANGE_BAKER: return [3 /*break*/, 1];
677
+ case TezosDelegatorAction_1.TezosDelegatorAction.UNDELEGATE: return [3 /*break*/, 3];
678
+ }
679
+ return [3 /*break*/, 5];
680
+ case 1:
681
+ if (!data || !data.delegate) {
682
+ return [2 /*return*/, Promise.reject("Invalid arguments passed for ".concat(type, " action, delegate is missing."))];
683
+ }
684
+ return [4 /*yield*/, this.delegate(publicKey, data.delegate)];
685
+ case 2: return [2 /*return*/, [_b.sent()]];
686
+ case 3: return [4 /*yield*/, this.undelegate(publicKey)];
687
+ case 4: return [2 /*return*/, [_b.sent()]];
688
+ case 5: return [2 /*return*/, Promise.reject('Unsupported delegator action.')];
689
+ }
690
+ });
691
+ });
692
+ };
693
+ TezosProtocolImpl.prototype.undelegate = function (publicKey) {
694
+ return __awaiter(this, void 0, void 0, function () {
695
+ return __generator(this, function (_a) {
696
+ return [2 /*return*/, this.delegate(publicKey)];
697
+ });
698
+ });
699
+ };
700
+ TezosProtocolImpl.prototype.delegate = function (publicKey, delegate) {
701
+ return __awaiter(this, void 0, void 0, function () {
702
+ var counter, branch, operations, tzAddress, results, accountManager, balance, totalBalance, fee, delegationOperation, tezosWrappedOperation, binary, error_3;
703
+ return __generator(this, function (_a) {
704
+ switch (_a.label) {
705
+ case 0:
706
+ counter = new bignumber_1.default(1);
707
+ branch = '';
708
+ operations = [];
709
+ return [4 /*yield*/, this.getAddressFromPublicKey(publicKey)];
710
+ case 1:
711
+ tzAddress = _a.sent();
712
+ return [4 /*yield*/, Promise.all([
713
+ index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/contracts/").concat(tzAddress, "/counter")),
714
+ index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head~2/hash")),
715
+ index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/contracts/").concat(tzAddress, "/manager_key"))
716
+ ]).catch(function (error) {
717
+ throw new errors_1.NetworkError(coinlib_core_1.Domain.TEZOS, error);
718
+ })];
719
+ case 2:
720
+ results = _a.sent();
721
+ counter = new bignumber_1.default(results[0].data).plus(1);
722
+ branch = results[1].data;
723
+ accountManager = results[2].data;
724
+ // check if we have revealed the address already
725
+ if (!accountManager) {
726
+ operations.push((0, operations_1.createRevealOperation)(counter, publicKey, tzAddress));
727
+ counter = counter.plus(1);
728
+ }
729
+ return [4 /*yield*/, this.getBalanceOfAddress(tzAddress)];
730
+ case 3:
731
+ balance = _a.sent();
732
+ totalBalance = new bignumber_1.default((0, module_kit_1.newAmount)(balance.total).blockchain(this.units).value);
733
+ fee = new bignumber_1.default(1420);
734
+ if (totalBalance.isLessThan(fee)) {
735
+ throw new errors_1.BalanceError(coinlib_core_1.Domain.TEZOS, 'not enough balance');
736
+ }
737
+ delegationOperation = {
738
+ kind: TezosOperationType_1.TezosOperationType.DELEGATION,
739
+ source: tzAddress,
740
+ fee: fee.toFixed(),
741
+ counter: counter.toFixed(),
742
+ gas_limit: '10000',
743
+ storage_limit: '0',
744
+ delegate: Array.isArray(delegate) ? delegate[0] : delegate
745
+ };
746
+ operations.push(delegationOperation);
747
+ _a.label = 4;
748
+ case 4:
749
+ _a.trys.push([4, 6, , 7]);
750
+ tezosWrappedOperation = {
751
+ branch: branch,
752
+ contents: operations
753
+ };
754
+ return [4 /*yield*/, this.forgeOperation(tezosWrappedOperation)];
755
+ case 5:
756
+ binary = _a.sent();
757
+ return [2 /*return*/, (0, module_kit_1.newUnsignedTransaction)({ binary: binary })];
758
+ case 6:
759
+ error_3 = _a.sent();
760
+ throw new errors_1.OperationFailedError(coinlib_core_1.Domain.TEZOS, "Forging Tezos TX failed with ".concat(JSON.stringify(error_3.message)));
761
+ case 7: return [2 /*return*/];
762
+ }
763
+ });
764
+ });
765
+ };
485
766
  // Custom
767
+ TezosProtocolImpl.prototype.getMinCycleDuration = function () {
768
+ return __awaiter(this, void 0, void 0, function () {
769
+ return __generator(this, function (_a) {
770
+ return [2 /*return*/, MIN_CYCLE_DURATION];
771
+ });
772
+ });
773
+ };
774
+ TezosProtocolImpl.prototype.getDetailsFromWrappedOperation = function (wrappedOperation) {
775
+ return __awaiter(this, void 0, void 0, function () {
776
+ return __generator(this, function (_a) {
777
+ return [2 /*return*/, this.accountant.getDetailsFromWrappedOperation(wrappedOperation)];
778
+ });
779
+ });
780
+ };
486
781
  TezosProtocolImpl.prototype.forgeOperation = function (wrappedOperation) {
487
782
  return __awaiter(this, void 0, void 0, function () {
488
783
  return __generator(this, function (_a) {
@@ -900,6 +1195,50 @@ var TezosProtocolImpl = /** @class */ (function () {
900
1195
  });
901
1196
  });
902
1197
  };
1198
+ TezosProtocolImpl.prototype.bakerDetails = function (address) {
1199
+ var _a, _b, _c, _d;
1200
+ return __awaiter(this, void 0, void 0, function () {
1201
+ var results, tzBalance, delegatedBalance, stakingBalance, selfBond, stakingCapacity, bakerDetails;
1202
+ return __generator(this, function (_e) {
1203
+ switch (_e.label) {
1204
+ case 0:
1205
+ if (!address ||
1206
+ !(address.toLowerCase().startsWith('tz1') ||
1207
+ address.toLowerCase().startsWith('tz2') ||
1208
+ address.toLowerCase().startsWith('tz3') ||
1209
+ address.toLowerCase().startsWith('tz4'))) {
1210
+ throw new errors_1.ConditionViolationError(coinlib_core_1.Domain.TEZOS, 'non tz-address supplied');
1211
+ }
1212
+ return [4 /*yield*/, Promise.all([
1213
+ index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/delegates/").concat(address, "/balance")).catch(function (_error) { return undefined; }),
1214
+ index_1.default
1215
+ .get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/delegates/").concat(address, "/full_balance"))
1216
+ .catch(function (_error) { return undefined; }),
1217
+ index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/delegates/").concat(address, "/delegated_balance")),
1218
+ index_1.default.get("".concat(this.options.network.rpcUrl, "/chains/main/blocks/head/context/delegates/").concat(address, "/staking_balance"))
1219
+ ]).catch(function (error) {
1220
+ throw new errors_1.NetworkError(coinlib_core_1.Domain.TEZOS, error);
1221
+ })];
1222
+ case 1:
1223
+ results = _e.sent();
1224
+ tzBalance = new bignumber_1.default((_b = ((_a = results[0]) !== null && _a !== void 0 ? _a : results[1])) === null || _b === void 0 ? void 0 : _b.data);
1225
+ delegatedBalance = new bignumber_1.default((_c = results[2]) === null || _c === void 0 ? void 0 : _c.data);
1226
+ stakingBalance = new bignumber_1.default((_d = results[3]) === null || _d === void 0 ? void 0 : _d.data);
1227
+ selfBond = stakingBalance.minus(delegatedBalance);
1228
+ stakingCapacity = stakingBalance.div(selfBond.div(SELF_BOND_REQUIREMENT));
1229
+ bakerDetails = {
1230
+ balance: (0, module_kit_1.newAmount)(tzBalance, 'blockchain'),
1231
+ delegatedBalance: (0, module_kit_1.newAmount)(delegatedBalance, 'blockchain'),
1232
+ stakingBalance: (0, module_kit_1.newAmount)(stakingBalance, 'blockchain'),
1233
+ selfBond: (0, module_kit_1.newAmount)(selfBond, 'blockchain'),
1234
+ bakerCapacity: stakingBalance.div(stakingCapacity).toString(),
1235
+ bakerUsage: stakingCapacity.toString()
1236
+ };
1237
+ return [2 /*return*/, bakerDetails];
1238
+ }
1239
+ });
1240
+ });
1241
+ };
903
1242
  return TezosProtocolImpl;
904
1243
  }());
905
1244
  exports.TezosProtocolImpl = TezosProtocolImpl;
@@ -914,34 +1253,26 @@ exports.TEZOS_MAINNET_PROTOCOL_NETWORK = {
914
1253
  type: 'mainnet',
915
1254
  rpcUrl: 'https://tezos-node.prod.gke.papers.tech',
916
1255
  network: network_1.TezosNetwork.MAINNET,
917
- blockExplorer: {
918
- type: 'tzkt',
919
- url: 'https://tzkt.io'
920
- },
921
- indexer: {
922
- type: 'tzkt',
923
- apiUrl: 'https://tezos-mainnet-indexer.prod.gke.papers.tech'
924
- }
1256
+ blockExplorerUrl: 'https://tzkt.io',
1257
+ blockExplorerType: 'tzkt',
1258
+ indexerApi: 'https://tezos-mainnet-indexer.prod.gke.papers.tech',
1259
+ indexerType: 'tzkt'
925
1260
  };
926
1261
  exports.TEZOS_GHOSTNET_PROTOCOL_NETWORK = {
927
1262
  name: 'Ghostnet',
928
1263
  type: 'testnet',
929
1264
  rpcUrl: 'https://tezos-ghostnet-node.prod.gke.papers.tech',
930
1265
  network: network_1.TezosNetwork.GHOSTNET,
931
- blockExplorer: {
932
- type: 'tzkt',
933
- url: 'https://ghostnet.tzkt.io'
934
- },
935
- indexer: {
936
- type: 'tzkt',
937
- apiUrl: 'https://tezos-ghostnet-indexer.prod.gke.papers.tech'
938
- }
1266
+ blockExplorerUrl: 'https://ghostnet.tzkt.io',
1267
+ blockExplorerType: 'tzkt',
1268
+ indexerApi: 'https://tezos-ghostnet-indexer.prod.gke.papers.tech',
1269
+ indexerType: 'tzkt'
939
1270
  };
940
1271
  var DEFAULT_TEZOS_PROTOCOL_NETWORK = exports.TEZOS_MAINNET_PROTOCOL_NETWORK;
941
1272
  function createTezosProtocolOptions(network) {
942
1273
  if (network === void 0) { network = {}; }
943
1274
  return {
944
- network: __assign(__assign(__assign({}, DEFAULT_TEZOS_PROTOCOL_NETWORK), network), { blockExplorer: __assign(__assign({}, DEFAULT_TEZOS_PROTOCOL_NETWORK.blockExplorer), network.blockExplorer), indexer: __assign(__assign({}, DEFAULT_TEZOS_PROTOCOL_NETWORK.indexer), network.indexer) })
1275
+ network: __assign(__assign({}, DEFAULT_TEZOS_PROTOCOL_NETWORK), network)
945
1276
  };
946
1277
  }
947
1278
  exports.createTezosProtocolOptions = createTezosProtocolOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"TezosProtocol.js","sourceRoot":"","sources":["../../../src/v1/protocol/TezosProtocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TezosProtocol.js","sourceRoot":"","sources":["../../../src/v1/protocol/TezosProtocol.ts"],"names":[],"mappings":"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"}