@wildcatfi/wildcat-sdk 3.0.40 → 3.0.42-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 (73) hide show
  1. package/dist/collateral/collateral-events.d.ts +119 -0
  2. package/dist/collateral/collateral-events.d.ts.map +1 -0
  3. package/dist/collateral/collateral-events.js +111 -0
  4. package/dist/collateral/collateral-events.js.map +1 -0
  5. package/dist/collateral/index.d.ts +42 -0
  6. package/dist/collateral/index.d.ts.map +1 -0
  7. package/dist/collateral/index.js +104 -0
  8. package/dist/collateral/index.js.map +1 -0
  9. package/dist/constants.d.ts +6 -1
  10. package/dist/constants.d.ts.map +1 -1
  11. package/dist/constants.js +16 -4
  12. package/dist/constants.js.map +1 -1
  13. package/dist/gql/graphql.d.ts +1864 -41
  14. package/dist/gql/graphql.d.ts.map +1 -1
  15. package/dist/gql/graphql.js +541 -4
  16. package/dist/gql/graphql.js.map +1 -1
  17. package/dist/index.d.ts +1 -0
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +1 -0
  20. package/dist/index.js.map +1 -1
  21. package/dist/market.js +0 -1
  22. package/dist/market.js.map +1 -1
  23. package/dist/typechain/CollateralLens.d.ts +218 -0
  24. package/dist/typechain/CollateralLens.d.ts.map +1 -0
  25. package/dist/typechain/CollateralLens.js +3 -0
  26. package/dist/typechain/CollateralLens.js.map +1 -0
  27. package/dist/typechain/DescribeSignature.d.ts +100 -0
  28. package/dist/typechain/DescribeSignature.d.ts.map +1 -0
  29. package/dist/typechain/DescribeSignature.js +3 -0
  30. package/dist/typechain/DescribeSignature.js.map +1 -0
  31. package/dist/typechain/ISafe.d.ts +17 -1
  32. package/dist/typechain/ISafe.d.ts.map +1 -1
  33. package/dist/typechain/SimpleMarketCollateral.d.ts +269 -0
  34. package/dist/typechain/SimpleMarketCollateral.d.ts.map +1 -0
  35. package/dist/typechain/SimpleMarketCollateral.js +3 -0
  36. package/dist/typechain/SimpleMarketCollateral.js.map +1 -0
  37. package/dist/typechain/WildcatCollateralFactory.d.ts +164 -0
  38. package/dist/typechain/WildcatCollateralFactory.d.ts.map +1 -0
  39. package/dist/typechain/WildcatCollateralFactory.js +3 -0
  40. package/dist/typechain/WildcatCollateralFactory.js.map +1 -0
  41. package/dist/typechain/factories/CollateralLens__factory.d.ts +842 -0
  42. package/dist/typechain/factories/CollateralLens__factory.d.ts.map +1 -0
  43. package/dist/typechain/factories/CollateralLens__factory.js +1086 -0
  44. package/dist/typechain/factories/CollateralLens__factory.js.map +1 -0
  45. package/dist/typechain/factories/DescribeSignature__factory.d.ts +141 -0
  46. package/dist/typechain/factories/DescribeSignature__factory.d.ts.map +1 -0
  47. package/dist/typechain/factories/DescribeSignature__factory.js +198 -0
  48. package/dist/typechain/factories/DescribeSignature__factory.js.map +1 -0
  49. package/dist/typechain/factories/ISafe__factory.d.ts +28 -0
  50. package/dist/typechain/factories/ISafe__factory.d.ts.map +1 -1
  51. package/dist/typechain/factories/ISafe__factory.js +37 -0
  52. package/dist/typechain/factories/ISafe__factory.js.map +1 -1
  53. package/dist/typechain/factories/SimpleMarketCollateral__factory.d.ts +260 -0
  54. package/dist/typechain/factories/SimpleMarketCollateral__factory.d.ts.map +1 -0
  55. package/dist/typechain/factories/SimpleMarketCollateral__factory.js +349 -0
  56. package/dist/typechain/factories/SimpleMarketCollateral__factory.js.map +1 -0
  57. package/dist/typechain/factories/WildcatCollateralFactory__factory.d.ts +160 -0
  58. package/dist/typechain/factories/WildcatCollateralFactory__factory.d.ts.map +1 -0
  59. package/dist/typechain/factories/WildcatCollateralFactory__factory.js +223 -0
  60. package/dist/typechain/factories/WildcatCollateralFactory__factory.js.map +1 -0
  61. package/dist/typechain/factories/index.d.ts +4 -0
  62. package/dist/typechain/factories/index.d.ts.map +1 -1
  63. package/dist/typechain/factories/index.js +9 -1
  64. package/dist/typechain/factories/index.js.map +1 -1
  65. package/dist/typechain/index.d.ts +12 -1
  66. package/dist/typechain/index.d.ts.map +1 -1
  67. package/dist/typechain/index.js +9 -1
  68. package/dist/typechain/index.js.map +1 -1
  69. package/dist/utils/describe-signature.d.ts +30 -0
  70. package/dist/utils/describe-signature.d.ts.map +1 -0
  71. package/dist/utils/describe-signature.js +52 -0
  72. package/dist/utils/describe-signature.js.map +1 -0
  73. package/package.json +1 -1
@@ -0,0 +1,119 @@
1
+ import { BigNumber } from "ethers";
2
+ import { Token, TokenAmount } from "../token";
3
+ import { Exact, SubgraphSimpleCollateralContractDeposit_Filter, SubgraphSimpleCollateralContractDepositDataFragment, SubgraphSimpleCollateralContractFullReset_Filter, SubgraphSimpleCollateralContractFullResetDataFragment, SubgraphSimpleCollateralContractLiquidatedSharesReset_Filter, SubgraphSimpleCollateralContractLiquidatedSharesResetDataFragment, SubgraphSimpleCollateralContractLiquidation_Filter, SubgraphSimpleCollateralContractLiquidationDataFragment, SubgraphSimpleCollateralContractReclaim_Filter, SubgraphSimpleCollateralContractReclaimDataFragment } from "../gql";
4
+ import { MarketCollateralV1 } from ".";
5
+ import { ApolloClient, FetchPolicy, NormalizedCacheObject } from "@apollo/client";
6
+ export type CollateralContractDeposit = Exact<Omit<SubgraphSimpleCollateralContractDepositDataFragment, "collateralContract" | "account" | "amountDeposited" | "sharesMinted"> & {
7
+ collateralContract: string;
8
+ account: string;
9
+ amountDeposited: TokenAmount;
10
+ sharesMinted: BigNumber;
11
+ }>;
12
+ export type CollateralContractReclaim = Exact<Omit<SubgraphSimpleCollateralContractReclaimDataFragment, "collateralContract" | "account" | "amountReclaimed" | "sharesBurned"> & {
13
+ collateralContract: string;
14
+ account: string;
15
+ amountReclaimed: TokenAmount;
16
+ sharesBurned: BigNumber;
17
+ }>;
18
+ export type CollateralContractLiquidation = Exact<Omit<SubgraphSimpleCollateralContractLiquidationDataFragment, "collateralContract" | "collateralLiquidated" | "underlyingReceived"> & {
19
+ collateralContract: string;
20
+ collateralLiquidated: TokenAmount;
21
+ underlyingReceived: TokenAmount;
22
+ }>;
23
+ export type CollateralContractFullReset = Exact<Omit<SubgraphSimpleCollateralContractFullResetDataFragment, "collateralContract"> & {
24
+ collateralContract: string;
25
+ }>;
26
+ export type CollateralContractLiquidatedSharesReset = Exact<Omit<SubgraphSimpleCollateralContractLiquidatedSharesResetDataFragment, "collateralContract" | "account" | "sharesReset"> & {
27
+ collateralContract: string;
28
+ account: string;
29
+ sharesReset: BigNumber;
30
+ }>;
31
+ export type CollateralContractEvent = CollateralContractDeposit | CollateralContractReclaim | CollateralContractLiquidation | CollateralContractFullReset | CollateralContractLiquidatedSharesReset;
32
+ export type CollateralContractEventDataFragment = SubgraphSimpleCollateralContractDepositDataFragment | SubgraphSimpleCollateralContractReclaimDataFragment | SubgraphSimpleCollateralContractLiquidationDataFragment | SubgraphSimpleCollateralContractFullResetDataFragment | SubgraphSimpleCollateralContractLiquidatedSharesResetDataFragment;
33
+ export type CollateralContractEventKind = CollateralContractEvent["__typename"];
34
+ export type CollateralContractRecordByType<K extends CollateralContractEventKind> = CollateralContractEvent extends infer C ? (C extends {
35
+ __typename: K;
36
+ } ? C : never) : never;
37
+ export type CollateralContractEventDataFragmentByType<K extends CollateralContractEventKind> = CollateralContractEventDataFragment extends infer C ? C extends {
38
+ __typename: K;
39
+ } ? C : never : never;
40
+ export type CollateralContractEventParserMap = {
41
+ [K in CollateralContractEventKind]: (collateralAsset: Token, underlyingAsset: Token, log: CollateralContractEventDataFragmentByType<K>) => CollateralContractRecordByType<K>;
42
+ };
43
+ export declare const collateralContractEventParsers: CollateralContractEventParserMap;
44
+ export type GetCollateralContractEventsOptions = {
45
+ collateralContract: MarketCollateralV1;
46
+ fetchPolicy?: FetchPolicy;
47
+ limit?: number;
48
+ endEventIndex?: number;
49
+ kinds?: CollateralContractEventKind[];
50
+ additionalFilter?: CommonFilter;
51
+ };
52
+ type CommonKeys<T, R = {}> = R extends T ? keyof T & CommonKeys<Exclude<T, R>> : keyof T;
53
+ type FilterUnion = SubgraphSimpleCollateralContractDeposit_Filter | SubgraphSimpleCollateralContractReclaim_Filter | SubgraphSimpleCollateralContractLiquidation_Filter | SubgraphSimpleCollateralContractFullReset_Filter | SubgraphSimpleCollateralContractLiquidatedSharesReset_Filter;
54
+ type Common<T> = Pick<T, CommonKeys<T>>;
55
+ type CommonFilter = Common<FilterUnion>;
56
+ export declare const parseCollateralContractEvent: <K extends "SimpleCollateralContractDeposit" | "SimpleCollateralContractFullReset" | "SimpleCollateralContractLiquidatedSharesReset" | "SimpleCollateralContractLiquidation" | "SimpleCollateralContractReclaim">(collateralAsset: Token, underlyingAsset: Token, log: (SubgraphSimpleCollateralContractReclaimDataFragment extends infer T ? T extends SubgraphSimpleCollateralContractReclaimDataFragment ? T extends {
57
+ __typename: K;
58
+ } ? T : never : never : never) | (SubgraphSimpleCollateralContractLiquidationDataFragment extends infer T_1 ? T_1 extends SubgraphSimpleCollateralContractLiquidationDataFragment ? T_1 extends {
59
+ __typename: K;
60
+ } ? T_1 : never : never : never) | (SubgraphSimpleCollateralContractFullResetDataFragment extends infer T_2 ? T_2 extends SubgraphSimpleCollateralContractFullResetDataFragment ? T_2 extends {
61
+ __typename: K;
62
+ } ? T_2 : never : never : never) | (SubgraphSimpleCollateralContractLiquidatedSharesResetDataFragment extends infer T_3 ? T_3 extends SubgraphSimpleCollateralContractLiquidatedSharesResetDataFragment ? T_3 extends {
63
+ __typename: K;
64
+ } ? T_3 : never : never : never) | (SubgraphSimpleCollateralContractDepositDataFragment extends infer T_4 ? T_4 extends SubgraphSimpleCollateralContractDepositDataFragment ? T_4 extends {
65
+ __typename: K;
66
+ } ? T_4 : never : never : never)) => (Exact<Omit<SubgraphSimpleCollateralContractDepositDataFragment, "account" | "collateralContract" | "amountDeposited" | "sharesMinted"> & {
67
+ collateralContract: string;
68
+ account: string;
69
+ amountDeposited: TokenAmount;
70
+ sharesMinted: BigNumber;
71
+ }> extends infer T_5 ? T_5 extends Exact<Omit<SubgraphSimpleCollateralContractDepositDataFragment, "account" | "collateralContract" | "amountDeposited" | "sharesMinted"> & {
72
+ collateralContract: string;
73
+ account: string;
74
+ amountDeposited: TokenAmount;
75
+ sharesMinted: BigNumber;
76
+ }> ? T_5 extends {
77
+ __typename: K;
78
+ } ? T_5 : never : never : never) | (Exact<Omit<SubgraphSimpleCollateralContractReclaimDataFragment, "account" | "collateralContract" | "amountReclaimed" | "sharesBurned"> & {
79
+ collateralContract: string;
80
+ account: string;
81
+ amountReclaimed: TokenAmount;
82
+ sharesBurned: BigNumber;
83
+ }> extends infer T_6 ? T_6 extends Exact<Omit<SubgraphSimpleCollateralContractReclaimDataFragment, "account" | "collateralContract" | "amountReclaimed" | "sharesBurned"> & {
84
+ collateralContract: string;
85
+ account: string;
86
+ amountReclaimed: TokenAmount;
87
+ sharesBurned: BigNumber;
88
+ }> ? T_6 extends {
89
+ __typename: K;
90
+ } ? T_6 : never : never : never) | (Exact<Omit<SubgraphSimpleCollateralContractLiquidationDataFragment, "collateralContract" | "collateralLiquidated" | "underlyingReceived"> & {
91
+ collateralContract: string;
92
+ collateralLiquidated: TokenAmount;
93
+ underlyingReceived: TokenAmount;
94
+ }> extends infer T_7 ? T_7 extends Exact<Omit<SubgraphSimpleCollateralContractLiquidationDataFragment, "collateralContract" | "collateralLiquidated" | "underlyingReceived"> & {
95
+ collateralContract: string;
96
+ collateralLiquidated: TokenAmount;
97
+ underlyingReceived: TokenAmount;
98
+ }> ? T_7 extends {
99
+ __typename: K;
100
+ } ? T_7 : never : never : never) | (Exact<Omit<SubgraphSimpleCollateralContractFullResetDataFragment, "collateralContract"> & {
101
+ collateralContract: string;
102
+ }> extends infer T_8 ? T_8 extends Exact<Omit<SubgraphSimpleCollateralContractFullResetDataFragment, "collateralContract"> & {
103
+ collateralContract: string;
104
+ }> ? T_8 extends {
105
+ __typename: K;
106
+ } ? T_8 : never : never : never) | (Exact<Omit<SubgraphSimpleCollateralContractLiquidatedSharesResetDataFragment, "account" | "collateralContract" | "sharesReset"> & {
107
+ collateralContract: string;
108
+ account: string;
109
+ sharesReset: BigNumber;
110
+ }> extends infer T_9 ? T_9 extends Exact<Omit<SubgraphSimpleCollateralContractLiquidatedSharesResetDataFragment, "account" | "collateralContract" | "sharesReset"> & {
111
+ collateralContract: string;
112
+ account: string;
113
+ sharesReset: BigNumber;
114
+ }> ? T_9 extends {
115
+ __typename: K;
116
+ } ? T_9 : never : never : never);
117
+ export declare function getCollateralContractEvents(subgraphClient: ApolloClient<NormalizedCacheObject>, { collateralContract, fetchPolicy, limit, endEventIndex, kinds, additionalFilter }: GetCollateralContractEventsOptions): Promise<CollateralContractEvent[]>;
118
+ export {};
119
+ //# sourceMappingURL=collateral-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collateral-events.d.ts","sourceRoot":"","sources":["../../src/collateral/collateral-events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCollateralContractEvents = exports.parseCollateralContractEvent = exports.collateralContractEventParsers = void 0;
4
+ const ethers_1 = require("ethers");
5
+ const gql_1 = require("../gql");
6
+ const utils_1 = require("../utils");
7
+ exports.collateralContractEventParsers = {
8
+ SimpleCollateralContractDeposit: (collateralAsset, underlyingAsset, log) => {
9
+ const { collateralContract, account, amountDeposited, sharesMinted, ...rest } = log;
10
+ return {
11
+ collateralContract: collateralContract.id,
12
+ account: account.id,
13
+ amountDeposited: collateralAsset.getAmount(amountDeposited),
14
+ sharesMinted: ethers_1.BigNumber.from(sharesMinted),
15
+ ...rest
16
+ };
17
+ },
18
+ SimpleCollateralContractReclaim: (collateralAsset, underlyingAsset, log) => {
19
+ const { collateralContract, account, amountReclaimed, sharesBurned, ...rest } = log;
20
+ return {
21
+ collateralContract: collateralContract.id,
22
+ account: account.id,
23
+ amountReclaimed: collateralAsset.getAmount(amountReclaimed),
24
+ sharesBurned: ethers_1.BigNumber.from(sharesBurned),
25
+ ...rest
26
+ };
27
+ },
28
+ SimpleCollateralContractFullReset: (collateralAsset, underlyingAsset, log) => {
29
+ const { collateralContract, ...rest } = log;
30
+ return {
31
+ collateralContract: collateralContract.id,
32
+ ...rest
33
+ };
34
+ },
35
+ SimpleCollateralContractLiquidatedSharesReset: (collateralAsset, underlyingAsset, log) => {
36
+ const { collateralContract, account, sharesReset, ...rest } = log;
37
+ return {
38
+ collateralContract: collateralContract.id,
39
+ account: account.id,
40
+ sharesReset: ethers_1.BigNumber.from(sharesReset),
41
+ ...rest
42
+ };
43
+ },
44
+ SimpleCollateralContractLiquidation: (collateralAsset, underlyingAsset, log) => {
45
+ const { collateralContract, collateralLiquidated, underlyingReceived, ...rest } = log;
46
+ return {
47
+ collateralContract: collateralContract.id,
48
+ collateralLiquidated: collateralAsset.getAmount(collateralLiquidated),
49
+ underlyingReceived: underlyingAsset.getAmount(underlyingReceived),
50
+ ...rest
51
+ };
52
+ }
53
+ };
54
+ const parseCollateralContractEvent = (collateralAsset, underlyingAsset, log) => {
55
+ const k = log.__typename;
56
+ return exports.collateralContractEventParsers[k](collateralAsset, underlyingAsset, log);
57
+ };
58
+ exports.parseCollateralContractEvent = parseCollateralContractEvent;
59
+ async function getCollateralContractEvents(subgraphClient, { collateralContract, fetchPolicy = "network-only", limit = 300, endEventIndex, kinds, additionalFilter }) {
60
+ const collateralContractAddress = collateralContract.address.toLowerCase();
61
+ // If no end index provided, try to set it with the contract's eventIndex, which is
62
+ // the total events count
63
+ if (endEventIndex === undefined && collateralContract.eventIndex !== undefined) {
64
+ endEventIndex = collateralContract.eventIndex;
65
+ }
66
+ const startEventIndex = endEventIndex ? Math.max(0, endEventIndex - limit) : 0;
67
+ console.log(`OPTIONS:`);
68
+ console.log({
69
+ startEventIndex,
70
+ endEventIndex,
71
+ limit,
72
+ depositRecordsFilter: additionalFilter,
73
+ reclaimRecordsFilter: additionalFilter,
74
+ liquidationRecordsFilter: additionalFilter,
75
+ fullResetRecordsFilter: additionalFilter,
76
+ includeDeposits: !kinds?.length || kinds.includes("SimpleCollateralContractDeposit"),
77
+ includeReclaims: !kinds?.length || kinds.includes("SimpleCollateralContractReclaim"),
78
+ includeLiquidations: !kinds?.length || kinds.includes("SimpleCollateralContractLiquidation"),
79
+ includeFullResets: !kinds?.length || kinds.includes("SimpleCollateralContractFullReset")
80
+ });
81
+ const result = await subgraphClient.query({
82
+ query: gql_1.GetCollateralContractEventsDocument,
83
+ fetchPolicy,
84
+ variables: {
85
+ collateralContract: collateralContractAddress,
86
+ startEventIndex,
87
+ endEventIndex,
88
+ limit,
89
+ depositRecordsFilter: additionalFilter,
90
+ reclaimRecordsFilter: additionalFilter,
91
+ liquidationRecordsFilter: additionalFilter,
92
+ fullResetRecordsFilter: additionalFilter,
93
+ includeDeposits: !kinds?.length || kinds.includes("SimpleCollateralContractDeposit"),
94
+ includeReclaims: !kinds?.length || kinds.includes("SimpleCollateralContractReclaim"),
95
+ includeLiquidations: !kinds?.length || kinds.includes("SimpleCollateralContractLiquidation"),
96
+ includeFullResets: !kinds?.length || kinds.includes("SimpleCollateralContractFullReset")
97
+ }
98
+ });
99
+ const { data: { simpleCollateralContract: collateralContractData } } = result;
100
+ (0, utils_1.assert)(!!collateralContractData, `Collateral contract not found in subgraph: ${collateralContractAddress}`);
101
+ const { collateralAsset, underlyingAsset } = collateralContract;
102
+ const { deposits, reclaims, liquidations, fullResets } = collateralContractData;
103
+ return [
104
+ ...(deposits?.map((deposit) => (0, exports.parseCollateralContractEvent)(collateralAsset, underlyingAsset, deposit)) ?? []),
105
+ ...(reclaims?.map((reclaim) => (0, exports.parseCollateralContractEvent)(collateralAsset, underlyingAsset, reclaim)) ?? []),
106
+ ...(liquidations?.map((liquidation) => (0, exports.parseCollateralContractEvent)(collateralAsset, underlyingAsset, liquidation)) ?? []),
107
+ ...(fullResets?.map((fullReset) => (0, exports.parseCollateralContractEvent)(collateralAsset, underlyingAsset, fullReset)) ?? [])
108
+ ];
109
+ }
110
+ exports.getCollateralContractEvents = getCollateralContractEvents;
111
+ //# sourceMappingURL=collateral-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collateral-events.js","sourceRoot":"","sources":["../../src/collateral/collateral-events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { BigNumber, ContractTransaction, Overrides } from "ethers";
2
+ import { TokenAmount } from "../token";
3
+ import { SimpleMarketCollateral, SimpleMarketCollateral__factory } from "../typechain";
4
+ import { ContractWrapper, PartialTransaction, SignerOrProvider } from "../types";
5
+ import { Token } from "../token";
6
+ import { SupportedChainId } from "../constants";
7
+ import { SubgraphSimpleCollateralContractDataFragment } from "../gql/graphql";
8
+ import { Market } from "../market";
9
+ import { ApolloClient, NormalizedCacheObject } from "@apollo/client";
10
+ export * from "./collateral-events";
11
+ export interface CollateralV1Args {
12
+ provider: SignerOrProvider;
13
+ address: string;
14
+ underlyingAsset: Token;
15
+ collateralAsset: Token;
16
+ liquidationCooldown: number;
17
+ maxRepaymentBips: number;
18
+ fullLiquidationIndex: number;
19
+ totalShares: BigNumber;
20
+ availableCollateral: TokenAmount;
21
+ nextLiquidationTrigger: number;
22
+ eventIndex?: number;
23
+ market: Market;
24
+ }
25
+ export interface MarketCollateralV1 extends CollateralV1Args {
26
+ }
27
+ export declare class MarketCollateralV1 extends ContractWrapper<SimpleMarketCollateral> {
28
+ readonly contractFactory: typeof SimpleMarketCollateral__factory;
29
+ protected readonly _contractAddress: string;
30
+ address: string;
31
+ constructor({ provider, address, ...args }: CollateralV1Args);
32
+ get maxRepayment(): TokenAmount;
33
+ deposit(amount: TokenAmount): Promise<ContractTransaction>;
34
+ populateDeposit(amount: TokenAmount): PartialTransaction;
35
+ reclaimCollateral(): Promise<ContractTransaction>;
36
+ populateReclaimCollateral(): PartialTransaction;
37
+ static fromSubgraphData(chainId: SupportedChainId, provider: SignerOrProvider, market: Market, data: SubgraphSimpleCollateralContractDataFragment): MarketCollateralV1;
38
+ static create(chainId: SupportedChainId, provider: SignerOrProvider, market: Market, collateralAsset: Token, overrides?: Overrides): Promise<ContractTransaction>;
39
+ static populateCreate(chainId: SupportedChainId, provider: SignerOrProvider, market: Market, collateralAsset: Token): PartialTransaction;
40
+ }
41
+ export declare function getCollateralContractsForMarket(subgraphClient: ApolloClient<NormalizedCacheObject>, chainId: SupportedChainId, provider: SignerOrProvider, market: Market): Promise<MarketCollateralV1[]>;
42
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/collateral/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnE,OAAO,EAAkB,WAAW,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjF,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAgC,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC9E,OAAO,EAIL,4CAA4C,EAC7C,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGrE,cAAc,qBAAqB,CAAC;AAEpC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,KAAK,CAAC;IACvB,eAAe,EAAE,KAAK,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,SAAS,CAAC;IACvB,mBAAmB,EAAE,WAAW,CAAC;IACjC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IAIpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAGD,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB;CAAG;AAE/D,qBAAa,kBAAmB,SAAQ,eAAe,CAAC,sBAAsB,CAAC;IAC7E,QAAQ,CAAC,eAAe,yCAAmC;IAC3D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;gBAEX,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,gBAAgB;IAO5D,IAAI,YAAY,IAAI,WAAW,CAG9B;IAEK,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAIhE,eAAe,CAAC,MAAM,EAAE,WAAW,GAAG,kBAAkB;IASlD,iBAAiB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIvD,yBAAyB,IAAI,kBAAkB;IAS/C,MAAM,CAAC,gBAAgB,CACrB,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,4CAA4C,GACjD,kBAAkB;IA2BrB,MAAM,CAAC,MAAM,CACX,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,KAAK,EACtB,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,mBAAmB,CAAC;IAS/B,MAAM,CAAC,cAAc,CACnB,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,KAAK,GACrB,kBAAkB;CAQtB;AAED,wBAAsB,+BAA+B,CACnD,cAAc,EAAE,YAAY,CAAC,qBAAqB,CAAC,EACnD,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAkB/B"}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.getCollateralContractsForMarket = exports.MarketCollateralV1 = void 0;
18
+ const ethers_1 = require("ethers");
19
+ const token_1 = require("../token");
20
+ const typechain_1 = require("../typechain");
21
+ const types_1 = require("../types");
22
+ const token_2 = require("../token");
23
+ const constants_1 = require("../constants");
24
+ const graphql_1 = require("../gql/graphql");
25
+ const utils_1 = require("../utils");
26
+ __exportStar(require("./collateral-events"), exports);
27
+ class MarketCollateralV1 extends types_1.ContractWrapper {
28
+ constructor({ provider, address, ...args }) {
29
+ super(provider);
30
+ this.contractFactory = typechain_1.SimpleMarketCollateral__factory;
31
+ this._contractAddress = address;
32
+ this.address = address;
33
+ Object.assign(this, args);
34
+ }
35
+ get maxRepayment() {
36
+ const maxRepay = this.market.delinquentDebt.bipMul(this.maxRepaymentBips);
37
+ return (0, token_1.maxTokenAmount)(this.availableCollateral, maxRepay);
38
+ }
39
+ async deposit(amount) {
40
+ return this.contract.deposit(amount.raw);
41
+ }
42
+ populateDeposit(amount) {
43
+ const data = this.contract.interface.encodeFunctionData("deposit", [amount.raw]);
44
+ return {
45
+ to: this.contract.address,
46
+ data,
47
+ value: "0"
48
+ };
49
+ }
50
+ async reclaimCollateral() {
51
+ return this.contract.reclaimCollateral();
52
+ }
53
+ populateReclaimCollateral() {
54
+ const data = this.contract.interface.encodeFunctionData("reclaimCollateral");
55
+ return {
56
+ to: this.contract.address,
57
+ data,
58
+ value: "0"
59
+ };
60
+ }
61
+ static fromSubgraphData(chainId, provider, market, data) {
62
+ const collateralAsset = token_2.Token.fromSubgraphToken(chainId, data.collateralAsset, provider);
63
+ const underlyingAsset = token_2.Token.fromSubgraphToken(chainId, data.market.underlyingAsset, provider);
64
+ return new MarketCollateralV1({
65
+ provider,
66
+ address: data.id,
67
+ availableCollateral: new token_1.TokenAmount(ethers_1.BigNumber.from(data.availableCollateral), collateralAsset),
68
+ totalShares: ethers_1.BigNumber.from(data.totalShares),
69
+ underlyingAsset,
70
+ collateralAsset,
71
+ liquidationCooldown: data.liquidationCooldown,
72
+ maxRepaymentBips: 10000,
73
+ fullLiquidationIndex: data.lastFullLiquidationIndex,
74
+ nextLiquidationTrigger: data.nextLiquidationTrigger,
75
+ market,
76
+ eventIndex: data.eventIndex
77
+ });
78
+ }
79
+ static create(chainId, provider, market, collateralAsset, overrides) {
80
+ const collateralFactory = (0, constants_1.getCollateralFactoryContract)(chainId, provider);
81
+ return collateralFactory.deployCollateralContract(collateralAsset.address, market.address, overrides);
82
+ }
83
+ static populateCreate(chainId, provider, market, collateralAsset) {
84
+ const collateralFactory = (0, constants_1.getCollateralFactoryContract)(chainId, provider);
85
+ const data = collateralFactory.interface.encodeFunctionData("deployCollateralContract", [
86
+ collateralAsset.address,
87
+ market.address
88
+ ]);
89
+ return { to: collateralFactory.address, data, value: "0" };
90
+ }
91
+ }
92
+ exports.MarketCollateralV1 = MarketCollateralV1;
93
+ async function getCollateralContractsForMarket(subgraphClient, chainId, provider, market) {
94
+ const { data: { market: marketData } } = await subgraphClient.query({
95
+ query: graphql_1.GetCollateralContractsByMarketDocument,
96
+ variables: {
97
+ market: market.address.toLowerCase()
98
+ }
99
+ });
100
+ (0, utils_1.assert)(marketData !== undefined && marketData !== null, `Market not found ${market}`);
101
+ return marketData.collateralContracts.map((collateral) => MarketCollateralV1.fromSubgraphData(chainId, provider, market, collateral));
102
+ }
103
+ exports.getCollateralContractsForMarket = getCollateralContractsForMarket;
104
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/collateral/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { MarketLens, WildcatMarketController, WildcatMarketControllerFactory, MockERC20Factory, WildcatArchController, MarketLensV2, HooksFactory } from "./typechain";
1
+ import { MarketLens, WildcatMarketController, WildcatMarketControllerFactory, MockERC20Factory, WildcatArchController, MarketLensV2, HooksFactory, WildcatCollateralFactory, CollateralLens } from "./typechain";
2
2
  import { MarketParameterConstraints, SignerOrProvider } from "./types";
3
3
  import { ApolloClient, NormalizedCacheObject } from "@apollo/client";
4
4
  type NetworkDeployments = {
@@ -13,6 +13,9 @@ type NetworkDeployments = {
13
13
  WildcatSanctionsSentinel: string;
14
14
  Chainalysis: string;
15
15
  OpenAccessRoleProvider: string;
16
+ WildcatCollateralFactory?: string;
17
+ BebopSettlementContract: string;
18
+ CollateralLens?: string;
16
19
  };
17
20
  export declare enum SupportedChainId {
18
21
  Mainnet = 1,
@@ -27,10 +30,12 @@ export declare const getControllerContract: (provider: SignerOrProvider, address
27
30
  export declare const getControllerFactoryContract: (chainId: SupportedChainId, provider: SignerOrProvider) => WildcatMarketControllerFactory;
28
31
  export declare const getArchControllerContract: (chainId: SupportedChainId, provider: SignerOrProvider) => WildcatArchController;
29
32
  export declare const getLensContract: (chainId: SupportedChainId, provider: SignerOrProvider) => MarketLens;
33
+ export declare const getCollateralLensContract: (chainId: SupportedChainId, provider: SignerOrProvider) => CollateralLens;
30
34
  export declare const getHooksFactoryContract: (chainId: SupportedChainId, provider: SignerOrProvider) => HooksFactory;
31
35
  export declare const getLensV2Contract: (chainId: SupportedChainId, provider: SignerOrProvider) => MarketLensV2;
32
36
  export declare const getMockERC20Factory: (chainId: SupportedChainId, provider: SignerOrProvider) => MockERC20Factory;
33
37
  export declare const getMockArchControllerOwnerContract: (chainId: SupportedChainId, provider: SignerOrProvider) => WildcatArchController;
38
+ export declare const getCollateralFactoryContract: (chainId: SupportedChainId, provider: SignerOrProvider) => WildcatCollateralFactory;
34
39
  export declare const SubgraphUrls: {
35
40
  11155111: string;
36
41
  1: string;
@@ -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,qBAAqB,EAErB,YAAY,EAGZ,YAAY,EACb,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,EAAE,MAAM,CAAC;IACnB,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,EAAE,MAAM,CAAC;IACvC,wBAAwB,EAAE,MAAM,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,oBAAY,gBAAgB;IAC1B,OAAO,IAAI;IACX,OAAO,WAAW;CACnB;AAED,eAAO,MAAM,iBAAiB,oBAAuD,CAAC;AAEtF,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,CAwBpE,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,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,YAAY;;;CAIxB,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":"AAAA,OAAO,EACL,UAAU,EAEV,uBAAuB,EAEvB,8BAA8B,EAE9B,gBAAgB,EAEhB,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,EAAE,MAAM,CAAC;IACnB,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,EAAE,MAAM,CAAC;IACvC,wBAAwB,EAAE,MAAM,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,uBAAuB,EAAE,MAAM,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,oBAAY,gBAAgB;IAC1B,OAAO,IAAI;IACX,OAAO,WAAW;CACnB;AAED,eAAO,MAAM,iBAAiB,oBAAuD,CAAC;AAEtF,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,CA4BpE,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,YAAY;;;CAIxB,CAAC;AAEF,eAAO,MAAM,iBAAiB,YAAa,gBAAgB,KAAG,aAAa,qBAAqB,CAI5F,CAAC;AAIL,eAAO,MAAM,6BAA6B,EAAE,0BAW3C,CAAC"}
package/dist/constants.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DefaultV2ParameterConstraints = exports.getSubgraphClient = exports.SubgraphUrls = exports.getMockArchControllerOwnerContract = exports.getMockERC20Factory = exports.getLensV2Contract = exports.getHooksFactoryContract = exports.getLensContract = exports.getArchControllerContract = exports.getControllerFactoryContract = exports.getControllerContract = exports.getDeploymentAddress = exports.Deployments = exports.hasDeploymentAddress = exports.isSupportedChainId = exports.SupportedChainIds = exports.SupportedChainId = void 0;
3
+ exports.DefaultV2ParameterConstraints = exports.getSubgraphClient = exports.SubgraphUrls = exports.getCollateralFactoryContract = exports.getMockArchControllerOwnerContract = exports.getMockERC20Factory = exports.getLensV2Contract = exports.getHooksFactoryContract = exports.getCollateralLensContract = exports.getLensContract = exports.getArchControllerContract = exports.getControllerFactoryContract = exports.getControllerContract = exports.getDeploymentAddress = exports.Deployments = exports.hasDeploymentAddress = exports.isSupportedChainId = exports.SupportedChainIds = exports.SupportedChainId = void 0;
4
4
  const typechain_1 = require("./typechain");
5
5
  const client_1 = require("@apollo/client");
6
6
  const utils_1 = require("./utils");
@@ -28,7 +28,8 @@ exports.Deployments = {
28
28
  WildcatMarketControllerFactory: "0xFd31007613C9F671df6A8D4234901324986Bfd13",
29
29
  WildcatSanctionsSentinel: "0x437e0551892C2C9b06d3fFd248fe60572e08CD1A",
30
30
  Chainalysis: "0x40C57923924B5c5c5455c48D93317139ADDaC8fb",
31
- OpenAccessRoleProvider: "0x5620553d8881335F74AD19259daaCD1d9B373101"
31
+ OpenAccessRoleProvider: "0x5620553d8881335F74AD19259daaCD1d9B373101",
32
+ BebopSettlementContract: "0xbbbbbBB520d69a9775E85b458C58c648259FAD5F"
32
33
  },
33
34
  [SupportedChainId.Sepolia]: {
34
35
  HooksFactory: "0x10A64ABa0159720F8a23E1A552800CA4eb21576C",
@@ -41,7 +42,10 @@ exports.Deployments = {
41
42
  WildcatMarketControllerFactory: "0xEb97C8E52d7Fdf978a64a538F28271Fd8499b864",
42
43
  WildcatSanctionsSentinel: "0xFBCE262eC835be5e6A458cE1722EeCe0E453316B",
43
44
  Chainalysis: "0x9d1060f8DEE8CBCf5eC772C51Ec671f70Cc7f8d9",
44
- OpenAccessRoleProvider: "0x9aCdE253F7A51456c48604185C0ceA4Fc9e58E3a"
45
+ OpenAccessRoleProvider: "0x9aCdE253F7A51456c48604185C0ceA4Fc9e58E3a",
46
+ WildcatCollateralFactory: "0x58D15313379cce02693bc50E75085f79386Bda41",
47
+ BebopSettlementContract: "0x7815C2FEE9B582fD40512F13986951C832264eeE",
48
+ CollateralLens: "0x5FCea9a52e325D68357C7E8e0b85Fc31E84EfF3a"
45
49
  }
46
50
  };
47
51
  const getDeploymentAddress = (chainId, name) => {
@@ -67,6 +71,10 @@ const getLensContract = (chainId, provider) => {
67
71
  return typechain_1.MarketLens__factory.connect((0, exports.getDeploymentAddress)(chainId, "MarketLens"), provider);
68
72
  };
69
73
  exports.getLensContract = getLensContract;
74
+ const getCollateralLensContract = (chainId, provider) => {
75
+ return typechain_1.CollateralLens__factory.connect((0, exports.getDeploymentAddress)(chainId, "CollateralLens"), provider);
76
+ };
77
+ exports.getCollateralLensContract = getCollateralLensContract;
70
78
  const getHooksFactoryContract = (chainId, provider) => {
71
79
  return typechain_1.HooksFactory__factory.connect((0, exports.getDeploymentAddress)(chainId, "HooksFactory"), provider);
72
80
  };
@@ -83,8 +91,12 @@ const getMockArchControllerOwnerContract = (chainId, provider) => {
83
91
  return typechain_1.WildcatArchController__factory.connect((0, exports.getDeploymentAddress)(chainId, "MockArchControllerOwner"), provider);
84
92
  };
85
93
  exports.getMockArchControllerOwnerContract = getMockArchControllerOwnerContract;
94
+ const getCollateralFactoryContract = (chainId, provider) => {
95
+ return typechain_1.WildcatCollateralFactory__factory.connect((0, exports.getDeploymentAddress)(chainId, "WildcatCollateralFactory"), provider);
96
+ };
97
+ exports.getCollateralFactoryContract = getCollateralFactoryContract;
86
98
  exports.SubgraphUrls = {
87
- [SupportedChainId.Sepolia]: `https://subgraph.satsuma-prod.com/db4945988e6f/dillons-team--345508/sepolia/api`,
99
+ [SupportedChainId.Sepolia]: `https://subgraph.satsuma-prod.com/db4945988e6f/dillons-team--345508/sepolia/version/v2.0.17/api`,
88
100
  [SupportedChainId.Mainnet]: "https://subgraph.satsuma-prod.com/db4945988e6f/dillons-team--345508/mainnet/api"
89
101
  };
90
102
  const getSubgraphClient = (chainId) => new client_1.ApolloClient({
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}