@bitgo-beta/sdk-coin-vet 1.0.1-beta.32 → 1.0.1-beta.320

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 (99) hide show
  1. package/.mocharc.yml +1 -1
  2. package/CHANGELOG.md +150 -0
  3. package/dist/src/index.d.ts +2 -0
  4. package/dist/src/index.d.ts.map +1 -1
  5. package/dist/src/index.js +3 -1
  6. package/dist/src/lib/constants.d.ts +11 -1
  7. package/dist/src/lib/constants.d.ts.map +1 -1
  8. package/dist/src/lib/constants.js +13 -3
  9. package/dist/src/lib/iface.d.ts +28 -1
  10. package/dist/src/lib/iface.d.ts.map +1 -1
  11. package/dist/src/lib/iface.js +1 -1
  12. package/dist/src/lib/index.d.ts +18 -3
  13. package/dist/src/lib/index.d.ts.map +1 -1
  14. package/dist/src/lib/index.js +35 -5
  15. package/dist/src/lib/transaction/addressInitializationTransaction.d.ts +31 -0
  16. package/dist/src/lib/transaction/addressInitializationTransaction.d.ts.map +1 -0
  17. package/dist/src/lib/transaction/addressInitializationTransaction.js +170 -0
  18. package/dist/src/lib/transaction/burnNftTransaction.d.ts +26 -0
  19. package/dist/src/lib/transaction/burnNftTransaction.d.ts.map +1 -0
  20. package/dist/src/lib/transaction/burnNftTransaction.js +124 -0
  21. package/dist/src/lib/transaction/claimRewards.d.ts +58 -0
  22. package/dist/src/lib/transaction/claimRewards.d.ts.map +1 -0
  23. package/dist/src/lib/transaction/claimRewards.js +242 -0
  24. package/dist/src/lib/transaction/exitDelegation.d.ts +26 -0
  25. package/dist/src/lib/transaction/exitDelegation.d.ts.map +1 -0
  26. package/dist/src/lib/transaction/exitDelegation.js +124 -0
  27. package/dist/src/lib/transaction/flushTokenTransaction.d.ts +20 -0
  28. package/dist/src/lib/transaction/flushTokenTransaction.d.ts.map +1 -0
  29. package/dist/src/lib/transaction/flushTokenTransaction.js +98 -0
  30. package/dist/src/lib/transaction/nftTransaction.d.ts +17 -0
  31. package/dist/src/lib/transaction/nftTransaction.d.ts.map +1 -0
  32. package/dist/src/lib/transaction/nftTransaction.js +108 -0
  33. package/dist/src/lib/transaction/stakingTransaction.d.ts +21 -0
  34. package/dist/src/lib/transaction/stakingTransaction.d.ts.map +1 -0
  35. package/dist/src/lib/transaction/stakingTransaction.js +136 -0
  36. package/dist/src/lib/transaction/tokenTransaction.d.ts +14 -0
  37. package/dist/src/lib/transaction/tokenTransaction.d.ts.map +1 -0
  38. package/dist/src/lib/transaction/tokenTransaction.js +95 -0
  39. package/dist/src/lib/transaction/transaction.d.ts +106 -0
  40. package/dist/src/lib/transaction/transaction.d.ts.map +1 -0
  41. package/dist/src/lib/transaction/transaction.js +468 -0
  42. package/dist/src/lib/transactionBuilder/addressInitializationBuilder.d.ts +78 -0
  43. package/dist/src/lib/transactionBuilder/addressInitializationBuilder.d.ts.map +1 -0
  44. package/dist/src/lib/transactionBuilder/addressInitializationBuilder.js +158 -0
  45. package/dist/src/lib/transactionBuilder/burnNftBuilder.d.ts +65 -0
  46. package/dist/src/lib/transactionBuilder/burnNftBuilder.d.ts.map +1 -0
  47. package/dist/src/lib/transactionBuilder/burnNftBuilder.js +130 -0
  48. package/dist/src/lib/transactionBuilder/claimRewardsBuilder.d.ts +57 -0
  49. package/dist/src/lib/transactionBuilder/claimRewardsBuilder.d.ts.map +1 -0
  50. package/dist/src/lib/transactionBuilder/claimRewardsBuilder.js +145 -0
  51. package/dist/src/lib/transactionBuilder/exitDelegationBuilder.d.ts +65 -0
  52. package/dist/src/lib/transactionBuilder/exitDelegationBuilder.d.ts.map +1 -0
  53. package/dist/src/lib/transactionBuilder/exitDelegationBuilder.js +132 -0
  54. package/dist/src/lib/transactionBuilder/flushTokenTransactionBuilder.d.ts +66 -0
  55. package/dist/src/lib/transactionBuilder/flushTokenTransactionBuilder.d.ts.map +1 -0
  56. package/dist/src/lib/transactionBuilder/flushTokenTransactionBuilder.js +129 -0
  57. package/dist/src/lib/transactionBuilder/nftTransactionBuilder.d.ts +23 -0
  58. package/dist/src/lib/transactionBuilder/nftTransactionBuilder.d.ts.map +1 -0
  59. package/dist/src/lib/transactionBuilder/nftTransactionBuilder.js +93 -0
  60. package/dist/src/lib/transactionBuilder/stakingBuilder.d.ts +72 -0
  61. package/dist/src/lib/transactionBuilder/stakingBuilder.d.ts.map +1 -0
  62. package/dist/src/lib/transactionBuilder/stakingBuilder.js +129 -0
  63. package/dist/src/lib/transactionBuilder/tokenTransactionBuilder.d.ts +21 -0
  64. package/dist/src/lib/transactionBuilder/tokenTransactionBuilder.d.ts.map +1 -0
  65. package/dist/src/lib/transactionBuilder/tokenTransactionBuilder.js +70 -0
  66. package/dist/src/lib/{transactionBuilder.d.ts → transactionBuilder/transactionBuilder.d.ts} +29 -18
  67. package/dist/src/lib/transactionBuilder/transactionBuilder.d.ts.map +1 -0
  68. package/dist/src/lib/transactionBuilder/transactionBuilder.js +155 -0
  69. package/dist/src/lib/{transferBuilder.d.ts → transactionBuilder/transferBuilder.d.ts} +4 -2
  70. package/dist/src/lib/transactionBuilder/transferBuilder.d.ts.map +1 -0
  71. package/dist/src/lib/transactionBuilder/transferBuilder.js +45 -0
  72. package/dist/src/lib/transactionBuilderFactory.d.ts +64 -5
  73. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  74. package/dist/src/lib/transactionBuilderFactory.js +140 -5
  75. package/dist/src/lib/types.d.ts +15 -0
  76. package/dist/src/lib/types.d.ts.map +1 -0
  77. package/dist/src/lib/types.js +3 -0
  78. package/dist/src/lib/utils.d.ts +19 -1
  79. package/dist/src/lib/utils.d.ts.map +1 -1
  80. package/dist/src/lib/utils.js +110 -3
  81. package/dist/src/register.d.ts.map +1 -1
  82. package/dist/src/register.js +9 -1
  83. package/dist/src/vet.d.ts +15 -4
  84. package/dist/src/vet.d.ts.map +1 -1
  85. package/dist/src/vet.js +154 -7
  86. package/dist/src/vetNFTCollection.d.ts +18 -0
  87. package/dist/src/vetNFTCollection.d.ts.map +1 -0
  88. package/dist/src/vetNFTCollection.js +52 -0
  89. package/dist/src/vetToken.d.ts +19 -0
  90. package/dist/src/vetToken.d.ts.map +1 -0
  91. package/dist/src/vetToken.js +52 -0
  92. package/package.json +14 -9
  93. package/dist/src/lib/transaction.d.ts +0 -8
  94. package/dist/src/lib/transaction.d.ts.map +0 -1
  95. package/dist/src/lib/transaction.js +0 -17
  96. package/dist/src/lib/transactionBuilder.d.ts.map +0 -1
  97. package/dist/src/lib/transactionBuilder.js +0 -78
  98. package/dist/src/lib/transferBuilder.d.ts.map +0 -1
  99. package/dist/src/lib/transferBuilder.js +0 -15
package/.mocharc.yml CHANGED
@@ -1,4 +1,4 @@
1
- require: 'ts-node/register'
1
+ require: 'tsx'
2
2
  timeout: '10000'
3
3
  reporter: 'min'
4
4
  reporter-option:
package/CHANGELOG.md CHANGED
@@ -3,6 +3,156 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [2.5.3](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.5.2...@bitgo/sdk-coin-vet@2.5.3) (2025-09-03)
7
+
8
+ ### Bug Fixes
9
+
10
+ - amount conversion in staking for vechain ([3b95074](https://github.com/BitGo/BitGoJS/commit/3b95074ec289f236c070c4e426a50cdb1358e864))
11
+ - return raw data for vet nft transaction ([92f0145](https://github.com/BitGo/BitGoJS/commit/92f0145bfa131559c27683441849d515e686e8cb))
12
+
13
+ ## [2.5.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.5.1...@bitgo/sdk-coin-vet@2.5.2) (2025-08-30)
14
+
15
+ **Note:** Version bump only for package @bitgo/sdk-coin-vet
16
+
17
+ ## [2.5.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.5.0...@bitgo/sdk-coin-vet@2.5.1) (2025-08-29)
18
+
19
+ ### Bug Fixes
20
+
21
+ - valuelessTransferAllowed true for vet ([cebd963](https://github.com/BitGo/BitGoJS/commit/cebd963890f87cc4223e349a926994156e3cc016))
22
+
23
+ # [2.5.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.4.0...@bitgo/sdk-coin-vet@2.5.0) (2025-08-27)
24
+
25
+ ### Bug Fixes
26
+
27
+ - contract abi for vechain staking ([70292a3](https://github.com/BitGo/BitGoJS/commit/70292a3021eda20ca91e76ca1c9ddda29e6f908e))
28
+ - implement buildNftTransferData for vet ([07a0dbf](https://github.com/BitGo/BitGoJS/commit/07a0dbf831d1ae7beebf5e9a02596d02007a2094))
29
+
30
+ ### Features
31
+
32
+ - **sdk-coin-vet:** add vet nft tx builder ([131f81c](https://github.com/BitGo/BitGoJS/commit/131f81c4ed68989d8ca25298fa675aee08811c6c))
33
+
34
+ # [2.4.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.3.3...@bitgo/sdk-coin-vet@2.4.0) (2025-08-22)
35
+
36
+ ### Features
37
+
38
+ - add vetNFTCollection skeleton ([e84334c](https://github.com/BitGo/BitGoJS/commit/e84334c3a7df746f719121305ad56d7c7e0ff26b))
39
+ - **root:** migrate ts-node -> tsx ([ea180b4](https://github.com/BitGo/BitGoJS/commit/ea180b43001d8e956196bc07b32798e3a7031eeb))
40
+
41
+ ## [2.3.3](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.3.2...@bitgo/sdk-coin-vet@2.3.3) (2025-08-22)
42
+
43
+ **Note:** Version bump only for package @bitgo/sdk-coin-vet
44
+
45
+ ## [2.3.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.3.1...@bitgo/sdk-coin-vet@2.3.2) (2025-08-19)
46
+
47
+ **Note:** Version bump only for package @bitgo/sdk-coin-vet
48
+
49
+ ## [2.3.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.3.0...@bitgo/sdk-coin-vet@2.3.1) (2025-08-14)
50
+
51
+ **Note:** Version bump only for package @bitgo/sdk-coin-vet
52
+
53
+ # [2.3.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.2.2...@bitgo/sdk-coin-vet@2.3.0) (2025-08-07)
54
+
55
+ ### Features
56
+
57
+ - add stakingBuilder for vechain ([e006cf2](https://github.com/BitGo/BitGoJS/commit/e006cf292200283add118a90adb646a694399a3d))
58
+ - build unstaking txns for vechain ([f939cfe](https://github.com/BitGo/BitGoJS/commit/f939cfec5b1e9b83a630547438ccff0a54ff4df3))
59
+
60
+ ## [2.2.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.2.1...@bitgo/sdk-coin-vet@2.2.2) (2025-07-31)
61
+
62
+ **Note:** Version bump only for package @bitgo/sdk-coin-vet
63
+
64
+ ## [2.2.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.2.0...@bitgo/sdk-coin-vet@2.2.1) (2025-07-30)
65
+
66
+ ### Bug Fixes
67
+
68
+ - **sdk-coin-vet:** add gastankfactor vet ([4120bf7](https://github.com/BitGo/BitGoJS/commit/4120bf70d3df6b7af722f97f3e55ebc6640e33d7))
69
+ - **sdk-coin-vet:** fix issue in verifyTx ([67e2258](https://github.com/BitGo/BitGoJS/commit/67e225830b43f834087a68eb4f360524529a2c2d))
70
+ - **sdk-coin-vet:** fix issue with consolidation tx ([bd7c37e](https://github.com/BitGo/BitGoJS/commit/bd7c37ea4c74edfca475ba990afe65a97a86061e))
71
+
72
+ # [2.2.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.0.1...@bitgo/sdk-coin-vet@2.2.0) (2025-07-25)
73
+
74
+ ### Bug Fixes
75
+
76
+ - **sdk-coin-vet:** implement getHashFunction for vet sdk ([10e0db8](https://github.com/BitGo/BitGoJS/commit/10e0db869cdf5aa5ab2416b174c6b8357715819f))
77
+ - **sdk-coin-vet:** make nonce field string type ([31e3a21](https://github.com/BitGo/BitGoJS/commit/31e3a21a4e99a132393efbc808d4735167b2a5d3))
78
+ - **sdk-coin-vet:** use expiration variable in tx ([88b2765](https://github.com/BitGo/BitGoJS/commit/88b27650717370385475a35adfaeff61b19d5921))
79
+
80
+ ### Features
81
+
82
+ - **sdk-coin-vet:** add token transaction builder for vechain ([86036b8](https://github.com/BitGo/BitGoJS/commit/86036b83f8d3c5c27dbe91e0cc915b2548b0a6ba))
83
+
84
+ # [2.1.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.0.1...@bitgo/sdk-coin-vet@2.1.0) (2025-07-23)
85
+
86
+ ### Bug Fixes
87
+
88
+ - **sdk-coin-vet:** make nonce field string type ([31e3a21](https://github.com/BitGo/BitGoJS/commit/31e3a21a4e99a132393efbc808d4735167b2a5d3))
89
+ - **sdk-coin-vet:** use expiration variable in tx ([88b2765](https://github.com/BitGo/BitGoJS/commit/88b27650717370385475a35adfaeff61b19d5921))
90
+
91
+ ### Features
92
+
93
+ - **sdk-coin-vet:** add token transaction builder for vechain ([86036b8](https://github.com/BitGo/BitGoJS/commit/86036b83f8d3c5c27dbe91e0cc915b2548b0a6ba))
94
+
95
+ ## [2.0.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@2.0.0...@bitgo/sdk-coin-vet@2.0.1) (2025-07-15)
96
+
97
+ ### Bug Fixes
98
+
99
+ - **sdk-coin-vet:** fix deserialization in vet sdk ([5a7ce8e](https://github.com/BitGo/BitGoJS/commit/5a7ce8e834b0815a0e8315869e6a13b5ba2af6ec))
100
+
101
+ # [2.0.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.6.2...@bitgo/sdk-coin-vet@2.0.0) (2025-07-10)
102
+
103
+ ### Bug Fixes
104
+
105
+ - **sdk-coin-vet:** correct signable payload for vechain transaction ([9152ce6](https://github.com/BitGo/BitGoJS/commit/9152ce6cf781a69762d0298aa88133438f70fda9))
106
+ - **sdk-coin-vet:** fix issues in addressinit builder and flushtoken builder ([ac55b9f](https://github.com/BitGo/BitGoJS/commit/ac55b9ff10331bdd864ea7e903ee983944ca4cd0))
107
+ - **sdk-coin-vet:** fix issues in fromRawTransaction ([3502030](https://github.com/BitGo/BitGoJS/commit/35020301db5ea6ef21afa44c5830d6a53a624174))
108
+
109
+ ### Features
110
+
111
+ - **sdk-coin-vet:** add address init builder ([09f5b21](https://github.com/BitGo/BitGoJS/commit/09f5b211deb3ee0b29b13d9844937ea02d712525))
112
+ - **sdk-coin-vet:** add flushtoken txbuilder ([f28db93](https://github.com/BitGo/BitGoJS/commit/f28db93b1a2a48dca326e4a01fcc2bac00b458e0))
113
+
114
+ ### BREAKING CHANGES
115
+
116
+ - **sdk-coin-vet:** interface TxData has been removed from sdk-coin-vet
117
+
118
+ interface VetTransactionData has been moved from modules/sdk-coin-vet/src/lib/transaction/transaction.ts to modules/sdk-coin-vet/src/lib/iface.ts
119
+
120
+ fromImplementation method has been moved from modules/sdk-coin-vet/src/lib/transactionBuilder/transactionBuilder.ts to modules/sdk-coin-vet/src/lib/transactionBuilder/transferBuilder.ts
121
+
122
+ ## [1.6.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.6.1...@bitgo/sdk-coin-vet@1.6.2) (2025-07-03)
123
+
124
+ **Note:** Version bump only for package @bitgo/sdk-coin-vet
125
+
126
+ ## [1.6.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.6.0...@bitgo/sdk-coin-vet@1.6.1) (2025-06-25)
127
+
128
+ **Note:** Version bump only for package @bitgo/sdk-coin-vet
129
+
130
+ # [1.6.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.5.0...@bitgo/sdk-coin-vet@1.6.0) (2025-06-24)
131
+
132
+ ### Features
133
+
134
+ - add vechain token standard support ([f81cf23](https://github.com/BitGo/BitGoJS/commit/f81cf230afe4636ac87a2d94821b49947605d1ff))
135
+
136
+ # [1.5.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.4.0...@bitgo/sdk-coin-vet@1.5.0) (2025-06-18)
137
+
138
+ ### Features
139
+
140
+ - **sdk-coin-vet:** implement isValidBlockId for vet ([2a7e6e7](https://github.com/BitGo/BitGoJS/commit/2a7e6e78b3972ef8d3858c9b2d9a83e713ae4437))
141
+
142
+ # [1.4.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.3.0...@bitgo/sdk-coin-vet@1.4.0) (2025-06-10)
143
+
144
+ ### Features
145
+
146
+ - **sdk-coin-vet:** add transaction builder logic for vechain ([96c089f](https://github.com/BitGo/BitGoJS/commit/96c089fcbd2401c921d2bc9a43ef7bc112c80e8b))
147
+
148
+ # [1.3.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.2.0...@bitgo/sdk-coin-vet@1.3.0) (2025-06-05)
149
+
150
+ ### Features
151
+
152
+ - **root:** support node 22 ([c4ad6af](https://github.com/BitGo/BitGoJS/commit/c4ad6af2e8896221417c303f0f6b84652b493216))
153
+ - **sdk-coin-vet:** add vechain keyPair ([3231af0](https://github.com/BitGo/BitGoJS/commit/3231af0679051bb6034a90f811707713075033ba))
154
+ - **sdk-coin-vet:** address and wallet creation ([7964875](https://github.com/BitGo/BitGoJS/commit/79648755454faac413c82761ca287aac721eb0e5))
155
+
6
156
  # [1.2.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.1.1...@bitgo/sdk-coin-vet@1.2.0) (2025-06-02)
7
157
 
8
158
  ### Features
@@ -2,4 +2,6 @@ export * from './lib';
2
2
  export * from './vet';
3
3
  export * from './tvet';
4
4
  export * from './register';
5
+ export * from './vetToken';
6
+ export * from './vetNFTCollection';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC"}
package/dist/src/index.js CHANGED
@@ -18,4 +18,6 @@ __exportStar(require("./lib"), exports);
18
18
  __exportStar(require("./vet"), exports);
19
19
  __exportStar(require("./tvet"), exports);
20
20
  __exportStar(require("./register"), exports);
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQjtBQUN0Qix3Q0FBc0I7QUFDdEIseUNBQXVCO0FBQ3ZCLDZDQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliJztcbmV4cG9ydCAqIGZyb20gJy4vdmV0JztcbmV4cG9ydCAqIGZyb20gJy4vdHZldCc7XG5leHBvcnQgKiBmcm9tICcuL3JlZ2lzdGVyJztcbiJdfQ==
21
+ __exportStar(require("./vetToken"), exports);
22
+ __exportStar(require("./vetNFTCollection"), exports);
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQjtBQUN0Qix3Q0FBc0I7QUFDdEIseUNBQXVCO0FBQ3ZCLDZDQUEyQjtBQUMzQiw2Q0FBMkI7QUFDM0IscURBQW1DIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWInO1xuZXhwb3J0ICogZnJvbSAnLi92ZXQnO1xuZXhwb3J0ICogZnJvbSAnLi90dmV0JztcbmV4cG9ydCAqIGZyb20gJy4vcmVnaXN0ZXInO1xuZXhwb3J0ICogZnJvbSAnLi92ZXRUb2tlbic7XG5leHBvcnQgKiBmcm9tICcuL3ZldE5GVENvbGxlY3Rpb24nO1xuIl19
@@ -1,3 +1,13 @@
1
- export declare const DEFAULT_GAS_UNIT_PRICE = 100;
2
1
  export declare const VET_TRANSACTION_ID_LENGTH = 64;
2
+ export declare const VET_ADDRESS_LENGTH = 40;
3
+ export declare const VET_BLOCK_ID_LENGTH = 64;
4
+ export declare const TRANSFER_TOKEN_METHOD_ID = "0xa9059cbb";
5
+ export declare const STAKING_METHOD_ID = "0xa694fc3a";
6
+ export declare const EXIT_DELEGATION_METHOD_ID = "0x3fb7a871";
7
+ export declare const BURN_NFT_METHOD_ID = "0x42966c68";
8
+ export declare const TRANSFER_NFT_METHOD_ID = "0x23b872dd";
9
+ export declare const CLAIM_BASE_REWARDS_METHOD_ID = "0x037402d3";
10
+ export declare const CLAIM_STAKING_REWARDS_METHOD_ID = "0xeb2767fa";
11
+ export declare const STARGATE_NFT_ADDRESS = "0x1856c533ac2d94340aaa8544d35a5c1d4a21dee7";
12
+ export declare const STARGATE_DELEGATION_ADDRESS = "0x4cb1c9ef05b529c093371264fab2c93cc6cddb0e";
3
13
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,yBAAyB,KAAK,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC,eAAO,MAAM,wBAAwB,eAAe,CAAC;AACrD,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAC9C,eAAO,MAAM,yBAAyB,eAAe,CAAC;AACtD,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAC/C,eAAO,MAAM,sBAAsB,eAAe,CAAC;AACnD,eAAO,MAAM,4BAA4B,eAAe,CAAC;AACzD,eAAO,MAAM,+BAA+B,eAAe,CAAC;AAE5D,eAAO,MAAM,oBAAoB,+CAA+C,CAAC;AACjF,eAAO,MAAM,2BAA2B,+CAA+C,CAAC"}
@@ -1,6 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VET_TRANSACTION_ID_LENGTH = exports.DEFAULT_GAS_UNIT_PRICE = void 0;
4
- exports.DEFAULT_GAS_UNIT_PRICE = 100;
3
+ exports.STARGATE_DELEGATION_ADDRESS = exports.STARGATE_NFT_ADDRESS = exports.CLAIM_STAKING_REWARDS_METHOD_ID = exports.CLAIM_BASE_REWARDS_METHOD_ID = exports.TRANSFER_NFT_METHOD_ID = exports.BURN_NFT_METHOD_ID = exports.EXIT_DELEGATION_METHOD_ID = exports.STAKING_METHOD_ID = exports.TRANSFER_TOKEN_METHOD_ID = exports.VET_BLOCK_ID_LENGTH = exports.VET_ADDRESS_LENGTH = exports.VET_TRANSACTION_ID_LENGTH = void 0;
5
4
  exports.VET_TRANSACTION_ID_LENGTH = 64;
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxzQkFBc0IsR0FBRyxHQUFHLENBQUM7QUFDN0IsUUFBQSx5QkFBeUIsR0FBRyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgREVGQVVMVF9HQVNfVU5JVF9QUklDRSA9IDEwMDtcbmV4cG9ydCBjb25zdCBWRVRfVFJBTlNBQ1RJT05fSURfTEVOR1RIID0gNjQ7XG4iXX0=
5
+ exports.VET_ADDRESS_LENGTH = 40;
6
+ exports.VET_BLOCK_ID_LENGTH = 64;
7
+ exports.TRANSFER_TOKEN_METHOD_ID = '0xa9059cbb';
8
+ exports.STAKING_METHOD_ID = '0xa694fc3a';
9
+ exports.EXIT_DELEGATION_METHOD_ID = '0x3fb7a871';
10
+ exports.BURN_NFT_METHOD_ID = '0x42966c68';
11
+ exports.TRANSFER_NFT_METHOD_ID = '0x23b872dd';
12
+ exports.CLAIM_BASE_REWARDS_METHOD_ID = '0x037402d3';
13
+ exports.CLAIM_STAKING_REWARDS_METHOD_ID = '0xeb2767fa';
14
+ exports.STARGATE_NFT_ADDRESS = '0x1856c533ac2d94340aaa8544d35a5c1d4a21dee7';
15
+ exports.STARGATE_DELEGATION_ADDRESS = '0x4cb1c9ef05b529c093371264fab2c93cc6cddb0e';
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSx5QkFBeUIsR0FBRyxFQUFFLENBQUM7QUFDL0IsUUFBQSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7QUFDeEIsUUFBQSxtQkFBbUIsR0FBRyxFQUFFLENBQUM7QUFFekIsUUFBQSx3QkFBd0IsR0FBRyxZQUFZLENBQUM7QUFDeEMsUUFBQSxpQkFBaUIsR0FBRyxZQUFZLENBQUM7QUFDakMsUUFBQSx5QkFBeUIsR0FBRyxZQUFZLENBQUM7QUFDekMsUUFBQSxrQkFBa0IsR0FBRyxZQUFZLENBQUM7QUFDbEMsUUFBQSxzQkFBc0IsR0FBRyxZQUFZLENBQUM7QUFDdEMsUUFBQSw0QkFBNEIsR0FBRyxZQUFZLENBQUM7QUFDNUMsUUFBQSwrQkFBK0IsR0FBRyxZQUFZLENBQUM7QUFFL0MsUUFBQSxvQkFBb0IsR0FBRyw0Q0FBNEMsQ0FBQztBQUNwRSxRQUFBLDJCQUEyQixHQUFHLDRDQUE0QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFZFVF9UUkFOU0FDVElPTl9JRF9MRU5HVEggPSA2NDtcbmV4cG9ydCBjb25zdCBWRVRfQUREUkVTU19MRU5HVEggPSA0MDtcbmV4cG9ydCBjb25zdCBWRVRfQkxPQ0tfSURfTEVOR1RIID0gNjQ7XG5cbmV4cG9ydCBjb25zdCBUUkFOU0ZFUl9UT0tFTl9NRVRIT0RfSUQgPSAnMHhhOTA1OWNiYic7XG5leHBvcnQgY29uc3QgU1RBS0lOR19NRVRIT0RfSUQgPSAnMHhhNjk0ZmMzYSc7XG5leHBvcnQgY29uc3QgRVhJVF9ERUxFR0FUSU9OX01FVEhPRF9JRCA9ICcweDNmYjdhODcxJztcbmV4cG9ydCBjb25zdCBCVVJOX05GVF9NRVRIT0RfSUQgPSAnMHg0Mjk2NmM2OCc7XG5leHBvcnQgY29uc3QgVFJBTlNGRVJfTkZUX01FVEhPRF9JRCA9ICcweDIzYjg3MmRkJztcbmV4cG9ydCBjb25zdCBDTEFJTV9CQVNFX1JFV0FSRFNfTUVUSE9EX0lEID0gJzB4MDM3NDAyZDMnO1xuZXhwb3J0IGNvbnN0IENMQUlNX1NUQUtJTkdfUkVXQVJEU19NRVRIT0RfSUQgPSAnMHhlYjI3NjdmYSc7XG5cbmV4cG9ydCBjb25zdCBTVEFSR0FURV9ORlRfQUREUkVTUyA9ICcweDE4NTZjNTMzYWMyZDk0MzQwYWFhODU0NGQzNWE1YzFkNGEyMWRlZTcnO1xuZXhwb3J0IGNvbnN0IFNUQVJHQVRFX0RFTEVHQVRJT05fQUREUkVTUyA9ICcweDRjYjFjOWVmMDViNTI5YzA5MzM3MTI2NGZhYjJjOTNjYzZjZGRiMGUnO1xuIl19
@@ -1,7 +1,34 @@
1
+ import { TransactionExplanation as BaseTransactionExplanation, TransactionType as BitGoTransactionType, TransactionRecipient } from '@bitgo-beta/sdk-core';
2
+ import { ClaimRewardsData } from './types';
1
3
  /**
2
4
  * The transaction data returned from the toJson() function of a transaction
3
5
  */
4
- export interface TxData {
6
+ export interface VetTransactionData {
5
7
  id: string;
8
+ chainTag: number;
9
+ blockRef: string;
10
+ expiration: number;
11
+ gasPriceCoef: number;
12
+ gas: number;
13
+ dependsOn: string | null;
14
+ nonce: string;
15
+ sender?: string;
16
+ feePayer?: string;
17
+ recipients?: TransactionRecipient[];
18
+ data?: string;
19
+ value?: string;
20
+ deployedAddress?: string;
21
+ to?: string;
22
+ tokenAddress?: string;
23
+ tokenId?: string;
24
+ stakingContractAddress?: string;
25
+ amountToStake?: string;
26
+ nftCollectionId?: string;
27
+ claimRewardsData?: ClaimRewardsData;
28
+ }
29
+ export interface VetTransactionExplanation extends BaseTransactionExplanation {
30
+ sender?: string;
31
+ type?: BitGoTransactionType;
32
+ claimRewardsData?: ClaimRewardsData;
6
33
  }
7
34
  //# sourceMappingURL=iface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;CACZ"}
1
+ {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,eAAe,IAAI,oBAAoB,EACvC,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,MAAM,WAAW,yBAA0B,SAAQ,0BAA0B;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,oBAAoB,CAAC;IAC5B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC"}
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSB0cmFuc2FjdGlvbiBkYXRhIHJldHVybmVkIGZyb20gdGhlIHRvSnNvbigpIGZ1bmN0aW9uIG9mIGEgdHJhbnNhY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZDogc3RyaW5nO1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUgYXMgQml0R29UcmFuc2FjdGlvblR5cGUsXG4gIFRyYW5zYWN0aW9uUmVjaXBpZW50LFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBDbGFpbVJld2FyZHNEYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogVGhlIHRyYW5zYWN0aW9uIGRhdGEgcmV0dXJuZWQgZnJvbSB0aGUgdG9Kc29uKCkgZnVuY3Rpb24gb2YgYSB0cmFuc2FjdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZldFRyYW5zYWN0aW9uRGF0YSB7XG4gIGlkOiBzdHJpbmc7XG4gIGNoYWluVGFnOiBudW1iZXI7XG4gIGJsb2NrUmVmOiBzdHJpbmc7XG4gIGV4cGlyYXRpb246IG51bWJlcjtcbiAgZ2FzUHJpY2VDb2VmOiBudW1iZXI7XG4gIGdhczogbnVtYmVyO1xuICBkZXBlbmRzT246IHN0cmluZyB8IG51bGw7XG4gIG5vbmNlOiBzdHJpbmc7XG4gIHNlbmRlcj86IHN0cmluZztcbiAgZmVlUGF5ZXI/OiBzdHJpbmc7XG4gIHJlY2lwaWVudHM/OiBUcmFuc2FjdGlvblJlY2lwaWVudFtdO1xuICBkYXRhPzogc3RyaW5nO1xuICB2YWx1ZT86IHN0cmluZztcbiAgZGVwbG95ZWRBZGRyZXNzPzogc3RyaW5nO1xuICB0bz86IHN0cmluZztcbiAgdG9rZW5BZGRyZXNzPzogc3RyaW5nO1xuICB0b2tlbklkPzogc3RyaW5nOyAvLyBBZGRlZCBmb3IgdW5zdGFraW5nIGFuZCBidXJuIE5GVCB0cmFuc2FjdGlvbnNcbiAgc3Rha2luZ0NvbnRyYWN0QWRkcmVzcz86IHN0cmluZztcbiAgYW1vdW50VG9TdGFrZT86IHN0cmluZztcbiAgbmZ0Q29sbGVjdGlvbklkPzogc3RyaW5nO1xuICBjbGFpbVJld2FyZHNEYXRhPzogQ2xhaW1SZXdhcmRzRGF0YTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICBzZW5kZXI/OiBzdHJpbmc7XG4gIHR5cGU/OiBCaXRHb1RyYW5zYWN0aW9uVHlwZTtcbiAgY2xhaW1SZXdhcmRzRGF0YT86IENsYWltUmV3YXJkc0RhdGE7XG59XG4iXX0=
@@ -2,9 +2,24 @@ import * as Constants from './constants';
2
2
  import * as Utils from './utils';
3
3
  import * as Interface from './iface';
4
4
  export { KeyPair } from './keyPair';
5
- export { Transaction } from './transaction';
6
- export { TransactionBuilder } from './transactionBuilder';
7
- export { TransferBuilder } from './transferBuilder';
5
+ export { Transaction } from './transaction/transaction';
6
+ export { AddressInitializationTransaction } from './transaction/addressInitializationTransaction';
7
+ export { FlushTokenTransaction } from './transaction/flushTokenTransaction';
8
+ export { TokenTransaction } from './transaction/tokenTransaction';
9
+ export { StakingTransaction } from './transaction/stakingTransaction';
10
+ export { ExitDelegationTransaction } from './transaction/exitDelegation';
11
+ export { BurnNftTransaction } from './transaction/burnNftTransaction';
12
+ export { ClaimRewardsTransaction } from './transaction/claimRewards';
13
+ export { NFTTransaction } from './transaction/nftTransaction';
14
+ export { TransactionBuilder } from './transactionBuilder/transactionBuilder';
15
+ export { TransferBuilder } from './transactionBuilder/transferBuilder';
16
+ export { AddressInitializationBuilder } from './transactionBuilder/addressInitializationBuilder';
17
+ export { FlushTokenTransactionBuilder } from './transactionBuilder/flushTokenTransactionBuilder';
18
+ export { StakingBuilder } from './transactionBuilder/stakingBuilder';
19
+ export { NFTTransactionBuilder } from './transactionBuilder/nftTransactionBuilder';
20
+ export { BurnNftBuilder } from './transactionBuilder/burnNftBuilder';
21
+ export { ExitDelegationBuilder } from './transactionBuilder/exitDelegationBuilder';
22
+ export { ClaimRewardsBuilder } from './transactionBuilder/claimRewardsBuilder';
8
23
  export { TransactionBuilderFactory } from './transactionBuilderFactory';
9
24
  export { Constants, Utils, Interface };
10
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,gCAAgC,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC"}
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.Interface = exports.Utils = exports.Constants = exports.TransactionBuilderFactory = exports.TransferBuilder = exports.TransactionBuilder = exports.Transaction = exports.KeyPair = void 0;
36
+ exports.Interface = exports.Utils = exports.Constants = exports.TransactionBuilderFactory = exports.ClaimRewardsBuilder = exports.ExitDelegationBuilder = exports.BurnNftBuilder = exports.NFTTransactionBuilder = exports.StakingBuilder = exports.FlushTokenTransactionBuilder = exports.AddressInitializationBuilder = exports.TransferBuilder = exports.TransactionBuilder = exports.NFTTransaction = exports.ClaimRewardsTransaction = exports.BurnNftTransaction = exports.ExitDelegationTransaction = exports.StakingTransaction = exports.TokenTransaction = exports.FlushTokenTransaction = exports.AddressInitializationTransaction = exports.Transaction = exports.KeyPair = void 0;
37
37
  const Constants = __importStar(require("./constants"));
38
38
  exports.Constants = Constants;
39
39
  const Utils = __importStar(require("./utils"));
@@ -42,12 +42,42 @@ const Interface = __importStar(require("./iface"));
42
42
  exports.Interface = Interface;
43
43
  var keyPair_1 = require("./keyPair");
44
44
  Object.defineProperty(exports, "KeyPair", { enumerable: true, get: function () { return keyPair_1.KeyPair; } });
45
- var transaction_1 = require("./transaction");
45
+ var transaction_1 = require("./transaction/transaction");
46
46
  Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return transaction_1.Transaction; } });
47
- var transactionBuilder_1 = require("./transactionBuilder");
47
+ var addressInitializationTransaction_1 = require("./transaction/addressInitializationTransaction");
48
+ Object.defineProperty(exports, "AddressInitializationTransaction", { enumerable: true, get: function () { return addressInitializationTransaction_1.AddressInitializationTransaction; } });
49
+ var flushTokenTransaction_1 = require("./transaction/flushTokenTransaction");
50
+ Object.defineProperty(exports, "FlushTokenTransaction", { enumerable: true, get: function () { return flushTokenTransaction_1.FlushTokenTransaction; } });
51
+ var tokenTransaction_1 = require("./transaction/tokenTransaction");
52
+ Object.defineProperty(exports, "TokenTransaction", { enumerable: true, get: function () { return tokenTransaction_1.TokenTransaction; } });
53
+ var stakingTransaction_1 = require("./transaction/stakingTransaction");
54
+ Object.defineProperty(exports, "StakingTransaction", { enumerable: true, get: function () { return stakingTransaction_1.StakingTransaction; } });
55
+ var exitDelegation_1 = require("./transaction/exitDelegation");
56
+ Object.defineProperty(exports, "ExitDelegationTransaction", { enumerable: true, get: function () { return exitDelegation_1.ExitDelegationTransaction; } });
57
+ var burnNftTransaction_1 = require("./transaction/burnNftTransaction");
58
+ Object.defineProperty(exports, "BurnNftTransaction", { enumerable: true, get: function () { return burnNftTransaction_1.BurnNftTransaction; } });
59
+ var claimRewards_1 = require("./transaction/claimRewards");
60
+ Object.defineProperty(exports, "ClaimRewardsTransaction", { enumerable: true, get: function () { return claimRewards_1.ClaimRewardsTransaction; } });
61
+ var nftTransaction_1 = require("./transaction/nftTransaction");
62
+ Object.defineProperty(exports, "NFTTransaction", { enumerable: true, get: function () { return nftTransaction_1.NFTTransaction; } });
63
+ var transactionBuilder_1 = require("./transactionBuilder/transactionBuilder");
48
64
  Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return transactionBuilder_1.TransactionBuilder; } });
49
- var transferBuilder_1 = require("./transferBuilder");
65
+ var transferBuilder_1 = require("./transactionBuilder/transferBuilder");
50
66
  Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
67
+ var addressInitializationBuilder_1 = require("./transactionBuilder/addressInitializationBuilder");
68
+ Object.defineProperty(exports, "AddressInitializationBuilder", { enumerable: true, get: function () { return addressInitializationBuilder_1.AddressInitializationBuilder; } });
69
+ var flushTokenTransactionBuilder_1 = require("./transactionBuilder/flushTokenTransactionBuilder");
70
+ Object.defineProperty(exports, "FlushTokenTransactionBuilder", { enumerable: true, get: function () { return flushTokenTransactionBuilder_1.FlushTokenTransactionBuilder; } });
71
+ var stakingBuilder_1 = require("./transactionBuilder/stakingBuilder");
72
+ Object.defineProperty(exports, "StakingBuilder", { enumerable: true, get: function () { return stakingBuilder_1.StakingBuilder; } });
73
+ var nftTransactionBuilder_1 = require("./transactionBuilder/nftTransactionBuilder");
74
+ Object.defineProperty(exports, "NFTTransactionBuilder", { enumerable: true, get: function () { return nftTransactionBuilder_1.NFTTransactionBuilder; } });
75
+ var burnNftBuilder_1 = require("./transactionBuilder/burnNftBuilder");
76
+ Object.defineProperty(exports, "BurnNftBuilder", { enumerable: true, get: function () { return burnNftBuilder_1.BurnNftBuilder; } });
77
+ var exitDelegationBuilder_1 = require("./transactionBuilder/exitDelegationBuilder");
78
+ Object.defineProperty(exports, "ExitDelegationBuilder", { enumerable: true, get: function () { return exitDelegationBuilder_1.ExitDelegationBuilder; } });
79
+ var claimRewardsBuilder_1 = require("./transactionBuilder/claimRewardsBuilder");
80
+ Object.defineProperty(exports, "ClaimRewardsBuilder", { enumerable: true, get: function () { return claimRewardsBuilder_1.ClaimRewardsBuilder; } });
51
81
  var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
52
82
  Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVEQUF5QztBQVNoQyw4QkFBUztBQVJsQiwrQ0FBaUM7QUFRYixzQkFBSztBQVB6QixtREFBcUM7QUFPViw4QkFBUztBQUxwQyxxQ0FBb0M7QUFBM0Isa0dBQUEsT0FBTyxPQUFBO0FBQ2hCLDZDQUE0QztBQUFuQywwR0FBQSxXQUFXLE9BQUE7QUFDcEIsMkRBQTBEO0FBQWpELHdIQUFBLGtCQUFrQixPQUFBO0FBQzNCLHFEQUFvRDtBQUEzQyxrSEFBQSxlQUFlLE9BQUE7QUFDeEIseUVBQXdFO0FBQS9ELHNJQUFBLHlCQUF5QixPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQ29uc3RhbnRzIGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCAqIGFzIFV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0ICogYXMgSW50ZXJmYWNlIGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5JztcbmV4cG9ydCB7IENvbnN0YW50cywgVXRpbHMsIEludGVyZmFjZSB9O1xuIl19
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVEQUF5QztBQXdCaEMsOEJBQVM7QUF2QmxCLCtDQUFpQztBQXVCYixzQkFBSztBQXRCekIsbURBQXFDO0FBc0JWLDhCQUFTO0FBcEJwQyxxQ0FBb0M7QUFBM0Isa0dBQUEsT0FBTyxPQUFBO0FBQ2hCLHlEQUF3RDtBQUEvQywwR0FBQSxXQUFXLE9BQUE7QUFDcEIsbUdBQWtHO0FBQXpGLG9KQUFBLGdDQUFnQyxPQUFBO0FBQ3pDLDZFQUE0RTtBQUFuRSw4SEFBQSxxQkFBcUIsT0FBQTtBQUM5QixtRUFBa0U7QUFBekQsb0hBQUEsZ0JBQWdCLE9BQUE7QUFDekIsdUVBQXNFO0FBQTdELHdIQUFBLGtCQUFrQixPQUFBO0FBQzNCLCtEQUF5RTtBQUFoRSwySEFBQSx5QkFBeUIsT0FBQTtBQUNsQyx1RUFBc0U7QUFBN0Qsd0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IsMkRBQXFFO0FBQTVELHVIQUFBLHVCQUF1QixPQUFBO0FBQ2hDLCtEQUE4RDtBQUFyRCxnSEFBQSxjQUFjLE9BQUE7QUFDdkIsOEVBQTZFO0FBQXBFLHdIQUFBLGtCQUFrQixPQUFBO0FBQzNCLHdFQUF1RTtBQUE5RCxrSEFBQSxlQUFlLE9BQUE7QUFDeEIsa0dBQWlHO0FBQXhGLDRJQUFBLDRCQUE0QixPQUFBO0FBQ3JDLGtHQUFpRztBQUF4Riw0SUFBQSw0QkFBNEIsT0FBQTtBQUNyQyxzRUFBcUU7QUFBNUQsZ0hBQUEsY0FBYyxPQUFBO0FBQ3ZCLG9GQUFtRjtBQUExRSw4SEFBQSxxQkFBcUIsT0FBQTtBQUM5QixzRUFBcUU7QUFBNUQsZ0hBQUEsY0FBYyxPQUFBO0FBQ3ZCLG9GQUFtRjtBQUExRSw4SEFBQSxxQkFBcUIsT0FBQTtBQUM5QixnRkFBK0U7QUFBdEUsMEhBQUEsbUJBQW1CLE9BQUE7QUFDNUIseUVBQXdFO0FBQS9ELHNJQUFBLHlCQUF5QixPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQ29uc3RhbnRzIGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCAqIGFzIFV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0ICogYXMgSW50ZXJmYWNlIGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5leHBvcnQgeyBBZGRyZXNzSW5pdGlhbGl6YXRpb25UcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vYWRkcmVzc0luaXRpYWxpemF0aW9uVHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgRmx1c2hUb2tlblRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi9mbHVzaFRva2VuVHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgVG9rZW5UcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vdG9rZW5UcmFuc2FjdGlvbic7XG5leHBvcnQgeyBTdGFraW5nVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uL3N0YWtpbmdUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBFeGl0RGVsZWdhdGlvblRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi9leGl0RGVsZWdhdGlvbic7XG5leHBvcnQgeyBCdXJuTmZ0VHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uL2J1cm5OZnRUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBDbGFpbVJld2FyZHNUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vY2xhaW1SZXdhcmRzJztcbmV4cG9ydCB7IE5GVFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi9uZnRUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlci90cmFuc2FjdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvdHJhbnNmZXJCdWlsZGVyJztcbmV4cG9ydCB7IEFkZHJlc3NJbml0aWFsaXphdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlci9hZGRyZXNzSW5pdGlhbGl6YXRpb25CdWlsZGVyJztcbmV4cG9ydCB7IEZsdXNoVG9rZW5UcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlci9mbHVzaFRva2VuVHJhbnNhY3Rpb25CdWlsZGVyJztcbmV4cG9ydCB7IFN0YWtpbmdCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvc3Rha2luZ0J1aWxkZXInO1xuZXhwb3J0IHsgTkZUVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvbmZ0VHJhbnNhY3Rpb25CdWlsZGVyJztcbmV4cG9ydCB7IEJ1cm5OZnRCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvYnVybk5mdEJ1aWxkZXInO1xuZXhwb3J0IHsgRXhpdERlbGVnYXRpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvZXhpdERlbGVnYXRpb25CdWlsZGVyJztcbmV4cG9ydCB7IENsYWltUmV3YXJkc0J1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlci9jbGFpbVJld2FyZHNCdWlsZGVyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnknO1xuZXhwb3J0IHsgQ29uc3RhbnRzLCBVdGlscywgSW50ZXJmYWNlIH07XG4iXX0=
@@ -0,0 +1,31 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
2
+ import { Transaction as VetTransaction } from '@vechain/sdk-core';
3
+ import { Transaction } from './transaction';
4
+ import { VetTransactionData } from '../iface';
5
+ export declare class AddressInitializationTransaction extends Transaction {
6
+ private _baseAddress;
7
+ private _feeAddress;
8
+ private _salt;
9
+ private _initCode;
10
+ private _deployedAddress;
11
+ constructor(_coinConfig: Readonly<CoinConfig>);
12
+ get baseAddress(): string;
13
+ set baseAddress(address: string);
14
+ get feeAddress(): string;
15
+ set feeAddress(address: string);
16
+ get salt(): string;
17
+ set salt(salt: string);
18
+ get initCode(): string;
19
+ set initCode(initCode: string);
20
+ get deployedAddress(): string;
21
+ set deployedAddress(address: string);
22
+ /** @inheritdoc */
23
+ build(): Promise<void>;
24
+ /** @inheritdoc */
25
+ buildClauses(): void;
26
+ /** @inheritdoc */
27
+ toJson(): VetTransactionData;
28
+ /** @inheritdoc */
29
+ fromDeserializedSignedTransaction(signedTx: VetTransaction): void;
30
+ }
31
+ //# sourceMappingURL=addressInitializationTransaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addressInitializationTransaction.d.ts","sourceRoot":"","sources":["../../../../src/lib/transaction/addressInitializationTransaction.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAmB,MAAM,qBAAqB,CAAC;AAG9E,OAAO,EAAE,WAAW,IAAI,cAAc,EAAa,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,qBAAa,gCAAiC,SAAQ,WAAW;IAC/D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,gBAAgB,CAAS;gBAErB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,CAAC,OAAO,EAAE,MAAM,EAE9B;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,UAAU,CAAC,OAAO,EAAE,MAAM,EAE7B;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAEpB;IAED,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAE5B;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,IAAI,eAAe,CAAC,OAAO,EAAE,MAAM,EAElC;IAED,kBAAkB;IACZ,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB5B,kBAAkB;IAClB,YAAY,IAAI,IAAI;IAUpB,kBAAkB;IAClB,MAAM,IAAI,kBAAkB;IAmB5B,kBAAkB;IAClB,iCAAiC,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;CAmDlE"}
@@ -0,0 +1,170 @@
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.AddressInitializationTransaction = void 0;
40
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
41
+ const abstract_eth_1 = require("@bitgo-beta/abstract-eth");
42
+ const ethUtil = __importStar(require("ethereumjs-util"));
43
+ const ethereumjs_abi_1 = __importDefault(require("ethereumjs-abi"));
44
+ const sdk_core_2 = require("@vechain/sdk-core");
45
+ const transaction_1 = require("./transaction");
46
+ class AddressInitializationTransaction extends transaction_1.Transaction {
47
+ constructor(_coinConfig) {
48
+ super(_coinConfig);
49
+ this._type = sdk_core_1.TransactionType.AddressInitialization;
50
+ }
51
+ get baseAddress() {
52
+ return this._baseAddress;
53
+ }
54
+ set baseAddress(address) {
55
+ this._baseAddress = address;
56
+ }
57
+ get feeAddress() {
58
+ return this._feeAddress;
59
+ }
60
+ set feeAddress(address) {
61
+ this._feeAddress = address;
62
+ }
63
+ get salt() {
64
+ return this._salt;
65
+ }
66
+ set salt(salt) {
67
+ this._salt = salt;
68
+ }
69
+ get initCode() {
70
+ return this._initCode;
71
+ }
72
+ set initCode(initCode) {
73
+ this._initCode = initCode;
74
+ }
75
+ get deployedAddress() {
76
+ return this._deployedAddress;
77
+ }
78
+ set deployedAddress(address) {
79
+ this._deployedAddress = address;
80
+ }
81
+ /** @inheritdoc */
82
+ async build() {
83
+ super.build();
84
+ if (this._salt && this._initCode) {
85
+ const saltBuffer = ethUtil.setLengthLeft(ethUtil.toBuffer(this._salt), 32);
86
+ const { createForwarderParams, createForwarderTypes } = (0, abstract_eth_1.getCreateForwarderParamsAndTypes)(this._baseAddress, saltBuffer, this._feeAddress);
87
+ // Hash the wallet base address and fee address if present with the given salt, so the address directly relies on the base address and fee address
88
+ const calculationSalt = ethUtil.bufferToHex(ethereumjs_abi_1.default.soliditySHA3(createForwarderTypes, createForwarderParams));
89
+ this.deployedAddress = (0, abstract_eth_1.calculateForwarderV1Address)(this._contract, calculationSalt, this._initCode);
90
+ }
91
+ }
92
+ /** @inheritdoc */
93
+ buildClauses() {
94
+ this._clauses = [
95
+ {
96
+ to: this._contract,
97
+ value: '0x0',
98
+ data: this._transactionData,
99
+ },
100
+ ];
101
+ }
102
+ /** @inheritdoc */
103
+ toJson() {
104
+ const json = {
105
+ id: this.id,
106
+ chainTag: this.chainTag,
107
+ blockRef: this.blockRef,
108
+ expiration: this.expiration,
109
+ gasPriceCoef: this.gasPriceCoef,
110
+ gas: this.gas,
111
+ dependsOn: this.dependsOn,
112
+ nonce: this.nonce,
113
+ data: this.transactionData,
114
+ value: '0',
115
+ sender: this.sender,
116
+ to: this.contract,
117
+ deployedAddress: this.deployedAddress,
118
+ };
119
+ return json;
120
+ }
121
+ /** @inheritdoc */
122
+ fromDeserializedSignedTransaction(signedTx) {
123
+ try {
124
+ if (!signedTx || !signedTx.body) {
125
+ throw new sdk_core_1.InvalidTransactionError('Invalid transaction: missing transaction body');
126
+ }
127
+ // Store the raw transaction
128
+ this.rawTransaction = signedTx;
129
+ // Set transaction body properties
130
+ const body = signedTx.body;
131
+ this.chainTag = typeof body.chainTag === 'number' ? body.chainTag : 0;
132
+ this.blockRef = body.blockRef || '0x0';
133
+ this.expiration = typeof body.expiration === 'number' ? body.expiration : 64;
134
+ this.clauses = body.clauses || [];
135
+ this.gasPriceCoef = typeof body.gasPriceCoef === 'number' ? body.gasPriceCoef : 128;
136
+ this.gas = typeof body.gas === 'number' ? body.gas : Number(body.gas) || 0;
137
+ this.dependsOn = body.dependsOn || null;
138
+ this.nonce = String(body.nonce);
139
+ // Set data from clauses
140
+ this.contract = body.clauses[0]?.to || '0x0';
141
+ this.transactionData = body.clauses[0]?.data || '0x0';
142
+ this.type = sdk_core_1.TransactionType.AddressInitialization;
143
+ const { baseAddress, addressCreationSalt, feeAddress } = (0, abstract_eth_1.decodeForwarderCreationData)(this.transactionData);
144
+ this.baseAddress = baseAddress;
145
+ this.salt = addressCreationSalt;
146
+ this.feeAddress = feeAddress;
147
+ const forwarderImplementationAddress = this._coinConfig.network
148
+ .forwarderImplementationAddress;
149
+ this.initCode = (0, abstract_eth_1.getProxyInitcode)(forwarderImplementationAddress);
150
+ // Set sender address
151
+ if (signedTx.origin) {
152
+ this.sender = signedTx.origin.toString().toLowerCase();
153
+ }
154
+ // Set signatures if present
155
+ if (signedTx.signature) {
156
+ // First signature is sender's signature
157
+ this.senderSignature = Buffer.from(signedTx.signature.slice(0, sdk_core_2.Secp256k1.SIGNATURE_LENGTH));
158
+ // If there's additional signature data, it's the fee payer's signature
159
+ if (signedTx.signature.length > sdk_core_2.Secp256k1.SIGNATURE_LENGTH) {
160
+ this.feePayerSignature = Buffer.from(signedTx.signature.slice(sdk_core_2.Secp256k1.SIGNATURE_LENGTH));
161
+ }
162
+ }
163
+ }
164
+ catch (e) {
165
+ throw new sdk_core_1.InvalidTransactionError(`Failed to deserialize transaction: ${e.message}`);
166
+ }
167
+ }
168
+ }
169
+ exports.AddressInitializationTransaction = AddressInitializationTransaction;
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzc0luaXRpYWxpemF0aW9uVHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uL2FkZHJlc3NJbml0aWFsaXphdGlvblRyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQUFnRjtBQUNoRiwyREFLa0M7QUFFbEMseURBQTJDO0FBQzNDLG9FQUF5QztBQUN6QyxnREFBNkU7QUFDN0UsK0NBQTRDO0FBRzVDLE1BQWEsZ0NBQWlDLFNBQVEseUJBQVc7SUFPL0QsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRywwQkFBZSxDQUFDLHFCQUFxQixDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksV0FBVyxDQUFDLE9BQWU7UUFDN0IsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxVQUFVLENBQUMsT0FBZTtRQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLElBQUksQ0FBQyxJQUFZO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksUUFBUSxDQUFDLFFBQWdCO1FB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ZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSwgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQge1xuICBnZXRDcmVhdGVGb3J3YXJkZXJQYXJhbXNBbmRUeXBlcyxcbiAgY2FsY3VsYXRlRm9yd2FyZGVyVjFBZGRyZXNzLFxuICBkZWNvZGVGb3J3YXJkZXJDcmVhdGlvbkRhdGEsXG4gIGdldFByb3h5SW5pdGNvZGUsXG59IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LWV0aCc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnLCBFdGhlcmV1bU5ldHdvcmsgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCAqIGFzIGV0aFV0aWwgZnJvbSAnZXRoZXJldW1qcy11dGlsJztcbmltcG9ydCBFdGhlcmV1bUFiaSBmcm9tICdldGhlcmV1bWpzLWFiaSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiBhcyBWZXRUcmFuc2FjdGlvbiwgU2VjcDI1NmsxIH0gZnJvbSAnQHZlY2hhaW4vc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFZldFRyYW5zYWN0aW9uRGF0YSB9IGZyb20gJy4uL2lmYWNlJztcblxuZXhwb3J0IGNsYXNzIEFkZHJlc3NJbml0aWFsaXphdGlvblRyYW5zYWN0aW9uIGV4dGVuZHMgVHJhbnNhY3Rpb24ge1xuICBwcml2YXRlIF9iYXNlQWRkcmVzczogc3RyaW5nO1xuICBwcml2YXRlIF9mZWVBZGRyZXNzOiBzdHJpbmc7XG4gIHByaXZhdGUgX3NhbHQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfaW5pdENvZGU6IHN0cmluZztcbiAgcHJpdmF0ZSBfZGVwbG95ZWRBZGRyZXNzOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3R5cGUgPSBUcmFuc2FjdGlvblR5cGUuQWRkcmVzc0luaXRpYWxpemF0aW9uO1xuICB9XG5cbiAgZ2V0IGJhc2VBZGRyZXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2Jhc2VBZGRyZXNzO1xuICB9XG5cbiAgc2V0IGJhc2VBZGRyZXNzKGFkZHJlc3M6IHN0cmluZykge1xuICAgIHRoaXMuX2Jhc2VBZGRyZXNzID0gYWRkcmVzcztcbiAgfVxuXG4gIGdldCBmZWVBZGRyZXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2ZlZUFkZHJlc3M7XG4gIH1cblxuICBzZXQgZmVlQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9mZWVBZGRyZXNzID0gYWRkcmVzcztcbiAgfVxuXG4gIGdldCBzYWx0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3NhbHQ7XG4gIH1cblxuICBzZXQgc2FsdChzYWx0OiBzdHJpbmcpIHtcbiAgICB0aGlzLl9zYWx0ID0gc2FsdDtcbiAgfVxuXG4gIGdldCBpbml0Q29kZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9pbml0Q29kZTtcbiAgfVxuXG4gIHNldCBpbml0Q29kZShpbml0Q29kZTogc3RyaW5nKSB7XG4gICAgdGhpcy5faW5pdENvZGUgPSBpbml0Q29kZTtcbiAgfVxuXG4gIGdldCBkZXBsb3llZEFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZGVwbG95ZWRBZGRyZXNzO1xuICB9XG5cbiAgc2V0IGRlcGxveWVkQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9kZXBsb3llZEFkZHJlc3MgPSBhZGRyZXNzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGFzeW5jIGJ1aWxkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHN1cGVyLmJ1aWxkKCk7XG4gICAgaWYgKHRoaXMuX3NhbHQgJiYgdGhpcy5faW5pdENvZGUpIHtcbiAgICAgIGNvbnN0IHNhbHRCdWZmZXIgPSBldGhVdGlsLnNldExlbmd0aExlZnQoZXRoVXRpbC50b0J1ZmZlcih0aGlzLl9zYWx0KSwgMzIpO1xuXG4gICAgICBjb25zdCB7IGNyZWF0ZUZvcndhcmRlclBhcmFtcywgY3JlYXRlRm9yd2FyZGVyVHlwZXMgfSA9IGdldENyZWF0ZUZvcndhcmRlclBhcmFtc0FuZFR5cGVzKFxuICAgICAgICB0aGlzLl9iYXNlQWRkcmVzcyxcbiAgICAgICAgc2FsdEJ1ZmZlcixcbiAgICAgICAgdGhpcy5fZmVlQWRkcmVzc1xuICAgICAgKTtcblxuICAgICAgLy8gSGFzaCB0aGUgd2FsbGV0IGJhc2UgYWRkcmVzcyBhbmQgZmVlIGFkZHJlc3MgaWYgcHJlc2VudCB3aXRoIHRoZSBnaXZlbiBzYWx0LCBzbyB0aGUgYWRkcmVzcyBkaXJlY3RseSByZWxpZXMgb24gdGhlIGJhc2UgYWRkcmVzcyBhbmQgZmVlIGFkZHJlc3NcbiAgICAgIGNvbnN0IGNhbGN1bGF0aW9uU2FsdCA9IGV0aFV0aWwuYnVmZmVyVG9IZXgoXG4gICAgICAgIEV0aGVyZXVtQWJpLnNvbGlkaXR5U0hBMyhjcmVhdGVGb3J3YXJkZXJUeXBlcywgY3JlYXRlRm9yd2FyZGVyUGFyYW1zKVxuICAgICAgKTtcbiAgICAgIHRoaXMuZGVwbG95ZWRBZGRyZXNzID0gY2FsY3VsYXRlRm9yd2FyZGVyVjFBZGRyZXNzKHRoaXMuX2NvbnRyYWN0LCBjYWxjdWxhdGlvblNhbHQsIHRoaXMuX2luaXRDb2RlKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgYnVpbGRDbGF1c2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2NsYXVzZXMgPSBbXG4gICAgICB7XG4gICAgICAgIHRvOiB0aGlzLl9jb250cmFjdCxcbiAgICAgICAgdmFsdWU6ICcweDAnLFxuICAgICAgICBkYXRhOiB0aGlzLl90cmFuc2FjdGlvbkRhdGEsXG4gICAgICB9LFxuICAgIF07XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Kc29uKCk6IFZldFRyYW5zYWN0aW9uRGF0YSB7XG4gICAgY29uc3QganNvbjogVmV0VHJhbnNhY3Rpb25EYXRhID0ge1xuICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICBjaGFpblRhZzogdGhpcy5jaGFpblRhZyxcbiAgICAgIGJsb2NrUmVmOiB0aGlzLmJsb2NrUmVmLFxuICAgICAgZXhwaXJhdGlvbjogdGhpcy5leHBpcmF0aW9uLFxuICAgICAgZ2FzUHJpY2VDb2VmOiB0aGlzLmdhc1ByaWNlQ29lZixcbiAgICAgIGdhczogdGhpcy5nYXMsXG4gICAgICBkZXBlbmRzT246IHRoaXMuZGVwZW5kc09uLFxuICAgICAgbm9uY2U6IHRoaXMubm9uY2UsXG4gICAgICBkYXRhOiB0aGlzLnRyYW5zYWN0aW9uRGF0YSxcbiAgICAgIHZhbHVlOiAnMCcsXG4gICAgICBzZW5kZXI6IHRoaXMuc2VuZGVyLFxuICAgICAgdG86IHRoaXMuY29udHJhY3QsXG4gICAgICBkZXBsb3llZEFkZHJlc3M6IHRoaXMuZGVwbG95ZWRBZGRyZXNzLFxuICAgIH07XG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZnJvbURlc2VyaWFsaXplZFNpZ25lZFRyYW5zYWN0aW9uKHNpZ25lZFR4OiBWZXRUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICBpZiAoIXNpZ25lZFR4IHx8ICFzaWduZWRUeC5ib2R5KSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbjogbWlzc2luZyB0cmFuc2FjdGlvbiBib2R5Jyk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN0b3JlIHRoZSByYXcgdHJhbnNhY3Rpb25cbiAgICAgIHRoaXMucmF3VHJhbnNhY3Rpb24gPSBzaWduZWRUeDtcblxuICAgICAgLy8gU2V0IHRyYW5zYWN0aW9uIGJvZHkgcHJvcGVydGllc1xuICAgICAgY29uc3QgYm9keSA9IHNpZ25lZFR4LmJvZHk7XG4gICAgICB0aGlzLmNoYWluVGFnID0gdHlwZW9mIGJvZHkuY2hhaW5UYWcgPT09ICdudW1iZXInID8gYm9keS5jaGFpblRhZyA6IDA7XG4gICAgICB0aGlzLmJsb2NrUmVmID0gYm9keS5ibG9ja1JlZiB8fCAnMHgwJztcbiAgICAgIHRoaXMuZXhwaXJhdGlvbiA9IHR5cGVvZiBib2R5LmV4cGlyYXRpb24gPT09ICdudW1iZXInID8gYm9keS5leHBpcmF0aW9uIDogNjQ7XG4gICAgICB0aGlzLmNsYXVzZXMgPSBib2R5LmNsYXVzZXMgfHwgW107XG4gICAgICB0aGlzLmdhc1ByaWNlQ29lZiA9IHR5cGVvZiBib2R5Lmdhc1ByaWNlQ29lZiA9PT0gJ251bWJlcicgPyBib2R5Lmdhc1ByaWNlQ29lZiA6IDEyODtcbiAgICAgIHRoaXMuZ2FzID0gdHlwZW9mIGJvZHkuZ2FzID09PSAnbnVtYmVyJyA/IGJvZHkuZ2FzIDogTnVtYmVyKGJvZHkuZ2FzKSB8fCAwO1xuICAgICAgdGhpcy5kZXBlbmRzT24gPSBib2R5LmRlcGVuZHNPbiB8fCBudWxsO1xuICAgICAgdGhpcy5ub25jZSA9IFN0cmluZyhib2R5Lm5vbmNlKTtcbiAgICAgIC8vIFNldCBkYXRhIGZyb20gY2xhdXNlc1xuICAgICAgdGhpcy5jb250cmFjdCA9IGJvZHkuY2xhdXNlc1swXT8udG8gfHwgJzB4MCc7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uRGF0YSA9IGJvZHkuY2xhdXNlc1swXT8uZGF0YSB8fCAnMHgwJztcbiAgICAgIHRoaXMudHlwZSA9IFRyYW5zYWN0aW9uVHlwZS5BZGRyZXNzSW5pdGlhbGl6YXRpb247XG4gICAgICBjb25zdCB7IGJhc2VBZGRyZXNzLCBhZGRyZXNzQ3JlYXRpb25TYWx0LCBmZWVBZGRyZXNzIH0gPSBkZWNvZGVGb3J3YXJkZXJDcmVhdGlvbkRhdGEodGhpcy50cmFuc2FjdGlvbkRhdGEpO1xuXG4gICAgICB0aGlzLmJhc2VBZGRyZXNzID0gYmFzZUFkZHJlc3MgYXMgc3RyaW5nO1xuICAgICAgdGhpcy5zYWx0ID0gYWRkcmVzc0NyZWF0aW9uU2FsdCBhcyBzdHJpbmc7XG4gICAgICB0aGlzLmZlZUFkZHJlc3MgPSBmZWVBZGRyZXNzIGFzIHN0cmluZztcbiAgICAgIGNvbnN0IGZvcndhcmRlckltcGxlbWVudGF0aW9uQWRkcmVzcyA9ICh0aGlzLl9jb2luQ29uZmlnLm5ldHdvcmsgYXMgRXRoZXJldW1OZXR3b3JrKVxuICAgICAgICAuZm9yd2FyZGVySW1wbGVtZW50YXRpb25BZGRyZXNzIGFzIHN0cmluZztcbiAgICAgIHRoaXMuaW5pdENvZGUgPSBnZXRQcm94eUluaXRjb2RlKGZvcndhcmRlckltcGxlbWVudGF0aW9uQWRkcmVzcyk7XG5cbiAgICAgIC8vIFNldCBzZW5kZXIgYWRkcmVzc1xuICAgICAgaWYgKHNpZ25lZFR4Lm9yaWdpbikge1xuICAgICAgICB0aGlzLnNlbmRlciA9IHNpZ25lZFR4Lm9yaWdpbi50b1N0cmluZygpLnRvTG93ZXJDYXNlKCk7XG4gICAgICB9XG5cbiAgICAgIC8vIFNldCBzaWduYXR1cmVzIGlmIHByZXNlbnRcbiAgICAgIGlmIChzaWduZWRUeC5zaWduYXR1cmUpIHtcbiAgICAgICAgLy8gRmlyc3Qgc2lnbmF0dXJlIGlzIHNlbmRlcidzIHNpZ25hdHVyZVxuICAgICAgICB0aGlzLnNlbmRlclNpZ25hdHVyZSA9IEJ1ZmZlci5mcm9tKHNpZ25lZFR4LnNpZ25hdHVyZS5zbGljZSgwLCBTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCkpO1xuXG4gICAgICAgIC8vIElmIHRoZXJlJ3MgYWRkaXRpb25hbCBzaWduYXR1cmUgZGF0YSwgaXQncyB0aGUgZmVlIHBheWVyJ3Mgc2lnbmF0dXJlXG4gICAgICAgIGlmIChzaWduZWRUeC5zaWduYXR1cmUubGVuZ3RoID4gU2VjcDI1NmsxLlNJR05BVFVSRV9MRU5HVEgpIHtcbiAgICAgICAgICB0aGlzLmZlZVBheWVyU2lnbmF0dXJlID0gQnVmZmVyLmZyb20oc2lnbmVkVHguc2lnbmF0dXJlLnNsaWNlKFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEZhaWxlZCB0byBkZXNlcmlhbGl6ZSB0cmFuc2FjdGlvbjogJHtlLm1lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG59XG4iXX0=