@bitgo/sdk-core 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/CHANGELOG.md +109 -100
  2. package/dist/src/bitgo/baseCoin/baseCoin.d.ts +2 -2
  3. package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
  4. package/dist/src/bitgo/baseCoin/baseCoin.js +1 -1
  5. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +10 -2
  6. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
  7. package/dist/src/bitgo/baseCoin/iBaseCoin.js +1 -1
  8. package/dist/src/bitgo/environments.js +4 -4
  9. package/dist/src/bitgo/keychain/iKeychains.d.ts +4 -2
  10. package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
  11. package/dist/src/bitgo/keychain/iKeychains.js +1 -1
  12. package/dist/src/bitgo/keychain/keychains.js +2 -1
  13. package/dist/src/bitgo/staking/stakingWallet.d.ts +9 -2
  14. package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
  15. package/dist/src/bitgo/staking/stakingWallet.js +19 -6
  16. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +9 -0
  17. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
  18. package/dist/src/bitgo/tss/ecdsa/ecdsa.js +20 -2
  19. package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
  20. package/dist/src/bitgo/utils/mpcUtils.js +4 -3
  21. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +18 -4
  22. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
  23. package/dist/src/bitgo/utils/tss/baseTSSUtils.js +42 -5
  24. package/dist/src/bitgo/utils/tss/baseTypes.d.ts +21 -11
  25. package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
  26. package/dist/src/bitgo/utils/tss/baseTypes.js +1 -1
  27. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +26 -5
  28. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
  29. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +148 -22
  30. package/dist/src/bitgo/wallet/iWallet.d.ts +20 -0
  31. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  32. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  33. package/dist/src/bitgo/wallet/iWallets.d.ts +2 -0
  34. package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
  35. package/dist/src/bitgo/wallet/iWallets.js +1 -1
  36. package/dist/src/bitgo/wallet/wallet.d.ts +7 -4
  37. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  38. package/dist/src/bitgo/wallet/wallet.js +55 -13
  39. package/dist/src/bitgo/wallet/wallets.d.ts +1 -0
  40. package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
  41. package/dist/src/bitgo/wallet/wallets.js +5 -2
  42. package/dist/src/coins/fiateur.d.ts +1 -1
  43. package/dist/src/coins/fiateur.d.ts.map +1 -1
  44. package/dist/src/coins/fiateur.js +2 -2
  45. package/dist/src/coins/fiatgbp.d.ts +1 -1
  46. package/dist/src/coins/fiatgbp.d.ts.map +1 -1
  47. package/dist/src/coins/fiatgbp.js +2 -2
  48. package/dist/src/coins/fiatusd.d.ts +1 -1
  49. package/dist/src/coins/fiatusd.d.ts.map +1 -1
  50. package/dist/src/coins/fiatusd.js +2 -2
  51. package/dist/src/coins/ofc.d.ts +1 -1
  52. package/dist/src/coins/ofc.d.ts.map +1 -1
  53. package/dist/src/coins/ofc.js +2 -2
  54. package/dist/src/coins/susd.d.ts +1 -1
  55. package/dist/src/coins/susd.d.ts.map +1 -1
  56. package/dist/src/coins/susd.js +2 -2
  57. package/dist/tsconfig.tsbuildinfo +352 -290
  58. package/package.json +4 -4
@@ -95,9 +95,9 @@ exports.Environments = {
95
95
  uri: 'https://app.bitgo-latest.com',
96
96
  stellarFederationServerUrl: 'https://app.bitgo-latest.com/api/v2/xlm/federation',
97
97
  }),
98
- staging: Object.assign({}, mainnetBase, {
99
- uri: 'https://staging.bitgo.com',
100
- stellarFederationServerUrl: 'https://staging.bitgo.com/api/v2/xlm/federation',
98
+ staging: Object.assign({}, testnetBase, {
99
+ uri: 'https://app.bitgo-staging.com',
100
+ stellarFederationServerUrl: 'https://app.bitgo-staging.com/api/v2/txlm/federation',
101
101
  }),
102
102
  local: Object.assign({}, devBase, {
103
103
  uri: 'https://localhost:3000',
@@ -155,4 +155,4 @@ exports.Environments = {
155
155
  stellarFederationServerUrl: 'https://app.bitgo-dev.com/api/v2/txlm/federation',
156
156
  }),
157
157
  };
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpdGdvL2Vudmlyb25tZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFzQ2EsUUFBQSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQy9DLFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtLQUN4SDtJQUNELE9BQU8sRUFBRTtRQUNQLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtRQUN2SCxHQUFHLEVBQUUsaUhBQWlIO0tBQ3ZIO0NBQ0YsQ0FBQyxDQUFDO0FBc0JILHdGQUF3RjtBQUMzRSxRQUFBLGlCQUFpQixHQUFxRDtJQUNqRixVQUFVLEVBQUUsTUFBTTtJQUNsQixNQUFNLEVBQUUsTUFBTTtJQUNkLE1BQU0sRUFBRSxNQUFNO0lBQ2QsS0FBSyxFQUFFLEtBQUs7SUFDWixRQUFRLEVBQUUsUUFBUTtDQUNuQixDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQXdCO0lBQ3ZDLE9BQU8sRUFBRSxTQUFzQjtJQUMvQixjQUFjLEVBQUUsb0NBQW9DO0lBQ3BELFVBQVUsRUFBRSwyQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSTtJQUMvQyxPQUFPLEVBQUUsMkJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUk7SUFDekMsa0JBQWtCLEVBQUUsOEJBQThCO0lBQ2xELGdCQUFnQixFQUFFLDBCQUEwQjtJQUM1QyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtJQUNsRCxnQkFBZ0IsRUFBRSwwQkFBMEI7SUFDNUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7SUFDbEQsbUJBQW1CLEVBQUUsNEJBQTRCO0lBQ2pELHNCQUFzQixFQUFFLGlDQUFpQztJQUN6RCxrQkFBa0IsRUFBRSw2QkFBNkI7SUFDakQsbUJBQW1CLEVB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LEVBQUU7UUFDakMsR0FBRyxFQUFFLDJCQUEyQjtRQUNoQywwQkFBMEIsRUFBRSxrREFBa0Q7S0FDL0UsQ0FBQztDQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgeyBWMU5ldHdvcmsgfSBmcm9tICcuL3R5cGVzJztcblxuaW50ZXJmYWNlIEVudmlyb25tZW50VGVtcGxhdGUge1xuICB1cmk/OiBzdHJpbmc7XG4gIG5ldHdvcms6IFYxTmV0d29yaztcbiAgc2lnbmluZ0FkZHJlc3M6IHN0cmluZztcbiAgc2VydmVyWHB1Yjogc3RyaW5nO1xuICBoc21YcHViOiBzdHJpbmc7XG4gIGJ0Y0V4cGxvcmVyQmFzZVVybDogc3RyaW5nO1xuICBldGhlcnNjYW5CYXNlVXJsOiBzdHJpbmc7XG4gIGV0aGVyc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICBzbm93dHJhY2VCYXNlVXJsOiBzdHJpbmc7XG4gIHNub3d0cmFjZUFwaVRva2VuPzogc3RyaW5nO1xuICBldGgyRXhwbG9yZXJCYXNlVXJsOiBzdHJpbmc7XG4gIGV0aHdGdWxsTm9kZVJQQ0Jhc2VVcmw6IHN0cmluZztcbiAgcG9seWdvbnNjYW5CYXNlVXJsPzogc3RyaW5nO1xuICBwb2x5Z29uc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybD86IHN0cmluZztcbiAgZW9zTm9kZVVybHM6IHN0cmluZ1tdO1xuICBuZWFyTm9kZVVybHM6IHN0cmluZ1tdO1xuICBzb2xOb2RlVXJsOiBzdHJpbmc7XG4gIGFkYU5vZGVVcmw6IHN0cmluZztcbiAgZG90Tm9kZVVybHM6IHN0cmluZ1tdO1xuICB0cm9uTm9kZXM6IHtcbiAgICBmdWxsOiBzdHJpbmc7XG4gICAgc29saWRpdHk6IHN0cmluZztcbiAgfTtcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVudmlyb25tZW50IGV4dGVuZHMgRW52aXJvbm1lbnRUZW1wbGF0ZSB7XG4gIHVyaTogc3RyaW5nO1xuICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgaGFyZGNvZGVkUHVibGljS2V5cyA9IE9iamVjdC5mcmVlemUoe1xuICBzZXJ2ZXJYcHViOiB7XG4gICAgcHJvZDogJ3hwdWI2NjFNeU13QXFSYmNFdFVndTlIRjhhaTRpcHVWS0tIQnpVcWtzNGpTRnlwVzhkd3dRTDF6eWdMZ1F4OTlObUM3ekpKem5TaXdLRzZSUWZWakFLTXRDc3g4VmpSNmtRVzh4N0hya1hGWmRuUScsXG4gICAgdGVzdDogJ3hwdWI2NjFNeU13QXFSYmNFckZxVlhHaVVGdjlZZW9QYmhONzJVaU5DVWRqOW5qM1Q2TThoN2lLTm1iQ1lwTVZXVlpQN0xBMm1hM0hXY1BuZ3oxZ1JUbTRGUGR0bTltSGZyTnZVOTNNQ29zenNHTCcsXG4gIH0sXG4gIGhzbVhwdWI6IHtcbiAgICBwcm9kOiAneHB1YjY2MU15TXdBcVJiY0dFdFRGZ01Bb3hNRm9xc1JkRGFpYVI2M2J5TmZaZFY3Y0JaRnZvdlFTTko1YnB5ZW9RdHVLVmdYQms2c0ZRN1R0dnlXcWFkdDQxRG5Ld3ZlWWdNNUtvVTJFS1lqZFkyJyxcbiAgICB0ZXN0OiAneHB1YjY2MU15TXdBcVJiY0dGS2U0QnF2azRTZ3JpYzRnTkZDOHBVYnc0dFVrVmpaeHViakNBNTIyZ1B6YzFZYVhiM2JRVm1EV2M3Q2pHOEFHTldScGNkQVUzOFJFVEJoOG4yYm5xRVU0a2JWNG9LJyxcbiAgICBkZXY6ICd4cHViNjYxTXlNd0FxUmJjRld6b3o4cW5ZUkRZRUZRcFBMWXd4VkZvRzZXTHkzY2s1WnVwUkdKVEc0anU2eUdiN0RqM2V5NkdzQzRrc3RMUkVSMm5LemdqTHRteHlQZ0M0ekh5N2tWaFV0NnlmR24nLFxuICB9LFxufSk7XG5cbmV4cG9ydCB0eXBlIEVudmlyb25tZW50TmFtZSA9XG4gIHwgJ3Byb2QnXG4gIHwgJ3N0YWdpbmcnXG4gIHwgJ3Rlc3QnXG4gIHwgJ2RldidcbiAgfCAnbGF0ZXN0J1xuICB8ICdsb2NhbCdcbiAgfCAnbG9jYWxOb25TZWN1cmUnXG4gIHwgJ21vY2snXG4gIHwgJ2FkbWluUHJvZCdcbiAgfCAnYWRtaW5UZXN0J1xuICB8ICdhZG1pbkRldidcbiAgfCAnYWRtaW5MYXRlc3QnXG4gIHwgJ2N1c3RvbSdcbiAgfCAnYnJhbmNoJztcblxuZXhwb3J0IHR5cGUgQWxpYXNFbnZpcm9ubWVudE5hbWUgPSAncHJvZHVjdGlvbicgfCAnbXNQcm9kJyB8ICdtc1Rlc3QnIHwgJ21zRGV2JyB8ICdtc0xhdGVzdCc7XG5cbmV4cG9ydCB0eXBlIEVudmlyb25tZW50cyA9IHsgW2sgaW4gRW52aXJvbm1lbnROYW1lXTogRW52aXJvbm1lbnQgfTtcblxuLy8gYWxpYXMgZW52aXJvbm1lbnRzIGFyZSBlbnZpcm9ubWVudCBuYW1lcyB3aGljaCBhcmUgYWxpYXNlcyBvZiBhIHN1cHBvcnRlZCBlbnZpcm9ubWVudFxuZXhwb3J0IGNvbnN0IEFsaWFzRW52aXJvbm1lbnRzOiB7IFtrIGluIEFsaWFzRW52aXJvbm1lbnROYW1lXTogRW52aXJvbm1lbnROYW1lIH0gPSB7XG4gIHByb2R1Y3Rpb246ICdwcm9kJyxcbiAgbXNQcm9kOiAncHJvZCcsXG4gIG1zVGVzdDogJ3Rlc3QnLFxuICBtc0RldjogJ2RldicsXG4gIG1zTGF0ZXN0OiAnbGF0ZXN0Jyxcbn07XG5cbmNvbnN0IG1haW5uZXRCYXNlOiBFbnZpcm9ubWVudFRlbXBsYXRlID0ge1xuICBuZXR3b3JrOiAnYml0Y29pbicgYXMgVjFOZXR3b3JrLFxuICBzaWduaW5nQWRkcmVzczogJzFCaXRHbzNneFJaNm1RU0VINTJkdkNLU1VnVkNBSDRSamEnLFxuICBzZXJ2ZXJYcHViOiBoYXJkY29kZWRQdWJsaWNLZXlzLnNlcnZlclhwdWIucHJvZCxcbiAgaHNtWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLnByb2QsXG4gIGJ0Y0V4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby9hcGknLFxuICBldGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvJyxcbiAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gIHNub3d0cmFjZUJhc2VVcmw6ICdodHRwczovL2FwaS5zbm93dHJhY2UuaW8nLFxuICBzbm93dHJhY2VBcGlUb2tlbjogcHJvY2Vzcy5lbnYuU05PV1RSQUNFX0FQSV9UT0tFTixcbiAgZXRoMkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmVhY29uc2Nhbi5jb20vYXBpJyxcbiAgZXRod0Z1bGxOb2RlUlBDQmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5ldGhlcmV1bXBvdy5vcmcnLFxuICBwb2x5Z29uc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS5wb2x5Z29uc2Nhbi5jb20nLFxuICBwb2x5Z29uc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5QT0xZR09OU0NBTl9BUElfVE9LRU4sXG4gIGVvc05vZGVVcmxzOiBbJ2h0dHBzOi8vYnAuY3J5cHRvbGlvbnMuaW8nLCAnaHR0cHM6Ly9hcGkuZW9zbmV3eW9yay5pbycsICdodHRwczovL2FwaS5lb3NkZXRyb2l0LmlvJ10sXG4gIG5lYXJOb2RlVXJsczogWydodHRwczovL3JwYy5tYWlubmV0Lm5lYXIub3JnJ10sXG4gIHNvbE5vZGVVcmw6ICdodHRwczovL2FwaS5tYWlubmV0LWJldGEuc29sYW5hLmNvbScsXG4gIGFkYU5vZGVVcmw6ICdodHRwczovL2FwaS5rb2lvcy5yZXN0L2FwaS92MCcsXG4gIGRvdE5vZGVVcmxzOiBbJ3dzczovL3JwYy5wb2xrYWRvdC5pbyddLFxuICB0cm9uTm9kZXM6IHtcbiAgICBmdWxsOiAnaHR0cHM6Ly9hcGkudHJvbmdyaWQuaW8nLFxuICAgIHNvbGlkaXR5OiAnaHR0cHM6Ly9hcGkudHJvbmdyaWQuaW8nLFxuICB9LFxuICBobWFjVmVyaWZpY2F0aW9uRW5mb3JjZWQ6IHRydWUsXG59O1xuXG5jb25zdCB0ZXN0bmV0QmFzZTogRW52aXJvbm1lbnRUZW1wbGF0ZSA9IHtcbiAgbmV0d29yazogJ3Rlc3RuZXQnIGFzIFYxTmV0d29yayxcbiAgc2lnbmluZ0FkZHJlc3M6ICdtc2lnbkJkRlh0ZWVoREVnQjZETm03bnBSdDdBY0VaSlAzJyxcbiAgc2VydmVyWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnRlc3QsXG4gIGhzbVhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi50ZXN0LFxuICBidGNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vdGVzdG5ldC9hcGknLFxuICBldGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGktZ29lcmxpLmV0aGVyc2Nhbi5pbycsXG4gIGV0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICBzbm93dHJhY2VCYXNlVXJsOiAnaHR0cHM6Ly9hcGktdGVzdG5ldC5zbm93dHJhY2UuaW8nLFxuICBzbm93dHJhY2VBcGlUb2tlbjogcHJvY2Vzcy5lbnYuU05PV1RSQUNFX0FQSV9UT0tFTixcbiAgZXRoMkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmVhY29uc2Nhbi5jb20vYXBpJyxcbiAgZXRod0Z1bGxOb2RlUlBDQmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5ldGhlcmV1bXBvdy5vcmcnLFxuICBwb2x5Z29uc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS10ZXN0bmV0LnBvbHlnb25zY2FuLmNvbScsXG4gIHBvbHlnb25zY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LlBPTFlHT05TQ0FOX0FQSV9UT0tFTixcbiAgLy8ga3lsaW4gZW9zIGVuZHBvaW50cyBmb3VuZCBoZXJlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9jcnlwdG9reWxpbi9DcnlwdG9LeWxpbi1UZXN0bmV0I2h0dHAtYXBpLWxpc3RcbiAgLy8gaHR0cHM6Ly9kb2NzLmxpcXVpZGFwcHMuaW8vbGlxdWlkYXBwcy1kb2N1bWVudGF0aW9uL2Vvc2lvLWd1aWRlcy90ZXN0bmV0LWNyZWF0aW9uLWd1aWRlcy9jcmVhdGluZy1jcnlwdG9reWxpbi1hY2NvdW50I3NldHVwXG4gIGVvc05vZGVVcmxzOiBbJ2h0dHBzOi8va3lsaW4uZW9zbi5pbycsICdodHRwczovL2FwaS5reWxpbi5hbG9oYWVvcy5jb20nXSxcbiAgbmVhck5vZGVVcmxzOiBbJ2h0dHBzOi8vcnBjLnRlc3RuZXQubmVhci5vcmcnXSxcbiAgc29sTm9kZVVybDogJ2h0dHBzOi8vYXBpLmRldm5ldC5zb2xhbmEuY29tJyxcbiAgYWRhTm9kZVVybDogJ2h0dHBzOi8vdGVzdG5ldC5rb2lvcy5yZXN0L2FwaS92MCcsXG4gIGRvdE5vZGVVcmxzOiBbJ3dzczovL3dlc3RlbmQtcnBjLnBvbGthZG90LmlvJ10sXG4gIHRyb25Ob2Rlczoge1xuICAgIGZ1bGw6ICdodHRwOi8vNDcuMjUyLjgxLjEzNTo4MDkwJyxcbiAgICBzb2xpZGl0eTogJ2h0dHA6Ly80Ny4yNTIuODEuMTM1OjgwOTEnLFxuICB9LFxuICBobWFjVmVyaWZpY2F0aW9uRW5mb3JjZWQ6IHRydWUsXG59O1xuXG5jb25zdCBkZXZCYXNlOiBFbnZpcm9ubWVudFRlbXBsYXRlID0gT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgaHNtWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLmRldixcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiBmYWxzZSxcbn0pO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVkZWNsYXJlXG5leHBvcnQgY29uc3QgRW52aXJvbm1lbnRzOiBFbnZpcm9ubWVudHMgPSB7XG4gIHByb2Q6IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hcHAuYml0Z28uY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLmNvbS9hcGkvdjIveGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby10ZXN0LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FwcC5iaXRnby10ZXN0LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGRldjogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tZGV2LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGxhdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWxhdGVzdC5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tbGF0ZXN0LmNvbS9hcGkvdjIveGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgc3RhZ2luZzogT2JqZWN0LmFzc2lnbih7fSwgbWFpbm5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL3N0YWdpbmcuYml0Z28uY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vc3RhZ2luZy5iaXRnby5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGxvY2FsOiBPYmplY3QuYXNzaWduKHt9LCBkZXZCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9sb2NhbGhvc3Q6MzAwMCcsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2xvY2FsaG9zdDozMDAwL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgbG9jYWxOb25TZWN1cmU6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwOi8vbG9jYWxob3N0OjMwMDAnLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cDovL2xvY2FsaG9zdDozMDAwL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgbW9jazogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYml0Z28uZmFrZXVybCcsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2JpdGdvLmZha2V1cmwvYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gICAgZXRoZXJzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLWdvZXJsaS5ldGhlcnNjYW4uZmFrZXVybCcsXG4gICAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gICAgc25vd3RyYWNlQXBpVG9rZW46IHByb2Nlc3MuZW52LlNOT1dUUkFDRV9BUElfVE9LRU4sXG4gICAgc25vd3RyYWNlQmFzZVVybDogJ2h0dHBzOi8vYXBpLXRlc3RuZXQuc25vd3RyYWNlLmZha2V1cmwnLFxuICAgIGV0aDJFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2JlYWNvbnNjYW4uY29tL2FwaScsXG4gIH0pLFxuICBhZG1pblByb2Q6IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGFkbWluVGVzdDogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FkbWluLmJpdGdvLXRlc3QuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYWRtaW4uYml0Z28tdGVzdC5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pbkRldjogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28tZGV2LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLWRldi5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pbkxhdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28tbGF0ZXN0LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLWxhdGVzdC5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGN1c3RvbTogT2JqZWN0LmFzc2lnbih7fSwgbWFpbm5ldEJhc2UsIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgIHVyaTogcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX1JPT1RfVVJJISxcbiAgICBuZXR3b3JrOiBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fQklUQ09JTl9ORVRXT1JLIGFzIFYxTmV0d29yayxcbiAgICBoc21YcHViOlxuICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdwcm9kdWN0aW9uJyA/IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi5wcm9kIDogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLnRlc3QsXG4gICAgYnRjRXhwbG9yZXJCYXNlVXJsOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyAhPT0gJ2JpdGNvaW4nXG4gICAgICAgID8gJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby90ZXN0bmV0L2FwaSdcbiAgICAgICAgOiAnaHR0cHM6Ly9ibG9ja3N0cmVhbS5pbmZvL2FwaScsXG4gICAgZXRoZXJzY2FuQmFzZVVybDpcbiAgICAgIHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9FVEhFUkVVTV9ORVRXT1JLICE9PSAnZXRoZXJldW0nXG4gICAgICAgID8gJ2h0dHBzOi8vYXBpLWdvZXJsaS5ldGhlcnNjYW4uaW8nXG4gICAgICAgIDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pbycsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6XG4gICAgICBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fU1RFTExBUl9ORVRXT1JLICE9PSAnc3RlbGxhcidcbiAgICAgICAgPyBgaHR0cHM6Ly8ke3Byb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSX0vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbmBcbiAgICAgICAgOiBgaHR0cHM6Ly8ke3Byb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSX0vYXBpL3YyL3hsbS9mZWRlcmF0aW9uYCxcbiAgICBzZXJ2ZXJYcHViOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyAhPT0gJ2JpdGNvaW4nXG4gICAgICAgID8gaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnRlc3RcbiAgICAgICAgOiBoYXJkY29kZWRQdWJsaWNLZXlzLnNlcnZlclhwdWIucHJvZCxcbiAgfSksXG4gIGJyYW5jaDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tZGV2LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG59O1xuIl19
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpdGdvL2Vudmlyb25tZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFzQ2EsUUFBQSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQy9DLFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtLQUN4SDtJQUNELE9BQU8sRUFBRTtRQUNQLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtRQUN2SCxHQUFHLEVBQUUsaUhBQWlIO0tBQ3ZIO0NBQ0YsQ0FBQyxDQUFDO0FBc0JILHdGQUF3RjtBQUMzRSxRQUFBLGlCQUFpQixHQUFxRDtJQUNqRixVQUFVLEVBQUUsTUFBTTtJQUNsQixNQUFNLEVBQUUsTUFBTTtJQUNkLE1BQU0sRUFBRSxNQUFNO0lBQ2QsS0FBSyxFQUFFLEtBQUs7SUFDWixRQUFRLEVBQUUsUUFBUTtDQUNuQixDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQXdCO0lBQ3ZDLE9BQU8sRUFBRSxTQUFzQjtJQUMvQixjQUFjLEVBQUUsb0NBQW9DO0lBQ3BELFVBQVUsRUFBRSwyQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSTtJQUMvQyxPQUFPLEVBQUUsMkJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUk7SUFDekMsa0JBQWtCLEVBQUUsOEJBQThCO0lBQ2xELGdCQUFnQixFQUFFLDBCQUEwQjtJQUM1QyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtJQUNsRCxnQkFBZ0IsRUFBRSwwQkFBMEI7SUFDNUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7SUFDbEQsbUJBQW1CLEVBQUUsNEJBQTRCO0lBQ2pELHNCQUFzQixFQUFFLGlDQUFpQztJQUN6RCxrQkFBa0IsRUFBRSw2QkFBNkI7SUFDakQsbUJBQW1CLEVB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LEVBQUU7UUFDakMsR0FBRyxFQUFFLDJCQUEyQjtRQUNoQywwQkFBMEIsRUFBRSxrREFBa0Q7S0FDL0UsQ0FBQztDQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgeyBWMU5ldHdvcmsgfSBmcm9tICcuL3R5cGVzJztcblxuaW50ZXJmYWNlIEVudmlyb25tZW50VGVtcGxhdGUge1xuICB1cmk/OiBzdHJpbmc7XG4gIG5ldHdvcms6IFYxTmV0d29yaztcbiAgc2lnbmluZ0FkZHJlc3M6IHN0cmluZztcbiAgc2VydmVyWHB1Yjogc3RyaW5nO1xuICBoc21YcHViOiBzdHJpbmc7XG4gIGJ0Y0V4cGxvcmVyQmFzZVVybDogc3RyaW5nO1xuICBldGhlcnNjYW5CYXNlVXJsOiBzdHJpbmc7XG4gIGV0aGVyc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICBzbm93dHJhY2VCYXNlVXJsOiBzdHJpbmc7XG4gIHNub3d0cmFjZUFwaVRva2VuPzogc3RyaW5nO1xuICBldGgyRXhwbG9yZXJCYXNlVXJsOiBzdHJpbmc7XG4gIGV0aHdGdWxsTm9kZVJQQ0Jhc2VVcmw6IHN0cmluZztcbiAgcG9seWdvbnNjYW5CYXNlVXJsPzogc3RyaW5nO1xuICBwb2x5Z29uc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybD86IHN0cmluZztcbiAgZW9zTm9kZVVybHM6IHN0cmluZ1tdO1xuICBuZWFyTm9kZVVybHM6IHN0cmluZ1tdO1xuICBzb2xOb2RlVXJsOiBzdHJpbmc7XG4gIGFkYU5vZGVVcmw6IHN0cmluZztcbiAgZG90Tm9kZVVybHM6IHN0cmluZ1tdO1xuICB0cm9uTm9kZXM6IHtcbiAgICBmdWxsOiBzdHJpbmc7XG4gICAgc29saWRpdHk6IHN0cmluZztcbiAgfTtcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVudmlyb25tZW50IGV4dGVuZHMgRW52aXJvbm1lbnRUZW1wbGF0ZSB7XG4gIHVyaTogc3RyaW5nO1xuICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgaGFyZGNvZGVkUHVibGljS2V5cyA9IE9iamVjdC5mcmVlemUoe1xuICBzZXJ2ZXJYcHViOiB7XG4gICAgcHJvZDogJ3hwdWI2NjFNeU13QXFSYmNFdFVndTlIRjhhaTRpcHVWS0tIQnpVcWtzNGpTRnlwVzhkd3dRTDF6eWdMZ1F4OTlObUM3ekpKem5TaXdLRzZSUWZWakFLTXRDc3g4VmpSNmtRVzh4N0hya1hGWmRuUScsXG4gICAgdGVzdDogJ3hwdWI2NjFNeU13QXFSYmNFckZxVlhHaVVGdjlZZW9QYmhONzJVaU5DVWRqOW5qM1Q2TThoN2lLTm1iQ1lwTVZXVlpQN0xBMm1hM0hXY1BuZ3oxZ1JUbTRGUGR0bTltSGZyTnZVOTNNQ29zenNHTCcsXG4gIH0sXG4gIGhzbVhwdWI6IHtcbiAgICBwcm9kOiAneHB1YjY2MU15TXdBcVJiY0dFdFRGZ01Bb3hNRm9xc1JkRGFpYVI2M2J5TmZaZFY3Y0JaRnZvdlFTTko1YnB5ZW9RdHVLVmdYQms2c0ZRN1R0dnlXcWFkdDQxRG5Ld3ZlWWdNNUtvVTJFS1lqZFkyJyxcbiAgICB0ZXN0OiAneHB1YjY2MU15TXdBcVJiY0dGS2U0QnF2azRTZ3JpYzRnTkZDOHBVYnc0dFVrVmpaeHViakNBNTIyZ1B6YzFZYVhiM2JRVm1EV2M3Q2pHOEFHTldScGNkQVUzOFJFVEJoOG4yYm5xRVU0a2JWNG9LJyxcbiAgICBkZXY6ICd4cHViNjYxTXlNd0FxUmJjRld6b3o4cW5ZUkRZRUZRcFBMWXd4VkZvRzZXTHkzY2s1WnVwUkdKVEc0anU2eUdiN0RqM2V5NkdzQzRrc3RMUkVSMm5LemdqTHRteHlQZ0M0ekh5N2tWaFV0NnlmR24nLFxuICB9LFxufSk7XG5cbmV4cG9ydCB0eXBlIEVudmlyb25tZW50TmFtZSA9XG4gIHwgJ3Byb2QnXG4gIHwgJ3N0YWdpbmcnXG4gIHwgJ3Rlc3QnXG4gIHwgJ2RldidcbiAgfCAnbGF0ZXN0J1xuICB8ICdsb2NhbCdcbiAgfCAnbG9jYWxOb25TZWN1cmUnXG4gIHwgJ21vY2snXG4gIHwgJ2FkbWluUHJvZCdcbiAgfCAnYWRtaW5UZXN0J1xuICB8ICdhZG1pbkRldidcbiAgfCAnYWRtaW5MYXRlc3QnXG4gIHwgJ2N1c3RvbSdcbiAgfCAnYnJhbmNoJztcblxuZXhwb3J0IHR5cGUgQWxpYXNFbnZpcm9ubWVudE5hbWUgPSAncHJvZHVjdGlvbicgfCAnbXNQcm9kJyB8ICdtc1Rlc3QnIHwgJ21zRGV2JyB8ICdtc0xhdGVzdCc7XG5cbmV4cG9ydCB0eXBlIEVudmlyb25tZW50cyA9IHsgW2sgaW4gRW52aXJvbm1lbnROYW1lXTogRW52aXJvbm1lbnQgfTtcblxuLy8gYWxpYXMgZW52aXJvbm1lbnRzIGFyZSBlbnZpcm9ubWVudCBuYW1lcyB3aGljaCBhcmUgYWxpYXNlcyBvZiBhIHN1cHBvcnRlZCBlbnZpcm9ubWVudFxuZXhwb3J0IGNvbnN0IEFsaWFzRW52aXJvbm1lbnRzOiB7IFtrIGluIEFsaWFzRW52aXJvbm1lbnROYW1lXTogRW52aXJvbm1lbnROYW1lIH0gPSB7XG4gIHByb2R1Y3Rpb246ICdwcm9kJyxcbiAgbXNQcm9kOiAncHJvZCcsXG4gIG1zVGVzdDogJ3Rlc3QnLFxuICBtc0RldjogJ2RldicsXG4gIG1zTGF0ZXN0OiAnbGF0ZXN0Jyxcbn07XG5cbmNvbnN0IG1haW5uZXRCYXNlOiBFbnZpcm9ubWVudFRlbXBsYXRlID0ge1xuICBuZXR3b3JrOiAnYml0Y29pbicgYXMgVjFOZXR3b3JrLFxuICBzaWduaW5nQWRkcmVzczogJzFCaXRHbzNneFJaNm1RU0VINTJkdkNLU1VnVkNBSDRSamEnLFxuICBzZXJ2ZXJYcHViOiBoYXJkY29kZWRQdWJsaWNLZXlzLnNlcnZlclhwdWIucHJvZCxcbiAgaHNtWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLnByb2QsXG4gIGJ0Y0V4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby9hcGknLFxuICBldGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvJyxcbiAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gIHNub3d0cmFjZUJhc2VVcmw6ICdodHRwczovL2FwaS5zbm93dHJhY2UuaW8nLFxuICBzbm93dHJhY2VBcGlUb2tlbjogcHJvY2Vzcy5lbnYuU05PV1RSQUNFX0FQSV9UT0tFTixcbiAgZXRoMkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmVhY29uc2Nhbi5jb20vYXBpJyxcbiAgZXRod0Z1bGxOb2RlUlBDQmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5ldGhlcmV1bXBvdy5vcmcnLFxuICBwb2x5Z29uc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS5wb2x5Z29uc2Nhbi5jb20nLFxuICBwb2x5Z29uc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5QT0xZR09OU0NBTl9BUElfVE9LRU4sXG4gIGVvc05vZGVVcmxzOiBbJ2h0dHBzOi8vYnAuY3J5cHRvbGlvbnMuaW8nLCAnaHR0cHM6Ly9hcGkuZW9zbmV3eW9yay5pbycsICdodHRwczovL2FwaS5lb3NkZXRyb2l0LmlvJ10sXG4gIG5lYXJOb2RlVXJsczogWydodHRwczovL3JwYy5tYWlubmV0Lm5lYXIub3JnJ10sXG4gIHNvbE5vZGVVcmw6ICdodHRwczovL2FwaS5tYWlubmV0LWJldGEuc29sYW5hLmNvbScsXG4gIGFkYU5vZGVVcmw6ICdodHRwczovL2FwaS5rb2lvcy5yZXN0L2FwaS92MCcsXG4gIGRvdE5vZGVVcmxzOiBbJ3dzczovL3JwYy5wb2xrYWRvdC5pbyddLFxuICB0cm9uTm9kZXM6IHtcbiAgICBmdWxsOiAnaHR0cHM6Ly9hcGkudHJvbmdyaWQuaW8nLFxuICAgIHNvbGlkaXR5OiAnaHR0cHM6Ly9hcGkudHJvbmdyaWQuaW8nLFxuICB9LFxuICBobWFjVmVyaWZpY2F0aW9uRW5mb3JjZWQ6IHRydWUsXG59O1xuXG5jb25zdCB0ZXN0bmV0QmFzZTogRW52aXJvbm1lbnRUZW1wbGF0ZSA9IHtcbiAgbmV0d29yazogJ3Rlc3RuZXQnIGFzIFYxTmV0d29yayxcbiAgc2lnbmluZ0FkZHJlc3M6ICdtc2lnbkJkRlh0ZWVoREVnQjZETm03bnBSdDdBY0VaSlAzJyxcbiAgc2VydmVyWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnRlc3QsXG4gIGhzbVhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi50ZXN0LFxuICBidGNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vdGVzdG5ldC9hcGknLFxuICBldGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGktZ29lcmxpLmV0aGVyc2Nhbi5pbycsXG4gIGV0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICBzbm93dHJhY2VCYXNlVXJsOiAnaHR0cHM6Ly9hcGktdGVzdG5ldC5zbm93dHJhY2UuaW8nLFxuICBzbm93dHJhY2VBcGlUb2tlbjogcHJvY2Vzcy5lbnYuU05PV1RSQUNFX0FQSV9UT0tFTixcbiAgZXRoMkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmVhY29uc2Nhbi5jb20vYXBpJyxcbiAgZXRod0Z1bGxOb2RlUlBDQmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5ldGhlcmV1bXBvdy5vcmcnLFxuICBwb2x5Z29uc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS10ZXN0bmV0LnBvbHlnb25zY2FuLmNvbScsXG4gIHBvbHlnb25zY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LlBPTFlHT05TQ0FOX0FQSV9UT0tFTixcbiAgLy8ga3lsaW4gZW9zIGVuZHBvaW50cyBmb3VuZCBoZXJlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9jcnlwdG9reWxpbi9DcnlwdG9LeWxpbi1UZXN0bmV0I2h0dHAtYXBpLWxpc3RcbiAgLy8gaHR0cHM6Ly9kb2NzLmxpcXVpZGFwcHMuaW8vbGlxdWlkYXBwcy1kb2N1bWVudGF0aW9uL2Vvc2lvLWd1aWRlcy90ZXN0bmV0LWNyZWF0aW9uLWd1aWRlcy9jcmVhdGluZy1jcnlwdG9reWxpbi1hY2NvdW50I3NldHVwXG4gIGVvc05vZGVVcmxzOiBbJ2h0dHBzOi8va3lsaW4uZW9zbi5pbycsICdodHRwczovL2FwaS5reWxpbi5hbG9oYWVvcy5jb20nXSxcbiAgbmVhck5vZGVVcmxzOiBbJ2h0dHBzOi8vcnBjLnRlc3RuZXQubmVhci5vcmcnXSxcbiAgc29sTm9kZVVybDogJ2h0dHBzOi8vYXBpLmRldm5ldC5zb2xhbmEuY29tJyxcbiAgYWRhTm9kZVVybDogJ2h0dHBzOi8vdGVzdG5ldC5rb2lvcy5yZXN0L2FwaS92MCcsXG4gIGRvdE5vZGVVcmxzOiBbJ3dzczovL3dlc3RlbmQtcnBjLnBvbGthZG90LmlvJ10sXG4gIHRyb25Ob2Rlczoge1xuICAgIGZ1bGw6ICdodHRwOi8vNDcuMjUyLjgxLjEzNTo4MDkwJyxcbiAgICBzb2xpZGl0eTogJ2h0dHA6Ly80Ny4yNTIuODEuMTM1OjgwOTEnLFxuICB9LFxuICBobWFjVmVyaWZpY2F0aW9uRW5mb3JjZWQ6IHRydWUsXG59O1xuXG5jb25zdCBkZXZCYXNlOiBFbnZpcm9ubWVudFRlbXBsYXRlID0gT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgaHNtWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLmRldixcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiBmYWxzZSxcbn0pO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVkZWNsYXJlXG5leHBvcnQgY29uc3QgRW52aXJvbm1lbnRzOiBFbnZpcm9ubWVudHMgPSB7XG4gIHByb2Q6IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hcHAuYml0Z28uY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLmNvbS9hcGkvdjIveGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby10ZXN0LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FwcC5iaXRnby10ZXN0LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGRldjogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tZGV2LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGxhdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWxhdGVzdC5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tbGF0ZXN0LmNvbS9hcGkvdjIveGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgc3RhZ2luZzogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby1zdGFnaW5nLmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FwcC5iaXRnby1zdGFnaW5nLmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGxvY2FsOiBPYmplY3QuYXNzaWduKHt9LCBkZXZCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9sb2NhbGhvc3Q6MzAwMCcsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2xvY2FsaG9zdDozMDAwL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgbG9jYWxOb25TZWN1cmU6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwOi8vbG9jYWxob3N0OjMwMDAnLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cDovL2xvY2FsaG9zdDozMDAwL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgbW9jazogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYml0Z28uZmFrZXVybCcsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2JpdGdvLmZha2V1cmwvYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gICAgZXRoZXJzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLWdvZXJsaS5ldGhlcnNjYW4uZmFrZXVybCcsXG4gICAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gICAgc25vd3RyYWNlQXBpVG9rZW46IHByb2Nlc3MuZW52LlNOT1dUUkFDRV9BUElfVE9LRU4sXG4gICAgc25vd3RyYWNlQmFzZVVybDogJ2h0dHBzOi8vYXBpLXRlc3RuZXQuc25vd3RyYWNlLmZha2V1cmwnLFxuICAgIGV0aDJFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2JlYWNvbnNjYW4uY29tL2FwaScsXG4gIH0pLFxuICBhZG1pblByb2Q6IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGFkbWluVGVzdDogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FkbWluLmJpdGdvLXRlc3QuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYWRtaW4uYml0Z28tdGVzdC5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pbkRldjogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28tZGV2LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLWRldi5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pbkxhdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28tbGF0ZXN0LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLWxhdGVzdC5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGN1c3RvbTogT2JqZWN0LmFzc2lnbih7fSwgbWFpbm5ldEJhc2UsIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgIHVyaTogcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX1JPT1RfVVJJISxcbiAgICBuZXR3b3JrOiBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fQklUQ09JTl9ORVRXT1JLIGFzIFYxTmV0d29yayxcbiAgICBoc21YcHViOlxuICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdwcm9kdWN0aW9uJyA/IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi5wcm9kIDogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLnRlc3QsXG4gICAgYnRjRXhwbG9yZXJCYXNlVXJsOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyAhPT0gJ2JpdGNvaW4nXG4gICAgICAgID8gJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby90ZXN0bmV0L2FwaSdcbiAgICAgICAgOiAnaHR0cHM6Ly9ibG9ja3N0cmVhbS5pbmZvL2FwaScsXG4gICAgZXRoZXJzY2FuQmFzZVVybDpcbiAgICAgIHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9FVEhFUkVVTV9ORVRXT1JLICE9PSAnZXRoZXJldW0nXG4gICAgICAgID8gJ2h0dHBzOi8vYXBpLWdvZXJsaS5ldGhlcnNjYW4uaW8nXG4gICAgICAgIDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pbycsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6XG4gICAgICBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fU1RFTExBUl9ORVRXT1JLICE9PSAnc3RlbGxhcidcbiAgICAgICAgPyBgaHR0cHM6Ly8ke3Byb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSX0vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbmBcbiAgICAgICAgOiBgaHR0cHM6Ly8ke3Byb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSX0vYXBpL3YyL3hsbS9mZWRlcmF0aW9uYCxcbiAgICBzZXJ2ZXJYcHViOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyAhPT0gJ2JpdGNvaW4nXG4gICAgICAgID8gaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnRlc3RcbiAgICAgICAgOiBoYXJkY29kZWRQdWJsaWNLZXlzLnNlcnZlclhwdWIucHJvZCxcbiAgfSksXG4gIGJyYW5jaDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tZGV2LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG59O1xuIl19
@@ -61,10 +61,11 @@ export interface AddKeychainOptions {
61
61
  backupGPGPublicKey?: string;
62
62
  }
63
63
  export interface ApiKeyShare {
64
- from: string;
65
- to: string;
64
+ from: 'user' | 'backup' | 'bitgo';
65
+ to: 'user' | 'backup' | 'bitgo';
66
66
  publicShare: string;
67
67
  privateShare: string;
68
+ privateShareProof?: string;
68
69
  n?: string;
69
70
  }
70
71
  export interface CreateBackupOptions {
@@ -91,6 +92,7 @@ export interface CreateMpcOptions {
91
92
  passphrase?: string;
92
93
  originalPasscodeEncryptionCode?: string;
93
94
  enterprise?: string;
95
+ backupProvider?: string;
94
96
  }
95
97
  export interface GetKeysForSigningOptions {
96
98
  reqId?: IRequestTracer;
@@ -1 +1 @@
1
- {"version":3,"file":"iKeychains.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/keychain/iKeychains.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,oBAAY,OAAO,GAAG,KAAK,GAAG,aAAa,GAAG,QAAQ,CAAC;AAEvD,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB,CAAC,EAAE,GAAG,CAAC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,SAAS,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,oBAAY,UAAU;IACpB,IAAI,IAAI;IACR,MAAM,IAAI;IACV,KAAK,IAAI;CACV;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjE,cAAc,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACzE,4BAA4B,CAAC,MAAM,CAAC,EAAE,mCAAmC,GAAG,QAAQ,CAAC;IACrF,MAAM,CAAC,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;IAC5C,GAAG,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpD,WAAW,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5D,YAAY,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9D,iBAAiB,CAAC,MAAM,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1E,SAAS,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAChE"}
1
+ {"version":3,"file":"iKeychains.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/keychain/iKeychains.ts"],"names":[],"mappings":"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"}
@@ -7,4 +7,4 @@ var KeyIndices;
7
7
  KeyIndices[KeyIndices["BACKUP"] = 1] = "BACKUP";
8
8
  KeyIndices[KeyIndices["BITGO"] = 2] = "BITGO";
9
9
  })(KeyIndices = exports.KeyIndices || (exports.KeyIndices = {}));
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaUtleWNoYWlucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9rZXljaGFpbi9pS2V5Y2hhaW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWdIQSxJQUFZLFVBSVg7QUFKRCxXQUFZLFVBQVU7SUFDcEIsMkNBQVEsQ0FBQTtJQUNSLCtDQUFVLENBQUE7SUFDViw2Q0FBUyxDQUFBO0FBQ1gsQ0FBQyxFQUpXLFVBQVUsR0FBVixrQkFBVSxLQUFWLGtCQUFVLFFBSXJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlcXVlc3RUcmFjZXIgfSBmcm9tICcuLi8uLi9hcGknO1xuaW1wb3J0IHsgS2V5UGFpciwgS2V5Y2hhaW5zVHJpcGxldCB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IElXYWxsZXQgfSBmcm9tICcuLi93YWxsZXQnO1xuXG5leHBvcnQgdHlwZSBLZXlUeXBlID0gJ3RzcycgfCAnaW5kZXBlbmRlbnQnIHwgJ2Jsc2RrZyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5Y2hhaW4ge1xuICBpZDogc3RyaW5nO1xuICBwdWI6IHN0cmluZztcbiAgcHJ2Pzogc3RyaW5nO1xuICBwcm92aWRlcj86IHN0cmluZztcbiAgZW5jcnlwdGVkUHJ2Pzogc3RyaW5nO1xuICBkZXJpdmF0aW9uUGF0aD86IHN0cmluZztcbiAgZGVyaXZlZEZyb21QYXJlbnRXaXRoU2VlZD86IHN0cmluZztcbiAgY29tbW9uUHViPzogc3RyaW5nO1xuICBjb21tb25LZXljaGFpbj86IHN0cmluZztcbiAga2V5U2hhcmVzPzogQXBpS2V5U2hhcmVbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGFuZ2VkS2V5Y2hhaW5zIHtcbiAgW3B1YmtleTogc3RyaW5nXTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RLZXljaGFpbnNSZXN1bHQge1xuICBrZXlzOiBLZXljaGFpbltdO1xuICBuZXh0QmF0Y2hQcmV2SWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0S2V5Y2hhaW5PcHRpb25zIHtcbiAgaWQ6IHN0cmluZztcbiAgeHB1Yj86IHN0cmluZztcbiAgZXRoQWRkcmVzcz86IHN0cmluZztcbiAgcmVxSWQ/OiBJUmVxdWVzdFRyYWNlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0S2V5Y2hhaW5PcHRpb25zIHtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHByZXZJZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVQYXNzd29yZE9wdGlvbnMge1xuICBvbGRQYXNzd29yZDogc3RyaW5nO1xuICBuZXdQYXNzd29yZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVNpbmdsZUtleWNoYWluUGFzc3dvcmRPcHRpb25zIHtcbiAga2V5Y2hhaW4/OiBLZXljaGFpbjtcbiAgb2xkUGFzc3dvcmQ/OiBzdHJpbmc7XG4gIG5ld1Bhc3N3b3JkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZEtleWNoYWluT3B0aW9ucyB7XG4gIHB1Yj86IHN0cmluZztcbiAgY29tbW9uUHViPzogc3RyaW5nO1xuICBjb21tb25LZXljaGFpbj86IHN0cmluZztcbiAgZW5jcnlwdGVkUHJ2Pzogc3RyaW5nO1xuICB0eXBlPzogc3RyaW5nO1xuICBrZXlUeXBlPzogS2V5VHlwZTtcbiAgc291cmNlPzogc3RyaW5nO1xuICBvcmlnaW5hbFBhc3Njb2RlRW5jcnlwdGlvbkNvZGU/OiBzdHJpbmc7XG4gIGVudGVycHJpc2U/OiBzdHJpbmc7XG4gIGRlcml2ZWRGcm9tUGFyZW50V2l0aFNlZWQ/OiBhbnk7XG4gIGRpc2FibGVLUlNFbWFpbD86IGJvb2xlYW47XG4gIHByb3ZpZGVyPzogc3RyaW5nO1xuICByZXFJZD86IElSZXF1ZXN0VHJhY2VyO1xuICBrcnNTcGVjaWZpYz86IGFueTtcbiAga2V5U2hhcmVzPzogQXBpS2V5U2hhcmVbXTtcbiAgdXNlckdQR1B1YmxpY0tleT86IHN0cmluZztcbiAgYmFja3VwR1BHUHVibGljS2V5Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUtleVNoYXJlIHtcbiAgZnJvbTogc3RyaW5nO1xuICB0bzogc3RyaW5nO1xuICBwdWJsaWNTaGFyZTogc3RyaW5nO1xuICBwcml2YXRlU2hhcmU6IHN0cmluZztcbiAgbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVCYWNrdXBPcHRpb25zIHtcbiAgcHJvdmlkZXI/OiBzdHJpbmc7XG4gIHNvdXJjZT86IHN0cmluZztcbiAgZGlzYWJsZUtSU0VtYWlsPzogYm9vbGVhbjtcbiAga3JzU3BlY2lmaWM/OiBhbnk7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGtleVR5cGU/OiBLZXlUeXBlO1xuICByZXFJZD86IElSZXF1ZXN0VHJhY2VyO1xuICBjb21tb25QdWI/OiBzdHJpbmc7XG4gIGNvbW1vbktleWNoYWluPzogc3RyaW5nO1xuICBwcnY/OiBzdHJpbmc7XG4gIGVuY3J5cHRlZFBydj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVCaXRHb09wdGlvbnMge1xuICBzb3VyY2U/OiAnYml0Z28nO1xuICBlbnRlcnByaXNlPzogc3RyaW5nO1xuICByZXFJZD86IElSZXF1ZXN0VHJhY2VyO1xuICBrZXlUeXBlPzogS2V5VHlwZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVNcGNPcHRpb25zIHtcbiAgbXVsdGlzaWdUeXBlOiAnb25jaGFpbicgfCAndHNzJyB8ICdibHNka2cnO1xuICBwYXNzcGhyYXNlPzogc3RyaW5nO1xuICBvcmlnaW5hbFBhc3Njb2RlRW5jcnlwdGlvbkNvZGU/OiBzdHJpbmc7XG4gIGVudGVycHJpc2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0S2V5c0ZvclNpZ25pbmdPcHRpb25zIHtcbiAgcmVxSWQ/OiBJUmVxdWVzdFRyYWNlcjtcbiAgd2FsbGV0PzogSVdhbGxldDtcbn1cblxuZXhwb3J0IGVudW0gS2V5SW5kaWNlcyB7XG4gIFVTRVIgPSAwLFxuICBCQUNLVVAgPSAxLFxuICBCSVRHTyA9IDIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUtleWNoYWlucyB7XG4gIGdldChwYXJhbXM6IEdldEtleWNoYWluT3B0aW9ucyk6IFByb21pc2U8S2V5Y2hhaW4+O1xuICBsaXN0KHBhcmFtcz86IExpc3RLZXljaGFpbk9wdGlvbnMpOiBQcm9taXNlPExpc3RLZXljaGFpbnNSZXN1bHQ+O1xuICB1cGRhdGVQYXNzd29yZChwYXJhbXM6IFVwZGF0ZVBhc3N3b3JkT3B0aW9ucyk6IFByb21pc2U8Q2hhbmdlZEtleWNoYWlucz47XG4gIHVwZGF0ZVNpbmdsZUtleWNoYWluUGFzc3dvcmQocGFyYW1zPzogVXBkYXRlU2luZ2xlS2V5Y2hhaW5QYXNzd29yZE9wdGlvbnMpOiBLZXljaGFpbjtcbiAgY3JlYXRlKHBhcmFtcz86IHsgc2VlZD86IEJ1ZmZlciB9KTogS2V5UGFpcjtcbiAgYWRkKHBhcmFtcz86IEFkZEtleWNoYWluT3B0aW9ucyk6IFByb21pc2U8S2V5Y2hhaW4+O1xuICBjcmVhdGVCaXRHbyhwYXJhbXM/OiBDcmVhdGVCaXRHb09wdGlvbnMpOiBQcm9taXNlPEtleWNoYWluPjtcbiAgY3JlYXRlQmFja3VwKHBhcmFtcz86IENyZWF0ZUJhY2t1cE9wdGlvbnMpOiBQcm9taXNlPEtleWNoYWluPjtcbiAgZ2V0S2V5c0ZvclNpZ25pbmcocGFyYW1zPzogR2V0S2V5c0ZvclNpZ25pbmdPcHRpb25zKTogUHJvbWlzZTxLZXljaGFpbltdPjtcbiAgY3JlYXRlTXBjKHBhcmFtczogQ3JlYXRlTXBjT3B0aW9ucyk6IFByb21pc2U8S2V5Y2hhaW5zVHJpcGxldD47XG59XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaUtleWNoYWlucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9rZXljaGFpbi9pS2V5Y2hhaW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWtIQSxJQUFZLFVBSVg7QUFKRCxXQUFZLFVBQVU7SUFDcEIsMkNBQVEsQ0FBQTtJQUNSLCtDQUFVLENBQUE7SUFDViw2Q0FBUyxDQUFBO0FBQ1gsQ0FBQyxFQUpXLFVBQVUsR0FBVixrQkFBVSxLQUFWLGtCQUFVLFFBSXJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlcXVlc3RUcmFjZXIgfSBmcm9tICcuLi8uLi9hcGknO1xuaW1wb3J0IHsgS2V5UGFpciwgS2V5Y2hhaW5zVHJpcGxldCB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IElXYWxsZXQgfSBmcm9tICcuLi93YWxsZXQnO1xuXG5leHBvcnQgdHlwZSBLZXlUeXBlID0gJ3RzcycgfCAnaW5kZXBlbmRlbnQnIHwgJ2Jsc2RrZyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5Y2hhaW4ge1xuICBpZDogc3RyaW5nO1xuICBwdWI6IHN0cmluZztcbiAgcHJ2Pzogc3RyaW5nO1xuICBwcm92aWRlcj86IHN0cmluZztcbiAgZW5jcnlwdGVkUHJ2Pzogc3RyaW5nO1xuICBkZXJpdmF0aW9uUGF0aD86IHN0cmluZztcbiAgZGVyaXZlZEZyb21QYXJlbnRXaXRoU2VlZD86IHN0cmluZztcbiAgY29tbW9uUHViPzogc3RyaW5nO1xuICBjb21tb25LZXljaGFpbj86IHN0cmluZztcbiAga2V5U2hhcmVzPzogQXBpS2V5U2hhcmVbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGFuZ2VkS2V5Y2hhaW5zIHtcbiAgW3B1YmtleTogc3RyaW5nXTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RLZXljaGFpbnNSZXN1bHQge1xuICBrZXlzOiBLZXljaGFpbltdO1xuICBuZXh0QmF0Y2hQcmV2SWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0S2V5Y2hhaW5PcHRpb25zIHtcbiAgaWQ6IHN0cmluZztcbiAgeHB1Yj86IHN0cmluZztcbiAgZXRoQWRkcmVzcz86IHN0cmluZztcbiAgcmVxSWQ/OiBJUmVxdWVzdFRyYWNlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0S2V5Y2hhaW5PcHRpb25zIHtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHByZXZJZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVQYXNzd29yZE9wdGlvbnMge1xuICBvbGRQYXNzd29yZDogc3RyaW5nO1xuICBuZXdQYXNzd29yZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVNpbmdsZUtleWNoYWluUGFzc3dvcmRPcHRpb25zIHtcbiAga2V5Y2hhaW4/OiBLZXljaGFpbjtcbiAgb2xkUGFzc3dvcmQ/OiBzdHJpbmc7XG4gIG5ld1Bhc3N3b3JkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZEtleWNoYWluT3B0aW9ucyB7XG4gIHB1Yj86IHN0cmluZztcbiAgY29tbW9uUHViPzogc3RyaW5nO1xuICBjb21tb25LZXljaGFpbj86IHN0cmluZztcbiAgZW5jcnlwdGVkUHJ2Pzogc3RyaW5nO1xuICB0eXBlPzogc3RyaW5nO1xuICBrZXlUeXBlPzogS2V5VHlwZTtcbiAgc291cmNlPzogc3RyaW5nO1xuICBvcmlnaW5hbFBhc3Njb2RlRW5jcnlwdGlvbkNvZGU/OiBzdHJpbmc7XG4gIGVudGVycHJpc2U/OiBzdHJpbmc7XG4gIGRlcml2ZWRGcm9tUGFyZW50V2l0aFNlZWQ/OiBhbnk7XG4gIGRpc2FibGVLUlNFbWFpbD86IGJvb2xlYW47XG4gIHByb3ZpZGVyPzogc3RyaW5nO1xuICByZXFJZD86IElSZXF1ZXN0VHJhY2VyO1xuICBrcnNTcGVjaWZpYz86IGFueTtcbiAga2V5U2hhcmVzPzogQXBpS2V5U2hhcmVbXTtcbiAgdXNlckdQR1B1YmxpY0tleT86IHN0cmluZztcbiAgYmFja3VwR1BHUHVibGljS2V5Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUtleVNoYXJlIHtcbiAgZnJvbTogJ3VzZXInIHwgJ2JhY2t1cCcgfCAnYml0Z28nO1xuICB0bzogJ3VzZXInIHwgJ2JhY2t1cCcgfCAnYml0Z28nO1xuICBwdWJsaWNTaGFyZTogc3RyaW5nO1xuICBwcml2YXRlU2hhcmU6IHN0cmluZztcbiAgcHJpdmF0ZVNoYXJlUHJvb2Y/OiBzdHJpbmc7XG4gIG4/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQmFja3VwT3B0aW9ucyB7XG4gIHByb3ZpZGVyPzogc3RyaW5nO1xuICBzb3VyY2U/OiBzdHJpbmc7XG4gIGRpc2FibGVLUlNFbWFpbD86IGJvb2xlYW47XG4gIGtyc1NwZWNpZmljPzogYW55O1xuICB0eXBlPzogc3RyaW5nO1xuICBrZXlUeXBlPzogS2V5VHlwZTtcbiAgcmVxSWQ/OiBJUmVxdWVzdFRyYWNlcjtcbiAgY29tbW9uUHViPzogc3RyaW5nO1xuICBjb21tb25LZXljaGFpbj86IHN0cmluZztcbiAgcHJ2Pzogc3RyaW5nO1xuICBlbmNyeXB0ZWRQcnY/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQml0R29PcHRpb25zIHtcbiAgc291cmNlPzogJ2JpdGdvJztcbiAgZW50ZXJwcmlzZT86IHN0cmluZztcbiAgcmVxSWQ/OiBJUmVxdWVzdFRyYWNlcjtcbiAga2V5VHlwZT86IEtleVR5cGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlTXBjT3B0aW9ucyB7XG4gIG11bHRpc2lnVHlwZTogJ29uY2hhaW4nIHwgJ3RzcycgfCAnYmxzZGtnJztcbiAgcGFzc3BocmFzZT86IHN0cmluZztcbiAgb3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlPzogc3RyaW5nO1xuICBlbnRlcnByaXNlPzogc3RyaW5nO1xuICBiYWNrdXBQcm92aWRlcj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRLZXlzRm9yU2lnbmluZ09wdGlvbnMge1xuICByZXFJZD86IElSZXF1ZXN0VHJhY2VyO1xuICB3YWxsZXQ/OiBJV2FsbGV0O1xufVxuXG5leHBvcnQgZW51bSBLZXlJbmRpY2VzIHtcbiAgVVNFUiA9IDAsXG4gIEJBQ0tVUCA9IDEsXG4gIEJJVEdPID0gMixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJS2V5Y2hhaW5zIHtcbiAgZ2V0KHBhcmFtczogR2V0S2V5Y2hhaW5PcHRpb25zKTogUHJvbWlzZTxLZXljaGFpbj47XG4gIGxpc3QocGFyYW1zPzogTGlzdEtleWNoYWluT3B0aW9ucyk6IFByb21pc2U8TGlzdEtleWNoYWluc1Jlc3VsdD47XG4gIHVwZGF0ZVBhc3N3b3JkKHBhcmFtczogVXBkYXRlUGFzc3dvcmRPcHRpb25zKTogUHJvbWlzZTxDaGFuZ2VkS2V5Y2hhaW5zPjtcbiAgdXBkYXRlU2luZ2xlS2V5Y2hhaW5QYXNzd29yZChwYXJhbXM/OiBVcGRhdGVTaW5nbGVLZXljaGFpblBhc3N3b3JkT3B0aW9ucyk6IEtleWNoYWluO1xuICBjcmVhdGUocGFyYW1zPzogeyBzZWVkPzogQnVmZmVyIH0pOiBLZXlQYWlyO1xuICBhZGQocGFyYW1zPzogQWRkS2V5Y2hhaW5PcHRpb25zKTogUHJvbWlzZTxLZXljaGFpbj47XG4gIGNyZWF0ZUJpdEdvKHBhcmFtcz86IENyZWF0ZUJpdEdvT3B0aW9ucyk6IFByb21pc2U8S2V5Y2hhaW4+O1xuICBjcmVhdGVCYWNrdXAocGFyYW1zPzogQ3JlYXRlQmFja3VwT3B0aW9ucyk6IFByb21pc2U8S2V5Y2hhaW4+O1xuICBnZXRLZXlzRm9yU2lnbmluZyhwYXJhbXM/OiBHZXRLZXlzRm9yU2lnbmluZ09wdGlvbnMpOiBQcm9taXNlPEtleWNoYWluW10+O1xuICBjcmVhdGVNcGMocGFyYW1zOiBDcmVhdGVNcGNPcHRpb25zKTogUHJvbWlzZTxLZXljaGFpbnNUcmlwbGV0Pjtcbn1cbiJdfQ==
@@ -273,8 +273,9 @@ class Keychains {
273
273
  passphrase: params.passphrase,
274
274
  enterprise: params.enterprise,
275
275
  originalPasscodeEncryptionCode: params.originalPasscodeEncryptionCode,
276
+ backupProvider: params.backupProvider,
276
277
  });
277
278
  }
278
279
  }
279
280
  exports.Keychains = Keychains;
280
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2hhaW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL2tleWNoYWluL2tleWNoYWlucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMENBQTRCO0FBQzVCLHFEQUF1QztBQUd2QyxvQ0FBMkU7QUFpQjNFLE1BQWEsU0FBUztJQUlwQixZQUFZLEtBQWdCLEVBQUUsUUFBbUI7UUFDL0MsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQTBCO1FBQ2xDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBRTFELElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDNUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1NBQ3ZDO1FBRUQsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNyQixJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUU7WUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDM0M7UUFDRCxPQUFPLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxHQUFHLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM1RixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUE4QixFQUFFO1FBQ3pDLE1B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TUFBTTtZQUNSLEtBQUssUUFBUTtnQkFDWCxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFO29CQUNwQyxNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7aUJBQ3REO2dCQUNELFFBQVEsR0FBRyxnQkFBUSxDQUFDO2dCQUNwQixNQUFNO1lBQ1I7Z0JBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1NBQ2pEO1FBRUQsTUFBTSxRQUFRLEdBQUcsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekQsT0FBTyxNQUFNLFFBQVEsQ0FBQyxlQUFlLENBQUM7WUFDcEMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVO1lBQzdCLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVTtZQUM3Qiw4QkFBOEIsRUFBRSxNQUFNLENBQUMsOEJBQThCO1NBQ3RFLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQXpSRCw4QkF5UkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgKiBhcyBjb21tb24gZnJvbSAnLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IElCYXNlQ29pbiwgS2V5Y2hhaW5zVHJpcGxldCwgS2V5UGFpciB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQgeyBCbHNVdGlscywgUmVxdWVzdFRyYWNlciwgRUREU0FVdGlscywgRUNEU0FVdGlscyB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7XG4gIEFkZEtleWNoYWluT3B0aW9ucyxcbiAgQ2hhbmdlZEtleWNoYWlucyxcbiAgQ3JlYXRlQmFja3VwT3B0aW9ucyxcbiAgQ3JlYXRlQml0R29PcHRpb25zLFxuICBDcmVhdGVNcGNPcHRpb25zLFxuICBHZXRLZXljaGFpbk9wdGlvbnMsXG4gIEdldEtleXNGb3JTaWduaW5nT3B0aW9ucyxcbiAgSUtleWNoYWlucyxcbiAgS2V5Y2hhaW4sXG4gIExpc3RLZXljaGFpbk9wdGlvbnMsXG4gIExpc3RLZXljaGFpbnNSZXN1bHQsXG4gIFVwZGF0ZVBhc3N3b3JkT3B0aW9ucyxcbiAgVXBkYXRlU2luZ2xlS2V5Y2hhaW5QYXNzd29yZE9wdGlvbnMsXG59IGZyb20gJy4vaUtleWNoYWlucyc7XG5cbmV4cG9ydCBjbGFzcyBLZXljaGFpbnMgaW1wbGVtZW50cyBJS2V5Y2hhaW5zIHtcbiAgcHJpdmF0ZSByZWFkb25seSBiaXRnbzogQml0R29CYXNlO1xuICBwcml2YXRlIHJlYWRvbmx5IGJhc2VDb2luOiBJQmFzZUNvaW47XG5cbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgYmFzZUNvaW46IElCYXNlQ29pbikge1xuICAgIHRoaXMuYml0Z28gPSBiaXRnbztcbiAgICB0aGlzLmJhc2VDb2luID0gYmFzZUNvaW47XG4gIH1cblxuICAvKipcbiAgICogR2V0IGEga2V5Y2hhaW4gYnkgSURcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKiBAcGFyYW0gcGFyYW1zLmlkXG4gICAqIEBwYXJhbSBwYXJhbXMueHB1YiAob3B0aW9uYWwpXG4gICAqIEBwYXJhbSBwYXJhbXMuZXRoQWRkcmVzcyAob3B0aW9uYWwpXG4gICAqIEBwYXJhbSBwYXJhbXMucmVxSWQgKG9wdGlvbmFsKVxuICAgKi9cbiAgYXN5bmMgZ2V0KHBhcmFtczogR2V0S2V5Y2hhaW5PcHRpb25zKTogUHJvbWlzZTxLZXljaGFpbj4ge1xuICAgIGNvbW1vbi52YWxpZGF0ZVBhcmFtcyhwYXJhbXMsIFtdLCBbJ3hwdWInLCAnZXRoQWRkcmVzcyddKTtcblxuICAgIGlmIChfLmlzVW5kZWZpbmVkKHBhcmFtcy5pZCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignaWQgbXVzdCBiZSBkZWZpbmVkJyk7XG4gICAgfVxuXG4gICAgY29uc3QgaWQgPSBwYXJhbXMuaWQ7XG4gICAgaWYgKHBhcmFtcy5yZXFJZCkge1xuICAgICAgdGhpcy5iaXRnby5zZXRSZXF1ZXN0VHJhY2VyKHBhcmFtcy5yZXFJZCk7XG4gICAgfVxuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvLmdldCh0aGlzLmJhc2VDb2luLnVybCgnL2tleS8nICsgZW5jb2RlVVJJQ29tcG9uZW50KGlkKSkpLnJlc3VsdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIGxpc3QgdGhlIHVzZXJzIGtleWNoYWluc1xuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqIEBwYXJhbSBwYXJhbXMubGltaXQgLSBNYXggbnVtYmVyIG9mIHJlc3VsdHMgaW4gYSBzaW5nbGUgY2FsbC5cbiAgICogQHBhcmFtIHBhcmFtcy5wcmV2SWQgLSBDb250aW51ZSBpdGVyYXRpbmcgKHByb3ZpZGVkIGJ5IG5leHRCYXRjaFByZXZJZCBpbiB0aGUgcHJldmlvdXMgbGlzdClcbiAgICogQHJldHVybnMgeyp9XG4gICAqL1xuICBhc3luYyBsaXN0KHBhcmFtczogTGlzdEtleWNoYWluT3B0aW9ucyA9IHt9KTogUHJvbWlzZTxMaXN0S2V5Y2hhaW5zUmVzdWx0PiB7XG4gICAgY29uc3QgcXVlcnlPYmplY3Q6IGFueSA9IHt9O1xuXG4gICAgaWYgKCFfLmlzVW5kZWZpbmVkKHBhcmFtcy5saW1pdCkpIHtcbiAgICAgIGlmICghXy5pc051bWJlcihwYXJhbXMubGltaXQpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBsaW1pdCBhcmd1bWVudCwgZXhwZWN0aW5nIG51bWJlcicpO1xuICAgICAgfVxuICAgICAgcXVlcnlPYmplY3QubGltaXQgPSBwYXJhbXMubGltaXQ7XG4gICAgfVxuICAgIGlmICghXy5pc1VuZGVmaW5lZChwYXJhbXMucHJldklkKSkge1xuICAgICAgaWYgKCFfLmlzU3RyaW5nKHBhcmFtcy5wcmV2SWQpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBwcmV2SWQgYXJndW1lbnQsIGV4cGVjdGluZyBzdHJpbmcnKTtcbiAgICAgIH1cbiAgICAgIHF1ZXJ5T2JqZWN0LnByZXZJZCA9IHBhcmFtcy5wcmV2SWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuYml0Z28uZ2V0KHRoaXMuYmFzZUNvaW4udXJsKCcva2V5JykpLnF1ZXJ5KHF1ZXJ5T2JqZWN0KS5yZXN1bHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdGhlIGRlY3J5cHRpb24gcGFzc3dvcmQgZm9yIGFsbCBwb3NzaWJsZSBrZXljaGFpbnMgYXNzb2NpYXRlZCB3aXRoIGEgdXNlci5cbiAgICpcbiAgICogVGhpcyBmdW5jdGlvbiBpdGVyYXRlcyB0aHJvdWdoIGFsbCBrZXlzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdXNlciwgZGVjcnlwdHNcbiAgICogdGhlbSB3aXRoIHRoZSBvbGQgcGFzc3dvcmQgYW5kIHJlLWVuY3J5cHRzIHRoZW0gd2l0aCB0aGUgbmV3IHBhc3N3b3JkLlxuICAgKlxuICAgKiBUaGlzIHNob3VsZCBiZSBjYWxsZWQgd2hlbiBhIHVzZXIgY2hhbmdlcyB0aGVpciBsb2dpbiBwYXNzd29yZCwgYW5kIGFyZSBleHBlY3RpbmdcbiAgICogdGhhdCB0aGVpciB3YWxsZXQgcGFzc3dvcmRzIGFyZSBjaGFuZ2VkIHRvIG1hdGNoIHRoZSBuZXcgbG9naW4gcGFzc3dvcmQuXG4gICAqXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICogQHBhcmFtIHBhcmFtcy5vbGRQYXNzd29yZCAtIFRoZSBvbGQgcGFzc3dvcmQgdXNlZCBmb3IgZW5jcnlwdGluZyB0aGUga2V5XG4gICAqIEBwYXJhbSBwYXJhbXMubmV3UGFzc3dvcmQgLSBUaGUgbmV3IHBhc3N3b3JkIHRvIGJlIHVzZWQgZm9yIGVuY3J5cHRpbmcgdGhlIGtleVxuICAgKiBAcmV0dXJucyBjaGFuZ2VkS2V5cyBPYmplY3QgLSBlLmcuOlxuICAgKiAge1xuICAgKiAgICB4cHViMTogZW5jcnlwdGVkUHJ2LFxuICAgKiAgICAuLi5cbiAgICogIH1cbiAgICovXG4gIGFzeW5jIHVwZGF0ZVBhc3N3b3JkKHBhcmFtczogVXBkYXRlUGFzc3dvcmRPcHRpb25zKTogUHJvbWlzZTxDaGFuZ2VkS2V5Y2hhaW5zPiB7XG4gICAgY29tbW9uLnZhbGlkYXRlUGFyYW1zKHBhcmFtcywgWydvbGRQYXNzd29yZCcsICduZXdQYXNzd29yZCddLCBbXSk7XG4gICAgY29uc3QgY2hhbmdlZEtleXM6IENoYW5nZWRLZXljaGFpbnMgPSB7fTtcbiAgICBsZXQgcHJldklkO1xuICAgIGxldCBrZXlzTGVmdCA9IHRydWU7XG4gICAgd2hpbGUgKGtleXNMZWZ0KSB7XG4gICAgICBjb25zdCByZXN1bHQ6IExpc3RLZXljaGFpbnNSZXN1bHQgPSBhd2FpdCB0aGlzLmxpc3QoeyBsaW1pdDogNTAwLCBwcmV2SWQgfSk7XG4gICAgICBmb3IgKGNvbnN0IGtleSBvZiByZXN1bHQua2V5cykge1xuICAgICAgICBjb25zdCBvbGRFbmNyeXB0ZWRQcnYgPSBrZXkuZW5jcnlwdGVkUHJ2O1xuICAgICAgICBpZiAoXy5pc1VuZGVmaW5lZChvbGRFbmNyeXB0ZWRQcnYpKSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCB1cGRhdGVkS2V5Y2hhaW4gPSB0aGlzLnVwZGF0ZVNpbmdsZUtleWNoYWluUGFzc3dvcmQoe1xuICAgICAgICAgICAga2V5Y2hhaW46IGtleSxcbiAgICAgICAgICAgIG9sZFBhc3N3b3JkOiBwYXJhbXMub2xkUGFzc3dvcmQsXG4gICAgICAgICAgICBuZXdQYXNzd29yZDogcGFyYW1zLm5ld1Bhc3N3b3JkLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGlmICh1cGRhdGVkS2V5Y2hhaW4uZW5jcnlwdGVkUHJ2KSB7XG4gICAgICAgICAgICBjaGFuZ2VkS2V5c1t1cGRhdGVkS2V5Y2hhaW4ucHViXSA9IHVwZGF0ZWRLZXljaGFpbi5lbmNyeXB0ZWRQcnY7XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgLy8gaWYgdGhlIHBhc3N3b3JkIHdhcyBpbmNvcnJlY3QsIHNpbGVuY2UgdGhlIGVycm9yLCB0aHJvdyBvdGhlcndpc2VcbiAgICAgICAgICBpZiAoIWUubWVzc2FnZS5pbmNsdWRlcygncHJpdmF0ZSBrZXkgaXMgaW5jb3JyZWN0JykpIHtcbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAocmVzdWx0Lm5leHRCYXRjaFByZXZJZCkge1xuICAgICAgICBwcmV2SWQgPSByZXN1bHQubmV4dEJhdGNoUHJldklkO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAga2V5c0xlZnQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNoYW5nZWRLZXlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSB0aGUgcGFzc3dvcmQgdXNlZCB0byBkZWNyeXB0IGEgc2luZ2xlIGtleWNoYWluXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICogQHBhcmFtIHBhcmFtcy5rZXljaGFpbiAtIFRoZSBrZXljaGFpbiB3aG9zZSBwYXNzd29yZCBzaG91bGQgYmUgdXBkYXRlZFxuICAgKiBAcGFyYW0gcGFyYW1zLm9sZFBhc3N3b3JkIC0gVGhlIG9sZCBwYXNzd29yZCB1c2VkIGZvciBlbmNyeXB0aW5nIHRoZSBrZXlcbiAgICogQHBhcmFtIHBhcmFtcy5uZXdQYXNzd29yZCAtIFRoZSBuZXcgcGFzc3dvcmQgdG8gYmUgdXNlZCBmb3IgZW5jcnlwdGluZyB0aGUga2V5XG4gICAqIEByZXR1cm5zIHtvYmplY3R9XG4gICAqL1xuICB1cGRhdGVTaW5nbGVLZXljaGFpblBhc3N3b3JkKHBhcmFtczogVXBkYXRlU2luZ2xlS2V5Y2hhaW5QYXNzd29yZE9wdGlvbnMgPSB7fSk6IEtleWNoYWluIHtcbiAgICBpZiAoIV8uaXNTdHJpbmcocGFyYW1zLm9sZFBhc3N3b3JkKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdleHBlY3RlZCBvbGQgcGFzc3dvcmQgdG8gYmUgYSBzdHJpbmcnKTtcbiAgICB9XG5cbiAgICBpZiAoIV8uaXNTdHJpbmcocGFyYW1zLm5ld1Bhc3N3b3JkKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdleHBlY3RlZCBuZXcgcGFzc3dvcmQgdG8gYmUgYSBzdHJpbmcnKTtcbiAgICB9XG5cbiAgICBpZiAoIV8uaXNPYmplY3QocGFyYW1zLmtleWNoYWluKSB8fCAhXy5pc1N0cmluZyhwYXJhbXMua2V5Y2hhaW4uZW5jcnlwdGVkUHJ2KSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdleHBlY3RlZCBrZXljaGFpbiB0byBiZSBhbiBvYmplY3Qgd2l0aCBhbiBlbmNyeXB0ZWRQcnYgcHJvcGVydHknKTtcbiAgICB9XG5cbiAgICBjb25zdCBvbGRFbmNyeXB0ZWRQcnYgPSBwYXJhbXMua2V5Y2hhaW4uZW5jcnlwdGVkUHJ2O1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBkZWNyeXB0ZWRQcnYgPSB0aGlzLmJpdGdvLmRlY3J5cHQoeyBpbnB1dDogb2xkRW5jcnlwdGVkUHJ2LCBwYXNzd29yZDogcGFyYW1zLm9sZFBhc3N3b3JkIH0pO1xuICAgICAgY29uc3QgbmV3RW5jcnlwdGVkUHJ2ID0gdGhpcy5iaXRnby5lbmNyeXB0KHsgaW5wdXQ6IGRlY3J5cHRlZFBydiwgcGFzc3dvcmQ6IHBhcmFtcy5uZXdQYXNzd29yZCB9KTtcbiAgICAgIHJldHVybiBfLmFzc2lnbih7fSwgcGFyYW1zLmtleWNoYWluLCB7IGVuY3J5cHRlZFBydjogbmV3RW5jcnlwdGVkUHJ2IH0pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIC8vIGNhdGNoaW5nIGFuIGVycm9yIGhlcmUgbWVhbnMgdGhhdCB0aGUgcGFzc3dvcmQgd2FzIGluY29ycmVjdCBvciwgbGVzcyBsaWtlbHksIHRoZSBpbnB1dCB0byBkZWNyeXB0IGlzIGNvcnJ1cHRlZFxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdwYXNzd29yZCB1c2VkIHRvIGRlY3J5cHQga2V5Y2hhaW4gcHJpdmF0ZSBrZXkgaXMgaW5jb3JyZWN0Jyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIHB1YmxpYy9wcml2YXRlIGtleSBwYWlyXG4gICAqIEBwYXJhbSBwYXJhbXMuc2VlZFxuICAgKi9cbiAgY3JlYXRlKHBhcmFtczogeyBzZWVkPzogQnVmZmVyIH0gPSB7fSk6IEtleVBhaXIge1xuICAgIHJldHVybiB0aGlzLmJhc2VDb2luLmdlbmVyYXRlS2V5UGFpcihwYXJhbXMuc2VlZCk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEga2V5Y2hhaW4gdG8gQml0R28ncyByZWNvcmRzXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICovXG4gIGFzeW5jIGFkZChwYXJhbXM6IEFkZEtleWNoYWluT3B0aW9ucyA9IHt9KTogUHJvbWlzZTxLZXljaGFpbj4ge1xuICAgIHBhcmFtcyA9IHBhcmFtcyB8fCB7fTtcbiAgICBjb21tb24udmFsaWRhdGVQYXJhbXMoXG4gICAgICBwYXJhbXMsXG4gICAgICBbXSxcbiAgICAgIFtcbiAgICAgICAgJ3B1YicsXG4gICAgICAgICdlbmNyeXB0ZWRQcnYnLFxuICAgICAgICAna2V5VHlwZScsXG4gICAgICAgICd0eXBlJyxcbiAgICAgICAgJ3NvdXJjZScsXG4gICAgICAgICdvcmlnaW5hbFBhc3Njb2RlRW5jcnlwdGlvbkNvZGUnLFxuICAgICAgICAnZW50ZXJwcmlzZScsXG4gICAgICAgICdkZXJpdmVkRnJvbVBhcmVudFdpdGhTZWVkJyxcbiAgICAgIF1cbiAgICApO1xuXG4gICAgaWYgKCFfLmlzVW5kZWZpbmVkKHBhcmFtcy5kaXNhYmxlS1JTRW1haWwpKSB7XG4gICAgICBpZiAoIV8uaXNCb29sZWFuKHBhcmFtcy5kaXNhYmxlS1JTRW1haWwpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBkaXNhYmxlS1JTRW1haWwgYXJndW1lbnQsIGV4cGVjdGluZyBib29sZWFuJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtcy5yZXFJZCkge1xuICAgICAgdGhpcy5iaXRnby5zZXRSZXF1ZXN0VHJhY2VyKHBhcmFtcy5yZXFJZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z29cbiAgICAgIC5wb3N0KHRoaXMuYmFzZUNvaW4udXJsKCcva2V5JykpXG4gICAgICAuc2VuZCh7XG4gICAgICAgIHB1YjogcGFyYW1zLnB1YixcbiAgICAgICAgY29tbW9uUHViOiBwYXJhbXMuY29tbW9uUHViLFxuICAgICAgICBjb21tb25LZXljaGFpbjogcGFyYW1zLmNvbW1vbktleWNoYWluLFxuICAgICAgICBlbmNyeXB0ZWRQcnY6IHBhcmFtcy5lbmNyeXB0ZWRQcnYsXG4gICAgICAgIHR5cGU6IHBhcmFtcy50eXBlLFxuICAgICAgICBrZXlUeXBlOiBwYXJhbXMua2V5VHlwZSxcbiAgICAgICAgc291cmNlOiBwYXJhbXMuc291cmNlLFxuICAgICAgICBwcm92aWRlcjogcGFyYW1zLnByb3ZpZGVyLFxuICAgICAgICBvcmlnaW5hbFBhc3Njb2RlRW5jcnlwdGlvbkNvZGU6IHBhcmFtcy5vcmlnaW5hbFBhc3Njb2RlRW5jcnlwdGlvbkNvZGUsXG4gICAgICAgIGVudGVycHJpc2U6IHBhcmFtcy5lbnRlcnByaXNlLFxuICAgICAgICBkZXJpdmVkRnJvbVBhcmVudFdpdGhTZWVkOiBwYXJhbXMuZGVyaXZlZEZyb21QYXJlbnRXaXRoU2VlZCxcbiAgICAgICAgZGlzYWJsZUtSU0VtYWlsOiBwYXJhbXMuZGlzYWJsZUtSU0VtYWlsLFxuICAgICAgICBrcnNTcGVjaWZpYzogcGFyYW1zLmtyc1NwZWNpZmljLFxuICAgICAgICBrZXlTaGFyZXM6IHBhcmFtcy5rZXlTaGFyZXMsXG4gICAgICAgIHVzZXJHUEdQdWJsaWNLZXk6IHBhcmFtcy51c2VyR1BHUHVibGljS2V5LFxuICAgICAgICBiYWNrdXBHUEdQdWJsaWNLZXk6IHBhcmFtcy5iYWNrdXBHUEdQdWJsaWNLZXksXG4gICAgICB9KVxuICAgICAgLnJlc3VsdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIEJpdEdvIGtleVxuICAgKiBAcGFyYW0gcGFyYW1zIChlbXB0eSlcbiAgICovXG4gIGFzeW5jIGNyZWF0ZUJpdEdvKHBhcmFtczogQ3JlYXRlQml0R29PcHRpb25zID0ge30pOiBQcm9taXNlPEtleWNoYWluPiB7XG4gICAgcGFyYW1zLnNvdXJjZSA9ICdiaXRnbyc7XG5cbiAgICB0aGlzLmJhc2VDb2luLnByZUNyZWF0ZUJpdEdvKHBhcmFtcyBhcyBhbnkpO1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmFkZChwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGJhY2t1cCBrZXlcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKiBAcGFyYW0gcGFyYW1zLnByb3ZpZGVyIChvcHRpb25hbClcbiAgICovXG4gIGFzeW5jIGNyZWF0ZUJhY2t1cChwYXJhbXM6IENyZWF0ZUJhY2t1cE9wdGlvbnMgPSB7fSk6IFByb21pc2U8S2V5Y2hhaW4+IHtcbiAgICBwYXJhbXMuc291cmNlID0gJ2JhY2t1cCc7XG5cbiAgICBjb25zdCBpc1Rzc0JhY2t1cEtleSA9IHBhcmFtcy5wcnYgJiYgKHBhcmFtcy5jb21tb25LZXljaGFpbiB8fCBwYXJhbXMuY29tbW9uUHViKTtcblxuICAgIGlmIChfLmlzVW5kZWZpbmVkKHBhcmFtcy5wcm92aWRlcikgJiYgIWlzVHNzQmFja3VwS2V5KSB7XG4gICAgICAvLyBpZiB0aGUgcHJvdmlkZXIgaXMgdW5kZWZpbmVkLCB3ZSBnZW5lcmF0ZSBhIGxvY2FsIGtleSBhbmQgYWRkIHRoZSBzb3VyY2UgZGV0YWlsc1xuICAgICAgY29uc3Qga2V5ID0gdGhpcy5jcmVhdGUoKTtcbiAgICAgIF8uZXh0ZW5kKHBhcmFtcywga2V5KTtcbiAgICB9XG5cbiAgICBjb25zdCBzZXJ2ZXJSZXNwb25zZSA9IGF3YWl0IHRoaXMuYWRkKHBhcmFtcyk7XG4gICAgcmV0dXJuIF8uZXh0ZW5kKHt9LCBzZXJ2ZXJSZXNwb25zZSwgXy5waWNrKHBhcmFtcywgWydwcnYnLCAnZW5jcnlwdGVkUHJ2JywgJ3Byb3ZpZGVyJywgJ3NvdXJjZSddKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBrZXlzIGZvciBzaWduaW5nIGZyb20gYSB3YWxsZXRcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxLZXljaGFpbltdPn1cbiAgICovXG4gIGFzeW5jIGdldEtleXNGb3JTaWduaW5nKHBhcmFtczogR2V0S2V5c0ZvclNpZ25pbmdPcHRpb25zID0ge30pOiBQcm9taXNlPEtleWNoYWluW10+IHtcbiAgICBpZiAoIV8uaXNPYmplY3QocGFyYW1zLndhbGxldCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbWlzc2luZyByZXF1aXJlZCBwYXJhbSB3YWxsZXQnKTtcbiAgICB9XG4gICAgY29uc3Qgd2FsbGV0ID0gcGFyYW1zLndhbGxldDtcbiAgICBjb25zdCByZXFJZCA9IHBhcmFtcy5yZXFJZCB8fCBuZXcgUmVxdWVzdFRyYWNlcigpO1xuICAgIGNvbnN0IGlkcyA9IHdhbGxldC5iYXNlQ29pbi5rZXlJZHNGb3JTaWduaW5nKCk7XG4gICAgY29uc3Qga2V5Y2hhaW5RdWVyaWVzQmx1ZWJpcmRzID0gaWRzLm1hcCgoaWQpID0+IHRoaXMuZ2V0KHsgaWQ6IHdhbGxldC5rZXlJZHMoKVtpZF0sIHJlcUlkIH0pKTtcbiAgICByZXR1cm4gUHJvbWlzZS5hbGwoa2V5Y2hhaW5RdWVyaWVzQmx1ZWJpcmRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZW5pZW5jZSBmdW5jdGlvbiB0byBjcmVhdGUgYW5kIHN0b3JlIE1QQyBrZXljaGFpbnMgd2l0aCBCaXRHby5cbiAgICogQHBhcmFtIHBhcmFtcyBwYXNzcGhyYXNlIHVzZWQgdG8gZW5jcnlwdCBzZWNyZXQgbWF0ZXJpYWxzXG4gICAqIEByZXR1cm4ge1Byb21pc2U8S2V5Y2hhaW5zVHJpcGxldD59IG5ld2x5IGNyZWF0ZWQgVXNlciwgQmFja3VwLCBhbmQgQml0R28ga2V5c1xuICAgKi9cbiAgYXN5bmMgY3JlYXRlTXBjKHBhcmFtczogQ3JlYXRlTXBjT3B0aW9ucyk6IFByb21pc2U8S2V5Y2hhaW5zVHJpcGxldD4ge1xuICAgIGxldCBNcGNVdGlscztcbiAgICBzd2l0Y2ggKHBhcmFtcy5tdWx0aXNpZ1R5cGUpIHtcbiAgICAgIGNhc2UgJ3Rzcyc6XG4gICAgICAgIE1wY1V0aWxzID0gdGhpcy5iYXNlQ29pbi5nZXRNUENBbGdvcml0aG0oKSA9PT0gJ2VjZHNhJyA/IEVDRFNBVXRpbHMuRWNkc2FVdGlscyA6IEVERFNBVXRpbHMuZGVmYXVsdDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdibHNka2cnOlxuICAgICAgICBpZiAoXy5pc1VuZGVmaW5lZChwYXJhbXMucGFzc3BocmFzZSkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ21pc3NpbmcgcmVxdWlyZWQgcGFyYW0gcGFzc3BocmFzZScpO1xuICAgICAgICB9XG4gICAgICAgIE1wY1V0aWxzID0gQmxzVXRpbHM7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbnN1cHBvcnRlZCBtdWx0aS1zaWcgdHlwZScpO1xuICAgIH1cblxuICAgIGNvbnN0IG1wY1V0aWxzID0gbmV3IE1wY1V0aWxzKHRoaXMuYml0Z28sIHRoaXMuYmFzZUNvaW4pO1xuICAgIHJldHVybiBhd2FpdCBtcGNVdGlscy5jcmVhdGVLZXljaGFpbnMoe1xuICAgICAgcGFzc3BocmFzZTogcGFyYW1zLnBhc3NwaHJhc2UsXG4gICAgICBlbnRlcnByaXNlOiBwYXJhbXMuZW50ZXJwcmlzZSxcbiAgICAgIG9yaWdpbmFsUGFzc2NvZGVFbmNyeXB0aW9uQ29kZTogcGFyYW1zLm9yaWdpbmFsUGFzc2NvZGVFbmNyeXB0aW9uQ29kZSxcbiAgICB9KTtcbiAgfVxufVxuIl19
281
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2hhaW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL2tleWNoYWluL2tleWNoYWlucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMENBQTRCO0FBQzVCLHFEQUF1QztBQUd2QyxvQ0FBMkU7QUFpQjNFLE1BQWEsU0FBUztJQUlwQixZQUFZLEtBQWdCLEVBQUUsUUFBbUI7UUFDL0MsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQTBCO1FBQ2xDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBRTFELElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDNUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1NBQ3ZDO1FBRUQsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNyQixJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUU7WUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDM0M7UUFDRCxPQUFPLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxHQUFHLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM1RixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUE4QixFQUFFO1FBQ3pDLE1B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TUFBTTtZQUNSLEtBQUssUUFBUTtnQkFDWCxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFO29CQUNwQyxNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7aUJBQ3REO2dCQUNELFFBQVEsR0FBRyxnQkFBUSxDQUFDO2dCQUNwQixNQUFNO1lBQ1I7Z0JBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1NBQ2pEO1FBQ0QsTUFBTSxRQUFRLEdBQUcsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekQsT0FBTyxNQUFNLFFBQVEsQ0FBQyxlQUFlLENBQUM7WUFDcEMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVO1lBQzdCLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVTtZQUM3Qiw4QkFBOEIsRUFBRSxNQUFNLENBQUMsOEJBQThCO1lBQ3JFLGNBQWMsRUFBRSxNQUFNLENBQUMsY0FBYztTQUN0QyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUF6UkQsOEJBeVJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0ICogYXMgY29tbW9uIGZyb20gJy4uLy4uL2NvbW1vbic7XG5pbXBvcnQgeyBJQmFzZUNvaW4sIEtleWNoYWluc1RyaXBsZXQsIEtleVBhaXIgfSBmcm9tICcuLi9iYXNlQ29pbic7XG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICcuLi9iaXRnb0Jhc2UnO1xuaW1wb3J0IHsgQmxzVXRpbHMsIFJlcXVlc3RUcmFjZXIsIEVERFNBVXRpbHMsIEVDRFNBVXRpbHMgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQge1xuICBBZGRLZXljaGFpbk9wdGlvbnMsXG4gIENoYW5nZWRLZXljaGFpbnMsXG4gIENyZWF0ZUJhY2t1cE9wdGlvbnMsXG4gIENyZWF0ZUJpdEdvT3B0aW9ucyxcbiAgQ3JlYXRlTXBjT3B0aW9ucyxcbiAgR2V0S2V5Y2hhaW5PcHRpb25zLFxuICBHZXRLZXlzRm9yU2lnbmluZ09wdGlvbnMsXG4gIElLZXljaGFpbnMsXG4gIEtleWNoYWluLFxuICBMaXN0S2V5Y2hhaW5PcHRpb25zLFxuICBMaXN0S2V5Y2hhaW5zUmVzdWx0LFxuICBVcGRhdGVQYXNzd29yZE9wdGlvbnMsXG4gIFVwZGF0ZVNpbmdsZUtleWNoYWluUGFzc3dvcmRPcHRpb25zLFxufSBmcm9tICcuL2lLZXljaGFpbnMnO1xuXG5leHBvcnQgY2xhc3MgS2V5Y2hhaW5zIGltcGxlbWVudHMgSUtleWNoYWlucyB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYml0Z286IEJpdEdvQmFzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBiYXNlQ29pbjogSUJhc2VDb2luO1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIGJhc2VDb2luOiBJQmFzZUNvaW4pIHtcbiAgICB0aGlzLmJpdGdvID0gYml0Z287XG4gICAgdGhpcy5iYXNlQ29pbiA9IGJhc2VDb2luO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhIGtleWNoYWluIGJ5IElEXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICogQHBhcmFtIHBhcmFtcy5pZFxuICAgKiBAcGFyYW0gcGFyYW1zLnhwdWIgKG9wdGlvbmFsKVxuICAgKiBAcGFyYW0gcGFyYW1zLmV0aEFkZHJlc3MgKG9wdGlvbmFsKVxuICAgKiBAcGFyYW0gcGFyYW1zLnJlcUlkIChvcHRpb25hbClcbiAgICovXG4gIGFzeW5jIGdldChwYXJhbXM6IEdldEtleWNoYWluT3B0aW9ucyk6IFByb21pc2U8S2V5Y2hhaW4+IHtcbiAgICBjb21tb24udmFsaWRhdGVQYXJhbXMocGFyYW1zLCBbXSwgWyd4cHViJywgJ2V0aEFkZHJlc3MnXSk7XG5cbiAgICBpZiAoXy5pc1VuZGVmaW5lZChwYXJhbXMuaWQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2lkIG11c3QgYmUgZGVmaW5lZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IGlkID0gcGFyYW1zLmlkO1xuICAgIGlmIChwYXJhbXMucmVxSWQpIHtcbiAgICAgIHRoaXMuYml0Z28uc2V0UmVxdWVzdFRyYWNlcihwYXJhbXMucmVxSWQpO1xuICAgIH1cbiAgICByZXR1cm4gYXdhaXQgdGhpcy5iaXRnby5nZXQodGhpcy5iYXNlQ29pbi51cmwoJy9rZXkvJyArIGVuY29kZVVSSUNvbXBvbmVudChpZCkpKS5yZXN1bHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBsaXN0IHRoZSB1c2VycyBrZXljaGFpbnNcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKiBAcGFyYW0gcGFyYW1zLmxpbWl0IC0gTWF4IG51bWJlciBvZiByZXN1bHRzIGluIGEgc2luZ2xlIGNhbGwuXG4gICAqIEBwYXJhbSBwYXJhbXMucHJldklkIC0gQ29udGludWUgaXRlcmF0aW5nIChwcm92aWRlZCBieSBuZXh0QmF0Y2hQcmV2SWQgaW4gdGhlIHByZXZpb3VzIGxpc3QpXG4gICAqIEByZXR1cm5zIHsqfVxuICAgKi9cbiAgYXN5bmMgbGlzdChwYXJhbXM6IExpc3RLZXljaGFpbk9wdGlvbnMgPSB7fSk6IFByb21pc2U8TGlzdEtleWNoYWluc1Jlc3VsdD4ge1xuICAgIGNvbnN0IHF1ZXJ5T2JqZWN0OiBhbnkgPSB7fTtcblxuICAgIGlmICghXy5pc1VuZGVmaW5lZChwYXJhbXMubGltaXQpKSB7XG4gICAgICBpZiAoIV8uaXNOdW1iZXIocGFyYW1zLmxpbWl0KSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgbGltaXQgYXJndW1lbnQsIGV4cGVjdGluZyBudW1iZXInKTtcbiAgICAgIH1cbiAgICAgIHF1ZXJ5T2JqZWN0LmxpbWl0ID0gcGFyYW1zLmxpbWl0O1xuICAgIH1cbiAgICBpZiAoIV8uaXNVbmRlZmluZWQocGFyYW1zLnByZXZJZCkpIHtcbiAgICAgIGlmICghXy5pc1N0cmluZyhwYXJhbXMucHJldklkKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgcHJldklkIGFyZ3VtZW50LCBleHBlY3Rpbmcgc3RyaW5nJyk7XG4gICAgICB9XG4gICAgICBxdWVyeU9iamVjdC5wcmV2SWQgPSBwYXJhbXMucHJldklkO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmJpdGdvLmdldCh0aGlzLmJhc2VDb2luLnVybCgnL2tleScpKS5xdWVyeShxdWVyeU9iamVjdCkucmVzdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogQ2hhbmdlIHRoZSBkZWNyeXB0aW9uIHBhc3N3b3JkIGZvciBhbGwgcG9zc2libGUga2V5Y2hhaW5zIGFzc29jaWF0ZWQgd2l0aCBhIHVzZXIuXG4gICAqXG4gICAqIFRoaXMgZnVuY3Rpb24gaXRlcmF0ZXMgdGhyb3VnaCBhbGwga2V5cyBhc3NvY2lhdGVkIHdpdGggdGhlIHVzZXIsIGRlY3J5cHRzXG4gICAqIHRoZW0gd2l0aCB0aGUgb2xkIHBhc3N3b3JkIGFuZCByZS1lbmNyeXB0cyB0aGVtIHdpdGggdGhlIG5ldyBwYXNzd29yZC5cbiAgICpcbiAgICogVGhpcyBzaG91bGQgYmUgY2FsbGVkIHdoZW4gYSB1c2VyIGNoYW5nZXMgdGhlaXIgbG9naW4gcGFzc3dvcmQsIGFuZCBhcmUgZXhwZWN0aW5nXG4gICAqIHRoYXQgdGhlaXIgd2FsbGV0IHBhc3N3b3JkcyBhcmUgY2hhbmdlZCB0byBtYXRjaCB0aGUgbmV3IGxvZ2luIHBhc3N3b3JkLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqIEBwYXJhbSBwYXJhbXMub2xkUGFzc3dvcmQgLSBUaGUgb2xkIHBhc3N3b3JkIHVzZWQgZm9yIGVuY3J5cHRpbmcgdGhlIGtleVxuICAgKiBAcGFyYW0gcGFyYW1zLm5ld1Bhc3N3b3JkIC0gVGhlIG5ldyBwYXNzd29yZCB0byBiZSB1c2VkIGZvciBlbmNyeXB0aW5nIHRoZSBrZXlcbiAgICogQHJldHVybnMgY2hhbmdlZEtleXMgT2JqZWN0IC0gZS5nLjpcbiAgICogIHtcbiAgICogICAgeHB1YjE6IGVuY3J5cHRlZFBydixcbiAgICogICAgLi4uXG4gICAqICB9XG4gICAqL1xuICBhc3luYyB1cGRhdGVQYXNzd29yZChwYXJhbXM6IFVwZGF0ZVBhc3N3b3JkT3B0aW9ucyk6IFByb21pc2U8Q2hhbmdlZEtleWNoYWlucz4ge1xuICAgIGNvbW1vbi52YWxpZGF0ZVBhcmFtcyhwYXJhbXMsIFsnb2xkUGFzc3dvcmQnLCAnbmV3UGFzc3dvcmQnXSwgW10pO1xuICAgIGNvbnN0IGNoYW5nZWRLZXlzOiBDaGFuZ2VkS2V5Y2hhaW5zID0ge307XG4gICAgbGV0IHByZXZJZDtcbiAgICBsZXQga2V5c0xlZnQgPSB0cnVlO1xuICAgIHdoaWxlIChrZXlzTGVmdCkge1xuICAgICAgY29uc3QgcmVzdWx0OiBMaXN0S2V5Y2hhaW5zUmVzdWx0ID0gYXdhaXQgdGhpcy5saXN0KHsgbGltaXQ6IDUwMCwgcHJldklkIH0pO1xuICAgICAgZm9yIChjb25zdCBrZXkgb2YgcmVzdWx0LmtleXMpIHtcbiAgICAgICAgY29uc3Qgb2xkRW5jcnlwdGVkUHJ2ID0ga2V5LmVuY3J5cHRlZFBydjtcbiAgICAgICAgaWYgKF8uaXNVbmRlZmluZWQob2xkRW5jcnlwdGVkUHJ2KSkge1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgdXBkYXRlZEtleWNoYWluID0gdGhpcy51cGRhdGVTaW5nbGVLZXljaGFpblBhc3N3b3JkKHtcbiAgICAgICAgICAgIGtleWNoYWluOiBrZXksXG4gICAgICAgICAgICBvbGRQYXNzd29yZDogcGFyYW1zLm9sZFBhc3N3b3JkLFxuICAgICAgICAgICAgbmV3UGFzc3dvcmQ6IHBhcmFtcy5uZXdQYXNzd29yZCxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBpZiAodXBkYXRlZEtleWNoYWluLmVuY3J5cHRlZFBydikge1xuICAgICAgICAgICAgY2hhbmdlZEtleXNbdXBkYXRlZEtleWNoYWluLnB1Yl0gPSB1cGRhdGVkS2V5Y2hhaW4uZW5jcnlwdGVkUHJ2O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIC8vIGlmIHRoZSBwYXNzd29yZCB3YXMgaW5jb3JyZWN0LCBzaWxlbmNlIHRoZSBlcnJvciwgdGhyb3cgb3RoZXJ3aXNlXG4gICAgICAgICAgaWYgKCFlLm1lc3NhZ2UuaW5jbHVkZXMoJ3ByaXZhdGUga2V5IGlzIGluY29ycmVjdCcpKSB7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHJlc3VsdC5uZXh0QmF0Y2hQcmV2SWQpIHtcbiAgICAgICAgcHJldklkID0gcmVzdWx0Lm5leHRCYXRjaFByZXZJZDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGtleXNMZWZ0ID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBjaGFuZ2VkS2V5cztcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgdGhlIHBhc3N3b3JkIHVzZWQgdG8gZGVjcnlwdCBhIHNpbmdsZSBrZXljaGFpblxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqIEBwYXJhbSBwYXJhbXMua2V5Y2hhaW4gLSBUaGUga2V5Y2hhaW4gd2hvc2UgcGFzc3dvcmQgc2hvdWxkIGJlIHVwZGF0ZWRcbiAgICogQHBhcmFtIHBhcmFtcy5vbGRQYXNzd29yZCAtIFRoZSBvbGQgcGFzc3dvcmQgdXNlZCBmb3IgZW5jcnlwdGluZyB0aGUga2V5XG4gICAqIEBwYXJhbSBwYXJhbXMubmV3UGFzc3dvcmQgLSBUaGUgbmV3IHBhc3N3b3JkIHRvIGJlIHVzZWQgZm9yIGVuY3J5cHRpbmcgdGhlIGtleVxuICAgKiBAcmV0dXJucyB7b2JqZWN0fVxuICAgKi9cbiAgdXBkYXRlU2luZ2xlS2V5Y2hhaW5QYXNzd29yZChwYXJhbXM6IFVwZGF0ZVNpbmdsZUtleWNoYWluUGFzc3dvcmRPcHRpb25zID0ge30pOiBLZXljaGFpbiB7XG4gICAgaWYgKCFfLmlzU3RyaW5nKHBhcmFtcy5vbGRQYXNzd29yZCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignZXhwZWN0ZWQgb2xkIHBhc3N3b3JkIHRvIGJlIGEgc3RyaW5nJyk7XG4gICAgfVxuXG4gICAgaWYgKCFfLmlzU3RyaW5nKHBhcmFtcy5uZXdQYXNzd29yZCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignZXhwZWN0ZWQgbmV3IHBhc3N3b3JkIHRvIGJlIGEgc3RyaW5nJyk7XG4gICAgfVxuXG4gICAgaWYgKCFfLmlzT2JqZWN0KHBhcmFtcy5rZXljaGFpbikgfHwgIV8uaXNTdHJpbmcocGFyYW1zLmtleWNoYWluLmVuY3J5cHRlZFBydikpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignZXhwZWN0ZWQga2V5Y2hhaW4gdG8gYmUgYW4gb2JqZWN0IHdpdGggYW4gZW5jcnlwdGVkUHJ2IHByb3BlcnR5Jyk7XG4gICAgfVxuXG4gICAgY29uc3Qgb2xkRW5jcnlwdGVkUHJ2ID0gcGFyYW1zLmtleWNoYWluLmVuY3J5cHRlZFBydjtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZGVjcnlwdGVkUHJ2ID0gdGhpcy5iaXRnby5kZWNyeXB0KHsgaW5wdXQ6IG9sZEVuY3J5cHRlZFBydiwgcGFzc3dvcmQ6IHBhcmFtcy5vbGRQYXNzd29yZCB9KTtcbiAgICAgIGNvbnN0IG5ld0VuY3J5cHRlZFBydiA9IHRoaXMuYml0Z28uZW5jcnlwdCh7IGlucHV0OiBkZWNyeXB0ZWRQcnYsIHBhc3N3b3JkOiBwYXJhbXMubmV3UGFzc3dvcmQgfSk7XG4gICAgICByZXR1cm4gXy5hc3NpZ24oe30sIHBhcmFtcy5rZXljaGFpbiwgeyBlbmNyeXB0ZWRQcnY6IG5ld0VuY3J5cHRlZFBydiB9KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAvLyBjYXRjaGluZyBhbiBlcnJvciBoZXJlIG1lYW5zIHRoYXQgdGhlIHBhc3N3b3JkIHdhcyBpbmNvcnJlY3Qgb3IsIGxlc3MgbGlrZWx5LCB0aGUgaW5wdXQgdG8gZGVjcnlwdCBpcyBjb3JydXB0ZWRcbiAgICAgIHRocm93IG5ldyBFcnJvcigncGFzc3dvcmQgdXNlZCB0byBkZWNyeXB0IGtleWNoYWluIHByaXZhdGUga2V5IGlzIGluY29ycmVjdCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBwdWJsaWMvcHJpdmF0ZSBrZXkgcGFpclxuICAgKiBAcGFyYW0gcGFyYW1zLnNlZWRcbiAgICovXG4gIGNyZWF0ZShwYXJhbXM6IHsgc2VlZD86IEJ1ZmZlciB9ID0ge30pOiBLZXlQYWlyIHtcbiAgICByZXR1cm4gdGhpcy5iYXNlQ29pbi5nZW5lcmF0ZUtleVBhaXIocGFyYW1zLnNlZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIGtleWNoYWluIHRvIEJpdEdvJ3MgcmVjb3Jkc1xuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqL1xuICBhc3luYyBhZGQocGFyYW1zOiBBZGRLZXljaGFpbk9wdGlvbnMgPSB7fSk6IFByb21pc2U8S2V5Y2hhaW4+IHtcbiAgICBwYXJhbXMgPSBwYXJhbXMgfHwge307XG4gICAgY29tbW9uLnZhbGlkYXRlUGFyYW1zKFxuICAgICAgcGFyYW1zLFxuICAgICAgW10sXG4gICAgICBbXG4gICAgICAgICdwdWInLFxuICAgICAgICAnZW5jcnlwdGVkUHJ2JyxcbiAgICAgICAgJ2tleVR5cGUnLFxuICAgICAgICAndHlwZScsXG4gICAgICAgICdzb3VyY2UnLFxuICAgICAgICAnb3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlJyxcbiAgICAgICAgJ2VudGVycHJpc2UnLFxuICAgICAgICAnZGVyaXZlZEZyb21QYXJlbnRXaXRoU2VlZCcsXG4gICAgICBdXG4gICAgKTtcblxuICAgIGlmICghXy5pc1VuZGVmaW5lZChwYXJhbXMuZGlzYWJsZUtSU0VtYWlsKSkge1xuICAgICAgaWYgKCFfLmlzQm9vbGVhbihwYXJhbXMuZGlzYWJsZUtSU0VtYWlsKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgZGlzYWJsZUtSU0VtYWlsIGFyZ3VtZW50LCBleHBlY3RpbmcgYm9vbGVhbicpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwYXJhbXMucmVxSWQpIHtcbiAgICAgIHRoaXMuYml0Z28uc2V0UmVxdWVzdFRyYWNlcihwYXJhbXMucmVxSWQpO1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAucG9zdCh0aGlzLmJhc2VDb2luLnVybCgnL2tleScpKVxuICAgICAgLnNlbmQoe1xuICAgICAgICBwdWI6IHBhcmFtcy5wdWIsXG4gICAgICAgIGNvbW1vblB1YjogcGFyYW1zLmNvbW1vblB1YixcbiAgICAgICAgY29tbW9uS2V5Y2hhaW46IHBhcmFtcy5jb21tb25LZXljaGFpbixcbiAgICAgICAgZW5jcnlwdGVkUHJ2OiBwYXJhbXMuZW5jcnlwdGVkUHJ2LFxuICAgICAgICB0eXBlOiBwYXJhbXMudHlwZSxcbiAgICAgICAga2V5VHlwZTogcGFyYW1zLmtleVR5cGUsXG4gICAgICAgIHNvdXJjZTogcGFyYW1zLnNvdXJjZSxcbiAgICAgICAgcHJvdmlkZXI6IHBhcmFtcy5wcm92aWRlcixcbiAgICAgICAgb3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlOiBwYXJhbXMub3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlLFxuICAgICAgICBlbnRlcnByaXNlOiBwYXJhbXMuZW50ZXJwcmlzZSxcbiAgICAgICAgZGVyaXZlZEZyb21QYXJlbnRXaXRoU2VlZDogcGFyYW1zLmRlcml2ZWRGcm9tUGFyZW50V2l0aFNlZWQsXG4gICAgICAgIGRpc2FibGVLUlNFbWFpbDogcGFyYW1zLmRpc2FibGVLUlNFbWFpbCxcbiAgICAgICAga3JzU3BlY2lmaWM6IHBhcmFtcy5rcnNTcGVjaWZpYyxcbiAgICAgICAga2V5U2hhcmVzOiBwYXJhbXMua2V5U2hhcmVzLFxuICAgICAgICB1c2VyR1BHUHVibGljS2V5OiBwYXJhbXMudXNlckdQR1B1YmxpY0tleSxcbiAgICAgICAgYmFja3VwR1BHUHVibGljS2V5OiBwYXJhbXMuYmFja3VwR1BHUHVibGljS2V5LFxuICAgICAgfSlcbiAgICAgIC5yZXN1bHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBCaXRHbyBrZXlcbiAgICogQHBhcmFtIHBhcmFtcyAoZW1wdHkpXG4gICAqL1xuICBhc3luYyBjcmVhdGVCaXRHbyhwYXJhbXM6IENyZWF0ZUJpdEdvT3B0aW9ucyA9IHt9KTogUHJvbWlzZTxLZXljaGFpbj4ge1xuICAgIHBhcmFtcy5zb3VyY2UgPSAnYml0Z28nO1xuXG4gICAgdGhpcy5iYXNlQ29pbi5wcmVDcmVhdGVCaXRHbyhwYXJhbXMgYXMgYW55KTtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5hZGQocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBiYWNrdXAga2V5XG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICogQHBhcmFtIHBhcmFtcy5wcm92aWRlciAob3B0aW9uYWwpXG4gICAqL1xuICBhc3luYyBjcmVhdGVCYWNrdXAocGFyYW1zOiBDcmVhdGVCYWNrdXBPcHRpb25zID0ge30pOiBQcm9taXNlPEtleWNoYWluPiB7XG4gICAgcGFyYW1zLnNvdXJjZSA9ICdiYWNrdXAnO1xuXG4gICAgY29uc3QgaXNUc3NCYWNrdXBLZXkgPSBwYXJhbXMucHJ2ICYmIChwYXJhbXMuY29tbW9uS2V5Y2hhaW4gfHwgcGFyYW1zLmNvbW1vblB1Yik7XG5cbiAgICBpZiAoXy5pc1VuZGVmaW5lZChwYXJhbXMucHJvdmlkZXIpICYmICFpc1Rzc0JhY2t1cEtleSkge1xuICAgICAgLy8gaWYgdGhlIHByb3ZpZGVyIGlzIHVuZGVmaW5lZCwgd2UgZ2VuZXJhdGUgYSBsb2NhbCBrZXkgYW5kIGFkZCB0aGUgc291cmNlIGRldGFpbHNcbiAgICAgIGNvbnN0IGtleSA9IHRoaXMuY3JlYXRlKCk7XG4gICAgICBfLmV4dGVuZChwYXJhbXMsIGtleSk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VydmVyUmVzcG9uc2UgPSBhd2FpdCB0aGlzLmFkZChwYXJhbXMpO1xuICAgIHJldHVybiBfLmV4dGVuZCh7fSwgc2VydmVyUmVzcG9uc2UsIF8ucGljayhwYXJhbXMsIFsncHJ2JywgJ2VuY3J5cHRlZFBydicsICdwcm92aWRlcicsICdzb3VyY2UnXSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMga2V5cyBmb3Igc2lnbmluZyBmcm9tIGEgd2FsbGV0XG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICogQHJldHVybnMge1Byb21pc2U8S2V5Y2hhaW5bXT59XG4gICAqL1xuICBhc3luYyBnZXRLZXlzRm9yU2lnbmluZyhwYXJhbXM6IEdldEtleXNGb3JTaWduaW5nT3B0aW9ucyA9IHt9KTogUHJvbWlzZTxLZXljaGFpbltdPiB7XG4gICAgaWYgKCFfLmlzT2JqZWN0KHBhcmFtcy53YWxsZXQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ21pc3NpbmcgcmVxdWlyZWQgcGFyYW0gd2FsbGV0Jyk7XG4gICAgfVxuICAgIGNvbnN0IHdhbGxldCA9IHBhcmFtcy53YWxsZXQ7XG4gICAgY29uc3QgcmVxSWQgPSBwYXJhbXMucmVxSWQgfHwgbmV3IFJlcXVlc3RUcmFjZXIoKTtcbiAgICBjb25zdCBpZHMgPSB3YWxsZXQuYmFzZUNvaW4ua2V5SWRzRm9yU2lnbmluZygpO1xuICAgIGNvbnN0IGtleWNoYWluUXVlcmllc0JsdWViaXJkcyA9IGlkcy5tYXAoKGlkKSA9PiB0aGlzLmdldCh7IGlkOiB3YWxsZXQua2V5SWRzKClbaWRdLCByZXFJZCB9KSk7XG4gICAgcmV0dXJuIFByb21pc2UuYWxsKGtleWNoYWluUXVlcmllc0JsdWViaXJkcyk7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVuaWVuY2UgZnVuY3Rpb24gdG8gY3JlYXRlIGFuZCBzdG9yZSBNUEMga2V5Y2hhaW5zIHdpdGggQml0R28uXG4gICAqIEBwYXJhbSBwYXJhbXMgcGFzc3BocmFzZSB1c2VkIHRvIGVuY3J5cHQgc2VjcmV0IG1hdGVyaWFsc1xuICAgKiBAcmV0dXJuIHtQcm9taXNlPEtleWNoYWluc1RyaXBsZXQ+fSBuZXdseSBjcmVhdGVkIFVzZXIsIEJhY2t1cCwgYW5kIEJpdEdvIGtleXNcbiAgICovXG4gIGFzeW5jIGNyZWF0ZU1wYyhwYXJhbXM6IENyZWF0ZU1wY09wdGlvbnMpOiBQcm9taXNlPEtleWNoYWluc1RyaXBsZXQ+IHtcbiAgICBsZXQgTXBjVXRpbHM7XG4gICAgc3dpdGNoIChwYXJhbXMubXVsdGlzaWdUeXBlKSB7XG4gICAgICBjYXNlICd0c3MnOlxuICAgICAgICBNcGNVdGlscyA9IHRoaXMuYmFzZUNvaW4uZ2V0TVBDQWxnb3JpdGhtKCkgPT09ICdlY2RzYScgPyBFQ0RTQVV0aWxzLkVjZHNhVXRpbHMgOiBFRERTQVV0aWxzLmRlZmF1bHQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYmxzZGtnJzpcbiAgICAgICAgaWYgKF8uaXNVbmRlZmluZWQocGFyYW1zLnBhc3NwaHJhc2UpKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdtaXNzaW5nIHJlcXVpcmVkIHBhcmFtIHBhc3NwaHJhc2UnKTtcbiAgICAgICAgfVxuICAgICAgICBNcGNVdGlscyA9IEJsc1V0aWxzO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVW5zdXBwb3J0ZWQgbXVsdGktc2lnIHR5cGUnKTtcbiAgICB9XG4gICAgY29uc3QgbXBjVXRpbHMgPSBuZXcgTXBjVXRpbHModGhpcy5iaXRnbywgdGhpcy5iYXNlQ29pbik7XG4gICAgcmV0dXJuIGF3YWl0IG1wY1V0aWxzLmNyZWF0ZUtleWNoYWlucyh7XG4gICAgICBwYXNzcGhyYXNlOiBwYXJhbXMucGFzc3BocmFzZSxcbiAgICAgIGVudGVycHJpc2U6IHBhcmFtcy5lbnRlcnByaXNlLFxuICAgICAgb3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlOiBwYXJhbXMub3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlLFxuICAgICAgYmFja3VwUHJvdmlkZXI6IHBhcmFtcy5iYWNrdXBQcm92aWRlcixcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,15 +1,16 @@
1
1
  /**
2
2
  * @prettier
3
3
  */
4
- import { IStakingWallet, StakingRequest, TransactionsReadyToSign, StakingTransaction, StakingPrebuildTransactionResult, StakingSignedTransaction, StakingSignOptions, StakeOptions, UnstakeOptions, DelegationResults, DelegationOptions } from './iStakingWallet';
4
+ import { DelegationOptions, DelegationResults, IStakingWallet, StakeOptions, StakingPrebuildTransactionResult, StakingRequest, StakingSignedTransaction, StakingSignOptions, StakingTransaction, TransactionsReadyToSign, UnstakeOptions } from './iStakingWallet';
5
5
  import { IWallet } from '../wallet';
6
6
  import { ITssUtils } from '../utils';
7
7
  export declare class StakingWallet implements IStakingWallet {
8
8
  private readonly bitgo;
9
9
  private tokenParentWallet?;
10
+ private readonly isEthTss;
10
11
  wallet: IWallet;
11
12
  tssUtil: ITssUtils;
12
- constructor(wallet: IWallet);
13
+ constructor(wallet: IWallet, isEthTss: boolean);
13
14
  get walletId(): string;
14
15
  get coin(): string;
15
16
  /**
@@ -65,6 +66,12 @@ export declare class StakingWallet implements IStakingWallet {
65
66
  * @param transaction
66
67
  */
67
68
  buildSignAndSend(signOptions: StakingSignOptions, transaction: StakingTransaction): Promise<StakingTransaction>;
69
+ /**
70
+ * Build and sign the transaction.
71
+ * @param signOptions
72
+ * @param transaction
73
+ */
74
+ private buildAndSign;
68
75
  private expandBuildParams;
69
76
  private createStakingRequest;
70
77
  private stakingRequestsURL;
@@ -1 +1 @@
1
- {"version":3,"file":"stakingWallet.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/staking/stakingWallet.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,cAAc,EACd,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,gCAAgC,EAChC,wBAAwB,EACxB,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAA2B,MAAM,UAAU,CAAC;AAE9D,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,iBAAiB,CAAC,CAAU;IAE7B,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,SAAS,CAAC;gBAEd,MAAM,EAAE,OAAO;IAM3B,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;OAIG;IACG,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAI3D;;;;OAIG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAI/D;;;;OAIG;IACG,WAAW,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIzE;;;;OAIG;IACG,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAI1E;;;;OAIG;IACG,0BAA0B,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAgB5F;;;;OAIG;IACG,KAAK,CAAC,WAAW,EAAE,kBAAkB,GAAG,OAAO,CAAC,gCAAgC,CAAC;IA0BvF;;;;OAIG;IACG,IAAI,CACR,WAAW,EAAE,kBAAkB,EAC/B,0BAA0B,EAAE,gCAAgC,GAC3D,OAAO,CAAC,wBAAwB,CAAC;IAkBpC;;;OAGG;IACG,IAAI,CAAC,iBAAiB,EAAE,wBAAwB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAOpF;;;;OAIG;IACG,gBAAgB,CACpB,WAAW,EAAE,kBAAkB,EAC/B,WAAW,EAAE,kBAAkB,GAC9B,OAAO,CAAC,kBAAkB,CAAC;YAMhB,iBAAiB;YAOjB,oBAAoB;IAUlC,OAAO,CAAC,kBAAkB;YAIZ,cAAc;IAI5B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,qBAAqB;YAIf,8BAA8B;CAa7C"}
1
+ {"version":3,"file":"stakingWallet.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/staking/stakingWallet.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,gCAAgC,EAChC,cAAc,EACd,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAA2B,MAAM,UAAU,CAAC;AAE9D,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,iBAAiB,CAAC,CAAU;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IAE5B,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,SAAS,CAAC;gBAEd,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO;IAO9C,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;OAIG;IACG,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAI3D;;;;OAIG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAI/D;;;;OAIG;IACG,WAAW,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIzE;;;;OAIG;IACG,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAI1E;;;;OAIG;IACG,0BAA0B,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAgB5F;;;;OAIG;IACG,KAAK,CAAC,WAAW,EAAE,kBAAkB,GAAG,OAAO,CAAC,gCAAgC,CAAC;IA0BvF;;;;OAIG;IACG,IAAI,CACR,WAAW,EAAE,kBAAkB,EAC/B,0BAA0B,EAAE,gCAAgC,GAC3D,OAAO,CAAC,wBAAwB,CAAC;IAkBpC;;;OAGG;IACG,IAAI,CAAC,iBAAiB,EAAE,wBAAwB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAOpF;;;;OAIG;IACG,gBAAgB,CACpB,WAAW,EAAE,kBAAkB,EAC/B,WAAW,EAAE,kBAAkB,GAC9B,OAAO,CAAC,kBAAkB,CAAC;IAS9B;;;;OAIG;YACW,YAAY;YAQZ,iBAAiB;YAOjB,oBAAoB;IAUlC,OAAO,CAAC,kBAAkB;YAIZ,cAAc;IAI5B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,qBAAqB;YAIf,8BAA8B;CAa7C"}
@@ -3,10 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StakingWallet = void 0;
4
4
  const utils_1 = require("../utils");
5
5
  class StakingWallet {
6
- constructor(wallet) {
6
+ constructor(wallet, isEthTss) {
7
7
  this.wallet = wallet;
8
8
  this.bitgo = wallet.bitgo;
9
9
  this.tssUtil = new utils_1.TssUtils(this.bitgo, this.wallet.baseCoin, this.wallet);
10
+ this.isEthTss = isEthTss;
10
11
  }
11
12
  get walletId() {
12
13
  return this.wallet.id();
@@ -66,7 +67,7 @@ class StakingWallet {
66
67
  * @param transaction - staking transaction to build
67
68
  */
68
69
  async build(transaction) {
69
- if (this.wallet.baseCoin.supportsTss() && this.wallet.baseCoin.getFamily() !== 'eth') {
70
+ if ((this.wallet.baseCoin.supportsTss() && this.wallet.baseCoin.getFamily() !== 'eth') || this.isEthTss) {
70
71
  if (!transaction.txRequestId) {
71
72
  throw new Error('txRequestId is required to sign and send');
72
73
  }
@@ -127,9 +128,21 @@ class StakingWallet {
127
128
  * @param transaction
128
129
  */
129
130
  async buildSignAndSend(signOptions, transaction) {
130
- return await this.build(transaction)
131
- .then((result) => this.sign(signOptions, result))
132
- .then((result) => this.send(result));
131
+ return await this.buildAndSign(signOptions, transaction).then((result) => {
132
+ if (this.isEthTss) {
133
+ return result.transaction;
134
+ }
135
+ return this.send(result);
136
+ });
137
+ }
138
+ /**
139
+ * Build and sign the transaction.
140
+ * @param signOptions
141
+ * @param transaction
142
+ */
143
+ async buildAndSign(signOptions, transaction) {
144
+ const builtTx = await this.build(transaction);
145
+ return await this.sign(signOptions, builtTx);
133
146
  }
134
147
  async expandBuildParams(stakingTransaction) {
135
148
  return await this.bitgo
@@ -177,4 +190,4 @@ class StakingWallet {
177
190
  }
178
191
  }
179
192
  exports.StakingWallet = StakingWallet;
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ1dhbGxldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9zdGFraW5nL3N0YWtpbmdXYWxsZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBa0JBLG9DQUE4RDtBQUU5RCxNQUFhLGFBQWE7SUFPeEIsWUFBWSxNQUFlO1FBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksZ0JBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2RyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBcUI7UUFDL0IsT0FBTyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQXVCO1FBQ25DLE9BQU8sTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRDs7OztPQUlHO0lB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UUFDbEUsT0FBTyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsa0JBQWtCLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDaEgsQ0FBQztJQUVPLEtBQUssQ0FBQyw4QkFBOEI7UUFDMUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUU7WUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDM0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUs7cUJBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO3FCQUMzQyxPQUFPLEVBQUU7cUJBQ1QsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQ2xDO1lBQ0QsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7U0FDL0I7YUFBTTtZQUNMLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDckM7SUFDSCxDQUFDO0NBQ0Y7QUFsTkQsc0NBa05DIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHtcbiAgSVN0YWtpbmdXYWxsZXQsXG4gIFN0YWtpbmdSZXF1ZXN0LFxuICBUcmFuc2FjdGlvbnNSZWFkeVRvU2lnbixcbiAgU3Rha2luZ1RyYW5zYWN0aW9uLFxuICBTdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdCxcbiAgU3Rha2luZ1NpZ25lZFRyYW5zYWN0aW9uLFxuICBTdGFraW5nU2lnbk9wdGlvbnMsXG4gIFN0YWtlT3B0aW9ucyxcbiAgVW5zdGFrZU9wdGlvbnMsXG4gIERlbGVnYXRpb25SZXN1bHRzLFxuICBEZWxlZ2F0aW9uT3B0aW9ucyxcbn0gZnJvbSAnLi9pU3Rha2luZ1dhbGxldCc7XG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICcuLi9iaXRnb0Jhc2UnO1xuaW1wb3J0IHsgSVdhbGxldCB9IGZyb20gJy4uL3dhbGxldCc7XG5pbXBvcnQgeyBJVHNzVXRpbHMsIFJlcXVlc3RUcmFjZXIsIFRzc1V0aWxzIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgU3Rha2luZ1dhbGxldCBpbXBsZW1lbnRzIElTdGFraW5nV2FsbGV0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBiaXRnbzogQml0R29CYXNlO1xuICBwcml2YXRlIHRva2VuUGFyZW50V2FsbGV0PzogSVdhbGxldDtcblxuICBwdWJsaWMgd2FsbGV0OiBJV2FsbGV0O1xuICBwdWJsaWMgdHNzVXRpbDogSVRzc1V0aWxzO1xuXG4gIGNvbnN0cnVjdG9yKHdhbGxldDogSVdhbGxldCkge1xuICAgIHRoaXMud2FsbGV0ID0gd2FsbGV0O1xuICAgIHRoaXMuYml0Z28gPSB3YWxsZXQuYml0Z287XG4gICAgdGhpcy50c3NVdGlsID0gbmV3IFRzc1V0aWxzKHRoaXMuYml0Z28sIHRoaXMud2FsbGV0LmJhc2VDb2luLCB0aGlzLndhbGxldCk7XG4gIH1cblxuICBnZXQgd2FsbGV0SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy53YWxsZXQuaWQoKTtcbiAgfVxuXG4gIGdldCBjb2luKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMud2FsbGV0LmJhc2VDb2luLnRva2VuQ29uZmlnID8gdGhpcy53YWxsZXQuYmFzZUNvaW4udG9rZW5Db25maWcudHlwZSA6IHRoaXMud2FsbGV0LmNvaW4oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFrZSBjb2luc1xuICAgKiBAcGFyYW0gb3B0aW9ucyAtIHN0YWtlIG9wdGlvbnNcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgc3Rha2Uob3B0aW9uczogU3Rha2VPcHRpb25zKTogUHJvbWlzZTxTdGFraW5nUmVxdWVzdD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmNyZWF0ZVN0YWtpbmdSZXF1ZXN0KG9wdGlvbnMsICdTVEFLRScpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVuc3Rha2UgY29pbnNcbiAgICogQHBhcmFtIG9wdGlvbnMgLSB1bnN0YWtlIG9wdGlvbnNcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgdW5zdGFrZShvcHRpb25zOiBVbnN0YWtlT3B0aW9ucyk6IFByb21pc2U8U3Rha2luZ1JlcXVlc3Q+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5jcmVhdGVTdGFraW5nUmVxdWVzdChvcHRpb25zLCAnVU5TVEFLRScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIGRlbGVnYXRpb25zIGZvciBhIHNwZWNpZmljIHdhbGxldFxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIHVuc3Rha2Ugb3B0aW9uc1xuICAgKiBAcmV0dXJuIFN0YWtpbmdSZXF1ZXN0XG4gICAqL1xuICBhc3luYyBkZWxlZ2F0aW9ucyhvcHRpb25zOiBEZWxlZ2F0aW9uT3B0aW9ucyk6IFByb21pc2U8RGVsZWdhdGlvblJlc3VsdHM+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5nZXREZWxlZ2F0aW9ucyhvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSBzdGFraW5nIHJlcXVlc3QgYnkgSURcbiAgICogQHBhcmFtIHN0YWtpbmdSZXF1ZXN0SWQgLSBpZCBvZiB0aGUgc3Rha2luZyByZXF1ZXN0IHRvIHJldHJpZXZlXG4gICAqIEByZXR1cm4gU3Rha2luZ1JlcXVlc3RcbiAgICovXG4gIGFzeW5jIGdldFN0YWtpbmdSZXF1ZXN0KHN0YWtpbmdSZXF1ZXN0SWQ6IHN0cmluZyk6IFByb21pc2U8U3Rha2luZ1JlcXVlc3Q+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5iaXRnby5nZXQodGhpcy5iaXRnby5taWNyb3NlcnZpY2VzVXJsKHRoaXMuc3Rha2luZ1JlcXVlc3RVcmwoc3Rha2luZ1JlcXVlc3RJZCkpKS5yZXN1bHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb25zIHJlYWR5IHRvIHNpZ25cbiAgICogQHBhcmFtIHN0YWtpbmdSZXF1ZXN0SWRcbiAgICogQHJldHVybiBUcmFuc2FjdGlvbnNSZWFkeVRvU2lnblxuICAgKi9cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25zUmVhZHlUb1NpZ24oc3Rha2luZ1JlcXVlc3RJZDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2FjdGlvbnNSZWFkeVRvU2lnbj4ge1xuICAgIGNvbnN0IHN0YWtpbmdSZXF1ZXN0OiBTdGFraW5nUmVxdWVzdCA9IGF3YWl0IHRoaXMuZ2V0U3Rha2luZ1JlcXVlc3Qoc3Rha2luZ1JlcXVlc3RJZCk7XG4gICAgY29uc3QgcmVhZHlUb1NpZ246IFN0YWtpbmdUcmFuc2FjdGlvbltdID0gc3Rha2luZ1JlcXVlc3QudHJhbnNhY3Rpb25zLmZpbHRlcihcbiAgICAgICh0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKSA9PiB0cmFuc2FjdGlvbi5zdGF0dXMgPT09IGBSRUFEWWBcbiAgICApO1xuICAgIGNvbnN0IG5ld1RyYW5zYWN0aW9uczogU3Rha2luZ1RyYW5zYWN0aW9uW10gPSBzdGFraW5nUmVxdWVzdC50cmFuc2FjdGlvbnMuZmlsdGVyKFxuICAgICAgKHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pID0+IHRyYW5zYWN0aW9uLnN0YXR1cyA9PT0gYE5FV2BcbiAgICApO1xuXG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7XG4gICAgICBhbGxTaWduaW5nQ29tcGxldGU6XG4gICAgICAgIHN0YWtpbmdSZXF1ZXN0LnRyYW5zYWN0aW9ucy5sZW5ndGggPiAwICYmIG5ld1RyYW5zYWN0aW9ucy5sZW5ndGggPT09IDAgJiYgcmVhZHlUb1NpZ24ubGVuZ3RoID09PSAwLFxuICAgICAgdHJhbnNhY3Rpb25zOiByZWFkeVRvU2lnbixcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCB0aGUgc3Rha2luZyB0cmFuc2FjdGlvblxuICAgKiBJZiBUU1MgZGVsZXRlIHNpZ25hdHVyZSBzaGFyZXMsIGVsc2UgZXhwYW5kIGJ1aWxkIHBhcmFtcyBhbmQgdGhlbiBidWlsZFxuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb24gLSBzdGFraW5nIHRyYW5zYWN0aW9uIHRvIGJ1aWxkXG4gICAqL1xuICBhc3luYyBidWlsZCh0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKTogUHJvbWlzZTxTdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdD4ge1xuICAgIGlmICh0aGlzLndhbGxldC5iYXNlQ29pbi5zdXBwb3J0c1RzcygpICYmIHRoaXMud2FsbGV0LmJhc2VDb2luLmdldEZhbWlseSgpICE9PSAnZXRoJykge1xuICAgICAgaWYgKCF0cmFuc2FjdGlvbi50eFJlcXVlc3RJZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3R4UmVxdWVzdElkIGlzIHJlcXVpcmVkIHRvIHNpZ24gYW5kIHNlbmQnKTtcbiAgICAgIH1cbiAgICAgIC8vIGRlbGV0ZSBzaWduYXR1cmUgc2hhcmVzIGJlZm9yZSBzaWduaW5nIGZvciB0cmFuc2FjdGlvbiByZXF1ZXN0IEFQSVxuICAgICAgYXdhaXQgdGhpcy50c3NVdGlsLmRlbGV0ZVNpZ25hdHVyZVNoYXJlcyh0cmFuc2FjdGlvbi50eFJlcXVlc3RJZCk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cmFuc2FjdGlvbjogdHJhbnNhY3Rpb24sXG4gICAgICAgIHJlc3VsdDoge1xuICAgICAgICAgIHdhbGxldElkOiB0aGlzLndhbGxldElkLFxuICAgICAgICAgIHR4UmVxdWVzdElkOiB0cmFuc2FjdGlvbi50eFJlcXVlc3RJZCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRyYW5zYWN0aW9uID0gYXdhaXQgdGhpcy5leHBhbmRCdWlsZFBhcmFtcyh0cmFuc2FjdGlvbik7XG4gICAgICBpZiAoIXRyYW5zYWN0aW9uLmJ1aWxkUGFyYW1zKSB7XG4gICAgICAgIHRocm93IEVycm9yKGBTdGFraW5nIHRyYW5zYWN0aW9uICR7dHJhbnNhY3Rpb24uaWR9IGJ1aWxkIHBhcmFtcyBub3QgZXhwYW5kZWRgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zYWN0aW9uOiB0cmFuc2FjdGlvbixcbiAgICAgICAgcmVzdWx0OiBhd2FpdCAoYXdhaXQgdGhpcy5nZXRXYWxsZXRGb3JCdWlsZGluZ0FuZFNpZ25pbmcoKSkucHJlYnVpbGRUcmFuc2FjdGlvbih0cmFuc2FjdGlvbi5idWlsZFBhcmFtcyksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTaWduIHRoZSBzdGFraW5nIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSBzaWduT3B0aW9uc1xuICAgKiBAcGFyYW0gc3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb25cbiAgICovXG4gIGFzeW5jIHNpZ24oXG4gICAgc2lnbk9wdGlvbnM6IFN0YWtpbmdTaWduT3B0aW9ucyxcbiAgICBzdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvbjogU3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHRcbiAgKTogUHJvbWlzZTxTdGFraW5nU2lnbmVkVHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCByZXFJZCA9IG5ldyBSZXF1ZXN0VHJhY2VyKCk7XG4gICAgY29uc3Qga2V5Y2hhaW4gPSBhd2FpdCB0aGlzLndhbGxldC5iYXNlQ29pbi5rZXljaGFpbnMoKS5nZXRLZXlzRm9yU2lnbmluZyh7XG4gICAgICB3YWxsZXQ6IHRoaXMud2FsbGV0LFxuICAgICAgcmVxSWQ6IHJlcUlkLFxuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICB0cmFuc2FjdGlvbjogc3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb24udHJhbnNhY3Rpb24sXG4gICAgICBzaWduZWQ6IGF3YWl0IChcbiAgICAgICAgYXdhaXQgdGhpcy5nZXRXYWxsZXRGb3JCdWlsZGluZ0FuZFNpZ25pbmcoKVxuICAgICAgKS5zaWduVHJhbnNhY3Rpb24oe1xuICAgICAgICB0eFByZWJ1aWxkOiBzdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvbi5yZXN1bHQsXG4gICAgICAgIHdhbGxldFBhc3NwaHJhc2U6IHNpZ25PcHRpb25zLndhbGxldFBhc3NwaHJhc2UsXG4gICAgICAgIGtleWNoYWluOiBrZXljaGFpblswXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogU2VuZCB0aGUgc2lnbmVkIHN0YWtpbmcgdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHNpZ25lZFRyYW5zYWN0aW9uXG4gICAqL1xuICBhc3luYyBzZW5kKHNpZ25lZFRyYW5zYWN0aW9uOiBTdGFraW5nU2lnbmVkVHJhbnNhY3Rpb24pOiBQcm9taXNlPFN0YWtpbmdUcmFuc2FjdGlvbj4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAucG9zdCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nVHJhbnNhY3Rpb25VUkwoc2lnbmVkVHJhbnNhY3Rpb24udHJhbnNhY3Rpb24pKSlcbiAgICAgIC5zZW5kKHNpZ25lZFRyYW5zYWN0aW9uLnNpZ25lZClcbiAgICAgIC5yZXN1bHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCwgc2lnbiBhbmQgc2VuZCB0aGUgdHJhbnNhY3Rpb24uXG4gICAqIEBwYXJhbSBzaWduT3B0aW9uc1xuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb25cbiAgICovXG4gIGFzeW5jIGJ1aWxkU2lnbkFuZFNlbmQoXG4gICAgc2lnbk9wdGlvbnM6IFN0YWtpbmdTaWduT3B0aW9ucyxcbiAgICB0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uXG4gICk6IFByb21pc2U8U3Rha2luZ1RyYW5zYWN0aW9uPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYnVpbGQodHJhbnNhY3Rpb24pXG4gICAgICAudGhlbigocmVzdWx0OiBTdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdCkgPT4gdGhpcy5zaWduKHNpZ25PcHRpb25zLCByZXN1bHQpKVxuICAgICAgLnRoZW4oKHJlc3VsdDogU3Rha2luZ1NpZ25lZFRyYW5zYWN0aW9uKSA9PiB0aGlzLnNlbmQocmVzdWx0KSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGV4cGFuZEJ1aWxkUGFyYW1zKHN0YWtpbmdUcmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKTogUHJvbWlzZTxTdGFraW5nVHJhbnNhY3Rpb24+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5iaXRnb1xuICAgICAgLmdldCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nVHJhbnNhY3Rpb25VUkwoc3Rha2luZ1RyYW5zYWN0aW9uKSkpXG4gICAgICAucXVlcnkoeyBleHBhbmRCdWlsZFBhcmFtczogdHJ1ZSB9KVxuICAgICAgLnJlc3VsdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBjcmVhdGVTdGFraW5nUmVxdWVzdChvcHRpb25zOiBTdGFrZU9wdGlvbnMgfCBVbnN0YWtlT3B0aW9ucywgdHlwZTogc3RyaW5nKTogUHJvbWlzZTxTdGFraW5nUmVxdWVzdD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAucG9zdCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nUmVxdWVzdHNVUkwoKSkpXG4gICAgICAuc2VuZCh7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIHR5cGU6IHR5cGUsXG4gICAgICB9KVxuICAgICAgLnJlc3VsdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFraW5nUmVxdWVzdHNVUkwoKSB7XG4gICAgcmV0dXJuIGAvYXBpL3N0YWtpbmcvdjEvJHt0aGlzLmNvaW59L3dhbGxldHMvJHt0aGlzLndhbGxldElkfS9yZXF1ZXN0c2A7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldERlbGVnYXRpb25zKG9wdGlvbnM6IERlbGVnYXRpb25PcHRpb25zKTogUHJvbWlzZTxEZWxlZ2F0aW9uUmVzdWx0cz4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvLmdldCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nRGVsZWdhdGlvbnNVUkwoKSkpLnF1ZXJ5KG9wdGlvbnMpLnJlc3VsdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFraW5nRGVsZWdhdGlvbnNVUkwoKSB7XG4gICAgcmV0dXJuIGAvYXBpL3N0YWtpbmcvdjEvJHt0aGlzLmNvaW59L3dhbGxldHMvJHt0aGlzLndhbGxldElkfS9kZWxlZ2F0aW9uc2A7XG4gIH1cblxuICBwcml2YXRlIHN0YWtpbmdSZXF1ZXN0VXJsKHN0YWtpbmdSZXF1ZXN0SWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMuc3Rha2luZ1JlcXVlc3RzVVJMKCl9LyR7c3Rha2luZ1JlcXVlc3RJZH1gO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFraW5nVHJhbnNhY3Rpb25VUkwoc3Rha2luZ1RyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLnN0YWtpbmdSZXF1ZXN0VXJsKHN0YWtpbmdUcmFuc2FjdGlvbi5zdGFraW5nUmVxdWVzdElkKX0vdHJhbnNhY3Rpb25zLyR7c3Rha2luZ1RyYW5zYWN0aW9uLmlkfWA7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldFdhbGxldEZvckJ1aWxkaW5nQW5kU2lnbmluZygpOiBQcm9taXNlPElXYWxsZXQ+IHtcbiAgICBpZiAodGhpcy53YWxsZXQuYmFzZUNvaW4udG9rZW5Db25maWcpIHtcbiAgICAgIGlmICghdGhpcy50b2tlblBhcmVudFdhbGxldCkge1xuICAgICAgICB0aGlzLnRva2VuUGFyZW50V2FsbGV0ID0gYXdhaXQgdGhpcy5iaXRnb1xuICAgICAgICAgIC5jb2luKHRoaXMud2FsbGV0LmJhc2VDb2luLnRva2VuQ29uZmlnLmNvaW4pXG4gICAgICAgICAgLndhbGxldHMoKVxuICAgICAgICAgIC5nZXQoeyBpZDogdGhpcy53YWxsZXQuaWQoKSB9KTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLnRva2VuUGFyZW50V2FsbGV0O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMud2FsbGV0KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ1dhbGxldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9zdGFraW5nL3N0YWtpbmdXYWxsZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBa0JBLG9DQUE4RDtBQUU5RCxNQUFhLGFBQWE7SUFReEIsWUFBWSxNQUFlLEVBQUUsUUFBaUI7UUFDNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxnQkFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZHLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFxQjtRQUMvQixPQUFPLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBdUI7UUFDbkMsT0FBTyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFP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ZWxlZ2F0aW9uT3B0aW9ucyxcbiAgRGVsZWdhdGlvblJlc3VsdHMsXG4gIElTdGFraW5nV2FsbGV0LFxuICBTdGFrZU9wdGlvbnMsXG4gIFN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0LFxuICBTdGFraW5nUmVxdWVzdCxcbiAgU3Rha2luZ1NpZ25lZFRyYW5zYWN0aW9uLFxuICBTdGFraW5nU2lnbk9wdGlvbnMsXG4gIFN0YWtpbmdUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb25zUmVhZHlUb1NpZ24sXG4gIFVuc3Rha2VPcHRpb25zLFxufSBmcm9tICcuL2lTdGFraW5nV2FsbGV0JztcbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQgeyBJV2FsbGV0IH0gZnJvbSAnLi4vd2FsbGV0JztcbmltcG9ydCB7IElUc3NVdGlscywgUmVxdWVzdFRyYWNlciwgVHNzVXRpbHMgfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBTdGFraW5nV2FsbGV0IGltcGxlbWVudHMgSVN0YWtpbmdXYWxsZXQge1xuICBwcml2YXRlIHJlYWRvbmx5IGJpdGdvOiBCaXRHb0Jhc2U7XG4gIHByaXZhdGUgdG9rZW5QYXJlbnRXYWxsZXQ/OiBJV2FsbGV0O1xuICBwcml2YXRlIHJlYWRvbmx5IGlzRXRoVHNzOiBib29sZWFuO1xuXG4gIHB1YmxpYyB3YWxsZXQ6IElXYWxsZXQ7XG4gIHB1YmxpYyB0c3NVdGlsOiBJVHNzVXRpbHM7XG5cbiAgY29uc3RydWN0b3Iod2FsbGV0OiBJV2FsbGV0LCBpc0V0aFRzczogYm9vbGVhbikge1xuICAgIHRoaXMud2FsbGV0ID0gd2FsbGV0O1xuICAgIHRoaXMuYml0Z28gPSB3YWxsZXQuYml0Z287XG4gICAgdGhpcy50c3NVdGlsID0gbmV3IFRzc1V0aWxzKHRoaXMuYml0Z28sIHRoaXMud2FsbGV0LmJhc2VDb2luLCB0aGlzLndhbGxldCk7XG4gICAgdGhpcy5pc0V0aFRzcyA9IGlzRXRoVHNzO1xuICB9XG5cbiAgZ2V0IHdhbGxldElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMud2FsbGV0LmlkKCk7XG4gIH1cblxuICBnZXQgY29pbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLndhbGxldC5iYXNlQ29pbi50b2tlbkNvbmZpZyA/IHRoaXMud2FsbGV0LmJhc2VDb2luLnRva2VuQ29uZmlnLnR5cGUgOiB0aGlzLndhbGxldC5jb2luKCk7XG4gIH1cblxuICAvKipcbiAgICogU3Rha2UgY29pbnNcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBzdGFrZSBvcHRpb25zXG4gICAqIEByZXR1cm4gU3Rha2luZ1JlcXVlc3RcbiAgICovXG4gIGFzeW5jIHN0YWtlKG9wdGlvbnM6IFN0YWtlT3B0aW9ucyk6IFByb21pc2U8U3Rha2luZ1JlcXVlc3Q+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5jcmVhdGVTdGFraW5nUmVxdWVzdChvcHRpb25zLCAnU1RBS0UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVbnN0YWtlIGNvaW5zXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gdW5zdGFrZSBvcHRpb25zXG4gICAqIEByZXR1cm4gU3Rha2luZ1JlcXVlc3RcbiAgICovXG4gIGFzeW5jIHVuc3Rha2Uob3B0aW9uczogVW5zdGFrZU9wdGlvbnMpOiBQcm9taXNlPFN0YWtpbmdSZXF1ZXN0PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuY3JlYXRlU3Rha2luZ1JlcXVlc3Qob3B0aW9ucywgJ1VOU1RBS0UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBkZWxlZ2F0aW9ucyBmb3IgYSBzcGVjaWZpYyB3YWxsZXRcbiAgICogQHBhcmFtIG9wdGlvbnMgLSB1bnN0YWtlIG9wdGlvbnNcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgZGVsZWdhdGlvbnMob3B0aW9uczogRGVsZWdhdGlvbk9wdGlvbnMpOiBQcm9taXNlPERlbGVnYXRpb25SZXN1bHRzPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuZ2V0RGVsZWdhdGlvbnMob3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGEgc3Rha2luZyByZXF1ZXN0IGJ5IElEXG4gICAqIEBwYXJhbSBzdGFraW5nUmVxdWVzdElkIC0gaWQgb2YgdGhlIHN0YWtpbmcgcmVxdWVzdCB0byByZXRyaWV2ZVxuICAgKiBAcmV0dXJuIFN0YWtpbmdSZXF1ZXN0XG4gICAqL1xuICBhc3luYyBnZXRTdGFraW5nUmVxdWVzdChzdGFraW5nUmVxdWVzdElkOiBzdHJpbmcpOiBQcm9taXNlPFN0YWtpbmdSZXF1ZXN0PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z28uZ2V0KHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybCh0aGlzLnN0YWtpbmdSZXF1ZXN0VXJsKHN0YWtpbmdSZXF1ZXN0SWQpKSkucmVzdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9ucyByZWFkeSB0byBzaWduXG4gICAqIEBwYXJhbSBzdGFraW5nUmVxdWVzdElkXG4gICAqIEByZXR1cm4gVHJhbnNhY3Rpb25zUmVhZHlUb1NpZ25cbiAgICovXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uc1JlYWR5VG9TaWduKHN0YWtpbmdSZXF1ZXN0SWQ6IHN0cmluZyk6IFByb21pc2U8VHJhbnNhY3Rpb25zUmVhZHlUb1NpZ24+IHtcbiAgICBjb25zdCBzdGFraW5nUmVxdWVzdDogU3Rha2luZ1JlcXVlc3QgPSBhd2FpdCB0aGlzLmdldFN0YWtpbmdSZXF1ZXN0KHN0YWtpbmdSZXF1ZXN0SWQpO1xuICAgIGNvbnN0IHJlYWR5VG9TaWduOiBTdGFraW5nVHJhbnNhY3Rpb25bXSA9IHN0YWtpbmdSZXF1ZXN0LnRyYW5zYWN0aW9ucy5maWx0ZXIoXG4gICAgICAodHJhbnNhY3Rpb246IFN0YWtpbmdUcmFuc2FjdGlvbikgPT4gdHJhbnNhY3Rpb24uc3RhdHVzID09PSBgUkVBRFlgXG4gICAgKTtcbiAgICBjb25zdCBuZXdUcmFuc2FjdGlvbnM6IFN0YWtpbmdUcmFuc2FjdGlvbltdID0gc3Rha2luZ1JlcXVlc3QudHJhbnNhY3Rpb25zLmZpbHRlcihcbiAgICAgICh0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKSA9PiB0cmFuc2FjdGlvbi5zdGF0dXMgPT09IGBORVdgXG4gICAgKTtcblxuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoe1xuICAgICAgYWxsU2lnbmluZ0NvbXBsZXRlOlxuICAgICAgICBzdGFraW5nUmVxdWVzdC50cmFuc2FjdGlvbnMubGVuZ3RoID4gMCAmJiBuZXdUcmFuc2FjdGlvbnMubGVuZ3RoID09PSAwICYmIHJlYWR5VG9TaWduLmxlbmd0aCA9PT0gMCxcbiAgICAgIHRyYW5zYWN0aW9uczogcmVhZHlUb1NpZ24sXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgdGhlIHN0YWtpbmcgdHJhbnNhY3Rpb25cbiAgICogSWYgVFNTIGRlbGV0ZSBzaWduYXR1cmUgc2hhcmVzLCBlbHNlIGV4cGFuZCBidWlsZCBwYXJhbXMgYW5kIHRoZW4gYnVpbGRcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uIC0gc3Rha2luZyB0cmFuc2FjdGlvbiB0byBidWlsZFxuICAgKi9cbiAgYXN5bmMgYnVpbGQodHJhbnNhY3Rpb246IFN0YWtpbmdUcmFuc2FjdGlvbik6IFByb21pc2U8U3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHQ+IHtcbiAgICBpZiAoKHRoaXMud2FsbGV0LmJhc2VDb2luLnN1cHBvcnRzVHNzKCkgJiYgdGhpcy53YWxsZXQuYmFzZUNvaW4uZ2V0RmFtaWx5KCkgIT09ICdldGgnKSB8fCB0aGlzLmlzRXRoVHNzKSB7XG4gICAgICBpZiAoIXRyYW5zYWN0aW9uLnR4UmVxdWVzdElkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcigndHhSZXF1ZXN0SWQgaXMgcmVxdWlyZWQgdG8gc2lnbiBhbmQgc2VuZCcpO1xuICAgICAgfVxuICAgICAgLy8gZGVsZXRlIHNpZ25hdHVyZSBzaGFyZXMgYmVmb3JlIHNpZ25pbmcgZm9yIHRyYW5zYWN0aW9uIHJlcXVlc3QgQVBJXG4gICAgICBhd2FpdCB0aGlzLnRzc1V0aWwuZGVsZXRlU2lnbmF0dXJlU2hhcmVzKHRyYW5zYWN0aW9uLnR4UmVxdWVzdElkKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zYWN0aW9uOiB0cmFuc2FjdGlvbixcbiAgICAgICAgcmVzdWx0OiB7XG4gICAgICAgICAgd2FsbGV0SWQ6IHRoaXMud2FsbGV0SWQsXG4gICAgICAgICAgdHhSZXF1ZXN0SWQ6IHRyYW5zYWN0aW9uLnR4UmVxdWVzdElkLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgdHJhbnNhY3Rpb24gPSBhd2FpdCB0aGlzLmV4cGFuZEJ1aWxkUGFyYW1zKHRyYW5zYWN0aW9uKTtcbiAgICAgIGlmICghdHJhbnNhY3Rpb24uYnVpbGRQYXJhbXMpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYFN0YWtpbmcgdHJhbnNhY3Rpb24gJHt0cmFuc2FjdGlvbi5pZH0gYnVpbGQgcGFyYW1zIG5vdCBleHBhbmRlZGApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHJhbnNhY3Rpb246IHRyYW5zYWN0aW9uLFxuICAgICAgICByZXN1bHQ6IGF3YWl0IChhd2FpdCB0aGlzLmdldFdhbGxldEZvckJ1aWxkaW5nQW5kU2lnbmluZygpKS5wcmVidWlsZFRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uLmJ1aWxkUGFyYW1zKSxcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNpZ24gdGhlIHN0YWtpbmcgdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHNpZ25PcHRpb25zXG4gICAqIEBwYXJhbSBzdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvblxuICAgKi9cbiAgYXN5bmMgc2lnbihcbiAgICBzaWduT3B0aW9uczogU3Rha2luZ1NpZ25PcHRpb25zLFxuICAgIHN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uOiBTdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdFxuICApOiBQcm9taXNlPFN0YWtpbmdTaWduZWRUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IHJlcUlkID0gbmV3IFJlcXVlc3RUcmFjZXIoKTtcbiAgICBjb25zdCBrZXljaGFpbiA9IGF3YWl0IHRoaXMud2FsbGV0LmJhc2VDb2luLmtleWNoYWlucygpLmdldEtleXNGb3JTaWduaW5nKHtcbiAgICAgIHdhbGxldDogdGhpcy53YWxsZXQsXG4gICAgICByZXFJZDogcmVxSWQsXG4gICAgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRyYW5zYWN0aW9uOiBzdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbixcbiAgICAgIHNpZ25lZDogYXdhaXQgKFxuICAgICAgICBhd2FpdCB0aGlzLmdldFdhbGxldEZvckJ1aWxkaW5nQW5kU2lnbmluZygpXG4gICAgICApLnNpZ25UcmFuc2FjdGlvbih7XG4gICAgICAgIHR4UHJlYnVpbGQ6IHN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uLnJlc3VsdCxcbiAgICAgICAgd2FsbGV0UGFzc3BocmFzZTogc2lnbk9wdGlvbnMud2FsbGV0UGFzc3BocmFzZSxcbiAgICAgICAga2V5Y2hhaW46IGtleWNoYWluWzBdLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kIHRoZSBzaWduZWQgc3Rha2luZyB0cmFuc2FjdGlvblxuICAgKiBAcGFyYW0gc2lnbmVkVHJhbnNhY3Rpb25cbiAgICovXG4gIGFzeW5jIHNlbmQoc2lnbmVkVHJhbnNhY3Rpb246IFN0YWtpbmdTaWduZWRUcmFuc2FjdGlvbik6IFByb21pc2U8U3Rha2luZ1RyYW5zYWN0aW9uPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z29cbiAgICAgIC5wb3N0KHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybCh0aGlzLnN0YWtpbmdUcmFuc2FjdGlvblVSTChzaWduZWRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbikpKVxuICAgICAgLnNlbmQoc2lnbmVkVHJhbnNhY3Rpb24uc2lnbmVkKVxuICAgICAgLnJlc3VsdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkLCBzaWduIGFuZCBzZW5kIHRoZSB0cmFuc2FjdGlvbi5cbiAgICogQHBhcmFtIHNpZ25PcHRpb25zXG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvblxuICAgKi9cbiAgYXN5bmMgYnVpbGRTaWduQW5kU2VuZChcbiAgICBzaWduT3B0aW9uczogU3Rha2luZ1NpZ25PcHRpb25zLFxuICAgIHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb25cbiAgKTogUHJvbWlzZTxTdGFraW5nVHJhbnNhY3Rpb24+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5idWlsZEFuZFNpZ24oc2lnbk9wdGlvbnMsIHRyYW5zYWN0aW9uKS50aGVuKChyZXN1bHQ6IFN0YWtpbmdTaWduZWRUcmFuc2FjdGlvbikgPT4ge1xuICAgICAgaWYgKHRoaXMuaXNFdGhUc3MpIHtcbiAgICAgICAgcmV0dXJuIHJlc3VsdC50cmFuc2FjdGlvbjtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLnNlbmQocmVzdWx0KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCBhbmQgc2lnbiB0aGUgdHJhbnNhY3Rpb24uXG4gICAqIEBwYXJhbSBzaWduT3B0aW9uc1xuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb25cbiAgICovXG4gIHByaXZhdGUgYXN5bmMgYnVpbGRBbmRTaWduKFxuICAgIHNpZ25PcHRpb25zOiBTdGFraW5nU2lnbk9wdGlvbnMsXG4gICAgdHJhbnNhY3Rpb246IFN0YWtpbmdUcmFuc2FjdGlvblxuICApOiBQcm9taXNlPFN0YWtpbmdTaWduZWRUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IGJ1aWx0VHggPSBhd2FpdCB0aGlzLmJ1aWxkKHRyYW5zYWN0aW9uKTtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5zaWduKHNpZ25PcHRpb25zLCBidWlsdFR4KTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZXhwYW5kQnVpbGRQYXJhbXMoc3Rha2luZ1RyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pOiBQcm9taXNlPFN0YWtpbmdUcmFuc2FjdGlvbj4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAuZ2V0KHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybCh0aGlzLnN0YWtpbmdUcmFuc2FjdGlvblVSTChzdGFraW5nVHJhbnNhY3Rpb24pKSlcbiAgICAgIC5xdWVyeSh7IGV4cGFuZEJ1aWxkUGFyYW1zOiB0cnVlIH0pXG4gICAgICAucmVzdWx0KCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNyZWF0ZVN0YWtpbmdSZXF1ZXN0KG9wdGlvbnM6IFN0YWtlT3B0aW9ucyB8IFVuc3Rha2VPcHRpb25zLCB0eXBlOiBzdHJpbmcpOiBQcm9taXNlPFN0YWtpbmdSZXF1ZXN0PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z29cbiAgICAgIC5wb3N0KHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybCh0aGlzLnN0YWtpbmdSZXF1ZXN0c1VSTCgpKSlcbiAgICAgIC5zZW5kKHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgdHlwZTogdHlwZSxcbiAgICAgIH0pXG4gICAgICAucmVzdWx0KCk7XG4gIH1cblxuICBwcml2YXRlIHN0YWtpbmdSZXF1ZXN0c1VSTCgpIHtcbiAgICByZXR1cm4gYC9hcGkvc3Rha2luZy92MS8ke3RoaXMuY29pbn0vd2FsbGV0cy8ke3RoaXMud2FsbGV0SWR9L3JlcXVlc3RzYDtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0RGVsZWdhdGlvbnMob3B0aW9uczogRGVsZWdhdGlvbk9wdGlvbnMpOiBQcm9taXNlPERlbGVnYXRpb25SZXN1bHRzPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z28uZ2V0KHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybCh0aGlzLnN0YWtpbmdEZWxlZ2F0aW9uc1VSTCgpKSkucXVlcnkob3B0aW9ucykucmVzdWx0KCk7XG4gIH1cblxuICBwcml2YXRlIHN0YWtpbmdEZWxlZ2F0aW9uc1VSTCgpIHtcbiAgICByZXR1cm4gYC9hcGkvc3Rha2luZy92MS8ke3RoaXMuY29pbn0vd2FsbGV0cy8ke3RoaXMud2FsbGV0SWR9L2RlbGVnYXRpb25zYDtcbiAgfVxuXG4gIHByaXZhdGUgc3Rha2luZ1JlcXVlc3RVcmwoc3Rha2luZ1JlcXVlc3RJZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5zdGFraW5nUmVxdWVzdHNVUkwoKX0vJHtzdGFraW5nUmVxdWVzdElkfWA7XG4gIH1cblxuICBwcml2YXRlIHN0YWtpbmdUcmFuc2FjdGlvblVSTChzdGFraW5nVHJhbnNhY3Rpb246IFN0YWtpbmdUcmFuc2FjdGlvbik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMuc3Rha2luZ1JlcXVlc3RVcmwoc3Rha2luZ1RyYW5zYWN0aW9uLnN0YWtpbmdSZXF1ZXN0SWQpfS90cmFuc2FjdGlvbnMvJHtzdGFraW5nVHJhbnNhY3Rpb24uaWR9YDtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0V2FsbGV0Rm9yQnVpbGRpbmdBbmRTaWduaW5nKCk6IFByb21pc2U8SVdhbGxldD4ge1xuICAgIGlmICh0aGlzLndhbGxldC5iYXNlQ29pbi50b2tlbkNvbmZpZykge1xuICAgICAgaWYgKCF0aGlzLnRva2VuUGFyZW50V2FsbGV0KSB7XG4gICAgICAgIHRoaXMudG9rZW5QYXJlbnRXYWxsZXQgPSBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAgICAgLmNvaW4odGhpcy53YWxsZXQuYmFzZUNvaW4udG9rZW5Db25maWcuY29pbilcbiAgICAgICAgICAud2FsbGV0cygpXG4gICAgICAgICAgLmdldCh7IGlkOiB0aGlzLndhbGxldC5pZCgpIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMudG9rZW5QYXJlbnRXYWxsZXQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy53YWxsZXQpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -4,6 +4,7 @@ import { SignatureShareRecord, SignatureShareType, RequestType } from './../../u
4
4
  import { ShareKeyPosition } from '../types';
5
5
  import { BitGoBase } from '../../bitgoBase';
6
6
  import { KShare, MUShare, SShare } from '../../../account-lib/mpc/tss/ecdsa/types';
7
+ import { ApiKeyShare } from '../../keychain';
7
8
  /**
8
9
  * Combines NShares to combine the final TSS key
9
10
  * This can only be used to create the User or Backup key since it requires the common keychain from BitGo first
@@ -79,6 +80,14 @@ export declare function getBitgoToUserLatestShare(bitgo: BitGoBase, walletId: st
79
80
  * @returns encrypted N Share
80
81
  */
81
82
  export declare function encryptNShare(keyShare: KeyShare, recipientIndex: number, recipientGpgPublicArmor: string, isbs58Encoded?: boolean): Promise<EncryptedNShare>;
83
+ /**
84
+ * Prepares a NShare to be exchanged with other key holders.
85
+ * An API key share received from a third party should already be encrypted
86
+ *
87
+ * @param keyShare - TSS key share of the party preparing exchange materials
88
+ * @returns encrypted N Share
89
+ */
90
+ export declare function buildNShareFromAPIKeyShare(keyShare: ApiKeyShare): Promise<EncryptedNShare>;
82
91
  /**
83
92
  * Decrypts encrypted n share
84
93
  * @param encryptedNShare - decryptable n share with recipient private gpg key armor and sender public gpg key
@@ -1 +1 @@
1
- {"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["../../../../../src/bitgo/tss/ecdsa/ecdsa.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["../../../../../src/bitgo/tss/ecdsa/ecdsa.ts"],"names":[],"mappings":"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"}