@bitgo/account-lib 2.18.0-rc.10 → 2.18.0-rc.14

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 (122) hide show
  1. package/LICENSE +191 -0
  2. package/dist/browser/bitgo-account-lib.js +1 -1
  3. package/dist/browser/bitgo-account-lib.js.LICENSE.txt +40 -0
  4. package/dist/package.json +8 -5
  5. package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.d.ts +1 -1
  6. package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.d.ts.map +1 -1
  7. package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.js +1 -1
  8. package/dist/src/coin/baseCoin/enum.d.ts +3 -1
  9. package/dist/src/coin/baseCoin/enum.d.ts.map +1 -1
  10. package/dist/src/coin/baseCoin/enum.js +5 -1
  11. package/dist/src/coin/cspr/delegateBuilder.d.ts.map +1 -1
  12. package/dist/src/coin/cspr/delegateBuilder.js +13 -13
  13. package/dist/src/coin/cspr/ifaces.d.ts +5 -5
  14. package/dist/src/coin/cspr/ifaces.d.ts.map +1 -1
  15. package/dist/src/coin/cspr/ifaces.js +1 -1
  16. package/dist/src/coin/cspr/keyPair.d.ts +2 -5
  17. package/dist/src/coin/cspr/keyPair.d.ts.map +1 -1
  18. package/dist/src/coin/cspr/keyPair.js +1 -1
  19. package/dist/src/coin/cspr/transaction.d.ts +1 -1
  20. package/dist/src/coin/cspr/transaction.d.ts.map +1 -1
  21. package/dist/src/coin/cspr/transaction.js +24 -19
  22. package/dist/src/coin/cspr/transactionBuilder.js +10 -10
  23. package/dist/src/coin/cspr/transactionBuilderFactory.d.ts.map +1 -1
  24. package/dist/src/coin/cspr/transactionBuilderFactory.js +7 -6
  25. package/dist/src/coin/cspr/transferBuilder.d.ts.map +1 -1
  26. package/dist/src/coin/cspr/transferBuilder.js +5 -7
  27. package/dist/src/coin/cspr/undelegateBuilder.js +13 -13
  28. package/dist/src/coin/cspr/utils.d.ts +1 -1
  29. package/dist/src/coin/cspr/utils.d.ts.map +1 -1
  30. package/dist/src/coin/cspr/utils.js +54 -21
  31. package/dist/src/coin/cspr/walletInitializationBuilder.js +18 -18
  32. package/dist/src/coin/dot/addressInitializationBuilder.d.ts.map +1 -1
  33. package/dist/src/coin/dot/addressInitializationBuilder.js +1 -1
  34. package/dist/src/coin/dot/batchTransactionBuilder.d.ts +47 -0
  35. package/dist/src/coin/dot/batchTransactionBuilder.d.ts.map +1 -0
  36. package/dist/src/coin/dot/batchTransactionBuilder.js +145 -0
  37. package/dist/src/coin/dot/iface.d.ts +24 -2
  38. package/dist/src/coin/dot/iface.d.ts.map +1 -1
  39. package/dist/src/coin/dot/iface.js +3 -1
  40. package/dist/src/coin/dot/index.d.ts +2 -0
  41. package/dist/src/coin/dot/index.d.ts.map +1 -1
  42. package/dist/src/coin/dot/index.js +6 -2
  43. package/dist/src/coin/dot/transaction.d.ts.map +1 -1
  44. package/dist/src/coin/dot/transaction.js +16 -6
  45. package/dist/src/coin/dot/transactionBuilder.d.ts +12 -10
  46. package/dist/src/coin/dot/transactionBuilder.d.ts.map +1 -1
  47. package/dist/src/coin/dot/transactionBuilder.js +39 -33
  48. package/dist/src/coin/dot/transactionBuilderFactory.d.ts +5 -3
  49. package/dist/src/coin/dot/transactionBuilderFactory.d.ts.map +1 -1
  50. package/dist/src/coin/dot/transactionBuilderFactory.js +28 -21
  51. package/dist/src/coin/dot/transferBuilder.d.ts.map +1 -1
  52. package/dist/src/coin/dot/transferBuilder.js +3 -5
  53. package/dist/src/coin/dot/txnSchema.d.ts +1 -0
  54. package/dist/src/coin/dot/txnSchema.d.ts.map +1 -1
  55. package/dist/src/coin/dot/txnSchema.js +7 -2
  56. package/dist/src/coin/dot/unnominateBuilder.d.ts +24 -0
  57. package/dist/src/coin/dot/unnominateBuilder.d.ts.map +1 -0
  58. package/dist/src/coin/dot/unnominateBuilder.js +72 -0
  59. package/dist/src/coin/dot/utils.d.ts +11 -3
  60. package/dist/src/coin/dot/utils.d.ts.map +1 -1
  61. package/dist/src/coin/dot/utils.js +31 -7
  62. package/dist/src/coin/near/index.d.ts +5 -0
  63. package/dist/src/coin/near/index.d.ts.map +1 -0
  64. package/dist/src/coin/near/index.js +29 -0
  65. package/dist/src/coin/near/keyPair.d.ts +19 -0
  66. package/dist/src/coin/near/keyPair.d.ts.map +1 -0
  67. package/dist/src/coin/near/keyPair.js +76 -0
  68. package/dist/src/coin/near/transaction.d.ts +11 -0
  69. package/dist/src/coin/near/transaction.d.ts.map +1 -0
  70. package/dist/src/coin/near/transaction.js +41 -0
  71. package/dist/src/coin/near/transactionBuilder.d.ts +28 -0
  72. package/dist/src/coin/near/transactionBuilder.d.ts.map +1 -0
  73. package/dist/src/coin/near/transactionBuilder.js +68 -0
  74. package/dist/src/coin/near/transactionBuilderFactory.d.ts +24 -0
  75. package/dist/src/coin/near/transactionBuilderFactory.d.ts.map +1 -0
  76. package/dist/src/coin/near/transactionBuilderFactory.js +56 -0
  77. package/dist/src/coin/near/transferBuilder.d.ts +14 -0
  78. package/dist/src/coin/near/transferBuilder.d.ts.map +1 -0
  79. package/dist/src/coin/near/transferBuilder.js +81 -0
  80. package/dist/src/coin/near/utils.d.ts +18 -0
  81. package/dist/src/coin/near/utils.d.ts.map +1 -0
  82. package/dist/src/coin/near/utils.js +37 -0
  83. package/dist/src/coin/near/walletInitializationBuilder.d.ts +14 -0
  84. package/dist/src/coin/near/walletInitializationBuilder.d.ts.map +1 -0
  85. package/dist/src/coin/near/walletInitializationBuilder.js +81 -0
  86. package/dist/src/coin/sol/constants.d.ts +30 -5
  87. package/dist/src/coin/sol/constants.d.ts.map +1 -1
  88. package/dist/src/coin/sol/constants.js +38 -8
  89. package/dist/src/coin/sol/iface.d.ts +27 -3
  90. package/dist/src/coin/sol/iface.d.ts.map +1 -1
  91. package/dist/src/coin/sol/iface.js +1 -1
  92. package/dist/src/coin/sol/instructionParamsFactory.d.ts.map +1 -1
  93. package/dist/src/coin/sol/instructionParamsFactory.js +103 -4
  94. package/dist/src/coin/sol/solInstructionFactory.d.ts.map +1 -1
  95. package/dist/src/coin/sol/solInstructionFactory.js +73 -1
  96. package/dist/src/coin/sol/stakingActivateBuilder.d.ts +41 -0
  97. package/dist/src/coin/sol/stakingActivateBuilder.d.ts.map +1 -0
  98. package/dist/src/coin/sol/stakingActivateBuilder.js +162 -0
  99. package/dist/src/coin/sol/stakingDeactivateBuilder.d.ts +23 -0
  100. package/dist/src/coin/sol/stakingDeactivateBuilder.d.ts.map +1 -0
  101. package/dist/src/coin/sol/stakingDeactivateBuilder.js +130 -0
  102. package/dist/src/coin/sol/stakingWithdrawBuilder.d.ts +31 -0
  103. package/dist/src/coin/sol/stakingWithdrawBuilder.d.ts.map +1 -0
  104. package/dist/src/coin/sol/stakingWithdrawBuilder.js +146 -0
  105. package/dist/src/coin/sol/transaction.d.ts.map +1 -1
  106. package/dist/src/coin/sol/transaction.js +50 -1
  107. package/dist/src/coin/sol/transactionBuilder.d.ts.map +1 -1
  108. package/dist/src/coin/sol/transactionBuilder.js +4 -10
  109. package/dist/src/coin/sol/transactionBuilderFactory.d.ts +34 -0
  110. package/dist/src/coin/sol/transactionBuilderFactory.d.ts.map +1 -1
  111. package/dist/src/coin/sol/transactionBuilderFactory.js +47 -1
  112. package/dist/src/coin/sol/transferBuilder.d.ts.map +1 -1
  113. package/dist/src/coin/sol/transferBuilder.js +2 -4
  114. package/dist/src/coin/sol/utils.d.ts +23 -1
  115. package/dist/src/coin/sol/utils.d.ts.map +1 -1
  116. package/dist/src/coin/sol/utils.js +63 -11
  117. package/dist/src/coin/sol/walletInitializationBuilder.d.ts.map +1 -1
  118. package/dist/src/coin/sol/walletInitializationBuilder.js +2 -4
  119. package/dist/src/index.d.ts +2 -0
  120. package/dist/src/index.d.ts.map +1 -1
  121. package/dist/src/index.js +5 -2
  122. package/package.json +8 -5
@@ -14,8 +14,7 @@ var txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
14
14
  var hi_base32_1 = __importDefault(require("hi-base32"));
15
15
  var _1 = require(".");
16
16
  var tweetnacl_1 = __importDefault(require("tweetnacl"));
17
- var polkaUtils = require('@polkadot/util');
18
- var createTypeUnsafe = require('@polkadot/types').createTypeUnsafe;
17
+ var types_1 = require("@polkadot/types");
19
18
  var PROXY_METHOD_ARG = 2;
20
19
  var Utils = /** @class */ (function () {
21
20
  function Utils() {
@@ -104,13 +103,16 @@ var Utils = /** @class */ (function () {
104
103
  var methodCall;
105
104
  if (typeof tx === 'string') {
106
105
  try {
107
- var payload = createTypeUnsafe(registry, 'ExtrinsicPayload', [tx, { version: Extrinsic_1.EXTRINSIC_VERSION }]);
108
- methodCall = createTypeUnsafe(registry, 'Call', [payload.method]);
106
+ var payload = types_1.createTypeUnsafe(registry, 'ExtrinsicPayload', [
107
+ tx,
108
+ { version: Extrinsic_1.EXTRINSIC_VERSION },
109
+ ]);
110
+ methodCall = types_1.createTypeUnsafe(registry, 'Call', [payload.method]);
109
111
  }
110
112
  catch (e) {
111
- methodCall = registry.createType('Extrinsic', polkaUtils.hexToU8a(tx), {
113
+ methodCall = registry.createType('Extrinsic', util_1.hexToU8a(tx), {
112
114
  isSigned: true,
113
- }).method;
115
+ });
114
116
  }
115
117
  }
116
118
  else {
@@ -183,9 +185,31 @@ var Utils = /** @class */ (function () {
183
185
  Utils.prototype.getTxHash = function (txHex) {
184
186
  return txwrapper_polkadot_1.construct.txHash(txHex);
185
187
  };
188
+ Utils.prototype.getMaterial = function (coinConfig) {
189
+ var networkConfig = coinConfig.network;
190
+ var specName = networkConfig.specName, specVersion = networkConfig.specVersion, chainName = networkConfig.chainName, txVersion = networkConfig.txVersion, genesisHash = networkConfig.genesisHash;
191
+ return {
192
+ specName: specName,
193
+ specVersion: specVersion,
194
+ chainName: chainName,
195
+ metadata: networkConfig.metadataRpc,
196
+ txVersion: txVersion,
197
+ genesisHash: genesisHash,
198
+ };
199
+ };
200
+ Utils.prototype.isSigningPayload = function (payload) {
201
+ return payload.blockHash !== undefined;
202
+ };
203
+ Utils.prototype.isProxyTransfer = function (arg) {
204
+ return arg.real !== undefined;
205
+ };
206
+ Utils.prototype.isTransfer = function (arg) {
207
+ var _a;
208
+ return ((_a = arg.dest) === null || _a === void 0 ? void 0 : _a.id) !== undefined && arg.value !== undefined;
209
+ };
186
210
  return Utils;
187
211
  }());
188
212
  exports.Utils = Utils;
189
213
  var utils = new Utils();
190
214
  exports.default = utils;
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9kb3QvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsNkNBQTBFO0FBQzFFLHdEQUEyRDtBQUUzRCxvRUFBMkU7QUFDM0UsdUNBQXFFO0FBQ3JFLHFEQUFzRTtBQUN0RSw2Q0FBNkQ7QUFHN0Qsb0VBQTBFO0FBQzFFLHdEQUErQjtBQUMvQixzQkFBNEI7QUFJNUIsd0RBQTZCO0FBQzdCLElBQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQ3JDLElBQUEsZ0JBQWdCLEdBQUssT0FBTyxDQUFDLGlCQUFpQixDQUFDLGlCQUEvQixDQUFnQztBQUV4RCxJQUFNLGdCQUFnQixHQUFHLENBQUMsQ0FBQztBQUMzQjtJQUFBO0lBbUxBLENBQUM7SUFsTEMsa0JBQWtCO0lBQ2xCLDhCQUFjLEdBQWQsVUFBZSxPQUFlO1FBQzVCLElBQUk7WUFDRix1QkFBYSxDQUFDLFlBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyx1QkFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDM0UsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsOEJBQWMsR0FBZCxVQUFlLElBQVk7UUFDekIsT0FBTyxZQUFLLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsaUNBQWlCLEdBQWpCLFVBQWtCLEdBQVc7UUFDM0IsSUFBSTtZQUNGLElBQU0sVUFBVSxHQUFHLGVBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNqQyxPQUFPLFVBQVUsQ0FBQyxNQUFNLEtBQUssbUJBQUksQ0FBQyxJ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QUVkLGtDQUFrQztRQUNsQyxJQUFNLEtBQUssR0FBRyw4QkFBUyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsU0FBUyxFQUFFO1lBQ3ZELFdBQVcsYUFBQTtZQUNYLFFBQVEsVUFBQTtTQUNULENBQUMsQ0FBQztRQUNILE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsZ0NBQWdCLEdBQWhCLFVBQWlCLE9BQWUsRUFBRSxVQUFtQjtRQUNuRCxJQUFNLE9BQU8sR0FBRyxJQUFJLFVBQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLHVCQUFhLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakgsT0FBTyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsZ0NBQWdCLEdBQWhCLFVBQWlCLE9BQWUsRUFBRSxVQUFtQjtRQUNuRCxPQUFPLHVCQUFhLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILHlCQUFTLEdBQVQsVUFBVSxLQUFhO1FBQ3JCLE9BQU8sOEJBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUNILFlBQUM7QUFBRCxDQUFDLEFBbkxELElBbUxDO0FBbkxZLHNCQUFLO0FBcUxsQixJQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO0FBRTFCLGtCQUFlLEtBQUssQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlY29kZUFkZHJlc3MsIGVuY29kZUFkZHJlc3MsIEtleXJpbmcgfSBmcm9tICdAcG9sa2Fkb3Qva2V5cmluZyc7XG5pbXBvcnQgeyBkZWNvZGVQYWlyIH0gZnJvbSAnQHBvbGthZG90L2tleXJpbmcvcGFpci9kZWNvZGUnO1xuaW1wb3J0IHsgS2V5cmluZ1BhaXIgfSBmcm9tICdAcG9sa2Fkb3Qva2V5cmluZy90eXBlcyc7XG5pbXBvcnQgeyBFWFRSSU5TSUNfVkVSU0lPTiB9IGZyb20gJ0Bwb2xrYWRvdC90eXBlcy9leHRyaW5zaWMvdjQvRXh0cmluc2ljJztcbmltcG9ydCB7IGhleFRvVThhLCBpc0hleCwgdThhVG9IZXgsIHU4YVRvVThhIH0gZnJvbSAnQHBvbGthZG90L3V0aWwnO1xuaW1wb3J0IHsgYmFzZTY0RGVjb2RlLCBzaWduYXR1cmVWZXJpZnkgfSBmcm9tICdAcG9sa2Fkb3QvdXRpbC1jcnlwdG8nO1xuaW1wb3J0IHsgaXNWYWxpZEVkMjU1MTlQdWJsaWNLZXkgfSBmcm9tICcuLi8uLi91dGlscy9jcnlwdG8nO1xuaW1wb3J0IHsgVW5zaWduZWRUcmFuc2FjdGlvbiB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLWNvcmUnO1xuaW1wb3J0IHsgVHlwZVJlZ2lzdHJ5IH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZS9saWIvdHlwZXMnO1xuaW1wb3J0IHsgY29uc3RydWN0LCBjcmVhdGVNZXRhZGF0YSB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLXBvbGthZG90JztcbmltcG9ydCBiYXNlMzIgZnJvbSAnaGktYmFzZTMyJztcbmltcG9ydCB7IEtleVBhaXIgfSBmcm9tICcuJztcbmltcG9ydCB7IEJhc2VVdGlscyB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IFNlZWQgfSBmcm9tICcuLi9iYXNlQ29pbi9pZmFjZSc7XG5pbXBvcnQgeyBQcm94eUNhbGxBcmdzLCBUcmFuc2ZlckFyZ3MgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCBuYWNsIGZyb20gJ3R3ZWV0bmFjbCc7XG5jb25zdCBwb2xrYVV0aWxzID0gcmVxdWlyZSgnQHBvbGthZG90L3V0aWwnKTtcbmNvbnN0IHsgY3JlYXRlVHlwZVVuc2FmZSB9ID0gcmVxdWlyZSgnQHBvbGthZG90L3R5cGVzJyk7XG5cbmNvbnN0IFBST1hZX01FVEhPRF9BUkcgPSAyO1xuZXhwb3J0IGNsYXNzIFV0aWxzIGltcGxlbWVudHMgQmFzZVV0aWxzIHtcbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRBZGRyZXNzKGFkZHJlc3M6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRyeSB7XG4gICAgICBlbmNvZGVBZGRyZXNzKGlzSGV4KGFkZHJlc3MpID8gaGV4VG9VOGEoYWRkcmVzcykgOiBkZWNvZGVBZGRyZXNzKGFkZHJlc3MpKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRCbG9ja0lkKGhhc2g6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc0hleChoYXNoLCAyNTYpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRQcml2YXRlS2V5KGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGRlY29kZWRQcnYgPSBoZXhUb1U4YShrZXkpO1xuICAgICAgcmV0dXJuIGRlY29kZWRQcnYubGVuZ3RoID09PSBuYWNsLnNpZ24uc2VjcmV0S2V5TGVuZ3RoIC8gMjtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRQdWJsaWNLZXkoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNWYWxpZEVkMjU1MTlQdWJsaWNLZXkoa2V5KTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkU2lnbmF0dXJlKHNpZ25hdHVyZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgc2lnbmF0dXJlVThhID0gdThhVG9VOGEoc2lnbmF0dXJlKTtcbiAgICByZXR1cm4gWzY0LCA2NSwgNjZdLmluY2x1ZGVzKHNpZ25hdHVyZVU4YS5sZW5ndGgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFZlcmlmaWVzIHRoZSBzaWduYXR1cmUgb24gYSBnaXZlbiBtZXNzYWdlXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzaWduZWRNZXNzYWdlIHRoZSBzaWduZWQgbWVzc2FnZSBmb3IgdGhlIHNpZ25hdHVyZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2lnbmF0dXJlIHRoZSBzaWduYXR1cmUgdG8gdmVyaWZ5XG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhZGRyZXNzIHRoZSBhZGRyZXNzIG9mIHRoZSBzaWduZXJcbiAgICogQHJldHVybnMge2Jvb2xlYW59IHdoZXRoZXIgdGhlIHNpZ25hdHVyZSBpcyB2YWxpZCBvciBub3RcbiAgICovXG4gIHZlcmlmeVNpZ25hdHVyZShzaWduZWRNZXNzYWdlOiBzdHJpbmcsIHNpZ25hdHVyZTogc3RyaW5nLCBhZGRyZXNzOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBwdWJsaWNLZXkgPSBkZWNvZGVBZGRyZXNzKGFkZHJlc3MpO1xuICAgIGNvbnN0IGhleFB1YmxpY0tleSA9IHU4YVRvSGV4KHB1YmxpY0tleSk7XG5cbiAgICByZXR1cm4gc2lnbmF0dXJlVmVyaWZ5KHNpZ25lZE1lc3NhZ2UsIHNpZ25hdHVyZSwgaGV4UHVibGljS2V5KS5pc1ZhbGlkO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRUcmFuc2FjdGlvbklkKHR4SWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc0hleCh0eElkLCAyNTYpO1xuICB9XG5cbiAgLyoqXG4gICAqIGRlY29kZVNlZWQgZGVjb2RlcyBhIGRvdCBzZWVkXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzZWVkIC0gdGhlIHNlZWQgdG8gYmUgdmFsaWRhdGVkLlxuICAgKiBAcmV0dXJucyB7U2VlZH0gLSB0aGUgb2JqZWN0IFNlZWRcbiAgICovXG4gIGRlY29kZVNlZWQoc2VlZDogc3RyaW5nKTogU2VlZCB7XG4gICAgY29uc3QgZGVjb2RlZCA9IGJhc2UzMi5kZWNvZGUuYXNCeXRlcyhzZWVkKTtcbiAgICByZXR1cm4ge1xuICAgICAgc2VlZDogQnVmZmVyLmZyb20oZGVjb2RlZCksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIZWxwZXIgZnVuY3Rpb24gdG8gY2FwaXRhbGl6ZSB0aGUgZmlyc3QgbGV0dGVyIG9mIGEgc3RyaW5nXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB2YWxcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIGNhcGl0YWxpemVGaXJzdExldHRlcih2YWw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHZhbC5zbGljZSgxKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIZWxwZXIgZnVuY3Rpb24gdG8gZGVjb2RlIHRoZSBpbnRlcm5hbCBtZXRob2QgaGV4IGluIGNhc2Ugb2YgYSBwcm94eSB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IFVuc2lnbmVkVHJhbnNhY3Rpb259IHR4XG4gICAqIEBwYXJhbSB7IG1ldGFkYXRhUnBjOiBzdHJpbmc7IHJlZ2lzdHJ5OiBUeXBlUmVnaXN0cnkgfSBvcHRpb25zXG4gICAqIEByZXR1cm5zIHtUcmFuc2ZlckFyZ3N9XG4gICAqL1xuICBkZWNvZGVDYWxsTWV0aG9kKFxuICAgIHR4OiBzdHJpbmcgfCBVbnNpZ25lZFRyYW5zYWN0aW9uLFxuICAgIG9wdGlvbnM6IHsgbWV0YWRhdGFScGM6IHN0cmluZzsgcmVnaXN0cnk6IFR5cGVSZWdpc3RyeSB9LFxuICApOiBUcmFuc2ZlckFyZ3Mge1xuICAgIGNvbnN0IHsgbWV0YWRhdGFScGMsIHJlZ2lzdHJ5IH0gPSBvcHRpb25zO1xuICAgIHJlZ2lzdHJ5LnNldE1ldGFkYXRhKGNyZWF0ZU1ldGFkYXRhKHJlZ2lzdHJ5LCBtZXRhZGF0YVJwYykpO1xuICAgIGxldCBtZXRob2RDYWxsOiBhbnk7XG4gICAgaWYgKHR5cGVvZiB0eCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHBheWxvYWQgPSBjcmVhdGVUeXBlVW5zYWZlKHJlZ2lzdHJ5LCAnRXh0cmluc2ljUGF5bG9hZCcsIFt0eCwgeyB2ZXJzaW9uOiBFWFRSSU5TSUNfVkVSU0lPTiB9XSk7XG4gICAgICAgIG1ldGhvZENhbGwgPSBjcmVhdGVUeXBlVW5zYWZlKHJlZ2lzdHJ5LCAnQ2FsbCcsIFtwYXlsb2FkLm1ldGhvZF0pO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBtZXRob2RDYWxsID0gcmVnaXN0cnkuY3JlYXRlVHlwZSgnRXh0cmluc2ljJywgcG9sa2FVdGlscy5oZXhUb1U4YSh0eCksIHtcbiAgICAgICAgICBpc1NpZ25lZDogdHJ1ZSxcbiAgICAgICAgfSkubWV0aG9kO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBtZXRob2RDYWxsID0gcmVnaXN0cnkuY3JlYXRlVHlwZSgnQ2FsbCcsIHR4Lm1ldGhvZCk7XG4gICAgfVxuICAgIGNvbnN0IG1ldGhvZCA9IG1ldGhvZENhbGwuYXJnc1tQUk9YWV9NRVRIT0RfQVJHXTtcbiAgICBjb25zdCBkZWNvZGVkQXJncyA9IG1ldGhvZC50b0pTT04oKSBhcyB1bmtub3duIGFzIFByb3h5Q2FsbEFyZ3M7XG4gICAgcmV0dXJuIGRlY29kZWRBcmdzLmFyZ3M7XG4gIH1cblxuICAvKipcbiAgICoga2V5UGFpckZyb21TZWVkIGdlbmVyYXRlcyBhbiBvYmplY3Qgd2l0aCBzZWNyZXRLZXkgYW5kIHB1YmxpY0tleSB1c2luZyB0aGUgcG9sa2Fkb3Qgc2RrXG4gICAqIEBwYXJhbSBzZWVkIDMyIGJ5dGVzIGxvbmcgc2VlZFxuICAgKiBAcmV0dXJucyBLZXlQYWlyXG4gICAqL1xuICBrZXlQYWlyRnJvbVNlZWQoc2VlZDogVWludDhBcnJheSk6IEtleVBhaXIge1xuICAgIGNvbnN0IGtleXJpbmcgPSBuZXcgS2V5cmluZyh7IHR5cGU6ICdlZDI1NTE5JyB9KTtcbiAgICBjb25zdCBrZXlyaW5nUGFpciA9IGtleXJpbmcuYWRkRnJvbVNlZWQoc2VlZCk7XG4gICAgY29uc3QgcGFpckpzb24gPSBrZXlyaW5nUGFpci50b0pzb24oKTtcbiAgICBjb25zdCBkZWNvZGVkS2V5UGFpciA9IGRlY29kZVBhaXIoJycsIGJhc2U2NERlY29kZShwYWlySnNvbi5lbmNvZGVkKSwgcGFpckpzb24uZW5jb2RpbmcudHlwZSk7XG4gICAgcmV0dXJuIG5ldyBLZXlQYWlyKHsgcHJ2OiBCdWZmZXIuZnJvbShkZWNvZGVkS2V5UGFpci5zZWNyZXRLZXkpLnRvU3RyaW5nKCdoZXgnKSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTaWduaW5nIGZ1bmN0aW9uLiBJbXBsZW1lbnQgdGhpcyBvbiB0aGUgT0ZGTElORSBzaWduaW5nIGRldmljZS5cbiAgICpcbiAgICogQHBhcmFtIHtLZXlyaW5nUGFpcn0gcGFpciAtIFRoZSBzaWduaW5nIHBhaXIuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzaWduaW5nUGF5bG9hZCAtIFBheWxvYWQgdG8gc2lnbi5cbiAgICovXG4gIGNyZWF0ZVNpZ25lZFR4KHBhaXI6IEtleXJpbmdQYWlyLCBzaWduaW5nUGF5bG9hZDogc3RyaW5nLCB0cmFuc2FjdGlvbjogVW5zaWduZWRUcmFuc2FjdGlvbiwgb3B0aW9ucyk6IHN0cmluZyB7XG4gICAgY29uc3QgeyByZWdpc3RyeSwgbWV0YWRhdGFScGMgfSA9IG9wdGlvbnM7XG4gICAgLy8gSW1wb3J0YW50ISBUaGUgcmVnaXN0cnkgbmVlZHMgdG8gYmUgdXBkYXRlZCB3aXRoIGxhdGVzdCBtZXRhZGF0YSwgc28gbWFrZVxuICAgIC8vIHN1cmUgdG8gcnVuIGByZWdpc3RyeS5zZXRNZXRhZGF0YShtZXRhZGF0YSlgIGJlZm9yZSBzaWduaW5nLlxuICAgIHJlZ2lzdHJ5LnNldE1ldGFkYXRhKGNyZWF0ZU1ldGFkYXRhKHJlZ2lzdHJ5LCBtZXRhZGF0YVJwYykpO1xuICAgIGNvbnN0IHsgc2lnbmF0dXJlIH0gPSByZWdpc3RyeVxuICAgICAgLmNyZWF0ZVR5cGUoJ0V4dHJpbnNpY1BheWxvYWQnLCBzaWduaW5nUGF5bG9hZCwge1xuICAgICAgICB2ZXJzaW9uOiBFWFRSSU5TSUNfVkVSU0lPTixcbiAgICAgIH0pXG4gICAgICAuc2lnbihwYWlyKTtcblxuICAgIC8vIFNlcmlhbGl6ZSBhIHNpZ25lZCB0cmFuc2FjdGlvbi5cbiAgICBjb25zdCB0eEhleCA9IGNvbnN0cnVjdC5zaWduZWRUeCh0cmFuc2FjdGlvbiwgc2lnbmF0dXJlLCB7XG4gICAgICBtZXRhZGF0YVJwYyxcbiAgICAgIHJlZ2lzdHJ5LFxuICAgIH0pO1xuICAgIHJldHVybiB0eEhleDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWNvZGVzIHRoZSBkb3QgYWRkcmVzcyBmcm9tIHRoZSBnaXZlbiBmb3JtYXRcbiAgICpcbiAgICogQHBhcmFtIGFkZHJlc3MgRGVjb2Rlc1xuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgZGVjb2RlRG90QWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcsIHNzNThGb3JtYXQ/OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGNvbnN0IGtleXBhaXIgPSBuZXcgS2V5UGFpcih7IHB1YjogQnVmZmVyLmZyb20oZGVjb2RlQWRkcmVzcyhhZGRyZXNzLCB1bmRlZmluZWQsIHNzNThGb3JtYXQpKS50b1N0cmluZygnaGV4JykgfSk7XG4gICAgcmV0dXJuIGtleXBhaXIuZ2V0QWRkcmVzcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZXMgdGhlIGRvdCBhZGRyZXNzIGZyb20gdGhlIGdpdmVuIGZvcm1hdFxuICAgKlxuICAgKiBAcGFyYW0gYWRkcmVzcyBEZWNvZGVzXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBlbmNvZGVEb3RBZGRyZXNzKGFkZHJlc3M6IHN0cmluZywgc3M1OEZvcm1hdD86IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGVuY29kZUFkZHJlc3MoYWRkcmVzcywgc3M1OEZvcm1hdCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIHRoZSB0eEhhc2ggb2YgYSBzaWduZWQgdHhIZXhcbiAgICpcbiAgICogQHBhcmFtIHR4SGV4IHNpZ25lZCB0cmFuc2FjdGlvbiBoZXhcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIGdldFR4SGFzaCh0eEhleDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gY29uc3RydWN0LnR4SGFzaCh0eEhleCk7XG4gIH1cbn1cblxuY29uc3QgdXRpbHMgPSBuZXcgVXRpbHMoKTtcblxuZXhwb3J0IGRlZmF1bHQgdXRpbHM7XG4iXX0=
215
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9kb3QvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsNkNBQTBFO0FBQzFFLHdEQUEyRDtBQUUzRCxvRUFBMkU7QUFDM0UsdUNBQXFFO0FBQ3JFLHFEQUFzRTtBQUN0RSw2Q0FBNkQ7QUFHN0Qsb0VBQTBFO0FBQzFFLHdEQUErQjtBQUMvQixzQkFBNEI7QUFJNUIsd0RBQTZCO0FBRTdCLHlDQUEyRztBQUUzRyxJQUFNLGdCQUFnQixHQUFHLENBQUMsQ0FBQztBQUMzQjtJQUFBO0lBcU5BLENBQUM7SUFwTkMsa0JBQWtCO0lBQ2xCLDhCQUFjLEdBQWQsVUFBZSxPQUFlO1FBQzVCLElBQUk7WUFDRix1QkFBYSxDQUFDLFlBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyx1QkFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDM0UsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsOEJBQWMsR0FBZCxVQUFlLElBQVk7UUFDekIsT0FBTyxZQUFLLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsaUNBQWlCLEdBQWpCLFVBQWtCLEdBQVc7UUFDM0IsSUFBSTtZQUNGLElBQU0sVUFBVSxHQUFHLGVBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNqQyxPQUFPLFVBQVUsQ0FBQyxNQUFNLEtBQUssbUJBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsQ0FBQztTQUM1RDtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7SUFF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L0QsT0FBUSxPQUFpQyxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUM7SUFDcEUsQ0FBQztJQUVELCtCQUFlLEdBQWYsVUFBZ0IsR0FBcUI7UUFDbkMsT0FBUSxHQUFpQixDQUFDLElBQUksS0FBSyxTQUFTLENBQUM7SUFDL0MsQ0FBQztJQUVELDBCQUFVLEdBQVYsVUFBVyxHQUFxQjs7UUFDOUIsT0FBTyxDQUFBLE1BQUMsR0FBb0IsQ0FBQyxJQUFJLDBDQUFFLEVBQUUsTUFBSyxTQUFTLElBQUssR0FBb0IsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDO0lBQ25HLENBQUM7SUFDSCxZQUFDO0FBQUQsQ0FBQyxBQXJORCxJQXFOQztBQXJOWSxzQkFBSztBQXVObEIsSUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztBQUUxQixrQkFBZSxLQUFLLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkZWNvZGVBZGRyZXNzLCBlbmNvZGVBZGRyZXNzLCBLZXlyaW5nIH0gZnJvbSAnQHBvbGthZG90L2tleXJpbmcnO1xuaW1wb3J0IHsgZGVjb2RlUGFpciB9IGZyb20gJ0Bwb2xrYWRvdC9rZXlyaW5nL3BhaXIvZGVjb2RlJztcbmltcG9ydCB7IEtleXJpbmdQYWlyIH0gZnJvbSAnQHBvbGthZG90L2tleXJpbmcvdHlwZXMnO1xuaW1wb3J0IHsgRVhUUklOU0lDX1ZFUlNJT04gfSBmcm9tICdAcG9sa2Fkb3QvdHlwZXMvZXh0cmluc2ljL3Y0L0V4dHJpbnNpYyc7XG5pbXBvcnQgeyBoZXhUb1U4YSwgaXNIZXgsIHU4YVRvSGV4LCB1OGFUb1U4YSB9IGZyb20gJ0Bwb2xrYWRvdC91dGlsJztcbmltcG9ydCB7IGJhc2U2NERlY29kZSwgc2lnbmF0dXJlVmVyaWZ5IH0gZnJvbSAnQHBvbGthZG90L3V0aWwtY3J5cHRvJztcbmltcG9ydCB7IGlzVmFsaWRFZDI1NTE5UHVibGljS2V5IH0gZnJvbSAnLi4vLi4vdXRpbHMvY3J5cHRvJztcbmltcG9ydCB7IFVuc2lnbmVkVHJhbnNhY3Rpb24gfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1jb3JlJztcbmltcG9ydCB7IERlY29kZWRTaWduZWRUeCwgRGVjb2RlZFNpZ25pbmdQYXlsb2FkLCBUeXBlUmVnaXN0cnkgfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1jb3JlL2xpYi90eXBlcyc7XG5pbXBvcnQgeyBjb25zdHJ1Y3QsIGNyZWF0ZU1ldGFkYXRhIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItcG9sa2Fkb3QnO1xuaW1wb3J0IGJhc2UzMiBmcm9tICdoaS1iYXNlMzInO1xuaW1wb3J0IHsgS2V5UGFpciB9IGZyb20gJy4nO1xuaW1wb3J0IHsgQmFzZVV0aWxzIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgU2VlZCB9IGZyb20gJy4uL2Jhc2VDb2luL2lmYWNlJztcbmltcG9ydCB7IFByb3h5Q2FsbEFyZ3MsIFRyYW5zZmVyQXJncywgUHJveHlBcmdzLCBUeE1ldGhvZCwgTWF0ZXJpYWwgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCBuYWNsIGZyb20gJ3R3ZWV0bmFjbCc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnLCBEb3ROZXR3b3JrIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgY3JlYXRlVHlwZVVuc2FmZSwgR2VuZXJpY0V4dHJpbnNpY1BheWxvYWQsIEdlbmVyaWNDYWxsLCBHZW5lcmljRXh0cmluc2ljIH0gZnJvbSAnQHBvbGthZG90L3R5cGVzJztcblxuY29uc3QgUFJPWFlfTUVUSE9EX0FSRyA9IDI7XG5leHBvcnQgY2xhc3MgVXRpbHMgaW1wbGVtZW50cyBCYXNlVXRpbHMge1xuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZEFkZHJlc3MoYWRkcmVzczogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgdHJ5IHtcbiAgICAgIGVuY29kZUFkZHJlc3MoaXNIZXgoYWRkcmVzcykgPyBoZXhUb1U4YShhZGRyZXNzKSA6IGRlY29kZUFkZHJlc3MoYWRkcmVzcykpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZEJsb2NrSWQoaGFzaDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzSGV4KGhhc2gsIDI1Nik7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFByaXZhdGVLZXkoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZGVjb2RlZFBydiA9IGhleFRvVThhKGtleSk7XG4gICAgICByZXR1cm4gZGVjb2RlZFBydi5sZW5ndGggPT09IG5hY2wuc2lnbi5zZWNyZXRLZXlMZW5ndGggLyAyO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFB1YmxpY0tleShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1ZhbGlkRWQyNTUxOVB1YmxpY0tleShrZXkpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRTaWduYXR1cmUoc2lnbmF0dXJlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBzaWduYXR1cmVVOGEgPSB1OGFUb1U4YShzaWduYXR1cmUpO1xuICAgIHJldHVybiBbNjQsIDY1LCA2Nl0uaW5jbHVkZXMoc2lnbmF0dXJlVThhLmxlbmd0aCk7XG4gIH1cblxuICAvKipcbiAgICogVmVyaWZpZXMgdGhlIHNpZ25hdHVyZSBvbiBhIGdpdmVuIG1lc3NhZ2VcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHNpZ25lZE1lc3NhZ2UgdGhlIHNpZ25lZCBtZXNzYWdlIGZvciB0aGUgc2lnbmF0dXJlXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzaWduYXR1cmUgdGhlIHNpZ25hdHVyZSB0byB2ZXJpZnlcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFkZHJlc3MgdGhlIGFkZHJlc3Mgb2YgdGhlIHNpZ25lclxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gd2hldGhlciB0aGUgc2lnbmF0dXJlIGlzIHZhbGlkIG9yIG5vdFxuICAgKi9cbiAgdmVyaWZ5U2lnbmF0dXJlKHNpZ25lZE1lc3NhZ2U6IHN0cmluZywgc2lnbmF0dXJlOiBzdHJpbmcsIGFkZHJlc3M6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHB1YmxpY0tleSA9IGRlY29kZUFkZHJlc3MoYWRkcmVzcyk7XG4gICAgY29uc3QgaGV4UHVibGljS2V5ID0gdThhVG9IZXgocHVibGljS2V5KTtcblxuICAgIHJldHVybiBzaWduYXR1cmVWZXJpZnkoc2lnbmVkTWVzc2FnZSwgc2lnbmF0dXJlLCBoZXhQdWJsaWNLZXkpLmlzVmFsaWQ7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFRyYW5zYWN0aW9uSWQodHhJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzSGV4KHR4SWQsIDI1Nik7XG4gIH1cblxuICAvKipcbiAgICogZGVjb2RlU2VlZCBkZWNvZGVzIGEgZG90IHNlZWRcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHNlZWQgLSB0aGUgc2VlZCB0byBiZSB2YWxpZGF0ZWQuXG4gICAqIEByZXR1cm5zIHtTZWVkfSAtIHRoZSBvYmplY3QgU2VlZFxuICAgKi9cbiAgZGVjb2RlU2VlZChzZWVkOiBzdHJpbmcpOiBTZWVkIHtcbiAgICBjb25zdCBkZWNvZGVkID0gYmFzZTMyLmRlY29kZS5hc0J5dGVzKHNlZWQpO1xuICAgIHJldHVybiB7XG4gICAgICBzZWVkOiBCdWZmZXIuZnJvbShkZWNvZGVkKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEhlbHBlciBmdW5jdGlvbiB0byBjYXBpdGFsaXplIHRoZSBmaXJzdCBsZXR0ZXIgb2YgYSBzdHJpbmdcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHZhbFxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKHZhbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdmFsLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdmFsLnNsaWNlKDEpO1xuICB9XG5cbiAgLyoqXG4gICAqIEhlbHBlciBmdW5jdGlvbiB0byBkZWNvZGUgdGhlIGludGVybmFsIG1ldGhvZCBoZXggaW4gY2FzZSBvZiBhIHByb3h5IHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgVW5zaWduZWRUcmFuc2FjdGlvbn0gdHhcbiAgICogQHBhcmFtIHsgbWV0YWRhdGFScGM6IHN0cmluZzsgcmVnaXN0cnk6IFR5cGVSZWdpc3RyeSB9IG9wdGlvbnNcbiAgICogQHJldHVybnMge1RyYW5zZmVyQXJnc31cbiAgICovXG4gIGRlY29kZUNhbGxNZXRob2QoXG4gICAgdHg6IHN0cmluZyB8IFVuc2lnbmVkVHJhbnNhY3Rpb24sXG4gICAgb3B0aW9uczogeyBtZXRhZGF0YVJwYzogc3RyaW5nOyByZWdpc3RyeTogVHlwZVJlZ2lzdHJ5IH0sXG4gICk6IFRyYW5zZmVyQXJncyB7XG4gICAgY29uc3QgeyBtZXRhZGF0YVJwYywgcmVnaXN0cnkgfSA9IG9wdGlvbnM7XG4gICAgcmVnaXN0cnkuc2V0TWV0YWRhdGEoY3JlYXRlTWV0YWRhdGEocmVnaXN0cnksIG1ldGFkYXRhUnBjKSk7XG4gICAgbGV0IG1ldGhvZENhbGw6IEdlbmVyaWNDYWxsIHwgR2VuZXJpY0V4dHJpbnNpYztcbiAgICBpZiAodHlwZW9mIHR4ID09PSAnc3RyaW5nJykge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcGF5bG9hZDogR2VuZXJpY0V4dHJpbnNpY1BheWxvYWQgPSBjcmVhdGVUeXBlVW5zYWZlKHJlZ2lzdHJ5LCAnRXh0cmluc2ljUGF5bG9hZCcsIFtcbiAgICAgICAgICB0eCxcbiAgICAgICAgICB7IHZlcnNpb246IEVYVFJJTlNJQ19WRVJTSU9OIH0sXG4gICAgICAgIF0pO1xuICAgICAgICBtZXRob2RDYWxsID0gY3JlYXRlVHlwZVVuc2FmZShyZWdpc3RyeSwgJ0NhbGwnLCBbcGF5bG9hZC5tZXRob2RdKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgbWV0aG9kQ2FsbCA9IHJlZ2lzdHJ5LmNyZWF0ZVR5cGUoJ0V4dHJpbnNpYycsIGhleFRvVThhKHR4KSwge1xuICAgICAgICAgIGlzU2lnbmVkOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgbWV0aG9kQ2FsbCA9IHJlZ2lzdHJ5LmNyZWF0ZVR5cGUoJ0NhbGwnLCB0eC5tZXRob2QpO1xuICAgIH1cbiAgICBjb25zdCBtZXRob2QgPSBtZXRob2RDYWxsLmFyZ3NbUFJPWFlfTUVUSE9EX0FSR107XG4gICAgY29uc3QgZGVjb2RlZEFyZ3MgPSBtZXRob2QudG9KU09OKCkgYXMgdW5rbm93biBhcyBQcm94eUNhbGxBcmdzO1xuICAgIHJldHVybiBkZWNvZGVkQXJncy5hcmdzO1xuICB9XG5cbiAgLyoqXG4gICAqIGtleVBhaXJGcm9tU2VlZCBnZW5lcmF0ZXMgYW4gb2JqZWN0IHdpdGggc2VjcmV0S2V5IGFuZCBwdWJsaWNLZXkgdXNpbmcgdGhlIHBvbGthZG90IHNka1xuICAgKiBAcGFyYW0gc2VlZCAzMiBieXRlcyBsb25nIHNlZWRcbiAgICogQHJldHVybnMgS2V5UGFpclxuICAgKi9cbiAga2V5UGFpckZyb21TZWVkKHNlZWQ6IFVpbnQ4QXJyYXkpOiBLZXlQYWlyIHtcbiAgICBjb25zdCBrZXlyaW5nID0gbmV3IEtleXJpbmcoeyB0eXBlOiAnZWQyNTUxOScgfSk7XG4gICAgY29uc3Qga2V5cmluZ1BhaXIgPSBrZXlyaW5nLmFkZEZyb21TZWVkKHNlZWQpO1xuICAgIGNvbnN0IHBhaXJKc29uID0ga2V5cmluZ1BhaXIudG9Kc29uKCk7XG4gICAgY29uc3QgZGVjb2RlZEtleVBhaXIgPSBkZWNvZGVQYWlyKCcnLCBiYXNlNjREZWNvZGUocGFpckpzb24uZW5jb2RlZCksIHBhaXJKc29uLmVuY29kaW5nLnR5cGUpO1xuICAgIHJldHVybiBuZXcgS2V5UGFpcih7IHBydjogQnVmZmVyLmZyb20oZGVjb2RlZEtleVBhaXIuc2VjcmV0S2V5KS50b1N0cmluZygnaGV4JykgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2lnbmluZyBmdW5jdGlvbi4gSW1wbGVtZW50IHRoaXMgb24gdGhlIE9GRkxJTkUgc2lnbmluZyBkZXZpY2UuXG4gICAqXG4gICAqIEBwYXJhbSB7S2V5cmluZ1BhaXJ9IHBhaXIgLSBUaGUgc2lnbmluZyBwYWlyLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2lnbmluZ1BheWxvYWQgLSBQYXlsb2FkIHRvIHNpZ24uXG4gICAqL1xuICBjcmVhdGVTaWduZWRUeChcbiAgICBwYWlyOiBLZXlyaW5nUGFpcixcbiAgICBzaWduaW5nUGF5bG9hZDogc3RyaW5nLFxuICAgIHRyYW5zYWN0aW9uOiBVbnNpZ25lZFRyYW5zYWN0aW9uLFxuICAgIG9wdGlvbnM6IHsgbWV0YWRhdGFScGM6IGAweCR7c3RyaW5nfWA7IHJlZ2lzdHJ5OiBUeXBlUmVnaXN0cnkgfSxcbiAgKTogc3RyaW5nIHtcbiAgICBjb25zdCB7IHJlZ2lzdHJ5LCBtZXRhZGF0YVJwYyB9ID0gb3B0aW9ucztcbiAgICAvLyBJbXBvcnRhbnQhIFRoZSByZWdpc3RyeSBuZWVkcyB0byBiZSB1cGRhdGVkIHdpdGggbGF0ZXN0IG1ldGFkYXRhLCBzbyBtYWtlXG4gICAgLy8gc3VyZSB0byBydW4gYHJlZ2lzdHJ5LnNldE1ldGFkYXRhKG1ldGFkYXRhKWAgYmVmb3JlIHNpZ25pbmcuXG4gICAgcmVnaXN0cnkuc2V0TWV0YWRhdGEoY3JlYXRlTWV0YWRhdGEocmVnaXN0cnksIG1ldGFkYXRhUnBjKSk7XG4gICAgY29uc3QgeyBzaWduYXR1cmUgfSA9IHJlZ2lzdHJ5XG4gICAgICAuY3JlYXRlVHlwZSgnRXh0cmluc2ljUGF5bG9hZCcsIHNpZ25pbmdQYXlsb2FkLCB7XG4gICAgICAgIHZlcnNpb246IEVYVFJJTlNJQ19WRVJTSU9OLFxuICAgICAgfSlcbiAgICAgIC5zaWduKHBhaXIpO1xuXG4gICAgLy8gU2VyaWFsaXplIGEgc2lnbmVkIHRyYW5zYWN0aW9uLlxuICAgIGNvbnN0IHR4SGV4ID0gY29uc3RydWN0LnNpZ25lZFR4KHRyYW5zYWN0aW9uLCBzaWduYXR1cmUsIHtcbiAgICAgIG1ldGFkYXRhUnBjLFxuICAgICAgcmVnaXN0cnksXG4gICAgfSk7XG4gICAgcmV0dXJuIHR4SGV4O1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZXMgdGhlIGRvdCBhZGRyZXNzIGZyb20gdGhlIGdpdmVuIGZvcm1hdFxuICAgKlxuICAgKiBAcGFyYW0gYWRkcmVzcyBEZWNvZGVzXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBkZWNvZGVEb3RBZGRyZXNzKGFkZHJlc3M6IHN0cmluZywgc3M1OEZvcm1hdD86IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3Qga2V5cGFpciA9IG5ldyBLZXlQYWlyKHsgcHViOiBCdWZmZXIuZnJvbShkZWNvZGVBZGRyZXNzKGFkZHJlc3MsIHVuZGVmaW5lZCwgc3M1OEZvcm1hdCkpLnRvU3RyaW5nKCdoZXgnKSB9KTtcbiAgICByZXR1cm4ga2V5cGFpci5nZXRBZGRyZXNzKCk7XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlcyB0aGUgZG90IGFkZHJlc3MgZnJvbSB0aGUgZ2l2ZW4gZm9ybWF0XG4gICAqXG4gICAqIEBwYXJhbSBhZGRyZXNzIERlY29kZXNcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIGVuY29kZURvdEFkZHJlc3MoYWRkcmVzczogc3RyaW5nLCBzczU4Rm9ybWF0PzogbnVtYmVyKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZW5jb2RlQWRkcmVzcyhhZGRyZXNzLCBzczU4Rm9ybWF0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIHR4SGFzaCBvZiBhIHNpZ25lZCB0eEhleFxuICAgKlxuICAgKiBAcGFyYW0gdHhIZXggc2lnbmVkIHRyYW5zYWN0aW9uIGhleFxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgZ2V0VHhIYXNoKHR4SGV4OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBjb25zdHJ1Y3QudHhIYXNoKHR4SGV4KTtcbiAgfVxuXG4gIGdldE1hdGVyaWFsKGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KTogTWF0ZXJpYWwge1xuICAgIGNvbnN0IG5ldHdvcmtDb25maWcgPSBjb2luQ29uZmlnLm5ldHdvcmsgYXMgRG90TmV0d29yaztcbiAgICBjb25zdCB7IHNwZWNOYW1lLCBzcGVjVmVyc2lvbiwgY2hhaW5OYW1lLCB0eFZlcnNpb24sIGdlbmVzaXNIYXNoIH0gPSBuZXR3b3JrQ29uZmlnO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHNwZWNOYW1lLFxuICAgICAgc3BlY1ZlcnNpb24sXG4gICAgICBjaGFpbk5hbWUsXG4gICAgICBtZXRhZGF0YTogbmV0d29ya0NvbmZpZy5tZXRhZGF0YVJwYyxcbiAgICAgIHR4VmVyc2lvbixcbiAgICAgIGdlbmVzaXNIYXNoLFxuICAgIH0gYXMgTWF0ZXJpYWw7XG4gIH1cblxuICBpc1NpZ25pbmdQYXlsb2FkKHBheWxvYWQ6IERlY29kZWRTaWduaW5nUGF5bG9hZCB8IERlY29kZWRTaWduZWRUeCk6IHBheWxvYWQgaXMgRGVjb2RlZFNpZ25pbmdQYXlsb2FkIHtcbiAgICByZXR1cm4gKHBheWxvYWQgYXMgRGVjb2RlZFNpZ25pbmdQYXlsb2FkKS5ibG9ja0hhc2ggIT09IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGlzUHJveHlUcmFuc2Zlcihhcmc6IFR4TWV0aG9kWydhcmdzJ10pOiBhcmcgaXMgUHJveHlBcmdzIHtcbiAgICByZXR1cm4gKGFyZyBhcyBQcm94eUFyZ3MpLnJlYWwgIT09IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGlzVHJhbnNmZXIoYXJnOiBUeE1ldGhvZFsnYXJncyddKTogYXJnIGlzIFRyYW5zZmVyQXJncyB7XG4gICAgcmV0dXJuIChhcmcgYXMgVHJhbnNmZXJBcmdzKS5kZXN0Py5pZCAhPT0gdW5kZWZpbmVkICYmIChhcmcgYXMgVHJhbnNmZXJBcmdzKS52YWx1ZSAhPT0gdW5kZWZpbmVkO1xuICB9XG59XG5cbmNvbnN0IHV0aWxzID0gbmV3IFV0aWxzKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHV0aWxzO1xuIl19
@@ -0,0 +1,5 @@
1
+ import * as Utils from './utils';
2
+ export { KeyPair } from './keyPair';
3
+ export { TransactionBuilderFactory } from './transactionBuilderFactory';
4
+ export { Utils };
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.Utils = exports.TransactionBuilderFactory = exports.KeyPair = void 0;
23
+ var Utils = __importStar(require("./utils"));
24
+ exports.Utils = Utils;
25
+ var keyPair_1 = require("./keyPair");
26
+ Object.defineProperty(exports, "KeyPair", { enumerable: true, get: function () { return keyPair_1.KeyPair; } });
27
+ var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
28
+ Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9uZWFyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFJeEIsc0JBQUs7QUFGZCxxQ0FBb0M7QUFBM0Isa0dBQUEsT0FBTyxPQUFBO0FBQ2hCLHlFQUF3RTtBQUEvRCxzSUFBQSx5QkFBeUIsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnknO1xuZXhwb3J0IHsgVXRpbHMgfTtcbiJdfQ==
@@ -0,0 +1,19 @@
1
+ import { Ed25519KeyPair } from '../baseCoin';
2
+ import { DefaultKeys, KeyPairOptions } from '../baseCoin/iface';
3
+ export declare class KeyPair extends Ed25519KeyPair {
4
+ /**
5
+ * Public constructor. By default, creates a key pair with a random master seed.
6
+ *
7
+ * @param { KeyPairOptions } source Either a master seed, a private key, or a public key
8
+ */
9
+ constructor(source?: KeyPairOptions);
10
+ /** @inheritdoc */
11
+ recordKeysFromPrivateKeyInProtocolFormat(prv: string): DefaultKeys;
12
+ /** @inheritdoc */
13
+ recordKeysFromPublicKeyInProtocolFormat(pub: string): DefaultKeys;
14
+ /** @inheritdoc */
15
+ getAddress(): string;
16
+ /** @inheritdoc */
17
+ getKeys(): DefaultKeys;
18
+ }
19
+ //# sourceMappingURL=keyPair.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyPair.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/keyPair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAIhE,qBAAa,OAAQ,SAAQ,cAAc;IACzC;;;;OAIG;gBACS,MAAM,CAAC,EAAE,cAAc;IAInC,kBAAkB;IAClB,wCAAwC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAKlE,kBAAkB;IAClB,uCAAuC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAKjE,kBAAkB;IAClB,UAAU,IAAI,MAAM;IAIpB,kBAAkB;IAClB,OAAO,IAAI,WAAW;CAOvB"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
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
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.KeyPair = void 0;
38
+ var baseCoin_1 = require("../baseCoin");
39
+ var nearApi = __importStar(require("near-api-js"));
40
+ var utils_1 = require("../hbar/utils");
41
+ var KeyPair = /** @class */ (function (_super) {
42
+ __extends(KeyPair, _super);
43
+ /**
44
+ * Public constructor. By default, creates a key pair with a random master seed.
45
+ *
46
+ * @param { KeyPairOptions } source Either a master seed, a private key, or a public key
47
+ */
48
+ function KeyPair(source) {
49
+ return _super.call(this, source) || this;
50
+ }
51
+ /** @inheritdoc */
52
+ KeyPair.prototype.recordKeysFromPrivateKeyInProtocolFormat = function (prv) {
53
+ var rawPrv = new Uint8Array(nearApi.utils.serialize.base_decode(prv));
54
+ return new KeyPair({ prv: utils_1.toHex(rawPrv) }).keyPair;
55
+ };
56
+ /** @inheritdoc */
57
+ KeyPair.prototype.recordKeysFromPublicKeyInProtocolFormat = function (pub) {
58
+ var rawPub = new Uint8Array(nearApi.utils.serialize.base_decode(pub));
59
+ return { pub: utils_1.toHex(rawPub) };
60
+ };
61
+ /** @inheritdoc */
62
+ KeyPair.prototype.getAddress = function () {
63
+ return this.keyPair.pub;
64
+ };
65
+ /** @inheritdoc */
66
+ KeyPair.prototype.getKeys = function () {
67
+ var result = { pub: this.keyPair.pub };
68
+ if (this.keyPair.prv) {
69
+ result.prv = this.keyPair.prv;
70
+ }
71
+ return result;
72
+ };
73
+ return KeyPair;
74
+ }(baseCoin_1.Ed25519KeyPair));
75
+ exports.KeyPair = KeyPair;
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2luL25lYXIva2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsd0NBQTZDO0FBRTdDLG1EQUF1QztBQUN2Qyx1Q0FBc0M7QUFFdEM7SUFBNkIsMkJBQWM7SUFDekM7Ozs7T0FJRztJQUNILGlCQUFZLE1BQXVCO2VBQ2pDLGtCQUFNLE1BQU0sQ0FBQztJQUNmLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsMERBQXdDLEdBQXhDLFVBQXlDLEdBQVc7UUFDbEQsSUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDeEUsT0FBTyxJQUFJLE9BQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxhQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUNyRCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHlEQUF1QyxHQUF2QyxVQUF3QyxHQUFXO1FBQ2pELElBQU0sTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLE9BQU8sRUFBRSxHQUFHLEVBQUUsYUFBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELGtCQUFrQjtJQUNsQiw0QkFBVSxHQUFWO1FBQ0UsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztJQUMxQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHlCQUFPLEdBQVA7UUFDRSxJQUFNLE1BQU0sR0FBZ0IsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUN0RCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFO1lBQ3BCLE1BQU0sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7U0FDL0I7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBQ0gsY0FBQztBQUFELENBQUMsQUFuQ0QsQ0FBNkIseUJBQWMsR0FtQzFDO0FBbkNZLDBCQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWQyNTUxOUtleVBhaXIgfSBmcm9tICcuLi9iYXNlQ29pbic7XG5pbXBvcnQgeyBEZWZhdWx0S2V5cywgS2V5UGFpck9wdGlvbnMgfSBmcm9tICcuLi9iYXNlQ29pbi9pZmFjZSc7XG5pbXBvcnQgKiBhcyBuZWFyQXBpIGZyb20gJ25lYXItYXBpLWpzJztcbmltcG9ydCB7IHRvSGV4IH0gZnJvbSAnLi4vaGJhci91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBLZXlQYWlyIGV4dGVuZHMgRWQyNTUxOUtleVBhaXIge1xuICAvKipcbiAgICogUHVibGljIGNvbnN0cnVjdG9yLiBCeSBkZWZhdWx0LCBjcmVhdGVzIGEga2V5IHBhaXIgd2l0aCBhIHJhbmRvbSBtYXN0ZXIgc2VlZC5cbiAgICpcbiAgICogQHBhcmFtIHsgS2V5UGFpck9wdGlvbnMgfSBzb3VyY2UgRWl0aGVyIGEgbWFzdGVyIHNlZWQsIGEgcHJpdmF0ZSBrZXksIG9yIGEgcHVibGljIGtleVxuICAgKi9cbiAgY29uc3RydWN0b3Ioc291cmNlPzogS2V5UGFpck9wdGlvbnMpIHtcbiAgICBzdXBlcihzb3VyY2UpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHJlY29yZEtleXNGcm9tUHJpdmF0ZUtleUluUHJvdG9jb2xGb3JtYXQocHJ2OiBzdHJpbmcpOiBEZWZhdWx0S2V5cyB7XG4gICAgY29uc3QgcmF3UHJ2ID0gbmV3IFVpbnQ4QXJyYXkobmVhckFwaS51dGlscy5zZXJpYWxpemUuYmFzZV9kZWNvZGUocHJ2KSk7XG4gICAgcmV0dXJuIG5ldyBLZXlQYWlyKHsgcHJ2OiB0b0hleChyYXdQcnYpIH0pLmtleVBhaXI7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcmVjb3JkS2V5c0Zyb21QdWJsaWNLZXlJblByb3RvY29sRm9ybWF0KHB1Yjogc3RyaW5nKTogRGVmYXVsdEtleXMge1xuICAgIGNvbnN0IHJhd1B1YiA9IG5ldyBVaW50OEFycmF5KG5lYXJBcGkudXRpbHMuc2VyaWFsaXplLmJhc2VfZGVjb2RlKHB1YikpO1xuICAgIHJldHVybiB7IHB1YjogdG9IZXgocmF3UHViKSB9O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldEFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5rZXlQYWlyLnB1YjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRLZXlzKCk6IERlZmF1bHRLZXlzIHtcbiAgICBjb25zdCByZXN1bHQ6IERlZmF1bHRLZXlzID0geyBwdWI6IHRoaXMua2V5UGFpci5wdWIgfTtcbiAgICBpZiAodGhpcy5rZXlQYWlyLnBydikge1xuICAgICAgcmVzdWx0LnBydiA9IHRoaXMua2V5UGFpci5wcnY7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,11 @@
1
+ import { BaseTransaction } from '../baseCoin';
2
+ import { BaseKey } from '../baseCoin/iface';
3
+ export declare class Transaction extends BaseTransaction {
4
+ /** @inheritdoc */
5
+ canSign(key: BaseKey): boolean;
6
+ /** @inheritdoc */
7
+ toBroadcastFormat(): string;
8
+ /** @inheritdoc */
9
+ toJson(): any;
10
+ }
11
+ //# sourceMappingURL=transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C,qBAAa,WAAY,SAAQ,eAAe;IAC9C,kBAAkB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAI9B,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAI3B,kBAAkB;IAClB,MAAM,IAAI,GAAG;CAGd"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.Transaction = void 0;
19
+ var baseCoin_1 = require("../baseCoin");
20
+ var errors_1 = require("../baseCoin/errors");
21
+ var Transaction = /** @class */ (function (_super) {
22
+ __extends(Transaction, _super);
23
+ function Transaction() {
24
+ return _super !== null && _super.apply(this, arguments) || this;
25
+ }
26
+ /** @inheritdoc */
27
+ Transaction.prototype.canSign = function (key) {
28
+ throw new errors_1.NotImplementedError('canSign not implemented');
29
+ };
30
+ /** @inheritdoc */
31
+ Transaction.prototype.toBroadcastFormat = function () {
32
+ throw new errors_1.NotImplementedError('toBroadcastFormat not implemented');
33
+ };
34
+ /** @inheritdoc */
35
+ Transaction.prototype.toJson = function () {
36
+ throw new errors_1.NotImplementedError('toJson not implemented');
37
+ };
38
+ return Transaction;
39
+ }(baseCoin_1.BaseTransaction));
40
+ exports.Transaction = Transaction;
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9uZWFyL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUE4QztBQUU5Qyw2Q0FBeUQ7QUFFekQ7SUFBaUMsK0JBQWU7SUFBaEQ7O0lBZUEsQ0FBQztJQWRDLGtCQUFrQjtJQUNsQiw2QkFBTyxHQUFQLFVBQVEsR0FBWTtRQUNsQixNQUFNLElBQUksNEJBQW1CLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHVDQUFpQixHQUFqQjtRQUNFLE1BQU0sSUFBSSw0QkFBbUIsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsNEJBQU0sR0FBTjtRQUNFLE1BQU0sSUFBSSw0QkFBbUIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFDSCxrQkFBQztBQUFELENBQUMsQUFmRCxDQUFpQywwQkFBZSxHQWUvQztBQWZZLGtDQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgQmFzZUtleSB9IGZyb20gJy4uL2Jhc2VDb2luL2lmYWNlJztcbmltcG9ydCB7IE5vdEltcGxlbWVudGVkRXJyb3IgfSBmcm9tICcuLi9iYXNlQ29pbi9lcnJvcnMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb24ge1xuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbihrZXk6IEJhc2VLZXkpOiBib29sZWFuIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcignY2FuU2lnbiBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0Jyb2FkY2FzdEZvcm1hdCgpOiBzdHJpbmcge1xuICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCd0b0Jyb2FkY2FzdEZvcm1hdCBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogYW55IHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndG9Kc29uIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,28 @@
1
+ import BigNumber from 'bignumber.js';
2
+ import { BaseCoin as CoinConfig } from '@bitgo/statics';
3
+ import { BaseTransactionBuilder } from '../baseCoin';
4
+ import { BaseAddress, BaseKey } from '../baseCoin/iface';
5
+ import { Transaction } from './transaction';
6
+ export declare abstract class TransactionBuilder extends BaseTransactionBuilder {
7
+ private _transaction;
8
+ constructor(_coinConfig: Readonly<CoinConfig>);
9
+ /**
10
+ * Initialize the transaction builder fields using the decoded transaction data
11
+ *
12
+ * @param {Transaction} tx the transaction data
13
+ */
14
+ initBuilder(tx: Transaction): void;
15
+ /** @inheritdoc */
16
+ protected get transaction(): Transaction;
17
+ /** @inheritdoc */
18
+ validateAddress(address: BaseAddress, addressFormat?: string): void;
19
+ /** @inheritdoc */
20
+ validateKey(key: BaseKey): void;
21
+ /** @inheritdoc */
22
+ validateRawTransaction(rawTransaction: any): void;
23
+ /** @inheritdoc */
24
+ validateTransaction(transaction?: Transaction): void;
25
+ /** @inheritdoc */
26
+ validateValue(value: BigNumber): void;
27
+ }
28
+ //# sourceMappingURL=transactionBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,OAAO,CAAC,YAAY,CAAc;gBAEtB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAKlC,kBAAkB;IAClB,SAAS,KAAK,WAAW,IAAI,WAAW,CAEvC;IAID,kBAAkB;IAClB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IAInE,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAI/B,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,GAAG,GAAG,IAAI;IAIjD,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI;IAIpD,kBAAkB;IAClB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAItC"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.TransactionBuilder = void 0;
19
+ var baseCoin_1 = require("../baseCoin");
20
+ var errors_1 = require("../baseCoin/errors");
21
+ var TransactionBuilder = /** @class */ (function (_super) {
22
+ __extends(TransactionBuilder, _super);
23
+ function TransactionBuilder(_coinConfig) {
24
+ return _super.call(this, _coinConfig) || this;
25
+ }
26
+ /**
27
+ * Initialize the transaction builder fields using the decoded transaction data
28
+ *
29
+ * @param {Transaction} tx the transaction data
30
+ */
31
+ TransactionBuilder.prototype.initBuilder = function (tx) {
32
+ throw new errors_1.NotImplementedError('initBuilder not implemented');
33
+ };
34
+ Object.defineProperty(TransactionBuilder.prototype, "transaction", {
35
+ // region Getters and Setters
36
+ /** @inheritdoc */
37
+ get: function () {
38
+ return this._transaction;
39
+ },
40
+ enumerable: false,
41
+ configurable: true
42
+ });
43
+ // endregion
44
+ // region Validators
45
+ /** @inheritdoc */
46
+ TransactionBuilder.prototype.validateAddress = function (address, addressFormat) {
47
+ throw new errors_1.NotImplementedError('validateAddress not implemented');
48
+ };
49
+ /** @inheritdoc */
50
+ TransactionBuilder.prototype.validateKey = function (key) {
51
+ throw new errors_1.NotImplementedError('validateKey not implemented');
52
+ };
53
+ /** @inheritdoc */
54
+ TransactionBuilder.prototype.validateRawTransaction = function (rawTransaction) {
55
+ throw new errors_1.NotImplementedError('validateRawTransaction not implemented');
56
+ };
57
+ /** @inheritdoc */
58
+ TransactionBuilder.prototype.validateTransaction = function (transaction) {
59
+ throw new errors_1.NotImplementedError('validateTransaction not implemented');
60
+ };
61
+ /** @inheritdoc */
62
+ TransactionBuilder.prototype.validateValue = function (value) {
63
+ throw new errors_1.NotImplementedError('validateValue not implemented');
64
+ };
65
+ return TransactionBuilder;
66
+ }(baseCoin_1.BaseTransactionBuilder));
67
+ exports.TransactionBuilder = TransactionBuilder;
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvaW4vbmVhci90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsd0NBQXFEO0FBQ3JELDZDQUF5RDtBQUl6RDtJQUFpRCxzQ0FBc0I7SUFHckUsNEJBQVksV0FBaUM7ZUFDM0Msa0JBQU0sV0FBVyxDQUFDO0lBQ3BCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsd0NBQVcsR0FBWCxVQUFZLEVBQWU7UUFDekIsTUFBTSxJQUFJLDRCQUFtQixDQUFDLDZCQUE2QixDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUlELHNCQUFjLDJDQUFXO1FBRnpCLDZCQUE2QjtRQUM3QixrQkFBa0I7YUFDbEI7WUFDRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDM0IsQ0FBQzs7O09BQUE7SUFDRCxZQUFZO0lBRVosb0JBQW9CO0lBQ3BCLGtCQUFrQjtJQUNsQiw0Q0FBZSxHQUFmLFVBQWdCLE9BQW9CLEVBQUUsYUFBc0I7UUFDMUQsTUFBTSxJQUFJLDRCQUFtQixDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELGtCQUFrQjtJQUNsQix3Q0FBVyxHQUFYLFVBQVksR0FBWTtRQUN0QixNQUFNLElBQUksNEJBQW1CLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLG1EQUFzQixHQUF0QixVQUF1QixjQUFtQjtRQUN4QyxNQUFNLElBQUksNEJBQW1CLENBQUMsd0NBQXdDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGdEQUFtQixHQUFuQixVQUFvQixXQUF5QjtRQUMzQyxNQUFNLElBQUksNEJBQW1CLENBQUMscUNBQXFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDBDQUFhLEdBQWIsVUFBYyxLQUFnQjtRQUM1QixNQUFNLElBQUksNEJBQW1CLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUgseUJBQUM7QUFBRCxDQUFDLEFBakRELENBQWlELGlDQUFzQixHQWlEdEU7QUFqRHFCLGdEQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgTm90SW1wbGVtZW50ZWRFcnJvciB9IGZyb20gJy4uL2Jhc2VDb2luL2Vycm9ycyc7XG5pbXBvcnQgeyBCYXNlQWRkcmVzcywgQmFzZUtleSB9IGZyb20gJy4uL2Jhc2VDb2luL2lmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXIgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJpdmF0ZSBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIGZpZWxkcyB1c2luZyB0aGUgZGVjb2RlZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb259IHR4IHRoZSB0cmFuc2FjdGlvbiBkYXRhXG4gICAqL1xuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcignaW5pdEJ1aWxkZXIgbm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICAvLyByZWdpb24gR2V0dGVycyBhbmQgU2V0dGVyc1xuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvbigpOiBUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uO1xuICB9XG4gIC8vIGVuZHJlZ2lvblxuXG4gIC8vIHJlZ2lvbiBWYWxpZGF0b3JzXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MsIGFkZHJlc3NGb3JtYXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndmFsaWRhdGVBZGRyZXNzIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlS2V5KGtleTogQmFzZUtleSk6IHZvaWQge1xuICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCd2YWxpZGF0ZUtleSBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBhbnkpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndmFsaWRhdGVSYXdUcmFuc2FjdGlvbiBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uPzogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndmFsaWRhdGVUcmFuc2FjdGlvbiBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVZhbHVlKHZhbHVlOiBCaWdOdW1iZXIpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndmFsaWRhdGVWYWx1ZSBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuICAvLyBlbmRyZWdpb25cbn1cbiJdfQ==
@@ -0,0 +1,24 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
+ import { BaseTransactionBuilderFactory } from '../baseCoin';
3
+ import { TransferBuilder } from './transferBuilder';
4
+ import { WalletInitializationBuilder } from './walletInitializationBuilder';
5
+ import { TransactionBuilder } from './transactionBuilder';
6
+ import { Transaction } from './transaction';
7
+ export declare class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
8
+ constructor(_coinConfig: Readonly<CoinConfig>);
9
+ /** @inheritdoc */
10
+ from(raw: Uint8Array | string): TransactionBuilder;
11
+ /** @inheritdoc */
12
+ getWalletInitializationBuilder(tx?: Transaction): WalletInitializationBuilder;
13
+ /** @inheritdoc */
14
+ getTransferBuilder(tx?: Transaction): TransferBuilder;
15
+ /**
16
+ * Initialize the builder with the given transaction
17
+ *
18
+ * @param {Transaction | undefined} tx - the transaction used to initialize the builder
19
+ * @param {TransactionBuilder} builder - the builder to be initialized
20
+ * @returns {TransactionBuilder} the builder initialized
21
+ */
22
+ private static initializeBuilder;
23
+ }
24
+ //# sourceMappingURL=transactionBuilderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,yBAA0B,SAAQ,6BAA6B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,GAAG,kBAAkB;IAIlD,kBAAkB;IAClB,8BAA8B,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,2BAA2B;IAI7E,kBAAkB;IAClB,kBAAkB,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,eAAe;IAIrD;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;CAMjC"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.TransactionBuilderFactory = void 0;
19
+ var baseCoin_1 = require("../baseCoin");
20
+ var errors_1 = require("../baseCoin/errors");
21
+ var transferBuilder_1 = require("./transferBuilder");
22
+ var walletInitializationBuilder_1 = require("./walletInitializationBuilder");
23
+ var TransactionBuilderFactory = /** @class */ (function (_super) {
24
+ __extends(TransactionBuilderFactory, _super);
25
+ function TransactionBuilderFactory(_coinConfig) {
26
+ return _super.call(this, _coinConfig) || this;
27
+ }
28
+ /** @inheritdoc */
29
+ TransactionBuilderFactory.prototype.from = function (raw) {
30
+ throw new errors_1.NotImplementedError('from not implemented');
31
+ };
32
+ /** @inheritdoc */
33
+ TransactionBuilderFactory.prototype.getWalletInitializationBuilder = function (tx) {
34
+ return TransactionBuilderFactory.initializeBuilder(tx, new walletInitializationBuilder_1.WalletInitializationBuilder(this._coinConfig));
35
+ };
36
+ /** @inheritdoc */
37
+ TransactionBuilderFactory.prototype.getTransferBuilder = function (tx) {
38
+ return TransactionBuilderFactory.initializeBuilder(tx, new transferBuilder_1.TransferBuilder(this._coinConfig));
39
+ };
40
+ /**
41
+ * Initialize the builder with the given transaction
42
+ *
43
+ * @param {Transaction | undefined} tx - the transaction used to initialize the builder
44
+ * @param {TransactionBuilder} builder - the builder to be initialized
45
+ * @returns {TransactionBuilder} the builder initialized
46
+ */
47
+ TransactionBuilderFactory.initializeBuilder = function (tx, builder) {
48
+ if (tx) {
49
+ builder.initBuilder(tx);
50
+ }
51
+ return builder;
52
+ };
53
+ return TransactionBuilderFactory;
54
+ }(baseCoin_1.BaseTransactionBuilderFactory));
55
+ exports.TransactionBuilderFactory = TransactionBuilderFactory;
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2luL25lYXIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSx3Q0FBNEQ7QUFDNUQsNkNBQXlEO0FBQ3pELHFEQUFvRDtBQUNwRCw2RUFBNEU7QUFJNUU7SUFBK0MsNkNBQTZCO0lBQzFFLG1DQUFZLFdBQWlDO2VBQzNDLGtCQUFNLFdBQVcsQ0FBQztJQUNwQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHdDQUFJLEdBQUosVUFBSyxHQUF3QjtRQUMzQixNQUFNLElBQUksNEJBQW1CLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGtFQUE4QixHQUE5QixVQUErQixFQUFnQjtRQUM3QyxPQUFPLHlCQUF5QixDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLHlEQUEyQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQzVHLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsc0RBQWtCLEdBQWxCLFVBQW1CLEVBQWdCO1FBQ2pDLE9BQU8seUJBQXlCLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksaUNBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ1ksMkNBQWlCLEdBQWhDLFVBQStELEVBQTJCLEVBQUUsT0FBVTtRQUNwRyxJQUFJLEVBQUUsRUFBRTtZQUNOLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDekI7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBQ0gsZ0NBQUM7QUFBRCxDQUFDLEFBakNELENBQStDLHdDQUE2QixHQWlDM0U7QUFqQ1ksOERBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgTm90SW1wbGVtZW50ZWRFcnJvciB9IGZyb20gJy4uL2Jhc2VDb2luL2Vycm9ycyc7XG5pbXBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3dhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGZyb20ocmF3OiBVaW50OEFycmF5IHwgc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcignZnJvbSBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIodHg/OiBUcmFuc2FjdGlvbik6IFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFRyYW5zZmVyQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uKTogVHJhbnNmZXJCdWlsZGVyIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgYnVpbGRlciB3aXRoIHRoZSBnaXZlbiB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uIHwgdW5kZWZpbmVkfSB0eCAtIHRoZSB0cmFuc2FjdGlvbiB1c2VkIHRvIGluaXRpYWxpemUgdGhlIGJ1aWxkZXJcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IGJ1aWxkZXIgLSB0aGUgYnVpbGRlciB0byBiZSBpbml0aWFsaXplZFxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSB0aGUgYnVpbGRlciBpbml0aWFsaXplZFxuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgaW5pdGlhbGl6ZUJ1aWxkZXI8VCBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlcj4odHg6IFRyYW5zYWN0aW9uIHwgdW5kZWZpbmVkLCBidWlsZGVyOiBUKTogVCB7XG4gICAgaWYgKHR4KSB7XG4gICAgICBidWlsZGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICB9XG4gICAgcmV0dXJuIGJ1aWxkZXI7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,14 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
+ import { BaseKey } from '../baseCoin/iface';
3
+ import { TransactionBuilder } from './transactionBuilder';
4
+ import { Transaction } from './transaction';
5
+ export declare class TransferBuilder extends TransactionBuilder {
6
+ constructor(_coinConfig: Readonly<CoinConfig>);
7
+ /** @inheritdoc */
8
+ protected buildImplementation(): Promise<Transaction>;
9
+ /** @inheritdoc */
10
+ protected fromImplementation(rawTransaction: any): Transaction;
11
+ /** @inheritdoc */
12
+ protected signImplementation(key: BaseKey): Transaction;
13
+ }
14
+ //# sourceMappingURL=transferBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,eAAgB,SAAQ,kBAAkB;gBACzC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAI3D,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,GAAG,GAAG,WAAW;IAI9D,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW;CAGxD"}