@wildcatfi/wildcat-sdk 3.0.65-beta → 3.0.67-beta

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 (77) hide show
  1. package/dist/access/access-control.d.ts +14 -4
  2. package/dist/access/access-control.d.ts.map +1 -1
  3. package/dist/access/access-control.js +43 -9
  4. package/dist/access/access-control.js.map +1 -1
  5. package/dist/access/fixed-term.d.ts +14 -4
  6. package/dist/access/fixed-term.d.ts.map +1 -1
  7. package/dist/access/fixed-term.js +43 -9
  8. package/dist/access/fixed-term.js.map +1 -1
  9. package/dist/access/index.d.ts +7 -0
  10. package/dist/access/index.d.ts.map +1 -1
  11. package/dist/access/index.js +21 -1
  12. package/dist/access/index.js.map +1 -1
  13. package/dist/access/revolving.d.ts +7 -0
  14. package/dist/access/revolving.d.ts.map +1 -0
  15. package/dist/access/revolving.js +15 -0
  16. package/dist/access/revolving.js.map +1 -0
  17. package/dist/access/validation.d.ts +28 -5
  18. package/dist/access/validation.d.ts.map +1 -1
  19. package/dist/access/validation.js +17 -1
  20. package/dist/access/validation.js.map +1 -1
  21. package/dist/account/index.d.ts +7 -4
  22. package/dist/account/index.d.ts.map +1 -1
  23. package/dist/account/index.js +103 -41
  24. package/dist/account/index.js.map +1 -1
  25. package/dist/constants.d.ts +17 -4
  26. package/dist/constants.d.ts.map +1 -1
  27. package/dist/constants.js +64 -3
  28. package/dist/constants.js.map +1 -1
  29. package/dist/index.d.ts +3 -2
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +5 -3
  32. package/dist/index.js.map +1 -1
  33. package/dist/market.d.ts +9 -4
  34. package/dist/market.d.ts.map +1 -1
  35. package/dist/market.js +185 -18
  36. package/dist/market.js.map +1 -1
  37. package/dist/token.d.ts +3 -2
  38. package/dist/token.d.ts.map +1 -1
  39. package/dist/token.js +9 -0
  40. package/dist/token.js.map +1 -1
  41. package/dist/typechain/HooksFactoryRevolving.d.ts +603 -0
  42. package/dist/typechain/HooksFactoryRevolving.d.ts.map +1 -0
  43. package/dist/typechain/HooksFactoryRevolving.js +3 -0
  44. package/dist/typechain/HooksFactoryRevolving.js.map +1 -0
  45. package/dist/typechain/MarketLensV2_5.d.ts +996 -0
  46. package/dist/typechain/MarketLensV2_5.d.ts.map +1 -0
  47. package/dist/typechain/MarketLensV2_5.js +3 -0
  48. package/dist/typechain/MarketLensV2_5.js.map +1 -0
  49. package/dist/typechain/factories/HooksFactoryRevolving__factory.d.ts +872 -0
  50. package/dist/typechain/factories/HooksFactoryRevolving__factory.d.ts.map +1 -0
  51. package/dist/typechain/factories/HooksFactoryRevolving__factory.js +1131 -0
  52. package/dist/typechain/factories/HooksFactoryRevolving__factory.js.map +1 -0
  53. package/dist/typechain/factories/MarketLensV2_5__factory.d.ts +14397 -0
  54. package/dist/typechain/factories/MarketLensV2_5__factory.d.ts.map +1 -0
  55. package/dist/typechain/factories/MarketLensV2_5__factory.js +18393 -0
  56. package/dist/typechain/factories/MarketLensV2_5__factory.js.map +1 -0
  57. package/dist/typechain/factories/index.d.ts +2 -0
  58. package/dist/typechain/factories/index.d.ts.map +1 -1
  59. package/dist/typechain/factories/index.js +5 -1
  60. package/dist/typechain/factories/index.js.map +1 -1
  61. package/dist/typechain/index.d.ts +5 -0
  62. package/dist/typechain/index.d.ts.map +1 -1
  63. package/dist/typechain/index.js +5 -1
  64. package/dist/typechain/index.js.map +1 -1
  65. package/dist/types.d.ts +4 -0
  66. package/dist/types.d.ts.map +1 -1
  67. package/dist/types.js +8 -1
  68. package/dist/types.js.map +1 -1
  69. package/dist/withdrawal-batch.d.ts +5 -3
  70. package/dist/withdrawal-batch.d.ts.map +1 -1
  71. package/dist/withdrawal-batch.js +3 -3
  72. package/dist/withdrawal-batch.js.map +1 -1
  73. package/dist/withdrawal-status.d.ts +6 -3
  74. package/dist/withdrawal-status.d.ts.map +1 -1
  75. package/dist/withdrawal-status.js +5 -5
  76. package/dist/withdrawal-status.js.map +1 -1
  77. package/package.json +6 -2
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ChangeLenderRoleStatus = exports.DeployMarketStatus = void 0;
3
+ exports.ChangeLenderRoleStatus = exports.readyRevolvingDeployMarketPreview = exports.readyLegacyDeployMarketPreview = exports.DeployMarketStatus = void 0;
4
4
  var DeployMarketStatus;
5
5
  (function (DeployMarketStatus) {
6
6
  DeployMarketStatus["Ready"] = "Ready";
@@ -9,6 +9,22 @@ var DeployMarketStatus;
9
9
  DeployMarketStatus["NotRegisteredBorrower"] = "NotRegisteredBorrower";
10
10
  DeployMarketStatus["CreateProviderInputsWithoutFactory"] = "CreateProviderInputsWithoutFactory";
11
11
  })(DeployMarketStatus = exports.DeployMarketStatus || (exports.DeployMarketStatus = {}));
12
+ const readyLegacyDeployMarketPreview = (preview) => {
13
+ return {
14
+ status: DeployMarketStatus.Ready,
15
+ marketType: "legacy",
16
+ ...preview
17
+ };
18
+ };
19
+ exports.readyLegacyDeployMarketPreview = readyLegacyDeployMarketPreview;
20
+ const readyRevolvingDeployMarketPreview = (preview) => {
21
+ return {
22
+ status: DeployMarketStatus.Ready,
23
+ marketType: "revolving",
24
+ ...preview
25
+ };
26
+ };
27
+ exports.readyRevolvingDeployMarketPreview = readyRevolvingDeployMarketPreview;
12
28
  var ChangeLenderRoleStatus;
13
29
  (function (ChangeLenderRoleStatus) {
14
30
  ChangeLenderRoleStatus["Ready"] = "Ready";
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/access/validation.ts"],"names":[],"mappings":";;;AAEA,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,qCAAe,CAAA;IACf,iEAA2C,CAAA;IAC3C,qEAA+C,CAAA;IAC/C,qEAA+C,CAAA;IAC/C,+FAAyE,CAAA;AAC3E,CAAC,EANW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAM7B;AAmBD,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,yCAAe,CAAA;IACf,qDAA2B,CAAA;AAC7B,CAAC,EAHW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAGjC"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/access/validation.ts"],"names":[],"mappings":";;;AAEA,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,qCAAe,CAAA;IACf,iEAA2C,CAAA;IAC3C,qEAA+C,CAAA;IAC/C,qEAA+C,CAAA;IAC/C,+FAAyE,CAAA;AAC3E,CAAC,EANW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAM7B;AAoDM,MAAM,8BAA8B,GAAG,CAC5C,OAAsC,EACN,EAAE;IAClC,OAAO;QACL,MAAM,EAAE,kBAAkB,CAAC,KAAK;QAChC,UAAU,EAAE,QAAQ;QACpB,GAAG,OAAO;KACX,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,8BAA8B,kCAQzC;AAEK,MAAM,iCAAiC,GAAG,CAC/C,OAAyC,EACN,EAAE;IACrC,OAAO;QACL,MAAM,EAAE,kBAAkB,CAAC,KAAK;QAChC,UAAU,EAAE,WAAW;QACvB,GAAG,OAAO;KACX,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,iCAAiC,qCAQ5C;AAEF,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,yCAAe,CAAA;IACf,qDAA2B,CAAA;AAC7B,CAAC,EAHW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAGjC"}
@@ -1,7 +1,7 @@
1
1
  import { BigNumber, ContractReceipt, ContractTransaction } from "ethers";
2
2
  import { TokenAmount } from "../token";
3
3
  import { Market } from "../market";
4
- import { MarketLenderStatusStructOutput, MarketDataWithLenderStatusStructOutput, LenderAccountDataStructOutput, MarketDataWithLenderStatusV2StructOutput } from "../typechain";
4
+ import { MarketLenderStatusStructOutput, MarketDataWithLenderStatusStructOutput, LenderAccountDataStructOutput, MarketDataWithLenderStatusV2StructOutput, LenderAccountDataV2_5StructOutput, MarketDataWithLenderStatusV2_5StructOutput } from "../typechain";
5
5
  import { DepositRecord } from "../utils";
6
6
  import { SupportedChainId } from "../constants";
7
7
  import { HooksCredential, PartialTransaction, SignerOrProvider } from "../types";
@@ -15,6 +15,8 @@ export declare enum LenderRole {
15
15
  WithdrawOnly = 2,
16
16
  DepositAndWithdraw = 3
17
17
  }
18
+ type LatestLenderAccountDataStructOutput = LenderAccountDataStructOutput | LenderAccountDataV2_5StructOutput;
19
+ type MarketDataWithLenderStatusOutput = MarketDataWithLenderStatusStructOutput | MarketDataWithLenderStatusV2StructOutput | MarketDataWithLenderStatusV2_5StructOutput;
18
20
  export type MarketAccountArgs = {
19
21
  account: string;
20
22
  /** For V1 markets - whether lender has been manually approved on controller */
@@ -140,13 +142,14 @@ export declare class MarketAccount {
140
142
  getBorrowableAmount(amount: TokenAmount): TokenAmount;
141
143
  borrow(amount: TokenAmount): Promise<ContractTransaction>;
142
144
  update(): Promise<void>;
143
- updateWith(info: MarketLenderStatusStructOutput | LenderAccountDataStructOutput): void;
145
+ updateWith(info: MarketLenderStatusStructOutput | LatestLenderAccountDataStructOutput): void;
144
146
  private calculateInterestEarned;
145
147
  processInterestAccrued(): void;
146
148
  static fromSubgraphAccountData(market: Market, data: SubgraphAccountDataForLenderViewFragment): MarketAccount;
147
149
  static fromMarketLenderStatus(account: string, info: MarketLenderStatusStructOutput, market: Market): MarketAccount;
148
- static fromLenderAccountData(market: Market, data: LenderAccountDataStructOutput): MarketAccount;
149
- static fromMarketDataWithLenderStatus(chainId: SupportedChainId, provider: SignerOrProvider, account: string, info: MarketDataWithLenderStatusStructOutput | MarketDataWithLenderStatusV2StructOutput): MarketAccount;
150
+ static fromLenderAccountData(market: Market, data: LatestLenderAccountDataStructOutput): MarketAccount;
151
+ static fromMarketDataWithLenderStatus(chainId: SupportedChainId, provider: SignerOrProvider, account: string, info: MarketDataWithLenderStatusOutput): Promise<MarketAccount>;
152
+ static hydrateMarketAccounts(chainId: SupportedChainId, provider: SignerOrProvider, account: string, infos: MarketDataWithLenderStatusOutput[]): Promise<MarketAccount[]>;
150
153
  static fromMarketDataOnly(market: Market, account: string, isAuthorizedOnController: boolean): MarketAccount;
151
154
  /**
152
155
  * Get a `MarketAccount` for a given account and existing `Market` instance.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/account/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/account/index.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,9 @@ var LenderRole;
33
33
  LenderRole[LenderRole["DepositAndWithdraw"] = 3] = "DepositAndWithdraw";
34
34
  })(LenderRole = exports.LenderRole || (exports.LenderRole = {}));
35
35
  const NullProviderIndex = ethers_1.BigNumber.from(2).pow(24).sub(1).toNumber();
36
+ const hasUnifiedLatestLensForAccountReads = (chainId) => {
37
+ return (0, constants_1.hasDeploymentAddress)(chainId, "MarketLensV2_5");
38
+ };
36
39
  /**
37
40
  * Class to provide information about a market user's account
38
41
  * and to wrap interactions.
@@ -690,8 +693,13 @@ class MarketAccount {
690
693
  /* Updates */
691
694
  /* -------------------------------------------------------------------------- */
692
695
  async update() {
693
- const acccountMarketInfo = await (0, constants_1.getLensContract)(this.chainId, this.market.provider).getMarketLenderStatus(this.account, this.market.address);
694
- this.updateWith(acccountMarketInfo);
696
+ if (this.market.version === types_1.MarketVersion.V1) {
697
+ const acccountMarketInfo = await (0, constants_1.getLensContract)(this.chainId, this.market.provider).getMarketLenderStatus(this.account, this.market.address);
698
+ this.updateWith(acccountMarketInfo);
699
+ return;
700
+ }
701
+ const accountMarketInfo = await (0, constants_1.getLatestLensContract)(this.chainId, this.market.provider)["getLenderAccountData(address,address)"](this.account, this.market.address);
702
+ this.updateWith(accountMarketInfo);
695
703
  }
696
704
  updateWith(info) {
697
705
  if ("isAuthorizedOnController" in info) {
@@ -811,15 +819,21 @@ class MarketAccount {
811
819
  }
812
820
  });
813
821
  }
814
- static fromMarketDataWithLenderStatus(chainId, provider, account, info) {
822
+ static async fromMarketDataWithLenderStatus(chainId, provider, account, info) {
815
823
  if ("controller" in info.market) {
816
824
  info = info;
817
825
  return MarketAccount.fromMarketLenderStatus(account, info.lenderStatus, market_1.Market.fromMarketData(chainId, info.market, provider));
818
826
  }
819
- else {
820
- info = info;
821
- return MarketAccount.fromLenderAccountData(market_1.Market.fromMarketDataV2(chainId, provider, info.market), info.lenderStatus);
827
+ if ("allowForceBuyBacks" in info.market.hooksConfig) {
828
+ const infoV2 = info;
829
+ return MarketAccount.fromLenderAccountData(market_1.Market.fromMarketDataV2(chainId, provider, infoV2.market), infoV2.lenderStatus);
822
830
  }
831
+ const infoV2_5 = info;
832
+ const market = await market_1.Market.fromUnifiedMarketData(chainId, provider, infoV2_5.market);
833
+ return MarketAccount.fromLenderAccountData(market, infoV2_5.lenderStatus);
834
+ }
835
+ static async hydrateMarketAccounts(chainId, provider, account, infos) {
836
+ return Promise.all(infos.map((info) => MarketAccount.fromMarketDataWithLenderStatus(chainId, provider, account, info)));
823
837
  }
824
838
  static fromMarketDataOnly(market, account, isAuthorizedOnController) {
825
839
  return new MarketAccount({
@@ -838,16 +852,22 @@ class MarketAccount {
838
852
  * If `market` is a string, the market data will be fetched in the same call as the account data.
839
853
  */
840
854
  static async getMarketAccount(chainId, provider, account, market) {
841
- const lens = (0, constants_1.getLensContract)(chainId, provider);
842
855
  if (market instanceof market_1.Market) {
843
- return lens
844
- .getMarketLenderStatus(account, market.address)
845
- .then((info) => MarketAccount.fromMarketLenderStatus(account, info, market));
856
+ if (market.version === types_1.MarketVersion.V1) {
857
+ return (0, constants_1.getLensContract)(chainId, provider)
858
+ .getMarketLenderStatus(account, market.address)
859
+ .then((info) => MarketAccount.fromMarketLenderStatus(account, info, market));
860
+ }
861
+ return (0, constants_1.getLatestLensContract)(chainId, provider)["getLenderAccountData(address,address)"](account, market.address)
862
+ .then((info) => MarketAccount.fromLenderAccountData(market, info));
846
863
  }
847
- else {
848
- return lens
849
- .getMarketDataWithLenderStatus(account, market)
850
- .then((info) => MarketAccount.fromMarketDataWithLenderStatus(chainId, provider, account, info));
864
+ try {
865
+ const info = await (0, constants_1.getLatestLensContract)(chainId, provider).getMarketDataWithLenderStatus(account, market);
866
+ return MarketAccount.fromMarketDataWithLenderStatus(chainId, provider, account, info);
867
+ }
868
+ catch (_) {
869
+ const info = await (0, constants_1.getLensContract)(chainId, provider).getMarketDataWithLenderStatus(account, market);
870
+ return MarketAccount.fromMarketDataWithLenderStatus(chainId, provider, account, info);
851
871
  }
852
872
  }
853
873
  /**
@@ -855,17 +875,13 @@ class MarketAccount {
855
875
  * If `market` is a string, the market data will be fetched in the same call as the account data.
856
876
  */
857
877
  static async getMarketAccountV2(chainId, provider, account, market) {
858
- const lens = (0, constants_1.getLensV2Contract)(chainId, provider);
859
878
  if (market instanceof market_1.Market) {
860
- return lens
861
- .getMarketDataWithLenderStatus(account, market.address)
862
- .then((info) => MarketAccount.fromMarketDataWithLenderStatus(chainId, provider, account, info));
863
- }
864
- else {
865
- return lens
866
- .getMarketDataWithLenderStatus(account, market)
867
- .then((info) => MarketAccount.fromMarketDataWithLenderStatus(chainId, provider, account, info));
879
+ return (0, constants_1.getLatestLensContract)(chainId, provider)["getLenderAccountData(address,address)"](account, market.address)
880
+ .then((info) => MarketAccount.fromLenderAccountData(market, info));
868
881
  }
882
+ return (0, constants_1.getLatestLensContract)(chainId, provider)
883
+ .getMarketDataWithLenderStatus(account, market)
884
+ .then((info) => MarketAccount.fromMarketDataWithLenderStatus(chainId, provider, account, info));
869
885
  }
870
886
  /**
871
887
  * Get multiple `MarketAccount`s given an account and existing list of `Market`
@@ -873,41 +889,87 @@ class MarketAccount {
873
889
  * data will be fetched in the same call as the account data.
874
890
  */
875
891
  static async getMarketAccountsForLender(chainId, provider, account, markets) {
876
- const lens = (0, constants_1.getLensContract)(chainId, provider);
877
892
  if (markets.length === 0) {
878
893
  return [];
879
894
  }
880
895
  if ((0, validation_1.isMarketInstanceArray)(markets)) {
881
- return lens
882
- .getMarketsLenderStatus(account, markets.map((v) => v.address))
883
- .then((infos) => infos.map((info, i) => MarketAccount.fromMarketLenderStatus(account, info, markets[i])));
896
+ const results = new Array(markets.length);
897
+ const legacyIndexes = [];
898
+ const latestIndexes = [];
899
+ markets.forEach((market, index) => {
900
+ if (market.version === types_1.MarketVersion.V1) {
901
+ legacyIndexes.push(index);
902
+ }
903
+ else {
904
+ latestIndexes.push(index);
905
+ }
906
+ });
907
+ if (legacyIndexes.length > 0) {
908
+ const legacyMarkets = legacyIndexes.map((index) => markets[index]);
909
+ const infos = await (0, constants_1.getLensContract)(chainId, provider).getMarketsLenderStatus(account, legacyMarkets.map((market) => market.address));
910
+ infos.forEach((info, i) => {
911
+ results[legacyIndexes[i]] = MarketAccount.fromMarketLenderStatus(account, info, legacyMarkets[i]);
912
+ });
913
+ }
914
+ if (latestIndexes.length > 0) {
915
+ const latestMarkets = latestIndexes.map((index) => markets[index]);
916
+ const infos = await (0, constants_1.getLatestLensContract)(chainId, provider)["getLenderAccountData(address,address[])"](account, latestMarkets.map((market) => market.address));
917
+ infos.forEach((info, i) => {
918
+ results[latestIndexes[i]] = MarketAccount.fromLenderAccountData(latestMarkets[i], info);
919
+ });
920
+ }
921
+ return results;
884
922
  }
885
- else {
886
- return lens
887
- .getMarketsDataWithLenderStatus(account, markets)
888
- .then((infos) => infos.map((info) => MarketAccount.fromMarketDataWithLenderStatus(chainId, provider, account, info)));
923
+ try {
924
+ const infos = await (0, constants_1.getLatestLensContract)(chainId, provider).getMarketsDataWithLenderStatus(account, markets);
925
+ return MarketAccount.hydrateMarketAccounts(chainId, provider, account, infos);
926
+ }
927
+ catch (_) {
928
+ const infos = await (0, constants_1.getLensContract)(chainId, provider).getMarketsDataWithLenderStatus(account, markets);
929
+ return MarketAccount.hydrateMarketAccounts(chainId, provider, account, infos);
889
930
  }
890
931
  }
891
932
  /**
892
933
  * Get all `MarketAccount`s for a given account.
893
934
  * Fetches the market data in the same call as the account data.
894
935
  */
895
- static getAllMarketAccountsForLender(chainId, provider, account) {
896
- const lens = (0, constants_1.getLensContract)(chainId, provider);
897
- return lens
898
- .getAllMarketsDataWithLenderStatus(account)
899
- .then((infos) => infos.map((info) => MarketAccount.fromMarketDataWithLenderStatus(chainId, provider, account, info)));
936
+ static async getAllMarketAccountsForLender(chainId, provider, account) {
937
+ if (hasUnifiedLatestLensForAccountReads(chainId)) {
938
+ const markets = await (0, constants_1.getArchControllerContract)(chainId, provider)["getRegisteredMarkets()"]();
939
+ if (markets.length === 0) {
940
+ return [];
941
+ }
942
+ const infos = await (0, constants_1.getLatestLensContract)(chainId, provider).getMarketsDataWithLenderStatus(account, markets);
943
+ return MarketAccount.hydrateMarketAccounts(chainId, provider, account, infos);
944
+ }
945
+ const infos = await (0, constants_1.getLensContract)(chainId, provider).getAllMarketsDataWithLenderStatus(account);
946
+ return MarketAccount.hydrateMarketAccounts(chainId, provider, account, infos);
900
947
  }
901
948
  /**
902
949
  * Get paginated `MarketAccount`s for a given account.
903
950
  * Fetches the market data in the same call as the account data.
904
951
  * @note Throws an error if `start + count` exceeds the number of markets.
905
952
  */
906
- static getPaginatedMarketAccounts(chainId, provider, account, start = 0, count) {
907
- const lens = (0, constants_1.getLensContract)(chainId, provider);
908
- return lens
909
- .getPaginatedMarketsDataWithLenderStatus(account, start, count)
910
- .then((infos) => infos.map((info) => MarketAccount.fromMarketDataWithLenderStatus(chainId, provider, account, info)));
953
+ static async getPaginatedMarketAccounts(chainId, provider, account, start = 0, count) {
954
+ if (hasUnifiedLatestLensForAccountReads(chainId)) {
955
+ if (count <= 0) {
956
+ return [];
957
+ }
958
+ const archController = (0, constants_1.getArchControllerContract)(chainId, provider);
959
+ const totalMarkets = (await archController.getRegisteredMarketsCount()).toNumber();
960
+ if (start >= totalMarkets) {
961
+ return [];
962
+ }
963
+ const end = Math.min(start + count, totalMarkets);
964
+ const markets = await archController["getRegisteredMarkets(uint256,uint256)"](start, end);
965
+ if (markets.length === 0) {
966
+ return [];
967
+ }
968
+ const infos = await (0, constants_1.getLatestLensContract)(chainId, provider).getMarketsDataWithLenderStatus(account, markets);
969
+ return MarketAccount.hydrateMarketAccounts(chainId, provider, account, infos);
970
+ }
971
+ const infos = await (0, constants_1.getLensContract)(chainId, provider).getPaginatedMarketsDataWithLenderStatus(account, start, count);
972
+ return MarketAccount.hydrateMarketAccounts(chainId, provider, account, infos);
911
973
  }
912
974
  }
913
975
  exports.MarketAccount = MarketAccount;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/account/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/account/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
- import { MarketLens, WildcatMarketController, WildcatMarketControllerFactory, MockERC20Factory, Wildcat4626WrapperFactory, WildcatArchController, MarketLensV2, HooksFactory, WildcatCollateralFactory, CollateralLens } from "./typechain";
2
- import { MarketParameterConstraints, SignerOrProvider } from "./types";
1
+ import { MarketLens, WildcatMarketController, WildcatMarketControllerFactory, MockERC20Factory, Wildcat4626WrapperFactory, WildcatArchController, MarketLensV2, MarketLensV2_5, HooksFactory, HooksFactoryRevolving, WildcatCollateralFactory, CollateralLens } from "./typechain";
2
+ import { MarketParameterConstraints, MarketType, SignerOrProvider } from "./types";
3
3
  import { ApolloClient, NormalizedCacheObject } from "@apollo/client";
4
- type NetworkDeployments = {
4
+ export type NetworkDeployments = {
5
5
  HooksFactory: string;
6
+ HooksFactoryRevolving?: string;
6
7
  MarketLens?: string;
7
8
  MarketLensV2: string;
9
+ MarketLensV2_5?: string;
8
10
  MockArchControllerOwner?: string;
9
11
  MockChainalysis?: string;
10
12
  MockERC20Factory?: string;
@@ -18,6 +20,8 @@ type NetworkDeployments = {
18
20
  BebopSettlementContract?: string;
19
21
  CollateralLens?: string;
20
22
  };
23
+ export type HooksFactoryDeploymentName = "HooksFactory" | "HooksFactoryRevolving";
24
+ export type LatestLensDeploymentName = "MarketLensV2" | "MarketLensV2_5";
21
25
  export declare enum SupportedChainId {
22
26
  Mainnet = 1,
23
27
  Sepolia = 11155111,
@@ -29,13 +33,23 @@ export declare const isSupportedChainId: (chainId: number) => chainId is Support
29
33
  export declare const hasDeploymentAddress: (chainId: SupportedChainId, name: keyof NetworkDeployments) => boolean;
30
34
  export declare const Deployments: Record<SupportedChainId, NetworkDeployments>;
31
35
  export declare const getDeploymentAddress: (chainId: SupportedChainId, name: keyof NetworkDeployments) => string;
36
+ export declare const getHooksFactoryDeploymentName: (marketType: MarketType) => HooksFactoryDeploymentName;
37
+ export declare const hasHooksFactoryDeployment: (chainId: SupportedChainId, marketType: MarketType) => boolean;
38
+ export declare const getHooksFactoryAddressForMarketType: (chainId: SupportedChainId, marketType: MarketType) => string;
39
+ export declare const getMarketTypeForHooksFactory: (chainId: SupportedChainId, hooksFactoryAddress: string) => MarketType | undefined;
40
+ export declare const getLatestLensDeploymentName: (chainId: SupportedChainId) => LatestLensDeploymentName;
41
+ export declare const getLatestLensAddress: (chainId: SupportedChainId) => string;
32
42
  export declare const getControllerContract: (provider: SignerOrProvider, address: string) => WildcatMarketController;
33
43
  export declare const getControllerFactoryContract: (chainId: SupportedChainId, provider: SignerOrProvider) => WildcatMarketControllerFactory;
34
44
  export declare const getArchControllerContract: (chainId: SupportedChainId, provider: SignerOrProvider) => WildcatArchController;
35
45
  export declare const getLensContract: (chainId: SupportedChainId, provider: SignerOrProvider) => MarketLens;
36
46
  export declare const getCollateralLensContract: (chainId: SupportedChainId, provider: SignerOrProvider) => CollateralLens;
37
47
  export declare const getHooksFactoryContract: (chainId: SupportedChainId, provider: SignerOrProvider) => HooksFactory;
48
+ export declare const getHooksFactoryRevolvingContract: (chainId: SupportedChainId, provider: SignerOrProvider) => HooksFactoryRevolving;
49
+ export declare const getHooksFactoryContractForMarketType: (chainId: SupportedChainId, marketType: MarketType, provider: SignerOrProvider) => HooksFactory | HooksFactoryRevolving;
38
50
  export declare const getLensV2Contract: (chainId: SupportedChainId, provider: SignerOrProvider) => MarketLensV2;
51
+ export declare const getLensV2_5Contract: (chainId: SupportedChainId, provider: SignerOrProvider) => MarketLensV2_5;
52
+ export declare const getLatestLensContract: (chainId: SupportedChainId, provider: SignerOrProvider) => MarketLensV2 | MarketLensV2_5;
39
53
  export declare const getMockERC20Factory: (chainId: SupportedChainId, provider: SignerOrProvider) => MockERC20Factory;
40
54
  export declare const getMockArchControllerOwnerContract: (chainId: SupportedChainId, provider: SignerOrProvider) => WildcatArchController;
41
55
  export declare const getCollateralFactoryContract: (chainId: SupportedChainId, provider: SignerOrProvider) => WildcatCollateralFactory;
@@ -48,5 +62,4 @@ export declare const SubgraphUrls: {
48
62
  };
49
63
  export declare const getSubgraphClient: (chainId: SupportedChainId) => ApolloClient<NormalizedCacheObject>;
50
64
  export declare const DefaultV2ParameterConstraints: MarketParameterConstraints;
51
- export {};
52
65
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,uBAAuB,EAEvB,8BAA8B,EAE9B,gBAAgB,EAEhB,yBAAyB,EAEzB,qBAAqB,EAErB,YAAY,EAGZ,YAAY,EACZ,wBAAwB,EAGxB,cAAc,EACf,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,EAAE,YAAY,EAAiB,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGpF,KAAK,kBAAkB,GAAG;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,wBAAwB,EAAE,MAAM,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,oBAAY,gBAAgB;IAC1B,OAAO,IAAI;IACX,OAAO,WAAW;IAClB,aAAa,OAAO;IACpB,aAAa,OAAO;CACrB;AAED,eAAO,MAAM,iBAAiB,oBAK7B,CAAC;AAEF,eAAO,MAAM,kBAAkB,YAAa,MAAM,gCAEjD,CAAC;AAEF,eAAO,MAAM,oBAAoB,YACtB,gBAAgB,QACnB,MAAM,kBAAkB,KAC7B,OAGF,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,gBAAgB,EAAE,kBAAkB,CAmDpE,CAAC;AAEF,eAAO,MAAM,oBAAoB,YACtB,gBAAgB,QACnB,MAAM,kBAAkB,KAC7B,MAKF,CAAC;AAEF,eAAO,MAAM,qBAAqB,aACtB,gBAAgB,WACjB,MAAM,KACd,uBAEF,CAAC;AAEF,eAAO,MAAM,4BAA4B,YAC9B,gBAAgB,YACf,gBAAgB,KACzB,8BAKF,CAAC;AAEF,eAAO,MAAM,yBAAyB,YAC3B,gBAAgB,YACf,gBAAgB,KACzB,qBAKF,CAAC;AAEF,eAAO,MAAM,eAAe,YACjB,gBAAgB,YACf,gBAAgB,KACzB,UAEF,CAAC;AAEF,eAAO,MAAM,yBAAyB,YAC3B,gBAAgB,YACf,gBAAgB,KACzB,cAEF,CAAC;AAEF,eAAO,MAAM,uBAAuB,YACzB,gBAAgB,YACf,gBAAgB,KACzB,YAEF,CAAC;AAEF,eAAO,MAAM,iBAAiB,YACnB,gBAAgB,YACf,gBAAgB,KACzB,YAEF,CAAC;AAEF,eAAO,MAAM,mBAAmB,YACrB,gBAAgB,YACf,gBAAgB,KACzB,gBAKF,CAAC;AAEF,eAAO,MAAM,kCAAkC,YACpC,gBAAgB,YACf,gBAAgB,KACzB,qBAKF,CAAC;AAEF,eAAO,MAAM,4BAA4B,YAC9B,gBAAgB,YACf,gBAAgB,KACzB,wBAKF,CAAC;AAEF,eAAO,MAAM,yBAAyB,YAC3B,gBAAgB,YACf,gBAAgB,KACzB,yBAKF,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;CAQxB,CAAC;AAEF,eAAO,MAAM,iBAAiB,YAAa,gBAAgB,KAAG,aAAa,qBAAqB,CAI5F,CAAC;AAIL,eAAO,MAAM,6BAA6B,EAAE,0BAW3C,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}