@bitgo-beta/sdk-coin-atom 3.1.2-beta.185 → 3.1.2-beta.1851

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 (87) hide show
  1. package/dist/src/atom.d.ts +7 -115
  2. package/dist/src/atom.d.ts.map +1 -1
  3. package/dist/src/atom.js +12 -491
  4. package/dist/src/index.js +6 -2
  5. package/dist/src/lib/constants.d.ts +0 -6
  6. package/dist/src/lib/constants.d.ts.map +1 -1
  7. package/dist/src/lib/constants.js +10 -12
  8. package/dist/src/lib/index.d.ts +3 -8
  9. package/dist/src/lib/index.d.ts.map +1 -1
  10. package/dist/src/lib/index.js +33 -24
  11. package/dist/src/lib/keyPair.d.ts +3 -12
  12. package/dist/src/lib/keyPair.d.ts.map +1 -1
  13. package/dist/src/lib/keyPair.js +7 -44
  14. package/dist/src/lib/transactionBuilderFactory.d.ts +8 -11
  15. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  16. package/dist/src/lib/transactionBuilderFactory.js +21 -11
  17. package/dist/src/lib/utils.d.ts +5 -174
  18. package/dist/src/lib/utils.d.ts.map +1 -1
  19. package/dist/src/lib/utils.js +32 -532
  20. package/dist/src/tatom.d.ts +0 -8
  21. package/dist/src/tatom.d.ts.map +1 -1
  22. package/dist/src/tatom.js +1 -13
  23. package/dist/test/integration/index.d.ts +2 -0
  24. package/dist/test/integration/index.d.ts.map +1 -0
  25. package/dist/test/integration/index.js +54 -0
  26. package/dist/test/resources/atom.d.ts +291 -0
  27. package/dist/test/resources/atom.d.ts.map +1 -0
  28. package/dist/test/resources/atom.js +471 -0
  29. package/dist/test/unit/atom.d.ts +2 -0
  30. package/dist/test/unit/atom.d.ts.map +1 -0
  31. package/dist/test/unit/atom.js +552 -0
  32. package/dist/test/unit/getBuilderFactory.d.ts +3 -0
  33. package/dist/test/unit/getBuilderFactory.d.ts.map +1 -0
  34. package/dist/test/unit/getBuilderFactory.js +10 -0
  35. package/dist/test/unit/keyPair.d.ts +2 -0
  36. package/dist/test/unit/keyPair.d.ts.map +1 -0
  37. package/dist/test/unit/keyPair.js +93 -0
  38. package/dist/test/unit/transaction.d.ts +2 -0
  39. package/dist/test/unit/transaction.d.ts.map +1 -0
  40. package/dist/test/unit/transaction.js +220 -0
  41. package/dist/test/unit/transactionBuilder/StakingActivateBuilder.d.ts +2 -0
  42. package/dist/test/unit/transactionBuilder/StakingActivateBuilder.d.ts.map +1 -0
  43. package/dist/test/unit/transactionBuilder/StakingActivateBuilder.js +171 -0
  44. package/dist/test/unit/transactionBuilder/StakingDeactivateBuilder.d.ts +2 -0
  45. package/dist/test/unit/transactionBuilder/StakingDeactivateBuilder.d.ts.map +1 -0
  46. package/dist/test/unit/transactionBuilder/StakingDeactivateBuilder.js +140 -0
  47. package/dist/test/unit/transactionBuilder/StakingRedelegateBuilder.d.ts +2 -0
  48. package/dist/test/unit/transactionBuilder/StakingRedelegateBuilder.d.ts.map +1 -0
  49. package/dist/test/unit/transactionBuilder/StakingRedelegateBuilder.js +93 -0
  50. package/dist/test/unit/transactionBuilder/StakingWithdrawRewardsBuilder.d.ts +2 -0
  51. package/dist/test/unit/transactionBuilder/StakingWithdrawRewardsBuilder.d.ts.map +1 -0
  52. package/dist/test/unit/transactionBuilder/StakingWithdrawRewardsBuilder.js +141 -0
  53. package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts +2 -0
  54. package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts.map +1 -0
  55. package/dist/test/unit/transactionBuilder/transactionBuilder.js +100 -0
  56. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts +2 -0
  57. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
  58. package/dist/test/unit/transactionBuilder/transferBuilder.js +241 -0
  59. package/dist/test/unit/utils.d.ts +2 -0
  60. package/dist/test/unit/utils.d.ts.map +1 -0
  61. package/dist/test/unit/utils.js +85 -0
  62. package/dist/tsconfig.tsbuildinfo +1 -0
  63. package/package.json +15 -17
  64. package/.eslintignore +0 -5
  65. package/.mocharc.yml +0 -8
  66. package/CHANGELOG.md +0 -287
  67. package/dist/src/lib/StakingActivateBuilder.d.ts +0 -11
  68. package/dist/src/lib/StakingActivateBuilder.d.ts.map +0 -1
  69. package/dist/src/lib/StakingActivateBuilder.js +0 -31
  70. package/dist/src/lib/StakingDeactivateBuilder.d.ts +0 -11
  71. package/dist/src/lib/StakingDeactivateBuilder.d.ts.map +0 -1
  72. package/dist/src/lib/StakingDeactivateBuilder.js +0 -31
  73. package/dist/src/lib/StakingWithdrawRewardsBuilder.d.ts +0 -11
  74. package/dist/src/lib/StakingWithdrawRewardsBuilder.d.ts.map +0 -1
  75. package/dist/src/lib/StakingWithdrawRewardsBuilder.js +0 -31
  76. package/dist/src/lib/iface.d.ts +0 -46
  77. package/dist/src/lib/iface.d.ts.map +0 -1
  78. package/dist/src/lib/iface.js +0 -3
  79. package/dist/src/lib/transaction.d.ts +0 -58
  80. package/dist/src/lib/transaction.d.ts.map +0 -1
  81. package/dist/src/lib/transaction.js +0 -279
  82. package/dist/src/lib/transactionBuilder.d.ts +0 -78
  83. package/dist/src/lib/transactionBuilder.d.ts.map +0 -1
  84. package/dist/src/lib/transactionBuilder.js +0 -179
  85. package/dist/src/lib/transferBuilder.d.ts +0 -11
  86. package/dist/src/lib/transferBuilder.d.ts.map +0 -1
  87. package/dist/src/lib/transferBuilder.js +0 -31
package/dist/src/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[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);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -14,4 +18,4 @@ __exportStar(require("./atom"), exports);
14
18
  __exportStar(require("./tatom"), exports);
15
19
  __exportStar(require("./lib"), exports);
16
20
  __exportStar(require("./register"), exports);
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEseUNBQXVCO0FBQ3ZCLDBDQUF3QjtBQUN4Qix3Q0FBc0I7QUFDdEIsNkNBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hdG9tJztcbmV4cG9ydCAqIGZyb20gJy4vdGF0b20nO1xuZXhwb3J0ICogZnJvbSAnLi9saWInO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3Rlcic7XG4iXX0=
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlDQUF1QjtBQUN2QiwwQ0FBd0I7QUFDeEIsd0NBQXNCO0FBQ3RCLDZDQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXRvbSc7XG5leHBvcnQgKiBmcm9tICcuL3RhdG9tJztcbmV4cG9ydCAqIGZyb20gJy4vbGliJztcbmV4cG9ydCAqIGZyb20gJy4vcmVnaXN0ZXInO1xuIl19
@@ -1,13 +1,7 @@
1
- export declare const DEFAULT_SEED_SIZE_BYTES = 16;
2
- export declare const sendMsgTypeUrl = "/cosmos.bank.v1beta1.MsgSend";
3
- export declare const delegateMsgTypeUrl = "/cosmos.staking.v1beta1.MsgDelegate";
4
- export declare const undelegateMsgTypeUrl = "/cosmos.staking.v1beta1.MsgUndelegate";
5
- export declare const withdrawDelegatorRewardMsgTypeUrl = "/cosmos.distribution.v1beta1.MsgWithdrawDelegatorReward";
6
1
  export declare const validDenoms: string[];
7
2
  export declare const accountAddressRegex: RegExp;
8
3
  export declare const validatorAddressRegex: RegExp;
9
4
  export declare const contractAddressRegex: RegExp;
10
- export declare const UNAVAILABLE_TEXT = "UNAVAILABLE";
11
5
  export declare const GAS_AMOUNT = "100000";
12
6
  export declare const GAS_LIMIT = 200000;
13
7
  //# 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,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,cAAc,iCAAiC,CAAC;AAC7D,eAAO,MAAM,kBAAkB,wCAAwC,CAAC;AACxE,eAAO,MAAM,oBAAoB,0CAA0C,CAAC;AAC5E,eAAO,MAAM,iCAAiC,4DAA4D,CAAC;AAC3G,eAAO,MAAM,WAAW,UAAsC,CAAC;AAC/D,eAAO,MAAM,mBAAmB,QAA0D,CAAC;AAC3F,eAAO,MAAM,qBAAqB,QAAiE,CAAC;AACpG,eAAO,MAAM,oBAAoB,QAAuD,CAAC;AACzF,eAAO,MAAM,gBAAgB,gBAAgB,CAAC;AAC9C,eAAO,MAAM,UAAU,WAAW,CAAC;AACnC,eAAO,MAAM,SAAS,SAAS,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW,UAA4F,CAAC;AACrH,eAAO,MAAM,mBAAmB,QAAqE,CAAC;AACtG,eAAO,MAAM,qBAAqB,QAA4E,CAAC;AAC/G,eAAO,MAAM,oBAAoB,QAAkE,CAAC;AACpG,eAAO,MAAM,UAAU,WAAW,CAAC;AACnC,eAAO,MAAM,SAAS,SAAS,CAAC"}
@@ -1,16 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GAS_LIMIT = exports.GAS_AMOUNT = exports.UNAVAILABLE_TEXT = exports.contractAddressRegex = exports.validatorAddressRegex = exports.accountAddressRegex = exports.validDenoms = exports.withdrawDelegatorRewardMsgTypeUrl = exports.undelegateMsgTypeUrl = exports.delegateMsgTypeUrl = exports.sendMsgTypeUrl = exports.DEFAULT_SEED_SIZE_BYTES = void 0;
4
- exports.DEFAULT_SEED_SIZE_BYTES = 16;
5
- exports.sendMsgTypeUrl = '/cosmos.bank.v1beta1.MsgSend';
6
- exports.delegateMsgTypeUrl = '/cosmos.staking.v1beta1.MsgDelegate';
7
- exports.undelegateMsgTypeUrl = '/cosmos.staking.v1beta1.MsgUndelegate';
8
- exports.withdrawDelegatorRewardMsgTypeUrl = '/cosmos.distribution.v1beta1.MsgWithdrawDelegatorReward';
9
- exports.validDenoms = ['natom', 'uatom', 'matom', 'atom'];
10
- exports.accountAddressRegex = /^(cosmos)1(['qpzry9x8gf2tvdw0s3jn54khce6mua7l']{38})$/;
11
- exports.validatorAddressRegex = /^(cosmosvaloper)1(['qpzry9x8gf2tvdw0s3jn54khce6mua7l']{38})$/;
12
- exports.contractAddressRegex = /^(cosmos)1(['qpzry9x8gf2tvdw0s3jn54khce6mua7l']+)$/;
13
- exports.UNAVAILABLE_TEXT = 'UNAVAILABLE';
3
+ exports.GAS_LIMIT = exports.GAS_AMOUNT = exports.contractAddressRegex = exports.validatorAddressRegex = exports.accountAddressRegex = exports.validDenoms = void 0;
4
+ const abstract_cosmos_1 = require("@bitgo-beta/abstract-cosmos");
5
+ const statics_1 = require("@bitgo-beta/statics");
6
+ const cosmosUtils = new abstract_cosmos_1.CosmosUtils();
7
+ const HRP = statics_1.Networks.main.atom.addressPrefix;
8
+ exports.validDenoms = ['natom', 'uatom', 'matom', 'atom', ...cosmosUtils.getTokenDenomsUsingCoinFamily('atom')];
9
+ exports.accountAddressRegex = new RegExp(`^(${HRP})1(['qpzry9x8gf2tvdw0s3jn54khce6mua7l]{38})$`);
10
+ exports.validatorAddressRegex = new RegExp(`^(${HRP}valoper)1(['qpzry9x8gf2tvdw0s3jn54khce6mua7l]{38})$`);
11
+ exports.contractAddressRegex = new RegExp(`^(${HRP})1(['qpzry9x8gf2tvdw0s3jn54khce6mua7l]+)$`);
14
12
  exports.GAS_AMOUNT = '100000';
15
13
  exports.GAS_LIMIT = 200000;
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSx1QkFBdUIsR0FBRyxFQUFFLENBQUM7QUFDN0IsUUFBQSxjQUFjLEdBQUcsOEJBQThCLENBQUM7QUFDaEQsUUFBQSxrQkFBa0IsR0FBRyxxQ0FBcUMsQ0FBQztBQUMzRCxRQUFBLG9CQUFvQixHQUFHLHVDQUF1QyxDQUFDO0FBQy9ELFFBQUEsaUNBQWlDLEdBQUcseURBQXlELENBQUM7QUFDOUYsUUFBQSxXQUFXLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztBQUNsRCxRQUFBLG1CQUFtQixHQUFHLHVEQUF1RCxDQUFDO0FBQzlFLFFBQUEscUJBQXFCLEdBQUcsOERBQThELENBQUM7QUFDdkYsUUFBQSxvQkFBb0IsR0FBRyxvREFBb0QsQ0FBQztBQUM1RSxRQUFBLGdCQUFnQixHQUFHLGFBQWEsQ0FBQztBQUNqQyxRQUFBLFVBQVUsR0FBRyxRQUFRLENBQUM7QUFDdEIsUUFBQSxTQUFTLEdBQUcsTUFBTSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IERFRkFVTFRfU0VFRF9TSVpFX0JZVEVTID0gMTY7XG5leHBvcnQgY29uc3Qgc2VuZE1zZ1R5cGVVcmwgPSAnL2Nvc21vcy5iYW5rLnYxYmV0YTEuTXNnU2VuZCc7XG5leHBvcnQgY29uc3QgZGVsZWdhdGVNc2dUeXBlVXJsID0gJy9jb3Ntb3Muc3Rha2luZy52MWJldGExLk1zZ0RlbGVnYXRlJztcbmV4cG9ydCBjb25zdCB1bmRlbGVnYXRlTXNnVHlwZVVybCA9ICcvY29zbW9zLnN0YWtpbmcudjFiZXRhMS5Nc2dVbmRlbGVnYXRlJztcbmV4cG9ydCBjb25zdCB3aXRoZHJhd0RlbGVnYXRvclJld2FyZE1zZ1R5cGVVcmwgPSAnL2Nvc21vcy5kaXN0cmlidXRpb24udjFiZXRhMS5Nc2dXaXRoZHJhd0RlbGVnYXRvclJld2FyZCc7XG5leHBvcnQgY29uc3QgdmFsaWREZW5vbXMgPSBbJ25hdG9tJywgJ3VhdG9tJywgJ21hdG9tJywgJ2F0b20nXTtcbmV4cG9ydCBjb25zdCBhY2NvdW50QWRkcmVzc1JlZ2V4ID0gL14oY29zbW9zKTEoWydxcHpyeTl4OGdmMnR2ZHcwczNqbjU0a2hjZTZtdWE3bCddezM4fSkkLztcbmV4cG9ydCBjb25zdCB2YWxpZGF0b3JBZGRyZXNzUmVnZXggPSAvXihjb3Ntb3N2YWxvcGVyKTEoWydxcHpyeTl4OGdmMnR2ZHcwczNqbjU0a2hjZTZtdWE3bCddezM4fSkkLztcbmV4cG9ydCBjb25zdCBjb250cmFjdEFkZHJlc3NSZWdleCA9IC9eKGNvc21vcykxKFsncXB6cnk5eDhnZjJ0dmR3MHMzam41NGtoY2U2bXVhN2wnXSspJC87XG5leHBvcnQgY29uc3QgVU5BVkFJTEFCTEVfVEVYVCA9ICdVTkFWQUlMQUJMRSc7XG5leHBvcnQgY29uc3QgR0FTX0FNT1VOVCA9ICcxMDAwMDAnO1xuZXhwb3J0IGNvbnN0IEdBU19MSU1JVCA9IDIwMDAwMDtcbiJdfQ==
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUVBQTBEO0FBQzFELGlEQUErQztBQUUvQyxNQUFNLFdBQVcsR0FBRyxJQUFJLDZCQUFXLEVBQUUsQ0FBQztBQUN0QyxNQUFNLEdBQUcsR0FBRyxrQkFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO0FBQ2hDLFFBQUEsV0FBVyxHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsV0FBVyxDQUFDLDZCQUE2QixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFDeEcsUUFBQSxtQkFBbUIsR0FBRyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEdBQUcsOENBQThDLENBQUMsQ0FBQztBQUN6RixRQUFBLHFCQUFxQixHQUFHLElBQUksTUFBTSxDQUFDLEtBQUssR0FBRyxxREFBcUQsQ0FBQyxDQUFDO0FBQ2xHLFFBQUEsb0JBQW9CLEdBQUcsSUFBSSxNQUFNLENBQUMsS0FBSyxHQUFHLDJDQUEyQyxDQUFDLENBQUM7QUFDdkYsUUFBQSxVQUFVLEdBQUcsUUFBUSxDQUFDO0FBQ3RCLFFBQUEsU0FBUyxHQUFHLE1BQU0sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvc21vc1V0aWxzIH0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3QtY29zbW9zJztcbmltcG9ydCB7IE5ldHdvcmtzIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5cbmNvbnN0IGNvc21vc1V0aWxzID0gbmV3IENvc21vc1V0aWxzKCk7XG5jb25zdCBIUlAgPSBOZXR3b3Jrcy5tYWluLmF0b20uYWRkcmVzc1ByZWZpeDtcbmV4cG9ydCBjb25zdCB2YWxpZERlbm9tcyA9IFsnbmF0b20nLCAndWF0b20nLCAnbWF0b20nLCAnYXRvbScsIC4uLmNvc21vc1V0aWxzLmdldFRva2VuRGVub21zVXNpbmdDb2luRmFtaWx5KCdhdG9tJyldO1xuZXhwb3J0IGNvbnN0IGFjY291bnRBZGRyZXNzUmVnZXggPSBuZXcgUmVnRXhwKGBeKCR7SFJQfSkxKFsncXB6cnk5eDhnZjJ0dmR3MHMzam41NGtoY2U2bXVhN2xdezM4fSkkYCk7XG5leHBvcnQgY29uc3QgdmFsaWRhdG9yQWRkcmVzc1JlZ2V4ID0gbmV3IFJlZ0V4cChgXigke0hSUH12YWxvcGVyKTEoWydxcHpyeTl4OGdmMnR2ZHcwczNqbjU0a2hjZTZtdWE3bF17Mzh9KSRgKTtcbmV4cG9ydCBjb25zdCBjb250cmFjdEFkZHJlc3NSZWdleCA9IG5ldyBSZWdFeHAoYF4oJHtIUlB9KTEoWydxcHpyeTl4OGdmMnR2ZHcwczNqbjU0a2hjZTZtdWE3bF0rKSRgKTtcbmV4cG9ydCBjb25zdCBHQVNfQU1PVU5UID0gJzEwMDAwMCc7XG5leHBvcnQgY29uc3QgR0FTX0xJTUlUID0gMjAwMDAwO1xuIl19
@@ -1,12 +1,7 @@
1
+ import * as Constants from './constants';
1
2
  import * as Utils from './utils';
2
- import * as Interface from './iface';
3
+ export { CosmosTransaction as Transaction, CosmosTransactionBuilder as TransactionBuilder, CosmosTransferBuilder as TransferBuilder, StakingActivateBuilder, StakingDeactivateBuilder, StakingWithdrawRewardsBuilder, } from '@bitgo-beta/abstract-cosmos';
3
4
  export { KeyPair } from './keyPair';
4
- export { Transaction } from './transaction';
5
- export { TransactionBuilder } from './transactionBuilder';
6
- export { TransferBuilder } from './transferBuilder';
7
5
  export { TransactionBuilderFactory } from './transactionBuilderFactory';
8
- export { StakingActivateBuilder } from './StakingActivateBuilder';
9
- export { StakingDeactivateBuilder } from './StakingDeactivateBuilder';
10
- export { StakingWithdrawRewardsBuilder } from './StakingWithdrawRewardsBuilder';
11
- export { Interface, Utils };
6
+ export { Constants, Utils };
12
7
  //# 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,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,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,KAAK,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;AAEjC,OAAO,EACL,iBAAiB,IAAI,WAAW,EAChC,wBAAwB,IAAI,kBAAkB,EAC9C,qBAAqB,IAAI,eAAe,EACxC,sBAAsB,EACtB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC"}
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[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);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -11,33 +15,38 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
11
15
  }) : function(o, v) {
12
16
  o["default"] = v;
13
17
  });
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
- };
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
+ })();
21
35
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.Utils = exports.Interface = exports.StakingWithdrawRewardsBuilder = exports.StakingDeactivateBuilder = exports.StakingActivateBuilder = exports.TransactionBuilderFactory = exports.TransferBuilder = exports.TransactionBuilder = exports.Transaction = exports.KeyPair = void 0;
36
+ exports.Utils = exports.Constants = exports.TransactionBuilderFactory = exports.KeyPair = exports.StakingWithdrawRewardsBuilder = exports.StakingDeactivateBuilder = exports.StakingActivateBuilder = exports.TransferBuilder = exports.TransactionBuilder = exports.Transaction = void 0;
37
+ const Constants = __importStar(require("./constants"));
38
+ exports.Constants = Constants;
23
39
  const Utils = __importStar(require("./utils"));
24
40
  exports.Utils = Utils;
25
- const Interface = __importStar(require("./iface"));
26
- exports.Interface = Interface;
41
+ var abstract_cosmos_1 = require("@bitgo-beta/abstract-cosmos");
42
+ Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return abstract_cosmos_1.CosmosTransaction; } });
43
+ Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return abstract_cosmos_1.CosmosTransactionBuilder; } });
44
+ Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return abstract_cosmos_1.CosmosTransferBuilder; } });
45
+ Object.defineProperty(exports, "StakingActivateBuilder", { enumerable: true, get: function () { return abstract_cosmos_1.StakingActivateBuilder; } });
46
+ Object.defineProperty(exports, "StakingDeactivateBuilder", { enumerable: true, get: function () { return abstract_cosmos_1.StakingDeactivateBuilder; } });
47
+ Object.defineProperty(exports, "StakingWithdrawRewardsBuilder", { enumerable: true, get: function () { return abstract_cosmos_1.StakingWithdrawRewardsBuilder; } });
27
48
  var keyPair_1 = require("./keyPair");
28
49
  Object.defineProperty(exports, "KeyPair", { enumerable: true, get: function () { return keyPair_1.KeyPair; } });
29
- var transaction_1 = require("./transaction");
30
- Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return transaction_1.Transaction; } });
31
- var transactionBuilder_1 = require("./transactionBuilder");
32
- Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return transactionBuilder_1.TransactionBuilder; } });
33
- var transferBuilder_1 = require("./transferBuilder");
34
- Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
35
50
  var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
36
51
  Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
37
- var StakingActivateBuilder_1 = require("./StakingActivateBuilder");
38
- Object.defineProperty(exports, "StakingActivateBuilder", { enumerable: true, get: function () { return StakingActivateBuilder_1.StakingActivateBuilder; } });
39
- var StakingDeactivateBuilder_1 = require("./StakingDeactivateBuilder");
40
- Object.defineProperty(exports, "StakingDeactivateBuilder", { enumerable: true, get: function () { return StakingDeactivateBuilder_1.StakingDeactivateBuilder; } });
41
- var StakingWithdrawRewardsBuilder_1 = require("./StakingWithdrawRewardsBuilder");
42
- Object.defineProperty(exports, "StakingWithdrawRewardsBuilder", { enumerable: true, get: function () { return StakingWithdrawRewardsBuilder_1.StakingWithdrawRewardsBuilder; } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQ0FBaUM7QUFXYixzQkFBSztBQVZ6QixtREFBcUM7QUFVNUIsOEJBQVM7QUFSbEIscUNBQW9DO0FBQTNCLGtHQUFBLE9BQU8sT0FBQTtBQUNoQiw2Q0FBNEM7QUFBbkMsMEdBQUEsV0FBVyxPQUFBO0FBQ3BCLDJEQUEwRDtBQUFqRCx3SEFBQSxrQkFBa0IsT0FBQTtBQUMzQixxREFBb0Q7QUFBM0Msa0hBQUEsZUFBZSxPQUFBO0FBQ3hCLHlFQUF3RTtBQUEvRCxzSUFBQSx5QkFBeUIsT0FBQTtBQUNsQyxtRUFBa0U7QUFBekQsZ0lBQUEsc0JBQXNCLE9BQUE7QUFDL0IsdUVBQXNFO0FBQTdELG9JQUFBLHdCQUF3QixPQUFBO0FBQ2pDLGlGQUFnRjtBQUF2RSw4SUFBQSw2QkFBNkIsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0ICogYXMgSW50ZXJmYWNlIGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5JztcbmV4cG9ydCB7IFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIgfSBmcm9tICcuL1N0YWtpbmdBY3RpdmF0ZUJ1aWxkZXInO1xuZXhwb3J0IHsgU3Rha2luZ0RlYWN0aXZhdGVCdWlsZGVyIH0gZnJvbSAnLi9TdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXInO1xuZXhwb3J0IHsgU3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIgfSBmcm9tICcuL1N0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyJztcbmV4cG9ydCB7IEludGVyZmFjZSwgVXRpbHMgfTtcbiJdfQ==
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVEQUF5QztBQWFoQyw4QkFBUztBQVpsQiwrQ0FBaUM7QUFZYixzQkFBSztBQVZ6QiwrREFPcUM7QUFObkMsOEdBQUEsaUJBQWlCLE9BQWU7QUFDaEMscUhBQUEsd0JBQXdCLE9BQXNCO0FBQzlDLGtIQUFBLHFCQUFxQixPQUFtQjtBQUN4Qyx5SEFBQSxzQkFBc0IsT0FBQTtBQUN0QiwySEFBQSx3QkFBd0IsT0FBQTtBQUN4QixnSUFBQSw2QkFBNkIsT0FBQTtBQUUvQixxQ0FBb0M7QUFBM0Isa0dBQUEsT0FBTyxPQUFBO0FBQ2hCLHlFQUF3RTtBQUEvRCxzSUFBQSx5QkFBeUIsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIENvbnN0YW50cyBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgKiBhcyBVdGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IHtcbiAgQ29zbW9zVHJhbnNhY3Rpb24gYXMgVHJhbnNhY3Rpb24sXG4gIENvc21vc1RyYW5zYWN0aW9uQnVpbGRlciBhcyBUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIENvc21vc1RyYW5zZmVyQnVpbGRlciBhcyBUcmFuc2ZlckJ1aWxkZXIsXG4gIFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIsXG4gIFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcixcbiAgU3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIsXG59IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LWNvc21vcyc7XG5leHBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnknO1xuZXhwb3J0IHsgQ29uc3RhbnRzLCBVdGlscyB9O1xuIl19
@@ -1,19 +1,10 @@
1
- import { DefaultKeys, KeyPairOptions, Secp256k1ExtendedKeyPair } from '@bitgo-beta/sdk-core';
1
+ import { KeyPairOptions } from '@bitgo-beta/sdk-core';
2
+ import { CosmosKeyPair } from '@bitgo-beta/abstract-cosmos';
2
3
  /**
3
4
  * Cosmos keys and address management.
4
5
  */
5
- export declare class KeyPair extends Secp256k1ExtendedKeyPair {
6
- /**
7
- * Public constructor. By default, creates a key pair with a random master seed.
8
- * @param { KeyPairOptions } source Either a master seed, a private key (extended or raw), or a public key
9
- * (extended, compressed, or uncompressed)
10
- */
6
+ export declare class KeyPair extends CosmosKeyPair {
11
7
  constructor(source?: KeyPairOptions);
12
- /**
13
- * Cosmos default keys format: raw private and compressed public key
14
- * @returns { DefaultKeys } The keys in the protocol default key format
15
- */
16
- getKeys(): DefaultKeys;
17
8
  /** @inheritdoc */
18
9
  getAddress(): string;
19
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"keyPair.d.ts","sourceRoot":"","sources":["../../../src/lib/keyPair.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAIX,cAAc,EACd,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAO9B;;GAEG;AACH,qBAAa,OAAQ,SAAQ,wBAAwB;IACnD;;;;OAIG;gBACS,MAAM,CAAC,EAAE,cAAc;IAoBnC;;;OAGG;IACH,OAAO,IAAI,WAAW;IAOtB,kBAAkB;IAClB,UAAU,IAAI,MAAM;CAUrB"}
1
+ {"version":3,"file":"keyPair.d.ts","sourceRoot":"","sources":["../../../src/lib/keyPair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,aAAa,EAAc,MAAM,6BAA6B,CAAC;AAExE;;GAEG;AACH,qBAAa,OAAQ,SAAQ,aAAa;gBAC5B,MAAM,CAAC,EAAE,cAAc;IAInC,kBAAkB;IAClB,UAAU,IAAI,MAAM;CAUrB"}
@@ -1,61 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.KeyPair = void 0;
4
- const sdk_core_1 = require("@bitgo-beta/sdk-core");
5
- const utxo_lib_1 = require("@bitgo-beta/utxo-lib");
6
4
  const amino_1 = require("@cosmjs/amino");
7
- const crypto_1 = require("crypto");
8
- const constants_1 = require("./constants");
5
+ const abstract_cosmos_1 = require("@bitgo-beta/abstract-cosmos");
6
+ const statics_1 = require("@bitgo-beta/statics");
9
7
  /**
10
8
  * Cosmos keys and address management.
11
9
  */
12
- class KeyPair extends sdk_core_1.Secp256k1ExtendedKeyPair {
13
- /**
14
- * Public constructor. By default, creates a key pair with a random master seed.
15
- * @param { KeyPairOptions } source Either a master seed, a private key (extended or raw), or a public key
16
- * (extended, compressed, or uncompressed)
17
- */
10
+ class KeyPair extends abstract_cosmos_1.CosmosKeyPair {
18
11
  constructor(source) {
19
12
  super(source);
20
- if (!source) {
21
- const seed = crypto_1.randomBytes(constants_1.DEFAULT_SEED_SIZE_BYTES);
22
- this.hdNode = utxo_lib_1.bip32.fromSeed(seed);
23
- }
24
- else if (sdk_core_1.isSeed(source)) {
25
- this.hdNode = utxo_lib_1.bip32.fromSeed(source.seed);
26
- }
27
- else if (sdk_core_1.isPrivateKey(source)) {
28
- this.recordKeysFromPrivateKey(source.prv);
29
- }
30
- else if (sdk_core_1.isPublicKey(source)) {
31
- this.recordKeysFromPublicKey(source.pub);
32
- }
33
- else {
34
- throw new Error('Invalid key pair options');
35
- }
36
- if (this.hdNode) {
37
- this.keyPair = sdk_core_1.Secp256k1ExtendedKeyPair.toKeyPair(this.hdNode);
38
- }
39
- }
40
- /**
41
- * Cosmos default keys format: raw private and compressed public key
42
- * @returns { DefaultKeys } The keys in the protocol default key format
43
- */
44
- getKeys() {
45
- var _a;
46
- return {
47
- pub: this.getPublicKey({ compressed: true }).toString('hex'),
48
- prv: (_a = this.getPrivateKey()) === null || _a === void 0 ? void 0 : _a.toString('hex'),
49
- };
50
13
  }
51
14
  /** @inheritdoc */
52
15
  getAddress() {
53
16
  const base64String = Buffer.from(this.getKeys().pub.slice(0, 66), 'hex').toString('base64');
54
- return amino_1.pubkeyToAddress({
55
- type: 'tendermint/PubKeySecp256k1',
17
+ return (0, amino_1.pubkeyToAddress)({
18
+ type: abstract_cosmos_1.PubKeyType.secp256k1,
56
19
  value: base64String,
57
- }, 'cosmos');
20
+ }, statics_1.Networks.main.atom.addressPrefix);
58
21
  }
59
22
  }
60
23
  exports.KeyPair = KeyPair;
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIva2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFPOEI7QUFDOUIsbURBQTZDO0FBQzdDLHlDQUFnRDtBQUNoRCxtQ0FBcUM7QUFFckMsMkNBQXNEO0FBRXREOztHQUVHO0FBQ0gsTUFBYSxPQUFRLFNBQVEsbUNBQXdCO0lBQ25EOzs7O09BSUc7SUFDSCxZQUFZLE1BQXVCO1FBQ2pDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNkLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxNQUFNLElBQUksR0FBRyxvQkFBVyxDQUFDLG1DQUF1QixDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxnQkFBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNwQzthQUFNLElBQUksaUJBQU0sQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLGdCQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQzthQUFNLElBQUksdUJBQVksQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsd0JBQXdCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzNDO2FBQU0sSUFBSSxzQkFBVyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQzlCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDMUM7YUFBTTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztTQUM3QztRQUVELElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsbUNBQXdCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNoRTtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxPQUFPOztRQUNMLE9BQU87WUFDTCxHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFDNUQsR0FBRyxFQUFFLE1BQUEsSUFBSSxDQUFDLGFBQWEsRUFBRSwwQ0FBRSxRQUFRLENBQUMsS0FBSyxDQUFDO1NBQzNDLENBQUM7SUFDSixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLFVBQVU7UUFDUixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUYsT0FBTyx1QkFBZSxDQUNwQjtZQUNFLElBQUksRUFBRSw0QkFBNEI7WUFDbEMsS0FBSyxFQUFFLFlBQVk7U0FDcEIsRUFDRCxRQUFRLENBQ1QsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWhERCwwQkFnREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEZWZhdWx0S2V5cyxcbiAgaXNQcml2YXRlS2V5LFxuICBpc1B1YmxpY0tleSxcbiAgaXNTZWVkLFxuICBLZXlQYWlyT3B0aW9ucyxcbiAgU2VjcDI1NmsxRXh0ZW5kZWRLZXlQYWlyLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBiaXAzMiB9IGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcbmltcG9ydCB7IHB1YmtleVRvQWRkcmVzcyB9IGZyb20gJ0Bjb3NtanMvYW1pbm8nO1xuaW1wb3J0IHsgcmFuZG9tQnl0ZXMgfSBmcm9tICdjcnlwdG8nO1xuXG5pbXBvcnQgeyBERUZBVUxUX1NFRURfU0laRV9CWVRFUyB9IGZyb20gJy4vY29uc3RhbnRzJztcblxuLyoqXG4gKiBDb3Ntb3Mga2V5cyBhbmQgYWRkcmVzcyBtYW5hZ2VtZW50LlxuICovXG5leHBvcnQgY2xhc3MgS2V5UGFpciBleHRlbmRzIFNlY3AyNTZrMUV4dGVuZGVkS2V5UGFpciB7XG4gIC8qKlxuICAgKiBQdWJsaWMgY29uc3RydWN0b3IuIEJ5IGRlZmF1bHQsIGNyZWF0ZXMgYSBrZXkgcGFpciB3aXRoIGEgcmFuZG9tIG1hc3RlciBzZWVkLlxuICAgKiBAcGFyYW0geyBLZXlQYWlyT3B0aW9ucyB9IHNvdXJjZSBFaXRoZXIgYSBtYXN0ZXIgc2VlZCwgYSBwcml2YXRlIGtleSAoZXh0ZW5kZWQgb3IgcmF3KSwgb3IgYSBwdWJsaWMga2V5XG4gICAqICAgICAoZXh0ZW5kZWQsIGNvbXByZXNzZWQsIG9yIHVuY29tcHJlc3NlZClcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNvdXJjZT86IEtleVBhaXJPcHRpb25zKSB7XG4gICAgc3VwZXIoc291cmNlKTtcbiAgICBpZiAoIXNvdXJjZSkge1xuICAgICAgY29uc3Qgc2VlZCA9IHJhbmRvbUJ5dGVzKERFRkFVTFRfU0VFRF9TSVpFX0JZVEVTKTtcbiAgICAgIHRoaXMuaGROb2RlID0gYmlwMzIuZnJvbVNlZWQoc2VlZCk7XG4gICAgfSBlbHNlIGlmIChpc1NlZWQoc291cmNlKSkge1xuICAgICAgdGhpcy5oZE5vZGUgPSBiaXAzMi5mcm9tU2VlZChzb3VyY2Uuc2VlZCk7XG4gICAgfSBlbHNlIGlmIChpc1ByaXZhdGVLZXkoc291cmNlKSkge1xuICAgICAgdGhpcy5yZWNvcmRLZXlzRnJvbVByaXZhdGVLZXkoc291cmNlLnBydik7XG4gICAgfSBlbHNlIGlmIChpc1B1YmxpY0tleShzb3VyY2UpKSB7XG4gICAgICB0aGlzLnJlY29yZEtleXNGcm9tUHVibGljS2V5KHNvdXJjZS5wdWIpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQga2V5IHBhaXIgb3B0aW9ucycpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmhkTm9kZSkge1xuICAgICAgdGhpcy5rZXlQYWlyID0gU2VjcDI1NmsxRXh0ZW5kZWRLZXlQYWlyLnRvS2V5UGFpcih0aGlzLmhkTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENvc21vcyBkZWZhdWx0IGtleXMgZm9ybWF0OiByYXcgcHJpdmF0ZSBhbmQgY29tcHJlc3NlZCBwdWJsaWMga2V5XG4gICAqIEByZXR1cm5zIHsgRGVmYXVsdEtleXMgfSBUaGUga2V5cyBpbiB0aGUgcHJvdG9jb2wgZGVmYXVsdCBrZXkgZm9ybWF0XG4gICAqL1xuICBnZXRLZXlzKCk6IERlZmF1bHRLZXlzIHtcbiAgICByZXR1cm4ge1xuICAgICAgcHViOiB0aGlzLmdldFB1YmxpY0tleSh7IGNvbXByZXNzZWQ6IHRydWUgfSkudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgcHJ2OiB0aGlzLmdldFByaXZhdGVLZXkoKT8udG9TdHJpbmcoJ2hleCcpLFxuICAgIH07XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0QWRkcmVzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGJhc2U2NFN0cmluZyA9IEJ1ZmZlci5mcm9tKHRoaXMuZ2V0S2V5cygpLnB1Yi5zbGljZSgwLCA2NiksICdoZXgnKS50b1N0cmluZygnYmFzZTY0Jyk7XG4gICAgcmV0dXJuIHB1YmtleVRvQWRkcmVzcyhcbiAgICAgIHtcbiAgICAgICAgdHlwZTogJ3RlbmRlcm1pbnQvUHViS2V5U2VjcDI1NmsxJyxcbiAgICAgICAgdmFsdWU6IGJhc2U2NFN0cmluZyxcbiAgICAgIH0sXG4gICAgICAnY29zbW9zJ1xuICAgICk7XG4gIH1cbn1cbiJdfQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIva2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx5Q0FBZ0Q7QUFFaEQsaUVBQXdFO0FBQ3hFLGlEQUErQztBQUMvQzs7R0FFRztBQUNILE1BQWEsT0FBUSxTQUFRLCtCQUFhO0lBQ3hDLFlBQVksTUFBdUI7UUFDakMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsVUFBVTtRQUNSLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1RixPQUFPLElBQUEsdUJBQWUsRUFDcEI7WUFDRSxJQUFJLEVBQUUsNEJBQVUsQ0FBQyxTQUFTO1lBQzFCLEtBQUssRUFBRSxZQUFZO1NBQ3BCLEVBQ0Qsa0JBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FDakMsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWhCRCwwQkFnQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLZXlQYWlyT3B0aW9ucyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IHB1YmtleVRvQWRkcmVzcyB9IGZyb20gJ0Bjb3NtanMvYW1pbm8nO1xuXG5pbXBvcnQgeyBDb3Ntb3NLZXlQYWlyLCBQdWJLZXlUeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3QtY29zbW9zJztcbmltcG9ydCB7IE5ldHdvcmtzIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG4vKipcbiAqIENvc21vcyBrZXlzIGFuZCBhZGRyZXNzIG1hbmFnZW1lbnQuXG4gKi9cbmV4cG9ydCBjbGFzcyBLZXlQYWlyIGV4dGVuZHMgQ29zbW9zS2V5UGFpciB7XG4gIGNvbnN0cnVjdG9yKHNvdXJjZT86IEtleVBhaXJPcHRpb25zKSB7XG4gICAgc3VwZXIoc291cmNlKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRBZGRyZXNzKCk6IHN0cmluZyB7XG4gICAgY29uc3QgYmFzZTY0U3RyaW5nID0gQnVmZmVyLmZyb20odGhpcy5nZXRLZXlzKCkucHViLnNsaWNlKDAsIDY2KSwgJ2hleCcpLnRvU3RyaW5nKCdiYXNlNjQnKTtcbiAgICByZXR1cm4gcHVia2V5VG9BZGRyZXNzKFxuICAgICAge1xuICAgICAgICB0eXBlOiBQdWJLZXlUeXBlLnNlY3AyNTZrMSxcbiAgICAgICAgdmFsdWU6IGJhc2U2NFN0cmluZyxcbiAgICAgIH0sXG4gICAgICBOZXR3b3Jrcy5tYWluLmF0b20uYWRkcmVzc1ByZWZpeFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -1,23 +1,20 @@
1
+ import { CosmosTransaction, CosmosTransactionBuilder, CosmosTransferBuilder, StakingActivateBuilder, StakingDeactivateBuilder, StakingWithdrawRewardsBuilder, ContractCallBuilder, StakingRedelegateBuilder } from '@bitgo-beta/abstract-cosmos';
1
2
  import { BaseTransactionBuilderFactory } from '@bitgo-beta/sdk-core';
2
- import { TransactionBuilder } from './transactionBuilder';
3
- import { TransferBuilder } from './transferBuilder';
4
3
  import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
5
- import { Transaction } from './transaction';
6
- import { StakingActivateBuilder } from './StakingActivateBuilder';
7
- import { StakingDeactivateBuilder } from './StakingDeactivateBuilder';
8
- import { StakingWithdrawRewardsBuilder } from './StakingWithdrawRewardsBuilder';
9
4
  export declare class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
10
5
  constructor(_coinConfig: Readonly<CoinConfig>);
11
6
  /** @inheritdoc */
12
- from(raw: string): TransactionBuilder;
7
+ from(raw: string): CosmosTransactionBuilder;
13
8
  /** @inheritdoc */
14
- getTransferBuilder(tx?: Transaction): TransferBuilder;
9
+ getTransferBuilder(tx?: CosmosTransaction): CosmosTransferBuilder;
15
10
  /** @inheritdoc */
16
- getStakingActivateBuilder(tx?: Transaction): StakingActivateBuilder;
11
+ getStakingActivateBuilder(tx?: CosmosTransaction): StakingActivateBuilder;
17
12
  /** @inheritdoc */
18
- getStakingDeactivateBuilder(tx?: Transaction): StakingDeactivateBuilder;
13
+ getStakingDeactivateBuilder(tx?: CosmosTransaction): StakingDeactivateBuilder;
19
14
  /** @inheritdoc */
20
- getStakingWithdrawRewardsBuilder(tx?: Transaction): StakingWithdrawRewardsBuilder;
15
+ getStakingWithdrawRewardsBuilder(tx?: CosmosTransaction): StakingWithdrawRewardsBuilder;
16
+ getContractCallBuilder(tx?: CosmosTransaction): ContractCallBuilder;
17
+ getStakingRedelegateBuilder(tx?: CosmosTransaction): StakingRedelegateBuilder;
21
18
  /** @inheritdoc */
22
19
  getWalletInitializationBuilder(): void;
23
20
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAA4C,MAAM,sBAAsB,CAAC;AAC/G,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAEhF,qBAAa,yBAA0B,SAAQ,6BAA6B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB;IAqBrC,kBAAkB;IAClB,kBAAkB,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,eAAe;IAGrD,kBAAkB;IAClB,yBAAyB,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,sBAAsB;IAGnE,kBAAkB;IAClB,2BAA2B,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,wBAAwB;IAGvE,kBAAkB;IAClB,gCAAgC,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,6BAA6B;IAGjF,kBAAkB;IAClB,8BAA8B,IAAI,IAAI;IAItC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;CAM1B"}
1
+ {"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,6BAA6B,EAC7B,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,6BAA6B,EAA4C,MAAM,sBAAsB,CAAC;AAC/G,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAG7D,qBAAa,yBAA0B,SAAQ,6BAA6B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,wBAAwB;IAyB3C,kBAAkB;IAClB,kBAAkB,CAAC,EAAE,CAAC,EAAE,iBAAiB,GAAG,qBAAqB;IAGjE,kBAAkB;IAClB,yBAAyB,CAAC,EAAE,CAAC,EAAE,iBAAiB,GAAG,sBAAsB;IAGzE,kBAAkB;IAClB,2BAA2B,CAAC,EAAE,CAAC,EAAE,iBAAiB,GAAG,wBAAwB;IAG7E,kBAAkB;IAClB,gCAAgC,CAAC,EAAE,CAAC,EAAE,iBAAiB,GAAG,6BAA6B;IAIvF,sBAAsB,CAAC,EAAE,CAAC,EAAE,iBAAiB,GAAG,mBAAmB;IAInE,2BAA2B,CAAC,EAAE,CAAC,EAAE,iBAAiB,GAAG,wBAAwB;IAI7E,kBAAkB;IAClB,8BAA8B,IAAI,IAAI;IAItC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;CAM1B"}
@@ -1,19 +1,19 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.TransactionBuilderFactory = void 0;
7
+ const abstract_cosmos_1 = require("@bitgo-beta/abstract-cosmos");
4
8
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
5
- const transferBuilder_1 = require("./transferBuilder");
6
- const transaction_1 = require("./transaction");
7
- const StakingActivateBuilder_1 = require("./StakingActivateBuilder");
8
- const StakingDeactivateBuilder_1 = require("./StakingDeactivateBuilder");
9
- const StakingWithdrawRewardsBuilder_1 = require("./StakingWithdrawRewardsBuilder");
9
+ const utils_1 = __importDefault(require("./utils"));
10
10
  class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory {
11
11
  constructor(_coinConfig) {
12
12
  super(_coinConfig);
13
13
  }
14
14
  /** @inheritdoc */
15
15
  from(raw) {
16
- const tx = new transaction_1.Transaction(this._coinConfig);
16
+ const tx = new abstract_cosmos_1.CosmosTransaction(this._coinConfig, utils_1.default);
17
17
  tx.enrichTransactionDetailsFromRawTransaction(raw);
18
18
  try {
19
19
  switch (tx.type) {
@@ -25,6 +25,10 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
25
25
  return this.getStakingDeactivateBuilder(tx);
26
26
  case sdk_core_1.TransactionType.StakingWithdraw:
27
27
  return this.getStakingWithdrawRewardsBuilder(tx);
28
+ case sdk_core_1.TransactionType.ContractCall:
29
+ return this.getContractCallBuilder(tx);
30
+ case sdk_core_1.TransactionType.StakingRedelegate:
31
+ return this.getStakingRedelegateBuilder(tx);
28
32
  default:
29
33
  throw new sdk_core_1.InvalidTransactionError('Invalid transaction');
30
34
  }
@@ -35,19 +39,25 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
35
39
  }
36
40
  /** @inheritdoc */
37
41
  getTransferBuilder(tx) {
38
- return this.initializeBuilder(tx, new transferBuilder_1.TransferBuilder(this._coinConfig));
42
+ return this.initializeBuilder(tx, new abstract_cosmos_1.CosmosTransferBuilder(this._coinConfig, utils_1.default));
39
43
  }
40
44
  /** @inheritdoc */
41
45
  getStakingActivateBuilder(tx) {
42
- return this.initializeBuilder(tx, new StakingActivateBuilder_1.StakingActivateBuilder(this._coinConfig));
46
+ return this.initializeBuilder(tx, new abstract_cosmos_1.StakingActivateBuilder(this._coinConfig, utils_1.default));
43
47
  }
44
48
  /** @inheritdoc */
45
49
  getStakingDeactivateBuilder(tx) {
46
- return this.initializeBuilder(tx, new StakingDeactivateBuilder_1.StakingDeactivateBuilder(this._coinConfig));
50
+ return this.initializeBuilder(tx, new abstract_cosmos_1.StakingDeactivateBuilder(this._coinConfig, utils_1.default));
47
51
  }
48
52
  /** @inheritdoc */
49
53
  getStakingWithdrawRewardsBuilder(tx) {
50
- return this.initializeBuilder(tx, new StakingWithdrawRewardsBuilder_1.StakingWithdrawRewardsBuilder(this._coinConfig));
54
+ return this.initializeBuilder(tx, new abstract_cosmos_1.StakingWithdrawRewardsBuilder(this._coinConfig, utils_1.default));
55
+ }
56
+ getContractCallBuilder(tx) {
57
+ return this.initializeBuilder(tx, new abstract_cosmos_1.ContractCallBuilder(this._coinConfig, utils_1.default));
58
+ }
59
+ getStakingRedelegateBuilder(tx) {
60
+ return this.initializeBuilder(tx, new abstract_cosmos_1.StakingRedelegateBuilder(this._coinConfig, utils_1.default));
51
61
  }
52
62
  /** @inheritdoc */
53
63
  getWalletInitializationBuilder() {
@@ -68,4 +78,4 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
68
78
  }
69
79
  }
70
80
  exports.TransactionBuilderFactory = TransactionBuilderFactory;
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBK0c7QUFFL0csdURBQW9EO0FBRXBELCtDQUE0QztBQUM1QyxxRUFBa0U7QUFDbEUseUVBQXNFO0FBQ3RFLG1GQUFnRjtBQUVoRixNQUFhLHlCQUEwQixTQUFRLHdDQUE2QjtJQUMxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxHQUFXO1FBQ2QsTUFBTSxFQUFFLEdBQUcsSUFBSSx5QkFBVyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM3QyxFQUFFLENBQUMsMENBQTBDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkQsSUFBSTtZQUNGLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRTtnQkFDZixLQUFLLDBCQUFlLENBQUMsSUFBSTtvQkFDdkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3JDLEtBQUssMEJBQWUsQ0FBQyxlQUFlO29CQUNsQyxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDNUMsS0FBSywwQkFBZSxDQUFDLGlCQUFpQjtvQkFDcEMsT0FBTyxJQUFJLENBQUMsMkJBQTJCLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzlDLEtBQUssMEJBQWUsQ0FBQyxlQUFlO29CQUNsQyxPQUFPLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDbkQ7b0JBQ0UsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHFCQUFxQixDQUFDLENBQUM7YUFDNUQ7U0FDRjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHVCQUF1QixHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUN4RTtJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsa0JBQWtCLENBQUMsRUFBZ0I7UUFDakMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksaUNBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBQ0Qsa0JBQWtCO0lBQ2xCLHlCQUF5QixDQUFDLEVBQWdCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLCtDQUFzQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFDRCxrQkFBa0I7SUFDbEIsMkJBQTJCLENBQUMsRUFBZ0I7UUFDMUMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksbURBQXdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUNELGtCQUFrQjtJQUNsQixnQ0FBZ0MsQ0FBQyxFQUFnQjtRQUMvQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSw2REFBNkIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBQ0Qsa0JBQWtCO0lBQ2xCLDhCQUE4QjtRQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNLLGlCQUFpQixDQUErQixFQUEyQixFQUFFLE9BQVU7UUFDN0YsSUFBSSxFQUFFLEVBQUU7WUFDTixPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3pCO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBN0RELDhEQTZEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIgfSBmcm9tICcuL1N0YWtpbmdBY3RpdmF0ZUJ1aWxkZXInO1xuaW1wb3J0IHsgU3Rha2luZ0RlYWN0aXZhdGVCdWlsZGVyIH0gZnJvbSAnLi9TdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXInO1xuaW1wb3J0IHsgU3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIgfSBmcm9tICcuL1N0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBmcm9tKHJhdzogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICBjb25zdCB0eCA9IG5ldyBUcmFuc2FjdGlvbih0aGlzLl9jb2luQ29uZmlnKTtcbiAgICB0eC5lbnJpY2hUcmFuc2FjdGlvbkRldGFpbHNGcm9tUmF3VHJhbnNhY3Rpb24ocmF3KTtcbiAgICB0cnkge1xuICAgICAgc3dpdGNoICh0eC50eXBlKSB7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlNlbmQ6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VHJhbnNmZXJCdWlsZGVyKHR4KTtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0FjdGl2YXRlOlxuICAgICAgICAgIHJldHVybiB0aGlzLmdldFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nRGVhY3RpdmF0ZTpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nV2l0aGRyYXc6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIodHgpO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbicpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbjogJyArIGUubWVzc2FnZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFRyYW5zZmVyQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uKTogVHJhbnNmZXJCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIodHg/OiBUcmFuc2FjdGlvbik6IFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgU3Rha2luZ0FjdGl2YXRlQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uKTogU3Rha2luZ0RlYWN0aXZhdGVCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFN0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyKHR4PzogVHJhbnNhY3Rpb24pOiBTdGFraW5nV2l0aGRyYXdSZXdhcmRzQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBTdGFraW5nV2l0aGRyYXdSZXdhcmRzQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcigpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgYnVpbGRlciB3aXRoIHRoZSBnaXZlbiB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uIHwgdW5kZWZpbmVkfSB0eCAtIHRoZSB0cmFuc2FjdGlvbiB1c2VkIHRvIGluaXRpYWxpemUgdGhlIGJ1aWxkZXJcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IGJ1aWxkZXIgLSB0aGUgYnVpbGRlciB0byBiZSBpbml0aWFsaXplZFxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSB0aGUgYnVpbGRlciBpbml0aWFsaXplZFxuICAgKi9cbiAgcHJpdmF0ZSBpbml0aWFsaXplQnVpbGRlcjxUIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyPih0eDogVHJhbnNhY3Rpb24gfCB1bmRlZmluZWQsIGJ1aWxkZXI6IFQpOiBUIHtcbiAgICBpZiAodHgpIHtcbiAgICAgIGJ1aWxkZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIH1cbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxufVxuIl19
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxpRUFTcUM7QUFDckMsbURBQStHO0FBRS9HLG9EQUE0QjtBQUU1QixNQUFhLHlCQUEwQixTQUFRLHdDQUE2QjtJQUMxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxHQUFXO1FBQ2QsTUFBTSxFQUFFLEdBQUcsSUFBSSxtQ0FBaUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGVBQUssQ0FBQyxDQUFDO1FBQzFELEVBQUUsQ0FBQywwQ0FBMEMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUM7WUFDSCxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDaEIsS0FBSywwQkFBZSxDQUFDLElBQUk7b0JBQ3ZCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNyQyxLQUFLLDBCQUFlLENBQUMsZUFBZTtvQkFDbEMsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzVDLEtBQUssMEJBQWUsQ0FBQyxpQkFBaUI7b0JBQ3BDLE9BQU8sSUFBSSxDQUFDLDJCQUEyQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUM5QyxLQUFLLDBCQUFlLENBQUMsZUFBZTtvQkFDbEMsT0FBTyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ25ELEtBQUssMEJBQWUsQ0FBQyxZQUFZO29CQUMvQixPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDekMsS0FBSywwQkFBZSxDQUFDLGlCQUFpQjtvQkFDcEMsT0FBTyxJQUFJLENBQUMsMkJBQTJCLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzlDO29CQUNFLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQzdELENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyx1QkFBdUIsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekUsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsa0JBQWtCLENBQUMsRUFBc0I7UUFDdkMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksdUNBQXFCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxlQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFDRCxrQkFBa0I7SUFDbEIseUJBQXlCLENBQUMsRUFBc0I7UUFDOUMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksd0NBQXNCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxlQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFDRCxrQkFBa0I7SUFDbEIsMkJBQTJCLENBQUMsRUFBc0I7UUFDaEQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksMENBQXdCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxlQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFDRCxrQkFBa0I7SUFDbEIsZ0NBQWdDLENBQUMsRUFBc0I7UUFDckQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksK0NBQTZCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxlQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxFQUFzQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxxQ0FBbUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGVBQUssQ0FBQyxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVELDJCQUEyQixDQUFDLEVBQXNCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLDBDQUF3QixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsZUFBSyxDQUFDLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDhCQUE4QjtRQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNLLGlCQUFpQixDQUFxQyxFQUFpQyxFQUFFLE9BQVU7UUFDekcsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNQLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUIsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQTFFRCw4REEwRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb3Ntb3NUcmFuc2FjdGlvbixcbiAgQ29zbW9zVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBDb3Ntb3NUcmFuc2ZlckJ1aWxkZXIsXG4gIFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIsXG4gIFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcixcbiAgU3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIsXG4gIENvbnRyYWN0Q2FsbEJ1aWxkZXIsXG4gIFN0YWtpbmdSZWRlbGVnYXRlQnVpbGRlcixcbn0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3QtY29zbW9zJztcbmltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGZyb20ocmF3OiBzdHJpbmcpOiBDb3Ntb3NUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIGNvbnN0IHR4ID0gbmV3IENvc21vc1RyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcsIHV0aWxzKTtcbiAgICB0eC5lbnJpY2hUcmFuc2FjdGlvbkRldGFpbHNGcm9tUmF3VHJhbnNhY3Rpb24ocmF3KTtcbiAgICB0cnkge1xuICAgICAgc3dpdGNoICh0eC50eXBlKSB7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlNlbmQ6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VHJhbnNmZXJCdWlsZGVyKHR4KTtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0FjdGl2YXRlOlxuICAgICAgICAgIHJldHVybiB0aGlzLmdldFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nRGVhY3RpdmF0ZTpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nV2l0aGRyYXc6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5Db250cmFjdENhbGw6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q29udHJhY3RDYWxsQnVpbGRlcih0eCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdSZWRlbGVnYXRlOlxuICAgICAgICAgIHJldHVybiB0aGlzLmdldFN0YWtpbmdSZWRlbGVnYXRlQnVpbGRlcih0eCk7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uJyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiAnICsgZS5tZXNzYWdlKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0VHJhbnNmZXJCdWlsZGVyKHR4PzogQ29zbW9zVHJhbnNhY3Rpb24pOiBDb3Ntb3NUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgQ29zbW9zVHJhbnNmZXJCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcsIHV0aWxzKSk7XG4gIH1cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIodHg/OiBDb3Ntb3NUcmFuc2FjdGlvbik6IFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgU3Rha2luZ0FjdGl2YXRlQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnLCB1dGlscykpO1xuICB9XG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIodHg/OiBDb3Ntb3NUcmFuc2FjdGlvbik6IFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZywgdXRpbHMpKTtcbiAgfVxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0U3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIodHg/OiBDb3Ntb3NUcmFuc2FjdGlvbik6IFN0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFN0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcsIHV0aWxzKSk7XG4gIH1cblxuICBnZXRDb250cmFjdENhbGxCdWlsZGVyKHR4PzogQ29zbW9zVHJhbnNhY3Rpb24pOiBDb250cmFjdENhbGxCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IENvbnRyYWN0Q2FsbEJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZywgdXRpbHMpKTtcbiAgfVxuXG4gIGdldFN0YWtpbmdSZWRlbGVnYXRlQnVpbGRlcih0eD86IENvc21vc1RyYW5zYWN0aW9uKTogU3Rha2luZ1JlZGVsZWdhdGVCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFN0YWtpbmdSZWRlbGVnYXRlQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnLCB1dGlscykpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcigpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgYnVpbGRlciB3aXRoIHRoZSBnaXZlbiB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uIHwgdW5kZWZpbmVkfSB0eCAtIHRoZSB0cmFuc2FjdGlvbiB1c2VkIHRvIGluaXRpYWxpemUgdGhlIGJ1aWxkZXJcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IGJ1aWxkZXIgLSB0aGUgYnVpbGRlciB0byBiZSBpbml0aWFsaXplZFxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSB0aGUgYnVpbGRlciBpbml0aWFsaXplZFxuICAgKi9cbiAgcHJpdmF0ZSBpbml0aWFsaXplQnVpbGRlcjxUIGV4dGVuZHMgQ29zbW9zVHJhbnNhY3Rpb25CdWlsZGVyPih0eDogQ29zbW9zVHJhbnNhY3Rpb24gfCB1bmRlZmluZWQsIGJ1aWxkZXI6IFQpOiBUIHtcbiAgICBpZiAodHgpIHtcbiAgICAgIGJ1aWxkZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIH1cbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxufVxuIl19
@@ -1,183 +1,14 @@
1
- /// <reference types="node" />
2
- import { BaseUtils, TransactionType } from '@bitgo-beta/sdk-core';
3
- import { DecodedTxRaw } from '@cosmjs/proto-signing';
1
+ import { CosmosUtils } from '@bitgo-beta/abstract-cosmos';
4
2
  import { Coin } from '@cosmjs/stargate';
5
- import { SignDoc, TxRaw } from 'cosmjs-types/cosmos/tx/v1beta1/tx';
6
- import { AtomTransaction, DelegateOrUndelegeteMessage, FeeData, MessageData, SendMessage, WithdrawDelegatorRewardsMessage } from './iface';
7
- export declare class Utils implements BaseUtils {
8
- private registry;
3
+ export declare class Utils extends CosmosUtils {
9
4
  /** @inheritdoc */
10
- isValidBlockId(hash: string): boolean;
11
- /** @inheritdoc */
12
- isValidPrivateKey(key: string): boolean;
5
+ isValidAddress(address: string): boolean;
13
6
  /** @inheritdoc */
14
- isValidPublicKey(key: string): boolean;
7
+ isValidValidatorAddress(address: string): boolean;
15
8
  /** @inheritdoc */
16
- isValidSignature(signature: string): boolean;
9
+ isValidContractAddress(address: string): boolean;
17
10
  /** @inheritdoc */
18
- isValidTransactionId(txId: string): boolean;
19
- /**
20
- * Checks if transaction hash is in valid black2b format
21
- */
22
- validateBlake2b(hash: string): boolean;
23
- /**
24
- * Checks if a cosmos like Bech32 address matches given regular expression and
25
- * validates memoId if present
26
- * @param {string} address
27
- * @param {RegExp} regExp Regular expression to validate the root address against after trimming the memoId
28
- * @returns {boolean} true if address is valid
29
- */
30
- isValidCosmosLikeAddressWithMemoId(address: string, regExp: RegExp): boolean;
31
- /**
32
- * Return boolean indicating whether a memo id is valid
33
- *
34
- * @param memoId memo id
35
- * @returns true if memo id is valid
36
- */
37
- isValidMemoId(memoId: string): boolean;
38
- /**
39
- * Validates if the address matches with regex @see accountAddressRegex
40
- *
41
- * @param {string} address
42
- * @returns {boolean} - the validation result
43
- */
44
- isValidAddress(address: string): boolean;
45
- /**
46
- * Validates if the address matches with regex @see accountAddressRegex
47
- *
48
- * @param {string} address
49
- * @returns {boolean} - the validation result
50
- */
51
- isValidValidatorAddress(address: string): boolean;
52
- /**
53
- * Validates whether amounts are in range
54
- *
55
- * @param {number[]} amounts - the amounts to validate
56
- * @returns {boolean} - the validation result
57
- */
58
- isValidAmounts(amounts: number[]): boolean;
59
- /**
60
- * Validates whether amount is in range
61
- * @param {number} amount
62
- * @returns {boolean} the validation result
63
- */
64
- isValidAmount(amount: number): boolean;
65
- /**
66
- * Decodes raw tx data into messages, signing info, and fee data
67
- * @param {string} txHex - raw base64 tx
68
- * @returns {DecodedTxRaw} Decoded transaction
69
- */
70
- getDecodedTxFromRawBase64(txRaw: string): DecodedTxRaw;
71
- /**
72
- * Returns the array of messages in the body of the decoded transaction
73
- * @param {DecodedTxRaw} decodedTx
74
- * @returns {EncodeObject[]} messages along with type url
75
- */
76
- private getEncodedMessagesFromDecodedTx;
77
- /**
78
- * Pulls the sequence number from a DecodedTxRaw AuthInfo property
79
- * @param {DecodedTxRaw} decodedTx
80
- * @returns {number} sequence
81
- */
82
- getSequenceFromDecodedTx(decodedTx: DecodedTxRaw): number;
83
- /**
84
- * Pulls the typeUrl from the encoded message of a DecodedTxRaw
85
- * @param {DecodedTxRaw} decodedTx
86
- * @returns {string} cosmos proto type url
87
- */
88
- getTypeUrlFromDecodedTx(decodedTx: DecodedTxRaw): string;
89
- /**
90
- * Returns the fee data from the decoded transaction
91
- * @param {DecodedTxRaw} decodedTx
92
- * @returns {FeeData} fee data
93
- */
94
- getGasBudgetFromDecodedTx(decodedTx: DecodedTxRaw): FeeData;
95
- /**
96
- * Returns the publicKey from the decoded transaction
97
- * @param {DecodedTxRaw} decodedTx
98
- * @returns {string | undefined} publicKey in hex format if it exists, undefined otherwise
99
- */
100
- getPublicKeyFromDecodedTx(decodedTx: DecodedTxRaw): string | undefined;
101
- /**
102
- * Returns the array of MessageData[] from the decoded transaction
103
- * @param {DecodedTxRaw} decodedTx
104
- * @returns {MessageData[]} Send transaction message data
105
- */
106
- getSendMessageDataFromDecodedTx(decodedTx: DecodedTxRaw): MessageData[];
107
- /**
108
- * Returns the array of MessageData[] from the decoded transaction
109
- * @param {DecodedTxRaw} decodedTx
110
- * @returns {MessageData[]} Delegate of undelegate transaction message data
111
- */
112
- getDelegateOrUndelegateMessageDataFromDecodedTx(decodedTx: DecodedTxRaw): MessageData[];
113
- /**
114
- * Returns the array of MessageData[] from the decoded transaction
115
- * @param {DecodedTxRaw} decodedTx
116
- * @returns {MessageData[]} WithdrawDelegatorRewards transaction message data
117
- */
118
- getWithdrawRewardsMessageDataFromDecodedTx(decodedTx: DecodedTxRaw): MessageData[];
119
- /**
120
- * Returns the array of MessageData[] from the decoded transaction
121
- * @param {DecodedTxRaw} decodedTx
122
- * @returns {MessageData[]} Delegate of undelegate transaction message data
123
- */
124
- getWithdrawDelegatorRewardsMessageDataFromDecodedTx(decodedTx: DecodedTxRaw): MessageData[];
125
- /**
126
- * Determines bitgo transaction type based on cosmos proto type url
127
- * @param {string} typeUrl
128
- * @returns {TransactionType | undefined} TransactionType if url is supported else undefined
129
- */
130
- getTransactionTypeFromTypeUrl(typeUrl: string): TransactionType | undefined;
131
- /**
132
- * Creates a txRaw from an atom transaction @see AtomTransaction
133
- * @Precondition atomTransaction.publicKey must be defined
134
- * @param {AtomTransaction} atomTransaction
135
- * @returns {TxRaw} Unsigned raw transaction
136
- */
137
- createTxRawFromAtomTransaction(atomTransaction: AtomTransaction): TxRaw;
138
- /**
139
- * Encodes a signature into a txRaw
140
- * @param {string} publicKeyHex publicKey in hex encoded string format
141
- * @param {string} signatureHex signature in hex encoded string format
142
- * @param {TxRaw} unsignedTx raw transaction
143
- * @returns {TxRaw} Signed raw transaction
144
- */
145
- createSignedTxRaw(publicKeyHex: string, signatureHex: string, unsignedTx: {
146
- bodyBytes: Uint8Array;
147
- authInfoBytes: Uint8Array;
148
- }): TxRaw;
149
- /**
150
- * Decodes a raw transaction into a DecodedTxRaw and checks if it has non empty signatures
151
- * @param {string} rawTransaction
152
- * @returns {boolean} true if transaction is signed else false
153
- */
154
- isSignedRawTx(rawTransaction: string): boolean;
155
- /**
156
- * Deserializes base64 enocded raw transaction string into @see AtomTransaction
157
- * @param {string} rawTx base64 enocded raw transaction string
158
- * @returns {AtomTransaction} Deserialized atomTransaction
159
- */
160
- deserializeAtomTransaction(rawTx: string): AtomTransaction;
161
- createAtomTransaction(sequence: number, messages: MessageData[], gasBudget: FeeData, publicKey?: string, memo?: string): AtomTransaction;
162
- createAtomTransactionWithHash(sequence: number, messages: MessageData[], gasBudget: FeeData, publicKey?: string, signature?: Buffer, memo?: string): AtomTransaction;
163
- validateAtomTransaction(tx: AtomTransaction): void;
164
- validateMessageData(messageData: MessageData): void;
165
- validateAmountData(amountArray: Coin[]): void;
166
11
  validateAmount(amount: Coin): void;
167
- validateGasBudget(gasBudget: FeeData): void;
168
- validateSequence(sequence: number): void;
169
- validatePublicKey(publicKey: string | undefined): void;
170
- /**
171
- * Creates a sign doc from an atom transaction @see AtomTransaction
172
- * @Precondition atomTransaction.accountNumber and atomTransaction.chainId must be defined
173
- * @param {AtomTransaction} atomTransaction
174
- * @returns {SignDoc} sign doc
175
- */
176
- createSignDoc(atomTransaction: AtomTransaction, accountNumber: number | undefined, chainId: string | undefined): SignDoc;
177
- validateDelegateOrUndelegateMessage(delegateMessage: DelegateOrUndelegeteMessage): void;
178
- validateWithdrawRewardsMessage(withdrawRewardsMessage: WithdrawDelegatorRewardsMessage): void;
179
- validateSendMessage(sendMessage: SendMessage): void;
180
- isValidHexString(hexString: string): boolean;
181
12
  }
182
13
  declare const utils: Utils;
183
14
  export default utils;