@bitgo/sdk-coin-celo 3.0.26 → 3.0.28

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [3.0.28](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-celo@3.0.27...@bitgo/sdk-coin-celo@3.0.28) (2024-09-16)
7
+
8
+ **Note:** Version bump only for package @bitgo/sdk-coin-celo
9
+
10
+ ## [3.0.27](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-celo@3.0.26...@bitgo/sdk-coin-celo@3.0.27) (2024-09-10)
11
+
12
+ **Note:** Version bump only for package @bitgo/sdk-coin-celo
13
+
6
14
  ## [3.0.26](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-celo@3.0.25...@bitgo/sdk-coin-celo@3.0.26) (2024-09-03)
7
15
 
8
16
  **Note:** Version bump only for package @bitgo/sdk-coin-celo
@@ -9,6 +9,22 @@ const wallet_local_1 = require("@celo/wallet-local");
9
9
  const ethereumjs_util_1 = require("ethereumjs-util");
10
10
  const sdk_coin_eth_1 = require("@bitgo/sdk-coin-eth");
11
11
  class CeloTransaction {
12
+ // TODO: validate if this needs to be moved to Utils class
13
+ /**
14
+ * Clean hex formatted values ensuring they have an even length
15
+ *
16
+ * @param numberValue Hex formatted number value. Example '0x01'
17
+ * @returns sanitized value
18
+ */
19
+ sanitizeHexString(numberValue) {
20
+ if (numberValue === '0x0' || numberValue == '') {
21
+ return '0x';
22
+ }
23
+ else if (numberValue.length % 2 === 0) {
24
+ return numberValue;
25
+ }
26
+ return '0x0' + numberValue.slice(2);
27
+ }
12
28
  constructor(tx) {
13
29
  this._feeCurrency = (0, ethereumjs_util_1.toBuffer)('0x');
14
30
  this._gatewayFeeRecipient = (0, ethereumjs_util_1.toBuffer)('0x');
@@ -39,22 +55,6 @@ class CeloTransaction {
39
55
  }
40
56
  this.initRaw();
41
57
  }
42
- // TODO: validate if this needs to be moved to Utils class
43
- /**
44
- * Clean hex formatted values ensuring they have an even length
45
- *
46
- * @param numberValue Hex formatted number value. Example '0x01'
47
- * @returns sanitized value
48
- */
49
- sanitizeHexString(numberValue) {
50
- if (numberValue === '0x0' || numberValue == '') {
51
- return '0x';
52
- }
53
- else if (numberValue.length % 2 === 0) {
54
- return numberValue;
55
- }
56
- return '0x0' + numberValue.slice(2);
57
- }
58
58
  initRaw() {
59
59
  this.raw = [
60
60
  this.nonce,
@@ -220,4 +220,4 @@ class CeloTransactionData {
220
220
  }
221
221
  }
222
222
  exports.CeloTransactionData = CeloTransactionData;
223
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGdFQUFxQztBQUNyQyxxREFBaUQ7QUFDakQscURBVXlCO0FBRXpCLHNEQUF3RztBQUV4RyxNQUFhLGVBQWU7SUFrQzFCLFlBQVksRUFBZ0I7UUE3QnBCLGlCQUFZLEdBQVcsSUFBQSwwQkFBUSxFQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLHlCQUFvQixHQUFXLElBQUEsMEJBQVEsRUFBQyxJQUFJLENBQUMsQ0FBQztRQUM5QyxnQkFBVyxHQUFXLElBQUEsMEJBQVEsRUFBQyxJQUFJLENBQUMsQ0FBQztRQU03QyxPQUFFLEdBQVcsSUFBQSwwQkFBUSxFQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLE1BQUMsR0FBVyxJQUFBLDBCQUFRLEVBQUMsRUFBRSxDQUFDLENBQUM7UUFDekIsTUFBQyxHQUFXLElBQUEsMEJBQVEsRUFBQyxFQUFFLENBQUMsQ0FBQztRQUN6QixNQUFDLEdBQVcsSUFBQSwwQkFBUSxFQUFDLEVBQUUsQ0FBQyxDQUFDO1FBbUJ2QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUEsNkJBQVcsRUFBQyxJQUFBLDBCQUFRLEVBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFBLDBCQUFRLEVBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBQSwwQkFBUSxFQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUEsMEJBQVEsRUFBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFD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QUFDO1lBQ3ZDLFFBQVEsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEdBQUc7WUFDMUIsSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHO1NBQ3BCLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFuSEQsa0RBbUhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHsgTG9jYWxXYWxsZXQgfSBmcm9tICdAY2Vsby93YWxsZXQtbG9jYWwnO1xuaW1wb3J0IHtcbiAgYWRkSGV4UHJlZml4LFxuICB0b0J1ZmZlcixcbiAgYnVmZmVyVG9IZXgsXG4gIGJ1ZmZlclRvSW50LFxuICBybHAsXG4gIHJscGhhc2gsXG4gIGVjcmVjb3ZlcixcbiAgcHVibGljVG9BZGRyZXNzLFxuICB1bnBhZEJ1ZmZlcixcbn0gZnJvbSAnZXRoZXJldW1qcy11dGlsJztcbmltcG9ydCB7IENlbG9UeCwgRW5jb2RlZFRyYW5zYWN0aW9uIH0gZnJvbSAnQGNlbG8vY29ubmVjdCc7XG5pbXBvcnQgeyBFdGhMaWtlVHJhbnNhY3Rpb25EYXRhLCBFVEhUcmFuc2FjdGlvblR5cGUsIEtleVBhaXIsIExlZ2FjeVR4RGF0YSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1ldGgnO1xuXG5leHBvcnQgY2xhc3MgQ2Vsb1RyYW5zYWN0aW9uIHtcbiAgcHJpdmF0ZSByYXc6IEJ1ZmZlcltdO1xuICBwcml2YXRlIF9mcm9tOiBCdWZmZXI7XG4gIHByaXZhdGUgX3NlbmRlclB1YktleT87XG4gIHByaXZhdGUgX3NpZ25hdHVyZXM6IEJ1ZmZlcltdO1xuICBwcml2YXRlIF9mZWVDdXJyZW5jeTogQnVmZmVyID0gdG9CdWZmZXIoJzB4Jyk7XG4gIHByaXZhdGUgX2dhdGV3YXlGZWVSZWNpcGllbnQ6IEJ1ZmZlciA9IHRvQnVmZmVyKCcweCcpO1xuICBwcml2YXRlIF9nYXRld2F5RmVlOiBCdWZmZXIgPSB0b0J1ZmZlcignMHgnKTtcbiAgbm9uY2U6IEJ1ZmZlcjtcbiAgZ2FzTGltaXQ6IEJ1ZmZlcjtcbiAgZ2FzUHJpY2U6IEJ1ZmZlcjtcbiAgZGF0YTogQnVmZmVyO1xuICB2YWx1ZTogQnVmZmVyO1xuICB0bzogQnVmZmVyID0gdG9CdWZmZXIoW10pO1xuICB2OiBCdWZmZXIgPSB0b0J1ZmZlcihbXSk7XG4gIHI6IEJ1ZmZlciA9IHRvQnVmZmVyKFtdKTtcbiAgczogQnVmZmVyID0gdG9CdWZmZXIoW10pO1xuXG4gIC8vIFRPRE86IHZhbGlkYXRlIGlmIHRoaXMgbmVlZHMgdG8gYmUgbW92ZWQgdG8gVXRpbHMgY2xhc3NcbiAgLyoqXG4gICAqIENsZWFuIGhleCBmb3JtYXR0ZWQgdmFsdWVzIGVuc3VyaW5nIHRoZXkgaGF2ZSBhbiBldmVuIGxlbmd0aFxuICAgKlxuICAgKiBAcGFyYW0gbnVtYmVyVmFsdWUgSGV4IGZvcm1hdHRlZCBudW1iZXIgdmFsdWUuIEV4YW1wbGUgJzB4MDEnXG4gICAqIEByZXR1cm5zIHNhbml0aXplZCB2YWx1ZVxuICAgKi9cbiAgcHJpdmF0ZSBzYW5pdGl6ZUhleFN0cmluZyhudW1iZXJWYWx1ZSkge1xuICAgIGlmIChudW1iZXJWYWx1ZSA9PT0gJzB4MCcgfHwgbnVtYmVyVmFsdWUgPT0gJycpIHtcbiAgICAgIHJldHVybiAnMHgnO1xuICAgIH0gZWxzZSBpZiAobnVtYmVyVmFsdWUubGVuZ3RoICUgMiA9PT0gMCkge1xuICAgICAgcmV0dXJuIG51bWJlclZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gJzB4MCcgKyBudW1iZXJWYWx1ZS5zbGljZSgyKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHR4OiBMZWdhY3lUeERhdGEpIHtcbiAgICB0aGlzLm5vbmNlID0gdW5wYWRCdWZmZXIodG9CdWZmZXIodHgubm9uY2UpKTtcbiAgICB0aGlzLmdhc0xpbWl0ID0gdG9CdWZmZXIodGhpcy5zYW5pdGl6ZUhleFN0cmluZyh0eC5nYXNMaW1pdCkpO1xuICAgIHRoaXMuZ2FzUHJpY2UgPSB0b0J1ZmZlcih0aGlzLnNhbml0aXplSGV4U3RyaW5nKHR4Lmdhc1ByaWNlKSk7XG4gICAgdGhpcy5kYXRhID0gdG9CdWZmZXIodGhpcy5zYW5pdGl6ZUhleFN0cmluZyh0eC5kYXRhKSk7XG4gICAgdGhpcy52YWx1ZSA9IHRvQnVmZmVyKHRoaXMuc2FuaXRpemVIZXhTdHJpbmcodHgudmFsdWUpKTtcbiAgICBpZiAodHgudG8pIHtcbiAgICAgIHRoaXMudG8gPSB0b0J1ZmZlcih0eC50byk7XG4gICAgfVxuICAgIGlmICh0eC52KSB7XG4gICAgICB0aGlzLnYgPSB0b0J1ZmZlcih0eC52KTtcbiAgICB9XG4gICAgaWYgKHR4LnIpIHtcbiAgICAgIHRoaXMuciA9IHRvQnVmZmVyKHR4LnIpO1xuICAgIH1cbiAgICBpZiAodHgucykge1xuICAgICAgdGhpcy5zID0gdG9CdWZmZXIodHgucyk7XG4gICAgfVxuICAgIGlmICh0eC5mcm9tKSB7XG4gICAgICB0aGlzLl9mcm9tID0gdG9CdWZmZXIodHguZnJvbSk7XG4gICAgfVxuICAgIHRoaXMuaW5pdFJhdygpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0UmF3KCkge1xuICAgIHRoaXMucmF3ID0gW1xuICAgICAgdGhpcy5ub25jZSxcbiAgICAgIHRoaXMuZ2FzUHJpY2UsXG4gICAgICB0aGlzLmdhc0xpbWl0LFxuICAgICAgdGhpcy5fZmVlQ3VycmVuY3ksXG4gICAgICB0aGlzLl9nYXRld2F5RmVlUmVjaXBpZW50LFxuICAgICAgdGhpcy5fZ2F0ZXdheUZlZSxcbiAgICAgIHRoaXMudG8sXG4gICAgICB0aGlzLnZhbHVlLFxuICAgICAgdGhpcy5kYXRhLFxuICAgICAgdGhpcy52LFxuICAgICAgdGhpcy5yLFxuICAgICAgdGhpcy5zLFxuICAgIF07XG4gIH1cblxuICBoYXNoKGluY2x1ZGVTaWduYXR1cmU/OiBib29sZWFuKTogQnVmZmVyIHtcbiAgICBsZXQgaXRlbXM7XG4gICAgaWYgKGluY2x1ZGVTaWduYXR1cmUpIHtcbiAgICAgIGl0ZW1zID0gdGhpcy5yYXc7XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZW1zID0gdGhpcy5yYXdcbiAgICAgICAgLnNsaWNlKDAsIDkpXG4gICAgICAgIC5jb25jYXQoW3RvQnVmZmVyKHRoaXMuZ2V0Q2hhaW5JZCgpKSwgdW5wYWRCdWZmZXIodG9CdWZmZXIoMCkpLCB1bnBhZEJ1ZmZlcih0b0J1ZmZlcigwKSldKTtcbiAgICB9XG4gICAgcmV0dXJuIHJscGhhc2goaXRlbXMpO1xuICB9XG5cbiAgZ2V0U2VuZGVyQWRkcmVzcygpOiBCdWZmZXIge1xuICAgIGlmICh0aGlzLl9mcm9tKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZnJvbTtcbiAgICB9XG4gICAgY29uc3QgcHViS2V5ID0gdGhpcy5nZXRTZW5kZXJQdWJsaWNLZXkoKTtcbiAgICB0aGlzLl9mcm9tID0gcHVibGljVG9BZGRyZXNzKHB1YktleSk7XG4gICAgcmV0dXJuIHRoaXMuX2Zyb207XG4gIH1cblxuICBnZXRTZW5kZXJQdWJsaWNLZXkoKSB7XG4gICAgaWYgKHRoaXMudmVyaWZ5U2lnbmF0dXJlKCkpIHtcbiAgICAgIC8vIElmIHRoZSBzaWduYXR1cmUgd2FzIHZlcmlmaWVkIHN1Y2Nlc3NmdWxseSB0aGUgX3NlbmRlclB1YktleSBmaWVsZCBpcyBkZWZpbmVkXG4gICAgICByZXR1cm4gdGhpcy5fc2VuZGVyUHViS2V5O1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgU2lnbmF0dXJlJyk7XG4gIH1cblxuICBzZXJpYWxpemUoKTogQnVmZmVyIHtcbiAgICByZXR1cm4gcmxwLmVuY29kZSh0aGlzLnJhdyk7XG4gIH1cblxuICBzaWduKHByaXZhdGVLZXk6IEJ1ZmZlcik6IHZvaWQge1xuICAgIHRoaXMuX3NpZ25hdHVyZXMgPSBbdGhpcy52LCB0aGlzLnIsIHRoaXMucywgcHJpdmF0ZUtleV07XG4gIH1cblxuICB2ZXJpZnlTaWduYXR1cmUoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbXNnSGFzaCA9IHRoaXMuaGFzaChmYWxzZSk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGNoYWluSWQgPSB0aGlzLmdldENoYWluSWQoKTtcbiAgICAgIGNvbnN0IHYgPSBidWZmZXJUb0ludCh0aGlzLnYpIC0gKDIgKiBjaGFpbklkICsgMzUpO1xuICAgICAgdGhpcy5fc2VuZGVyUHViS2V5ID0gZWNyZWNvdmVyKG1zZ0hhc2gsIHYgKyAyNywgdGhpcy5yLCB0aGlzLnMpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuICEhdGhpcy5fc2VuZGVyUHViS2V5O1xuICB9XG5cbiAgZ2V0Q2hhaW5JZCgpOiBudW1iZXIge1xuICAgIGxldCBjaGFpbklkID0gYnVmZmVyVG9JbnQodGhpcy52KTtcbiAgICBpZiAodGhpcy5yLmxlbmd0aCAmJiB0aGlzLnMubGVuZ3RoKSB7XG4gICAgICBjaGFpbklkID0gKGNoYWluSWQgLSAzNSkgPj4gMTtcbiAgICB9XG4gICAgcmV0dXJuIGNoYWluSWQ7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIENlbG9UcmFuc2FjdGlvbkRhdGEgaW1wbGVtZW50cyBFdGhMaWtlVHJhbnNhY3Rpb25EYXRhIHtcbiAgcHJpdmF0ZSB0eDogQ2Vsb1RyYW5zYWN0aW9uO1xuICBwcml2YXRlIGRlcGxveWVkQWRkcmVzcz86IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcih0eDogQ2Vsb1RyYW5zYWN0aW9uLCBkZXBsb3llZEFkZHJlc3M/OiBzdHJpbmcpIHtcbiAgICB0aGlzLnR4ID0gdHg7XG4gICAgdGhpcy5kZXBsb3llZEFkZHJlc3MgPSBkZXBsb3llZEFkZHJlc3M7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZyb21Kc29uKHR4OiBMZWdhY3lUeERhdGEpOiBDZWxvVHJhbnNhY3Rpb25EYXRhIHtcbiAgICBjb25zdCBjaGFpbklkID0gYWRkSGV4UHJlZml4KG5ldyBCaWdOdW1iZXIoTnVtYmVyKHR4LmNoYWluSWQpKS50b1N0cmluZygxNikpO1xuICAgIHJldHVybiBuZXcgQ2Vsb1RyYW5zYWN0aW9uRGF0YShcbiAgICAgIG5ldyBDZWxvVHJhbnNhY3Rpb24oe1xuICAgICAgICBfdHlwZTogRVRIVHJhbnNhY3Rpb25UeXBlLkxFR0FDWSxcbiAgICAgICAgbm9uY2U6IHR4Lm5vbmNlLFxuICAgICAgICB0bzogdHgudG8sXG4gICAgICAgIGdhc1ByaWNlOiBhZGRIZXhQcmVmaXgobmV3IEJpZ051bWJlcih0eC5nYXNQcmljZSkudG9TdHJpbmcoMTYpKSxcbiAgICAgICAgZ2FzTGltaXQ6IGFkZEhleFByZWZpeChuZXcgQmlnTnVtYmVyKHR4Lmdhc0xpbWl0KS50b1N0cmluZygxNikpLFxuICAgICAgICB2YWx1ZTogYWRkSGV4UHJlZml4KG5ldyBCaWdOdW1iZXIodHgudmFsdWUpLnRvU3RyaW5nKDE2KSksXG4gICAgICAgIGRhdGE6IHR4LmRhdGEgPT09ICcweCcgPyAnJyA6IHR4LmRhdGEsXG4gICAgICAgIGZyb206IHR4LmZyb20sXG4gICAgICAgIHM6IHR4LnMsXG4gICAgICAgIHI6IHR4LnIsXG4gICAgICAgIHY6IHR4LnYgfHwgY2hhaW5JZCxcbiAgICAgIH0pLFxuICAgICAgdHguZGVwbG95ZWRBZGRyZXNzXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIHNpZ24oa2V5UGFpcjogS2V5UGFpcikge1xuICAgIGNvbnN0IHByaXZhdGVLZXkgPSBhZGRIZXhQcmVmaXgoa2V5UGFpci5nZXRLZXlzKCkucHJ2IGFzIHN0cmluZyk7XG4gICAgY29uc3QgZGF0YSA9IENlbG9UcmFuc2FjdGlvbkRhdGEudHhKc29uVG9DZWxvVHgodGhpcy50b0pzb24oKSwga2V5UGFpci5nZXRBZGRyZXNzKCkpO1xuICAgIGNvbnN0IGNlbG9Mb2NhbFdhbGxldCA9IG5ldyBMb2NhbFdhbGxldCgpO1xuICAgIGNlbG9Mb2NhbFdhbGxldC5hZGRBY2NvdW50KHByaXZhdGVLZXkpO1xuICAgIGNvbnN0IHJhd1RyYW5zYWN0aW9uID0gYXdhaXQgY2Vsb0xvY2FsV2FsbGV0LnNpZ25UcmFuc2FjdGlvbihkYXRhKTtcblxuICAgIGNvbnN0IG5vbmNlQmlnTnVtYmVyID0gbmV3IEJpZ051bWJlcihyYXdUcmFuc2FjdGlvbi50eC5ub25jZSk7XG4gICAgcmF3VHJhbnNhY3Rpb24udHgubm9uY2UgPSBhZGRIZXhQcmVmaXgobm9uY2VCaWdOdW1iZXIudG9TdHJpbmcoMTYpKTtcbiAgICByYXdUcmFuc2FjdGlvbi5yYXcgPSBkYXRhLmRhdGEgPT09IHVuZGVmaW5lZCA/ICcnIDogZGF0YS5kYXRhO1xuICAgIHJhd1RyYW5zYWN0aW9uLnR4LmdhcyA9IHJhd1RyYW5zYWN0aW9uLnR4LmdhcztcbiAgICB0aGlzLnR4ID0gbmV3IENlbG9UcmFuc2FjdGlvbihDZWxvVHJhbnNhY3Rpb25EYXRhLmVuY29kZWRUeFRvSnNvbihyYXdUcmFuc2FjdGlvbikpO1xuICAgIHRoaXMudHguc2lnbih0b0J1ZmZlcihwcml2YXRlS2V5KSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Kc29uKCk6IExlZ2FjeVR4RGF0YSB7XG4gICAgY29uc3QgcmVzdWx0OiBMZWdhY3lUeERhdGEgPSB7XG4gICAgICBfdHlwZTogRVRIVHJhbnNhY3Rpb25UeXBlLkxFR0FDWSxcbiAgICAgIG5vbmNlOiBidWZmZXJUb0ludCh0aGlzLnR4Lm5vbmNlKSxcbiAgICAgIGdhc1ByaWNlOiBuZXcgQmlnTnVtYmVyKGJ1ZmZlclRvSGV4KHRoaXMudHguZ2FzUHJpY2UpLCAxNikudG9TdHJpbmcoMTApLFxuICAgICAgZ2FzTGltaXQ6IG5ldyBCaWdOdW1iZXIoYnVmZmVyVG9IZXgodGhpcy50eC5nYXNMaW1pdCksIDE2KS50b1N0cmluZygxMCksXG4gICAgICB2YWx1ZTogdGhpcy50eC52YWx1ZS5sZW5ndGggPT09IDAgPyAnMCcgOiBuZXcgQmlnTnVtYmVyKGJ1ZmZlclRvSGV4KHRoaXMudHgudmFsdWUpLCAxNikudG9TdHJpbmcoMTApLFxuICAgICAgZGF0YTogYnVmZmVyVG9IZXgodGhpcy50eC5kYXRhKSxcbiAgICAgIGlkOiBhZGRIZXhQcmVmaXgoYnVmZmVyVG9IZXgodGhpcy50eC5oYXNoKHRydWUpKSksXG4gICAgfTtcblxuICAgIGlmICh0aGlzLnR4LnRvICYmIHRoaXMudHgudG8ubGVuZ3RoKSB7XG4gICAgICByZXN1bHQudG8gPSBidWZmZXJUb0hleCh0aGlzLnR4LnRvKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50eC52ZXJpZnlTaWduYXR1cmUoKSkge1xuICAgICAgcmVzdWx0LmZyb20gPSBidWZmZXJUb0hleCh0aGlzLnR4LmdldFNlbmRlckFkZHJlc3MoKSk7XG4gICAgfVxuXG4gICAgY29uc3QgY2hhaW5JZCA9IHRoaXMudHguZ2V0Q2hhaW5JZCgpO1xuICAgIGlmIChjaGFpbklkKSB7XG4gICAgICByZXN1bHQuY2hhaW5JZCA9IGNoYWluSWQudG9TdHJpbmcoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kZXBsb3llZEFkZHJlc3MpIHtcbiAgICAgIHJlc3VsdC5kZXBsb3llZEFkZHJlc3MgPSB0aGlzLmRlcGxveWVkQWRkcmVzcztcbiAgICB9XG5cbiAgICB0aGlzLnNldFNpZ25hdHVyZUZpZWxkcyhyZXN1bHQpO1xuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U2lnbmF0dXJlRmllbGRzKHJlc3VsdDogTGVnYWN5VHhEYXRhKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudHgudiAmJiB0aGlzLnR4LnYubGVuZ3RoKSB7XG4gICAgICByZXN1bHQudiA9IGJ1ZmZlclRvSGV4KHRoaXMudHgudik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHguciAmJiB0aGlzLnR4LnIubGVuZ3RoKSB7XG4gICAgICByZXN1bHQuciA9IGJ1ZmZlclRvSGV4KHRoaXMudHgucik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHgucyAmJiB0aGlzLnR4LnMubGVuZ3RoKSB7XG4gICAgICByZXN1bHQucyA9IGJ1ZmZlclRvSGV4KHRoaXMudHgucyk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvU2VyaWFsaXplZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBhZGRIZXhQcmVmaXgodGhpcy50eC5zZXJpYWxpemUoKS50b1N0cmluZygnaGV4JykpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgdHhKc29uVG9DZWxvVHgodHhKc29uOiBMZWdhY3lUeERhdGEsIHNpZ25lcjogc3RyaW5nKTogQ2Vsb1R4IHtcbiAgICAvLyB0aGUgY2VsbyBsaWJyYXJ5IHJlcXVpcmVzIHlvdSB0byBzcGVjaWZ5IHRoZSBzaWduZXIgYWRkcmVzcyB3aXRoIHRoZSBmcm9tIGZpZWxkXG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHR4SnNvbiwge1xuICAgICAgY2hhaW5JZDogdHhKc29uLmNoYWluSWQgPT09IHVuZGVmaW5lZCA/IDAgOiBwYXJzZUludCh0eEpzb24uY2hhaW5JZCwgMTApLFxuICAgICAgZ2FzOiB0eEpzb24uZ2FzTGltaXQsXG4gICAgICBmcm9tOiBzaWduZXIsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBlbmNvZGVkVHhUb0pzb24oZW5jb2RlZFR4OiBFbmNvZGVkVHJhbnNhY3Rpb24pOiBMZWdhY3lUeERhdGEge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5lbmNvZGVkVHgudHgsXG4gICAgICBfdHlwZTogRVRIVHJhbnNhY3Rpb25UeXBlLkxFR0FDWSxcbiAgICAgIG5vbmNlOiBwYXJzZUludChlbmNvZGVkVHgudHgubm9uY2UsIDE2KSxcbiAgICAgIGdhc0xpbWl0OiBlbmNvZGVkVHgudHguZ2FzLFxuICAgICAgZGF0YTogZW5jb2RlZFR4LnJhdyxcbiAgICB9O1xuICB9XG59XG4iXX0=
223
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGdFQUFxQztBQUNyQyxxREFBaUQ7QUFDakQscURBVXlCO0FBRXpCLHNEQUF3RztBQUV4RyxNQUFhLGVBQWU7SUFrQjFCLDBEQUEwRDtJQUMxRDs7Ozs7T0FLRztJQUNLLGlCQUFpQixDQUFDLFdBQVc7UUFDbkMsSUFBSSxXQUFXLEtBQUssS0FBSyxJQUFJLFdBQVcsSUFBSSxFQUFFLEVBQUU7WUFDOUMsT0FBTyxJQUFJLENBQUM7U0FDYjthQUFNLElBQUksV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3ZDLE9BQU8sV0FBVyxDQUFDO1NBQ3BCO1FBQ0QsT0FBTyxLQUFLLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsWUFBWSxFQUFnQjtRQTdCcEIsaUJBQVksR0FBVyxJQUFBLDBCQUFRLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMseUJBQW9CLEdBQVcsSUFBQSwwQkFBUSxFQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlDLGdCQUFXLEdBQVcsSUFBQSwwQkFBUSxFQUFDLElBQUksQ0FBQyxDQUFDO1FBTTdDLE9BQUUsR0FBVyxJQUFBLDBCQUFRLEVBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUIsTUFBQyxHQUFXLElBQUEsMEJBQVEsRUFBQyxFQUFFLENBQUMsQ0FBQztRQUN6QixNQUFDLEdBQVcsSUFBQSwwQkFBUSxFQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLE1BQUMsR0FBVyxJQUFBLDBCQUFRLEVBQUMsRUFBRSxDQUFDLENBQUM7UUFtQnZCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBQSw2QkFBVyxFQUFDLElBQUEsMEJBQVEsRUFBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUM3QyxJ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QztZQUN2QyxRQUFRLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxHQUFHO1lBQzFCLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRztTQUNwQixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBbkhELGtEQW1IQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IExvY2FsV2FsbGV0IH0gZnJvbSAnQGNlbG8vd2FsbGV0LWxvY2FsJztcbmltcG9ydCB7XG4gIGFkZEhleFByZWZpeCxcbiAgdG9CdWZmZXIsXG4gIGJ1ZmZlclRvSGV4LFxuICBidWZmZXJUb0ludCxcbiAgcmxwLFxuICBybHBoYXNoLFxuICBlY3JlY292ZXIsXG4gIHB1YmxpY1RvQWRkcmVzcyxcbiAgdW5wYWRCdWZmZXIsXG59IGZyb20gJ2V0aGVyZXVtanMtdXRpbCc7XG5pbXBvcnQgeyBDZWxvVHgsIEVuY29kZWRUcmFuc2FjdGlvbiB9IGZyb20gJ0BjZWxvL2Nvbm5lY3QnO1xuaW1wb3J0IHsgRXRoTGlrZVRyYW5zYWN0aW9uRGF0YSwgRVRIVHJhbnNhY3Rpb25UeXBlLCBLZXlQYWlyLCBMZWdhY3lUeERhdGEgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZXRoJztcblxuZXhwb3J0IGNsYXNzIENlbG9UcmFuc2FjdGlvbiB7XG4gIHByaXZhdGUgcmF3OiBCdWZmZXJbXTtcbiAgcHJpdmF0ZSBfZnJvbTogQnVmZmVyO1xuICBwcml2YXRlIF9zZW5kZXJQdWJLZXk/O1xuICBwcml2YXRlIF9zaWduYXR1cmVzOiBCdWZmZXJbXTtcbiAgcHJpdmF0ZSBfZmVlQ3VycmVuY3k6IEJ1ZmZlciA9IHRvQnVmZmVyKCcweCcpO1xuICBwcml2YXRlIF9nYXRld2F5RmVlUmVjaXBpZW50OiBCdWZmZXIgPSB0b0J1ZmZlcignMHgnKTtcbiAgcHJpdmF0ZSBfZ2F0ZXdheUZlZTogQnVmZmVyID0gdG9CdWZmZXIoJzB4Jyk7XG4gIG5vbmNlOiBCdWZmZXI7XG4gIGdhc0xpbWl0OiBCdWZmZXI7XG4gIGdhc1ByaWNlOiBCdWZmZXI7XG4gIGRhdGE6IEJ1ZmZlcjtcbiAgdmFsdWU6IEJ1ZmZlcjtcbiAgdG86IEJ1ZmZlciA9IHRvQnVmZmVyKFtdKTtcbiAgdjogQnVmZmVyID0gdG9CdWZmZXIoW10pO1xuICByOiBCdWZmZXIgPSB0b0J1ZmZlcihbXSk7XG4gIHM6IEJ1ZmZlciA9IHRvQnVmZmVyKFtdKTtcblxuICAvLyBUT0RPOiB2YWxpZGF0ZSBpZiB0aGlzIG5lZWRzIHRvIGJlIG1vdmVkIHRvIFV0aWxzIGNsYXNzXG4gIC8qKlxuICAgKiBDbGVhbiBoZXggZm9ybWF0dGVkIHZhbHVlcyBlbnN1cmluZyB0aGV5IGhhdmUgYW4gZXZlbiBsZW5ndGhcbiAgICpcbiAgICogQHBhcmFtIG51bWJlclZhbHVlIEhleCBmb3JtYXR0ZWQgbnVtYmVyIHZhbHVlLiBFeGFtcGxlICcweDAxJ1xuICAgKiBAcmV0dXJucyBzYW5pdGl6ZWQgdmFsdWVcbiAgICovXG4gIHByaXZhdGUgc2FuaXRpemVIZXhTdHJpbmcobnVtYmVyVmFsdWUpIHtcbiAgICBpZiAobnVtYmVyVmFsdWUgPT09ICcweDAnIHx8IG51bWJlclZhbHVlID09ICcnKSB7XG4gICAgICByZXR1cm4gJzB4JztcbiAgICB9IGVsc2UgaWYgKG51bWJlclZhbHVlLmxlbmd0aCAlIDIgPT09IDApIHtcbiAgICAgIHJldHVybiBudW1iZXJWYWx1ZTtcbiAgICB9XG4gICAgcmV0dXJuICcweDAnICsgbnVtYmVyVmFsdWUuc2xpY2UoMik7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcih0eDogTGVnYWN5VHhEYXRhKSB7XG4gICAgdGhpcy5ub25jZSA9IHVucGFkQnVmZmVyKHRvQnVmZmVyKHR4Lm5vbmNlKSk7XG4gICAgdGhpcy5nYXNMaW1pdCA9IHRvQnVmZmVyKHRoaXMuc2FuaXRpemVIZXhTdHJpbmcodHguZ2FzTGltaXQpKTtcbiAgICB0aGlzLmdhc1ByaWNlID0gdG9CdWZmZXIodGhpcy5zYW5pdGl6ZUhleFN0cmluZyh0eC5nYXNQcmljZSkpO1xuICAgIHRoaXMuZGF0YSA9IHRvQnVmZmVyKHRoaXMuc2FuaXRpemVIZXhTdHJpbmcodHguZGF0YSkpO1xuICAgIHRoaXMudmFsdWUgPSB0b0J1ZmZlcih0aGlzLnNhbml0aXplSGV4U3RyaW5nKHR4LnZhbHVlKSk7XG4gICAgaWYgKHR4LnRvKSB7XG4gICAgICB0aGlzLnRvID0gdG9CdWZmZXIodHgudG8pO1xuICAgIH1cbiAgICBpZiAodHgudikge1xuICAgICAgdGhpcy52ID0gdG9CdWZmZXIodHgudik7XG4gICAgfVxuICAgIGlmICh0eC5yKSB7XG4gICAgICB0aGlzLnIgPSB0b0J1ZmZlcih0eC5yKTtcbiAgICB9XG4gICAgaWYgKHR4LnMpIHtcbiAgICAgIHRoaXMucyA9IHRvQnVmZmVyKHR4LnMpO1xuICAgIH1cbiAgICBpZiAodHguZnJvbSkge1xuICAgICAgdGhpcy5fZnJvbSA9IHRvQnVmZmVyKHR4LmZyb20pO1xuICAgIH1cbiAgICB0aGlzLmluaXRSYXcoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFJhdygpIHtcbiAgICB0aGlzLnJhdyA9IFtcbiAgICAgIHRoaXMubm9uY2UsXG4gICAgICB0aGlzLmdhc1ByaWNlLFxuICAgICAgdGhpcy5nYXNMaW1pdCxcbiAgICAgIHRoaXMuX2ZlZUN1cnJlbmN5LFxuICAgICAgdGhpcy5fZ2F0ZXdheUZlZVJlY2lwaWVudCxcbiAgICAgIHRoaXMuX2dhdGV3YXlGZWUsXG4gICAgICB0aGlzLnRvLFxuICAgICAgdGhpcy52YWx1ZSxcbiAgICAgIHRoaXMuZGF0YSxcbiAgICAgIHRoaXMudixcbiAgICAgIHRoaXMucixcbiAgICAgIHRoaXMucyxcbiAgICBdO1xuICB9XG5cbiAgaGFzaChpbmNsdWRlU2lnbmF0dXJlPzogYm9vbGVhbik6IEJ1ZmZlciB7XG4gICAgbGV0IGl0ZW1zO1xuICAgIGlmIChpbmNsdWRlU2lnbmF0dXJlKSB7XG4gICAgICBpdGVtcyA9IHRoaXMucmF3O1xuICAgIH0gZWxzZSB7XG4gICAgICBpdGVtcyA9IHRoaXMucmF3XG4gICAgICAgIC5zbGljZSgwLCA5KVxuICAgICAgICAuY29uY2F0KFt0b0J1ZmZlcih0aGlzLmdldENoYWluSWQoKSksIHVucGFkQnVmZmVyKHRvQnVmZmVyKDApKSwgdW5wYWRCdWZmZXIodG9CdWZmZXIoMCkpXSk7XG4gICAgfVxuICAgIHJldHVybiBybHBoYXNoKGl0ZW1zKTtcbiAgfVxuXG4gIGdldFNlbmRlckFkZHJlc3MoKTogQnVmZmVyIHtcbiAgICBpZiAodGhpcy5fZnJvbSkge1xuICAgICAgcmV0dXJuIHRoaXMuX2Zyb207XG4gICAgfVxuICAgIGNvbnN0IHB1YktleSA9IHRoaXMuZ2V0U2VuZGVyUHVibGljS2V5KCk7XG4gICAgdGhpcy5fZnJvbSA9IHB1YmxpY1RvQWRkcmVzcyhwdWJLZXkpO1xuICAgIHJldHVybiB0aGlzLl9mcm9tO1xuICB9XG5cbiAgZ2V0U2VuZGVyUHVibGljS2V5KCkge1xuICAgIGlmICh0aGlzLnZlcmlmeVNpZ25hdHVyZSgpKSB7XG4gICAgICAvLyBJZiB0aGUgc2lnbmF0dXJlIHdhcyB2ZXJpZmllZCBzdWNjZXNzZnVsbHkgdGhlIF9zZW5kZXJQdWJLZXkgZmllbGQgaXMgZGVmaW5lZFxuICAgICAgcmV0dXJuIHRoaXMuX3NlbmRlclB1YktleTtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIFNpZ25hdHVyZScpO1xuICB9XG5cbiAgc2VyaWFsaXplKCk6IEJ1ZmZlciB7XG4gICAgcmV0dXJuIHJscC5lbmNvZGUodGhpcy5yYXcpO1xuICB9XG5cbiAgc2lnbihwcml2YXRlS2V5OiBCdWZmZXIpOiB2b2lkIHtcbiAgICB0aGlzLl9zaWduYXR1cmVzID0gW3RoaXMudiwgdGhpcy5yLCB0aGlzLnMsIHByaXZhdGVLZXldO1xuICB9XG5cbiAgdmVyaWZ5U2lnbmF0dXJlKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IG1zZ0hhc2ggPSB0aGlzLmhhc2goZmFsc2UpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBjaGFpbklkID0gdGhpcy5nZXRDaGFpbklkKCk7XG4gICAgICBjb25zdCB2ID0gYnVmZmVyVG9JbnQodGhpcy52KSAtICgyICogY2hhaW5JZCArIDM1KTtcbiAgICAgIHRoaXMuX3NlbmRlclB1YktleSA9IGVjcmVjb3Zlcihtc2dIYXNoLCB2ICsgMjcsIHRoaXMuciwgdGhpcy5zKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiAhIXRoaXMuX3NlbmRlclB1YktleTtcbiAgfVxuXG4gIGdldENoYWluSWQoKTogbnVtYmVyIHtcbiAgICBsZXQgY2hhaW5JZCA9IGJ1ZmZlclRvSW50KHRoaXMudik7XG4gICAgaWYgKHRoaXMuci5sZW5ndGggJiYgdGhpcy5zLmxlbmd0aCkge1xuICAgICAgY2hhaW5JZCA9IChjaGFpbklkIC0gMzUpID4+IDE7XG4gICAgfVxuICAgIHJldHVybiBjaGFpbklkO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDZWxvVHJhbnNhY3Rpb25EYXRhIGltcGxlbWVudHMgRXRoTGlrZVRyYW5zYWN0aW9uRGF0YSB7XG4gIHByaXZhdGUgdHg6IENlbG9UcmFuc2FjdGlvbjtcbiAgcHJpdmF0ZSBkZXBsb3llZEFkZHJlc3M/OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IodHg6IENlbG9UcmFuc2FjdGlvbiwgZGVwbG95ZWRBZGRyZXNzPzogc3RyaW5nKSB7XG4gICAgdGhpcy50eCA9IHR4O1xuICAgIHRoaXMuZGVwbG95ZWRBZGRyZXNzID0gZGVwbG95ZWRBZGRyZXNzO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tSnNvbih0eDogTGVnYWN5VHhEYXRhKTogQ2Vsb1RyYW5zYWN0aW9uRGF0YSB7XG4gICAgY29uc3QgY2hhaW5JZCA9IGFkZEhleFByZWZpeChuZXcgQmlnTnVtYmVyKE51bWJlcih0eC5jaGFpbklkKSkudG9TdHJpbmcoMTYpKTtcbiAgICByZXR1cm4gbmV3IENlbG9UcmFuc2FjdGlvbkRhdGEoXG4gICAgICBuZXcgQ2Vsb1RyYW5zYWN0aW9uKHtcbiAgICAgICAgX3R5cGU6IEVUSFRyYW5zYWN0aW9uVHlwZS5MRUdBQ1ksXG4gICAgICAgIG5vbmNlOiB0eC5ub25jZSxcbiAgICAgICAgdG86IHR4LnRvLFxuICAgICAgICBnYXNQcmljZTogYWRkSGV4UHJlZml4KG5ldyBCaWdOdW1iZXIodHguZ2FzUHJpY2UpLnRvU3RyaW5nKDE2KSksXG4gICAgICAgIGdhc0xpbWl0OiBhZGRIZXhQcmVmaXgobmV3IEJpZ051bWJlcih0eC5nYXNMaW1pdCkudG9TdHJpbmcoMTYpKSxcbiAgICAgICAgdmFsdWU6IGFkZEhleFByZWZpeChuZXcgQmlnTnVtYmVyKHR4LnZhbHVlKS50b1N0cmluZygxNikpLFxuICAgICAgICBkYXRhOiB0eC5kYXRhID09PSAnMHgnID8gJycgOiB0eC5kYXRhLFxuICAgICAgICBmcm9tOiB0eC5mcm9tLFxuICAgICAgICBzOiB0eC5zLFxuICAgICAgICByOiB0eC5yLFxuICAgICAgICB2OiB0eC52IHx8IGNoYWluSWQsXG4gICAgICB9KSxcbiAgICAgIHR4LmRlcGxveWVkQWRkcmVzc1xuICAgICk7XG4gIH1cblxuICBhc3luYyBzaWduKGtleVBhaXI6IEtleVBhaXIpIHtcbiAgICBjb25zdCBwcml2YXRlS2V5ID0gYWRkSGV4UHJlZml4KGtleVBhaXIuZ2V0S2V5cygpLnBydiBhcyBzdHJpbmcpO1xuICAgIGNvbnN0IGRhdGEgPSBDZWxvVHJhbnNhY3Rpb25EYXRhLnR4SnNvblRvQ2Vsb1R4KHRoaXMudG9Kc29uKCksIGtleVBhaXIuZ2V0QWRkcmVzcygpKTtcbiAgICBjb25zdCBjZWxvTG9jYWxXYWxsZXQgPSBuZXcgTG9jYWxXYWxsZXQoKTtcbiAgICBjZWxvTG9jYWxXYWxsZXQuYWRkQWNjb3VudChwcml2YXRlS2V5KTtcbiAgICBjb25zdCByYXdUcmFuc2FjdGlvbiA9IGF3YWl0IGNlbG9Mb2NhbFdhbGxldC5zaWduVHJhbnNhY3Rpb24oZGF0YSk7XG5cbiAgICBjb25zdCBub25jZUJpZ051bWJlciA9IG5ldyBCaWdOdW1iZXIocmF3VHJhbnNhY3Rpb24udHgubm9uY2UpO1xuICAgIHJhd1RyYW5zYWN0aW9uLnR4Lm5vbmNlID0gYWRkSGV4UHJlZml4KG5vbmNlQmlnTnVtYmVyLnRvU3RyaW5nKDE2KSk7XG4gICAgcmF3VHJhbnNhY3Rpb24ucmF3ID0gZGF0YS5kYXRhID09PSB1bmRlZmluZWQgPyAnJyA6IGRhdGEuZGF0YTtcbiAgICByYXdUcmFuc2FjdGlvbi50eC5nYXMgPSByYXdUcmFuc2FjdGlvbi50eC5nYXM7XG4gICAgdGhpcy50eCA9IG5ldyBDZWxvVHJhbnNhY3Rpb24oQ2Vsb1RyYW5zYWN0aW9uRGF0YS5lbmNvZGVkVHhUb0pzb24ocmF3VHJhbnNhY3Rpb24pKTtcbiAgICB0aGlzLnR4LnNpZ24odG9CdWZmZXIocHJpdmF0ZUtleSkpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvSnNvbigpOiBMZWdhY3lUeERhdGEge1xuICAgIGNvbnN0IHJlc3VsdDogTGVnYWN5VHhEYXRhID0ge1xuICAgICAgX3R5cGU6IEVUSFRyYW5zYWN0aW9uVHlwZS5MRUdBQ1ksXG4gICAgICBub25jZTogYnVmZmVyVG9JbnQodGhpcy50eC5ub25jZSksXG4gICAgICBnYXNQcmljZTogbmV3IEJpZ051bWJlcihidWZmZXJUb0hleCh0aGlzLnR4Lmdhc1ByaWNlKSwgMTYpLnRvU3RyaW5nKDEwKSxcbiAgICAgIGdhc0xpbWl0OiBuZXcgQmlnTnVtYmVyKGJ1ZmZlclRvSGV4KHRoaXMudHguZ2FzTGltaXQpLCAxNikudG9TdHJpbmcoMTApLFxuICAgICAgdmFsdWU6IHRoaXMudHgudmFsdWUubGVuZ3RoID09PSAwID8gJzAnIDogbmV3IEJpZ051bWJlcihidWZmZXJUb0hleCh0aGlzLnR4LnZhbHVlKSwgMTYpLnRvU3RyaW5nKDEwKSxcbiAgICAgIGRhdGE6IGJ1ZmZlclRvSGV4KHRoaXMudHguZGF0YSksXG4gICAgICBpZDogYWRkSGV4UHJlZml4KGJ1ZmZlclRvSGV4KHRoaXMudHguaGFzaCh0cnVlKSkpLFxuICAgIH07XG5cbiAgICBpZiAodGhpcy50eC50byAmJiB0aGlzLnR4LnRvLmxlbmd0aCkge1xuICAgICAgcmVzdWx0LnRvID0gYnVmZmVyVG9IZXgodGhpcy50eC50byk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHgudmVyaWZ5U2lnbmF0dXJlKCkpIHtcbiAgICAgIHJlc3VsdC5mcm9tID0gYnVmZmVyVG9IZXgodGhpcy50eC5nZXRTZW5kZXJBZGRyZXNzKCkpO1xuICAgIH1cblxuICAgIGNvbnN0IGNoYWluSWQgPSB0aGlzLnR4LmdldENoYWluSWQoKTtcbiAgICBpZiAoY2hhaW5JZCkge1xuICAgICAgcmVzdWx0LmNoYWluSWQgPSBjaGFpbklkLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZGVwbG95ZWRBZGRyZXNzKSB7XG4gICAgICByZXN1bHQuZGVwbG95ZWRBZGRyZXNzID0gdGhpcy5kZXBsb3llZEFkZHJlc3M7XG4gICAgfVxuXG4gICAgdGhpcy5zZXRTaWduYXR1cmVGaWVsZHMocmVzdWx0KTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIHNldFNpZ25hdHVyZUZpZWxkcyhyZXN1bHQ6IExlZ2FjeVR4RGF0YSk6IHZvaWQge1xuICAgIGlmICh0aGlzLnR4LnYgJiYgdGhpcy50eC52Lmxlbmd0aCkge1xuICAgICAgcmVzdWx0LnYgPSBidWZmZXJUb0hleCh0aGlzLnR4LnYpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnR4LnIgJiYgdGhpcy50eC5yLmxlbmd0aCkge1xuICAgICAgcmVzdWx0LnIgPSBidWZmZXJUb0hleCh0aGlzLnR4LnIpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnR4LnMgJiYgdGhpcy50eC5zLmxlbmd0aCkge1xuICAgICAgcmVzdWx0LnMgPSBidWZmZXJUb0hleCh0aGlzLnR4LnMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b1NlcmlhbGl6ZWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYWRkSGV4UHJlZml4KHRoaXMudHguc2VyaWFsaXplKCkudG9TdHJpbmcoJ2hleCcpKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHR4SnNvblRvQ2Vsb1R4KHR4SnNvbjogTGVnYWN5VHhEYXRhLCBzaWduZXI6IHN0cmluZyk6IENlbG9UeCB7XG4gICAgLy8gdGhlIGNlbG8gbGlicmFyeSByZXF1aXJlcyB5b3UgdG8gc3BlY2lmeSB0aGUgc2lnbmVyIGFkZHJlc3Mgd2l0aCB0aGUgZnJvbSBmaWVsZFxuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCB0eEpzb24sIHtcbiAgICAgIGNoYWluSWQ6IHR4SnNvbi5jaGFpbklkID09PSB1bmRlZmluZWQgPyAwIDogcGFyc2VJbnQodHhKc29uLmNoYWluSWQsIDEwKSxcbiAgICAgIGdhczogdHhKc29uLmdhc0xpbWl0LFxuICAgICAgZnJvbTogc2lnbmVyLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgZW5jb2RlZFR4VG9Kc29uKGVuY29kZWRUeDogRW5jb2RlZFRyYW5zYWN0aW9uKTogTGVnYWN5VHhEYXRhIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uZW5jb2RlZFR4LnR4LFxuICAgICAgX3R5cGU6IEVUSFRyYW5zYWN0aW9uVHlwZS5MRUdBQ1ksXG4gICAgICBub25jZTogcGFyc2VJbnQoZW5jb2RlZFR4LnR4Lm5vbmNlLCAxNiksXG4gICAgICBnYXNMaW1pdDogZW5jb2RlZFR4LnR4LmdhcyxcbiAgICAgIGRhdGE6IGVuY29kZWRUeC5yYXcsXG4gICAgfTtcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitgo/sdk-coin-celo",
3
- "version": "3.0.26",
3
+ "version": "3.0.28",
4
4
  "description": "BitGo SDK coin library for Celo",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
@@ -40,10 +40,10 @@
40
40
  ]
41
41
  },
42
42
  "dependencies": {
43
- "@bitgo/abstract-eth": "^22.0.3",
44
- "@bitgo/sdk-coin-eth": "^24.2.23",
45
- "@bitgo/sdk-core": "^28.3.0",
46
- "@bitgo/statics": "^49.3.0",
43
+ "@bitgo/abstract-eth": "^22.1.0",
44
+ "@bitgo/sdk-coin-eth": "^24.2.25",
45
+ "@bitgo/sdk-core": "^28.5.0",
46
+ "@bitgo/statics": "^49.5.0",
47
47
  "@celo/connect": "^2.0.0",
48
48
  "@celo/contractkit": "^2.0.0",
49
49
  "@celo/wallet-base": "^2.0.0",
@@ -55,8 +55,8 @@
55
55
  "ethers": "^5.1.3"
56
56
  },
57
57
  "devDependencies": {
58
- "@bitgo/sdk-api": "^1.53.3",
59
- "@bitgo/sdk-test": "^8.0.39"
58
+ "@bitgo/sdk-api": "^1.54.1",
59
+ "@bitgo/sdk-test": "^8.0.41"
60
60
  },
61
- "gitHead": "54e39bfd304bc375f9669bddefe64d8d2bc5580e"
61
+ "gitHead": "2f9cc0f7c31a39dd87e7cec9b9d199f78c4a06ef"
62
62
  }