@defisaver/sdk 1.0.5 → 1.0.7

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 (36) hide show
  1. package/esm/src/Action.d.ts +1 -0
  2. package/esm/src/Action.js +16 -2
  3. package/esm/src/actions/basic/CreateSubAction.d.ts +13 -0
  4. package/esm/src/actions/basic/CreateSubAction.js +18 -0
  5. package/esm/src/actions/basic/UpdateSubAction.js +6 -0
  6. package/esm/src/actions/basic/index.d.ts +1 -0
  7. package/esm/src/actions/basic/index.js +1 -0
  8. package/esm/src/actions/chickenBonds/CBCreateRebondSubAction.d.ts +13 -0
  9. package/esm/src/actions/chickenBonds/CBCreateRebondSubAction.js +18 -0
  10. package/esm/src/actions/chickenBonds/CBUpdateRebondSubAction.d.ts +14 -0
  11. package/esm/src/actions/chickenBonds/CBUpdateRebondSubAction.js +16 -0
  12. package/esm/src/actions/chickenBonds/FetchBondIdAction.d.ts +15 -0
  13. package/esm/src/actions/chickenBonds/FetchBondIdAction.js +21 -0
  14. package/esm/src/actions/chickenBonds/index.d.ts +3 -0
  15. package/esm/src/actions/chickenBonds/index.js +3 -0
  16. package/esm/src/addresses.d.ts +12 -0
  17. package/esm/src/addresses.js +9 -5
  18. package/esm/src/index.d.ts +48 -0
  19. package/esm/src/triggers/CBRebondTrigger.d.ts +10 -0
  20. package/esm/src/triggers/CBRebondTrigger.js +12 -0
  21. package/esm/src/triggers/index.d.ts +1 -0
  22. package/esm/src/triggers/index.js +1 -0
  23. package/package-lock.json +68 -14
  24. package/package.json +1 -1
  25. package/src/Action.ts +17 -2
  26. package/src/actions/basic/CreateSubAction.ts +23 -0
  27. package/src/actions/basic/UpdateSubAction.ts +8 -1
  28. package/src/actions/basic/index.ts +2 -1
  29. package/src/actions/chickenBonds/CBCreateRebondSubAction.ts +20 -0
  30. package/src/actions/chickenBonds/CBUpdateRebondSubAction.ts +18 -0
  31. package/src/actions/chickenBonds/FetchBondIdAction.ts +23 -0
  32. package/src/actions/chickenBonds/index.ts +5 -1
  33. package/src/addresses.ts +9 -6
  34. package/src/triggers/CBRebondTrigger.ts +14 -0
  35. package/src/triggers/index.ts +1 -0
  36. package/umd/index.js +471 -298
@@ -9,3 +9,4 @@ export * from './LiquityRatioTrigger';
9
9
  export * from './AaveV3RatioTrigger';
10
10
  export * from './CompV3RatioTrigger';
11
11
  export * from './TrailingStopTrigger';
12
+ export * from './CBRebondTrigger';
package/package-lock.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defisaver/sdk",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "lockfileVersion": 1,
5
5
  "requires": true,
6
6
  "dependencies": {
@@ -2389,6 +2389,7 @@
2389
2389
  "version": "3.1.6",
2390
2390
  "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz",
2391
2391
  "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==",
2392
+ "dev": true,
2392
2393
  "requires": {
2393
2394
  "call-bind": "^1.0.2",
2394
2395
  "define-properties": "^1.1.4",
@@ -2419,6 +2420,7 @@
2419
2420
  "version": "1.3.1",
2420
2421
  "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz",
2421
2422
  "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==",
2423
+ "dev": true,
2422
2424
  "requires": {
2423
2425
  "call-bind": "^1.0.2",
2424
2426
  "define-properties": "^1.1.4",
@@ -2430,6 +2432,7 @@
2430
2432
  "version": "1.1.1",
2431
2433
  "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz",
2432
2434
  "integrity": "sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==",
2435
+ "dev": true,
2433
2436
  "requires": {
2434
2437
  "call-bind": "^1.0.2",
2435
2438
  "define-properties": "^1.1.4",
@@ -2585,7 +2588,8 @@
2585
2588
  "balanced-match": {
2586
2589
  "version": "1.0.0",
2587
2590
  "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
2588
- "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
2591
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
2592
+ "dev": true
2589
2593
  },
2590
2594
  "base-x": {
2591
2595
  "version": "3.0.8",
@@ -2678,6 +2682,7 @@
2678
2682
  "version": "1.1.11",
2679
2683
  "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
2680
2684
  "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
2685
+ "dev": true,
2681
2686
  "requires": {
2682
2687
  "balanced-match": "^1.0.0",
2683
2688
  "concat-map": "0.0.1"
@@ -3215,7 +3220,8 @@
3215
3220
  "concat-map": {
3216
3221
  "version": "0.0.1",
3217
3222
  "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
3218
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
3223
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
3224
+ "dev": true
3219
3225
  },
3220
3226
  "config-master": {
3221
3227
  "version": "3.1.0",
@@ -3489,6 +3495,7 @@
3489
3495
  "version": "1.1.4",
3490
3496
  "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz",
3491
3497
  "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==",
3498
+ "dev": true,
3492
3499
  "requires": {
3493
3500
  "has-property-descriptors": "^1.0.0",
3494
3501
  "object-keys": "^1.1.1"
@@ -3676,6 +3683,7 @@
3676
3683
  "version": "1.20.4",
3677
3684
  "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz",
3678
3685
  "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==",
3686
+ "dev": true,
3679
3687
  "requires": {
3680
3688
  "call-bind": "^1.0.2",
3681
3689
  "es-to-primitive": "^1.2.1",
@@ -3713,6 +3721,7 @@
3713
3721
  "version": "1.0.0",
3714
3722
  "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz",
3715
3723
  "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==",
3724
+ "dev": true,
3716
3725
  "requires": {
3717
3726
  "has": "^1.0.3"
3718
3727
  }
@@ -3721,6 +3730,7 @@
3721
3730
  "version": "1.2.1",
3722
3731
  "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
3723
3732
  "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
3733
+ "dev": true,
3724
3734
  "requires": {
3725
3735
  "is-callable": "^1.1.4",
3726
3736
  "is-date-object": "^1.0.1",
@@ -4149,6 +4159,7 @@
4149
4159
  "version": "7.31.11",
4150
4160
  "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.11.tgz",
4151
4161
  "integrity": "sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw==",
4162
+ "dev": true,
4152
4163
  "requires": {
4153
4164
  "array-includes": "^3.1.6",
4154
4165
  "array.prototype.flatmap": "^1.3.1",
@@ -4171,6 +4182,7 @@
4171
4182
  "version": "2.1.0",
4172
4183
  "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
4173
4184
  "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
4185
+ "dev": true,
4174
4186
  "requires": {
4175
4187
  "esutils": "^2.0.2"
4176
4188
  }
@@ -4178,12 +4190,14 @@
4178
4190
  "estraverse": {
4179
4191
  "version": "5.3.0",
4180
4192
  "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
4181
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA=="
4193
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
4194
+ "dev": true
4182
4195
  },
4183
4196
  "minimatch": {
4184
4197
  "version": "3.1.2",
4185
4198
  "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
4186
4199
  "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
4200
+ "dev": true,
4187
4201
  "requires": {
4188
4202
  "brace-expansion": "^1.1.7"
4189
4203
  }
@@ -4192,6 +4206,7 @@
4192
4206
  "version": "2.0.0-next.4",
4193
4207
  "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz",
4194
4208
  "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==",
4209
+ "dev": true,
4195
4210
  "requires": {
4196
4211
  "is-core-module": "^2.9.0",
4197
4212
  "path-parse": "^1.0.7",
@@ -4201,7 +4216,8 @@
4201
4216
  "semver": {
4202
4217
  "version": "6.3.0",
4203
4218
  "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
4204
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
4219
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
4220
+ "dev": true
4205
4221
  }
4206
4222
  }
4207
4223
  },
@@ -4298,7 +4314,8 @@
4298
4314
  "esutils": {
4299
4315
  "version": "2.0.3",
4300
4316
  "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
4301
- "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g=="
4317
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
4318
+ "dev": true
4302
4319
  },
4303
4320
  "etag": {
4304
4321
  "version": "1.8.1",
@@ -4747,6 +4764,7 @@
4747
4764
  "version": "1.1.5",
4748
4765
  "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz",
4749
4766
  "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==",
4767
+ "dev": true,
4750
4768
  "requires": {
4751
4769
  "call-bind": "^1.0.2",
4752
4770
  "define-properties": "^1.1.3",
@@ -4763,7 +4781,8 @@
4763
4781
  "functions-have-names": {
4764
4782
  "version": "1.2.3",
4765
4783
  "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
4766
- "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ=="
4784
+ "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
4785
+ "dev": true
4767
4786
  },
4768
4787
  "gensync": {
4769
4788
  "version": "1.0.0-beta.2",
@@ -4802,6 +4821,7 @@
4802
4821
  "version": "1.0.0",
4803
4822
  "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
4804
4823
  "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
4824
+ "dev": true,
4805
4825
  "requires": {
4806
4826
  "call-bind": "^1.0.2",
4807
4827
  "get-intrinsic": "^1.1.1"
@@ -4977,7 +4997,8 @@
4977
4997
  "has-bigints": {
4978
4998
  "version": "1.0.2",
4979
4999
  "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
4980
- "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ=="
5000
+ "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
5001
+ "dev": true
4981
5002
  },
4982
5003
  "has-flag": {
4983
5004
  "version": "4.0.0",
@@ -4989,6 +5010,7 @@
4989
5010
  "version": "1.0.0",
4990
5011
  "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
4991
5012
  "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
5013
+ "dev": true,
4992
5014
  "requires": {
4993
5015
  "get-intrinsic": "^1.1.1"
4994
5016
  }
@@ -5161,6 +5183,7 @@
5161
5183
  "version": "1.0.3",
5162
5184
  "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz",
5163
5185
  "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==",
5186
+ "dev": true,
5164
5187
  "requires": {
5165
5188
  "get-intrinsic": "^1.1.0",
5166
5189
  "has": "^1.0.3",
@@ -5191,6 +5214,7 @@
5191
5214
  "version": "1.0.4",
5192
5215
  "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
5193
5216
  "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
5217
+ "dev": true,
5194
5218
  "requires": {
5195
5219
  "has-bigints": "^1.0.1"
5196
5220
  }
@@ -5208,6 +5232,7 @@
5208
5232
  "version": "1.1.2",
5209
5233
  "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
5210
5234
  "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
5235
+ "dev": true,
5211
5236
  "requires": {
5212
5237
  "call-bind": "^1.0.2",
5213
5238
  "has-tostringtag": "^1.0.0"
@@ -5222,6 +5247,7 @@
5222
5247
  "version": "2.11.0",
5223
5248
  "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz",
5224
5249
  "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==",
5250
+ "dev": true,
5225
5251
  "requires": {
5226
5252
  "has": "^1.0.3"
5227
5253
  }
@@ -5230,6 +5256,7 @@
5230
5256
  "version": "1.0.5",
5231
5257
  "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz",
5232
5258
  "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
5259
+ "dev": true,
5233
5260
  "requires": {
5234
5261
  "has-tostringtag": "^1.0.0"
5235
5262
  }
@@ -5282,7 +5309,8 @@
5282
5309
  "is-negative-zero": {
5283
5310
  "version": "2.0.2",
5284
5311
  "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
5285
- "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA=="
5312
+ "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==",
5313
+ "dev": true
5286
5314
  },
5287
5315
  "is-number": {
5288
5316
  "version": "7.0.0",
@@ -5294,6 +5322,7 @@
5294
5322
  "version": "1.0.7",
5295
5323
  "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz",
5296
5324
  "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
5325
+ "dev": true,
5297
5326
  "requires": {
5298
5327
  "has-tostringtag": "^1.0.0"
5299
5328
  }
@@ -5317,6 +5346,7 @@
5317
5346
  "version": "1.1.4",
5318
5347
  "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz",
5319
5348
  "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
5349
+ "dev": true,
5320
5350
  "requires": {
5321
5351
  "call-bind": "^1.0.2",
5322
5352
  "has-tostringtag": "^1.0.0"
@@ -5326,6 +5356,7 @@
5326
5356
  "version": "1.0.2",
5327
5357
  "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
5328
5358
  "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==",
5359
+ "dev": true,
5329
5360
  "requires": {
5330
5361
  "call-bind": "^1.0.2"
5331
5362
  }
@@ -5334,6 +5365,7 @@
5334
5365
  "version": "1.0.7",
5335
5366
  "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
5336
5367
  "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
5368
+ "dev": true,
5337
5369
  "requires": {
5338
5370
  "has-tostringtag": "^1.0.0"
5339
5371
  }
@@ -5342,6 +5374,7 @@
5342
5374
  "version": "1.0.4",
5343
5375
  "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
5344
5376
  "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
5377
+ "dev": true,
5345
5378
  "requires": {
5346
5379
  "has-symbols": "^1.0.2"
5347
5380
  }
@@ -5367,6 +5400,7 @@
5367
5400
  "version": "1.0.2",
5368
5401
  "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
5369
5402
  "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
5403
+ "dev": true,
5370
5404
  "requires": {
5371
5405
  "call-bind": "^1.0.2"
5372
5406
  }
@@ -5427,7 +5461,8 @@
5427
5461
  "js-tokens": {
5428
5462
  "version": "4.0.0",
5429
5463
  "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
5430
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
5464
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
5465
+ "dev": true
5431
5466
  },
5432
5467
  "js-yaml": {
5433
5468
  "version": "3.14.0",
@@ -5608,6 +5643,7 @@
5608
5643
  "version": "3.3.3",
5609
5644
  "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz",
5610
5645
  "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==",
5646
+ "dev": true,
5611
5647
  "requires": {
5612
5648
  "array-includes": "^3.1.5",
5613
5649
  "object.assign": "^4.1.3"
@@ -5760,6 +5796,7 @@
5760
5796
  "version": "1.4.0",
5761
5797
  "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
5762
5798
  "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
5799
+ "dev": true,
5763
5800
  "requires": {
5764
5801
  "js-tokens": "^3.0.0 || ^4.0.0"
5765
5802
  }
@@ -6197,7 +6234,8 @@
6197
6234
  "object-keys": {
6198
6235
  "version": "1.1.1",
6199
6236
  "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
6200
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="
6237
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
6238
+ "dev": true
6201
6239
  },
6202
6240
  "object-to-spawn-args": {
6203
6241
  "version": "2.0.0",
@@ -6209,6 +6247,7 @@
6209
6247
  "version": "4.1.4",
6210
6248
  "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz",
6211
6249
  "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==",
6250
+ "dev": true,
6212
6251
  "requires": {
6213
6252
  "call-bind": "^1.0.2",
6214
6253
  "define-properties": "^1.1.4",
@@ -6220,6 +6259,7 @@
6220
6259
  "version": "1.1.6",
6221
6260
  "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz",
6222
6261
  "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==",
6262
+ "dev": true,
6223
6263
  "requires": {
6224
6264
  "call-bind": "^1.0.2",
6225
6265
  "define-properties": "^1.1.4",
@@ -6230,6 +6270,7 @@
6230
6270
  "version": "2.0.6",
6231
6271
  "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz",
6232
6272
  "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==",
6273
+ "dev": true,
6233
6274
  "requires": {
6234
6275
  "call-bind": "^1.0.2",
6235
6276
  "define-properties": "^1.1.4",
@@ -6240,6 +6281,7 @@
6240
6281
  "version": "1.1.2",
6241
6282
  "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz",
6242
6283
  "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==",
6284
+ "dev": true,
6243
6285
  "requires": {
6244
6286
  "define-properties": "^1.1.4",
6245
6287
  "es-abstract": "^1.20.4"
@@ -6249,6 +6291,7 @@
6249
6291
  "version": "1.1.6",
6250
6292
  "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz",
6251
6293
  "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==",
6294
+ "dev": true,
6252
6295
  "requires": {
6253
6296
  "call-bind": "^1.0.2",
6254
6297
  "define-properties": "^1.1.4",
@@ -6385,7 +6428,8 @@
6385
6428
  "path-parse": {
6386
6429
  "version": "1.0.7",
6387
6430
  "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
6388
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
6431
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
6432
+ "dev": true
6389
6433
  },
6390
6434
  "path-to-regexp": {
6391
6435
  "version": "0.1.7",
@@ -6496,6 +6540,7 @@
6496
6540
  "version": "15.8.1",
6497
6541
  "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
6498
6542
  "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
6543
+ "dev": true,
6499
6544
  "requires": {
6500
6545
  "loose-envify": "^1.4.0",
6501
6546
  "object-assign": "^4.1.1",
@@ -6608,7 +6653,8 @@
6608
6653
  "react-is": {
6609
6654
  "version": "16.13.1",
6610
6655
  "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
6611
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
6656
+ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==",
6657
+ "dev": true
6612
6658
  },
6613
6659
  "readable-stream": {
6614
6660
  "version": "3.6.0",
@@ -6744,6 +6790,7 @@
6744
6790
  "version": "1.4.3",
6745
6791
  "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz",
6746
6792
  "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==",
6793
+ "dev": true,
6747
6794
  "requires": {
6748
6795
  "call-bind": "^1.0.2",
6749
6796
  "define-properties": "^1.1.3",
@@ -6952,6 +6999,7 @@
6952
6999
  "version": "1.0.0",
6953
7000
  "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
6954
7001
  "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==",
7002
+ "dev": true,
6955
7003
  "requires": {
6956
7004
  "call-bind": "^1.0.2",
6957
7005
  "get-intrinsic": "^1.1.3",
@@ -7279,6 +7327,7 @@
7279
7327
  "version": "4.0.8",
7280
7328
  "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz",
7281
7329
  "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==",
7330
+ "dev": true,
7282
7331
  "requires": {
7283
7332
  "call-bind": "^1.0.2",
7284
7333
  "define-properties": "^1.1.4",
@@ -7294,6 +7343,7 @@
7294
7343
  "version": "1.0.6",
7295
7344
  "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz",
7296
7345
  "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==",
7346
+ "dev": true,
7297
7347
  "requires": {
7298
7348
  "call-bind": "^1.0.2",
7299
7349
  "define-properties": "^1.1.4",
@@ -7304,6 +7354,7 @@
7304
7354
  "version": "1.0.6",
7305
7355
  "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz",
7306
7356
  "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==",
7357
+ "dev": true,
7307
7358
  "requires": {
7308
7359
  "call-bind": "^1.0.2",
7309
7360
  "define-properties": "^1.1.4",
@@ -7359,7 +7410,8 @@
7359
7410
  "supports-preserve-symlinks-flag": {
7360
7411
  "version": "1.0.0",
7361
7412
  "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
7362
- "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
7413
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
7414
+ "dev": true
7363
7415
  },
7364
7416
  "swarm-js": {
7365
7417
  "version": "0.1.42",
@@ -7833,6 +7885,7 @@
7833
7885
  "version": "1.0.2",
7834
7886
  "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
7835
7887
  "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
7888
+ "dev": true,
7836
7889
  "requires": {
7837
7890
  "call-bind": "^1.0.2",
7838
7891
  "has-bigints": "^1.0.2",
@@ -8435,6 +8488,7 @@
8435
8488
  "version": "1.0.2",
8436
8489
  "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
8437
8490
  "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
8491
+ "dev": true,
8438
8492
  "requires": {
8439
8493
  "is-bigint": "^1.0.1",
8440
8494
  "is-boolean-object": "^1.1.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defisaver/sdk",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "description": "",
5
5
  "main": "./umd/index.js",
6
6
  "module": "./esm/src/index.js",
package/src/Action.ts CHANGED
@@ -93,17 +93,32 @@ export class Action {
93
93
  #_getPlaceholderForType(type: string) : string {
94
94
  // TODO handle arrays?
95
95
  // eslint-disable-next-line
96
- if (type.startsWith('bytes')) return `0x${'0'.repeat(parseInt(type.substr(5)))}`;
96
+ if (type.startsWith('bytes')) return `0x${'0'.repeat(parseInt(type.substr(5)) * 2)}`;
97
97
  if (type === 'address') return `0x${'0'.repeat(40)}`;
98
98
  if (type === 'string') return '';
99
99
  return '0';
100
100
  }
101
101
 
102
+ _parseParamType(paramType:string | ParamTypes, arg:Args) {
103
+ if (typeof (paramType) === 'string') {
104
+ if (paramType.startsWith('(')) {
105
+ let _paramType = paramType.replace('(', '');
106
+ _paramType = _paramType.replace(')', '');
107
+ return _paramType.split(',');
108
+ }
109
+ if (paramType.endsWith('[]')) {
110
+ return Array.from(Array(arg.length).fill(paramType.replace('[]', '')));
111
+ }
112
+ }
113
+ return paramType;
114
+ }
115
+
102
116
  /**
103
117
  *
104
118
  */
105
119
  _replaceWithPlaceholders(arg: Args, paramType: string | ParamTypes) : any {
106
- if (Array.isArray(arg)) return arg.map((_arg, i) => this._replaceWithPlaceholders(_arg, paramType[i]));
120
+ const paramTypeParsed = this._parseParamType(paramType, arg);
121
+ if (Array.isArray(arg)) return arg.map((_arg, i) => this._replaceWithPlaceholders(_arg, paramTypeParsed[i]));
107
122
  if (typeof (paramType) === 'string') {
108
123
  if (new RegExp(/\$\d+/).test(arg)) return this.#_getPlaceholderForType(paramType);
109
124
  if (new RegExp(/&\w+/).test(arg)) return this.#_getPlaceholderForType(paramType);
@@ -0,0 +1,23 @@
1
+ import { Action } from '../../Action';
2
+ import { getAddr } from '../../addresses';
3
+ import {
4
+ uint256, bytes, bytes32, uint64,
5
+ } from '../../types';
6
+
7
+ /**
8
+ * Action for creating a sub
9
+ *
10
+ * @category BasicActions
11
+ */
12
+ export class CreateSubAction extends Action {
13
+ /**
14
+ * @param sub object that contains new sub information
15
+ */
16
+ constructor(sub:[uint64, boolean, bytes[], bytes32[]]) {
17
+ super('CreateSub', getAddr('CreateSub'), ['(uint64,bool,bytes[],bytes32[])'], [sub]);
18
+
19
+ for (let i = 0; i < this.args[0][3].length; i++) {
20
+ this.mappableArgs.push(this.args[0][3][i]);
21
+ }
22
+ }
23
+ }
@@ -16,5 +16,12 @@ export class UpdateSubAction extends Action {
16
16
  */
17
17
  constructor(subId:uint256, sub:[uint64, boolean, bytes[], bytes32[]]) {
18
18
  super('UpdateSub', getAddr('UpdateSub'), ['uint256', '(uint64,bool,bytes[],bytes32[])'], [subId, sub]);
19
+
20
+ this.mappableArgs = [
21
+ this.args[0],
22
+ ];
23
+ for (let i = 0; i < this.args[1][3].length; i++) {
24
+ this.mappableArgs.push(this.args[1][3][i]);
25
+ }
19
26
  }
20
- }
27
+ }
@@ -13,4 +13,5 @@ export * from './GasFeeAction';
13
13
  export * from './UpdateSubAction';
14
14
  export * from './ToggleSubAction';
15
15
  export * from './GasFeeActionL2';
16
- export * from './TransferNFTAction';
16
+ export * from './TransferNFTAction';
17
+ export * from './CreateSubAction';
@@ -0,0 +1,20 @@
1
+ import { Action } from '../../Action';
2
+ import { getAddr } from '../../addresses';
3
+ import { uint256 } from '../../types';
4
+
5
+ /**
6
+ * CBCreateRebondSubAction - Subscribes to CB Rebond Strategy
7
+ *
8
+ * @category ChickenBonds
9
+ */
10
+ export class CBCreateRebondSubAction extends Action {
11
+ /**
12
+ * @param bondId {string} Id of the bond in the strategy
13
+ */
14
+ constructor(bondId:uint256) {
15
+ super('CBCreateRebondSub', getAddr('CBCreateRebondSub'), ['uint256'], [bondId]);
16
+ this.mappableArgs = [
17
+ this.args[0],
18
+ ];
19
+ }
20
+ }
@@ -0,0 +1,18 @@
1
+ import { Action } from '../../Action';
2
+ import { getAddr } from '../../addresses';
3
+ import { uint256 } from '../../types';
4
+
5
+ /**
6
+ * CBUpdateRebondSubAction - Updates rebond strategy subscription
7
+ *
8
+ * @category ChickenBonds
9
+ */
10
+ export class CBUpdateRebondSubAction extends Action {
11
+ /**
12
+ * @param subId {string} Id of the subscription to update
13
+ * @param bondId {string} Id of the bond in the strategy
14
+ */
15
+ constructor(subId:uint256, bondId:uint256) {
16
+ super('CBUpdateRebondSub', getAddr('CBUpdateRebondSub'), ['uint256', 'uint256'], [subId, bondId]);
17
+ }
18
+ }
@@ -0,0 +1,23 @@
1
+ import { Action } from '../../Action';
2
+ import { getAddr } from '../../addresses';
3
+ import { uint256 } from '../../types';
4
+
5
+ /**
6
+ * FetchBondIdAction - action that retrieves CB BondId from a hashed strategy
7
+ *
8
+ * @category ChickenBonds
9
+ */
10
+ export class FetchBondIdAction extends Action {
11
+ /**
12
+ * @param paybackSourceId
13
+ * @param sourceType
14
+ * @param cbRebondBondId
15
+ */
16
+ constructor(paybackSourceId:uint256, sourceType:uint256, cbRebondBondId:uint256) {
17
+ super('FetchBondId', getAddr('FetchBondId'), ['uint256', 'uint256', 'uint256'], [paybackSourceId, sourceType, cbRebondBondId]);
18
+ this.mappableArgs = [
19
+ this.args[0],
20
+ this.args[1],
21
+ ];
22
+ }
23
+ }
@@ -1,4 +1,8 @@
1
1
  export * from './CBCreateAction';
2
2
  export * from './CBChickenInAction';
3
3
  export * from './CBChickenOutAction';
4
- export * from './CBRedeemAction';
4
+ export * from './CBRedeemAction';
5
+ export * from './CBUpdateRebondSubAction';
6
+ export * from './FetchBondIdAction';
7
+ export * from './CBCreateRebondSubAction';
8
+