@mento-protocol/mento-sdk 1.0.3 → 1.0.5

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 (165) hide show
  1. package/dist/abis/bipoolmanager.d.ts +15 -0
  2. package/dist/abis/bipoolmanager.d.ts.map +1 -0
  3. package/dist/abis/bipoolmanager.js +26 -0
  4. package/dist/abis/bipoolmanager.js.map +1 -0
  5. package/dist/abis/broker.d.ts +2 -0
  6. package/dist/abis/broker.d.ts.map +1 -0
  7. package/dist/abis/broker.js +8 -0
  8. package/dist/abis/broker.js.map +1 -0
  9. package/dist/abis/erc20.d.ts +2 -0
  10. package/dist/abis/erc20.d.ts.map +1 -0
  11. package/dist/abis/erc20.js +11 -0
  12. package/dist/abis/erc20.js.map +1 -0
  13. package/dist/abis/index.d.ts +5 -0
  14. package/dist/abis/index.d.ts.map +1 -0
  15. package/dist/abis/index.js +21 -0
  16. package/dist/abis/index.js.map +1 -0
  17. package/dist/abis/pricingmodule.d.ts +2 -0
  18. package/dist/abis/pricingmodule.d.ts.map +1 -0
  19. package/dist/abis/pricingmodule.js +5 -0
  20. package/dist/abis/pricingmodule.js.map +1 -0
  21. package/dist/abis/reserve.d.ts +2 -0
  22. package/dist/abis/reserve.d.ts.map +1 -0
  23. package/dist/abis/reserve.js +9 -0
  24. package/dist/abis/reserve.js.map +1 -0
  25. package/dist/abis/uniswapV3.d.ts +4 -0
  26. package/dist/abis/uniswapV3.d.ts.map +1 -0
  27. package/dist/abis/uniswapV3.js +15 -0
  28. package/dist/abis/uniswapV3.js.map +1 -0
  29. package/dist/adapters/implementations/ethersAdapter.d.ts +9 -0
  30. package/dist/adapters/implementations/ethersAdapter.d.ts.map +1 -0
  31. package/dist/adapters/implementations/ethersAdapter.js +19 -0
  32. package/dist/adapters/implementations/ethersAdapter.js.map +1 -0
  33. package/dist/adapters/implementations/ethersV5Adapter.d.ts +9 -0
  34. package/dist/adapters/implementations/ethersV5Adapter.d.ts.map +1 -0
  35. package/dist/adapters/implementations/ethersV5Adapter.js +19 -0
  36. package/dist/adapters/implementations/ethersV5Adapter.js.map +1 -0
  37. package/dist/adapters/implementations/viemAdapter.d.ts +9 -0
  38. package/dist/adapters/implementations/viemAdapter.d.ts.map +1 -0
  39. package/dist/adapters/implementations/viemAdapter.js +26 -0
  40. package/dist/adapters/implementations/viemAdapter.js.map +1 -0
  41. package/dist/adapters/index.d.ts +5 -0
  42. package/dist/adapters/index.d.ts.map +1 -0
  43. package/dist/adapters/index.js +10 -0
  44. package/dist/adapters/index.js.map +1 -0
  45. package/dist/adapters/proxies/ethersAdapterProxy.d.ts +25 -0
  46. package/dist/adapters/proxies/ethersAdapterProxy.d.ts.map +1 -0
  47. package/dist/adapters/proxies/ethersAdapterProxy.js +71 -0
  48. package/dist/adapters/proxies/ethersAdapterProxy.js.map +1 -0
  49. package/dist/adapters/proxies/ethersV5AdapterProxy.d.ts +25 -0
  50. package/dist/adapters/proxies/ethersV5AdapterProxy.d.ts.map +1 -0
  51. package/dist/adapters/proxies/ethersV5AdapterProxy.js +71 -0
  52. package/dist/adapters/proxies/ethersV5AdapterProxy.js.map +1 -0
  53. package/dist/adapters/proxies/viemAdapterProxy.d.ts +25 -0
  54. package/dist/adapters/proxies/viemAdapterProxy.d.ts.map +1 -0
  55. package/dist/adapters/proxies/viemAdapterProxy.js +71 -0
  56. package/dist/adapters/proxies/viemAdapterProxy.js.map +1 -0
  57. package/dist/cjs/constants/addresses.js +1 -1
  58. package/dist/cjs/constants/tradablePairs.js +0 -240
  59. package/dist/cjs/mento.d.ts +3 -7
  60. package/dist/cjs/mento.js +10 -17
  61. package/dist/constants/addresses.d.ts +14 -0
  62. package/dist/constants/addresses.d.ts.map +1 -0
  63. package/dist/constants/addresses.js +61 -0
  64. package/dist/constants/addresses.js.map +1 -0
  65. package/dist/constants/chainId.d.ts +5 -0
  66. package/dist/constants/chainId.d.ts.map +1 -0
  67. package/dist/constants/chainId.js +9 -0
  68. package/dist/constants/chainId.js.map +1 -0
  69. package/dist/constants/contractNames.d.ts +21 -0
  70. package/dist/constants/contractNames.d.ts.map +1 -0
  71. package/dist/constants/contractNames.js +24 -0
  72. package/dist/constants/contractNames.js.map +1 -0
  73. package/dist/constants/index.d.ts +8 -0
  74. package/dist/constants/index.d.ts.map +1 -0
  75. package/dist/constants/index.js +24 -0
  76. package/dist/constants/index.js.map +1 -0
  77. package/dist/constants/mentoAddresses.d.ts +4 -0
  78. package/dist/constants/mentoAddresses.d.ts.map +1 -0
  79. package/dist/constants/mentoAddresses.js +7 -0
  80. package/dist/constants/mentoAddresses.js.map +1 -0
  81. package/dist/constants/proposalState.d.ts +11 -0
  82. package/dist/constants/proposalState.d.ts.map +1 -0
  83. package/dist/constants/proposalState.js +15 -0
  84. package/dist/constants/proposalState.js.map +1 -0
  85. package/dist/constants/protocolAddresses.d.ts +5 -0
  86. package/dist/constants/protocolAddresses.d.ts.map +1 -0
  87. package/dist/constants/protocolAddresses.js +8 -0
  88. package/dist/constants/protocolAddresses.js.map +1 -0
  89. package/dist/constants/stableTokenMetadata.d.ts +14 -0
  90. package/dist/constants/stableTokenMetadata.d.ts.map +1 -0
  91. package/dist/constants/stableTokenMetadata.js +32 -0
  92. package/dist/constants/stableTokenMetadata.js.map +1 -0
  93. package/dist/esm/constants/addresses.js +1 -1
  94. package/dist/esm/constants/tradablePairs.js +0 -240
  95. package/dist/esm/mento.d.ts +3 -7
  96. package/dist/esm/mento.js +10 -17
  97. package/dist/index.d.ts +67 -0
  98. package/dist/index.d.ts.map +1 -0
  99. package/dist/index.js +122 -0
  100. package/dist/index.js.map +1 -0
  101. package/dist/services/collateralAssetService.d.ts +8 -0
  102. package/dist/services/collateralAssetService.d.ts.map +1 -0
  103. package/dist/services/collateralAssetService.js +47 -0
  104. package/dist/services/collateralAssetService.js.map +1 -0
  105. package/dist/services/index.d.ts +6 -0
  106. package/dist/services/index.d.ts.map +1 -0
  107. package/dist/services/index.js +22 -0
  108. package/dist/services/index.js.map +1 -0
  109. package/dist/services/stableTokenService.d.ts +9 -0
  110. package/dist/services/stableTokenService.d.ts.map +1 -0
  111. package/dist/services/stableTokenService.js +40 -0
  112. package/dist/services/stableTokenService.js.map +1 -0
  113. package/dist/services/supply/ISupplyCalculator.d.ts +4 -0
  114. package/dist/services/supply/ISupplyCalculator.d.ts.map +1 -0
  115. package/dist/services/supply/ISupplyCalculator.js +3 -0
  116. package/dist/services/supply/ISupplyCalculator.js.map +1 -0
  117. package/dist/services/supply/UniV3SupplyCalculator.d.ts +21 -0
  118. package/dist/services/supply/UniV3SupplyCalculator.d.ts.map +1 -0
  119. package/dist/services/supply/UniV3SupplyCalculator.js +233 -0
  120. package/dist/services/supply/UniV3SupplyCalculator.js.map +1 -0
  121. package/dist/services/supply/index.d.ts +4 -0
  122. package/dist/services/supply/index.d.ts.map +1 -0
  123. package/dist/services/supply/index.js +20 -0
  124. package/dist/services/supply/index.js.map +1 -0
  125. package/dist/services/supply/multisigSupplyCalculator.d.ts +9 -0
  126. package/dist/services/supply/multisigSupplyCalculator.d.ts.map +1 -0
  127. package/dist/services/supply/multisigSupplyCalculator.js +21 -0
  128. package/dist/services/supply/multisigSupplyCalculator.js.map +1 -0
  129. package/dist/services/supplyAdjustmentService.d.ts +12 -0
  130. package/dist/services/supplyAdjustmentService.d.ts.map +1 -0
  131. package/dist/services/supplyAdjustmentService.js +35 -0
  132. package/dist/services/supplyAdjustmentService.js.map +1 -0
  133. package/dist/services/tokenMetadataService.d.ts +8 -0
  134. package/dist/services/tokenMetadataService.d.ts.map +1 -0
  135. package/dist/services/tokenMetadataService.js +44 -0
  136. package/dist/services/tokenMetadataService.js.map +1 -0
  137. package/dist/types/contractAddresses.d.ts +23 -0
  138. package/dist/types/contractAddresses.d.ts.map +1 -0
  139. package/dist/types/contractAddresses.js +3 -0
  140. package/dist/types/contractAddresses.js.map +1 -0
  141. package/dist/types/exchange.d.ts +6 -0
  142. package/dist/types/exchange.d.ts.map +1 -0
  143. package/dist/types/exchange.js +3 -0
  144. package/dist/types/exchange.js.map +1 -0
  145. package/dist/types/index.d.ts +5 -0
  146. package/dist/types/index.d.ts.map +1 -0
  147. package/dist/types/index.js +21 -0
  148. package/dist/types/index.js.map +1 -0
  149. package/dist/types/provider.d.ts +11 -0
  150. package/dist/types/provider.d.ts.map +1 -0
  151. package/dist/types/provider.js +3 -0
  152. package/dist/types/provider.js.map +1 -0
  153. package/dist/types/token.d.ts +19 -0
  154. package/dist/types/token.d.ts.map +1 -0
  155. package/dist/types/token.js +3 -0
  156. package/dist/types/token.js.map +1 -0
  157. package/dist/utils/index.d.ts +2 -0
  158. package/dist/utils/index.d.ts.map +1 -0
  159. package/dist/utils/index.js +18 -0
  160. package/dist/utils/index.js.map +1 -0
  161. package/dist/utils/retry.d.ts +12 -0
  162. package/dist/utils/retry.d.ts.map +1 -0
  163. package/dist/utils/retry.js +28 -0
  164. package/dist/utils/retry.js.map +1 -0
  165. package/package.json +4 -3
@@ -0,0 +1,15 @@
1
+ export declare const BIPOOL_MANAGER_ABI: {
2
+ name: string;
3
+ type: string;
4
+ stateMutability: string;
5
+ inputs: never[];
6
+ outputs: {
7
+ name: string;
8
+ type: string;
9
+ components: {
10
+ name: string;
11
+ type: string;
12
+ }[];
13
+ }[];
14
+ }[];
15
+ //# sourceMappingURL=bipoolmanager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bipoolmanager.d.ts","sourceRoot":"","sources":["../../src/abis/bipoolmanager.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;GAqB9B,CAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BIPOOL_MANAGER_ABI = void 0;
4
+ exports.BIPOOL_MANAGER_ABI = [
5
+ {
6
+ name: "getExchanges",
7
+ type: "function",
8
+ stateMutability: "view",
9
+ inputs: [],
10
+ outputs: [{
11
+ name: "exchanges",
12
+ type: "tuple[]",
13
+ components: [
14
+ {
15
+ name: "exchangeId",
16
+ type: "bytes32",
17
+ },
18
+ {
19
+ name: "assets",
20
+ type: "address[]",
21
+ },
22
+ ],
23
+ }],
24
+ },
25
+ ];
26
+ //# sourceMappingURL=bipoolmanager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bipoolmanager.js","sourceRoot":"","sources":["../../src/abis/bipoolmanager.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG;IACjC;QACC,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC;gBACT,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE;oBACX;wBACC,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,SAAS;qBACf;oBACD;wBACC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,WAAW;qBACjB;iBACD;aACD,CAAC;KACF;CACD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const BROKER_ABI: string[];
2
+ //# sourceMappingURL=broker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"broker.d.ts","sourceRoot":"","sources":["../../src/abis/broker.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,UAGtB,CAAA"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BROKER_ABI = void 0;
4
+ exports.BROKER_ABI = [
5
+ 'function tradingLimitsConfig(bytes32) view returns (uint32 timestep0, uint32 timestep1, int48 limit0, int48 limit1, int48 limitGlobal, uint8 flags)',
6
+ 'function tradingLimitsState(bytes32) view returns (uint32 lastUpdated0, uint32 lastUpdated1, int48 netflow0, int48 netflow1, int48 netflowGlobal)',
7
+ ];
8
+ //# sourceMappingURL=broker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"broker.js","sourceRoot":"","sources":["../../src/abis/broker.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;IACxB,qJAAqJ;IACrJ,mJAAmJ;CACpJ,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const ERC20_ABI: string[];
2
+ //# sourceMappingURL=erc20.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"erc20.d.ts","sourceRoot":"","sources":["../../src/abis/erc20.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,UAMrB,CAAA"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ERC20_ABI = void 0;
4
+ exports.ERC20_ABI = [
5
+ 'function name() view returns (string)',
6
+ 'function symbol() view returns (string)',
7
+ 'function decimals() view returns (uint8)',
8
+ 'function totalSupply() view returns (uint256)',
9
+ 'function balanceOf(address) view returns (uint256)',
10
+ ];
11
+ //# sourceMappingURL=erc20.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"erc20.js","sourceRoot":"","sources":["../../src/abis/erc20.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG;IACvB,uCAAuC;IACvC,yCAAyC;IACzC,0CAA0C;IAC1C,+CAA+C;IAC/C,oDAAoD;CACrD,CAAA"}
@@ -0,0 +1,5 @@
1
+ export * from './erc20';
2
+ export * from './reserve';
3
+ export * from './bipoolmanager';
4
+ export * from './uniswapV3';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/abis/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA"}
@@ -0,0 +1,21 @@
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
+ __exportStar(require("./erc20"), exports);
18
+ __exportStar(require("./reserve"), exports);
19
+ __exportStar(require("./bipoolmanager"), exports);
20
+ __exportStar(require("./uniswapV3"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/abis/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,4CAAyB;AACzB,kDAA+B;AAC/B,8CAA2B"}
@@ -0,0 +1,2 @@
1
+ export declare const PRICING_MODULE_ABI: string[];
2
+ //# sourceMappingURL=pricingmodule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pricingmodule.d.ts","sourceRoot":"","sources":["../../src/abis/pricingmodule.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,UAA4C,CAAA"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PRICING_MODULE_ABI = void 0;
4
+ exports.PRICING_MODULE_ABI = ['function name() view returns (string)'];
5
+ //# sourceMappingURL=pricingmodule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pricingmodule.js","sourceRoot":"","sources":["../../src/abis/pricingmodule.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG,CAAC,uCAAuC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const RESERVE_ABI: string[];
2
+ //# sourceMappingURL=reserve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reserve.d.ts","sourceRoot":"","sources":["../../src/abis/reserve.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,UAIvB,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RESERVE_ABI = void 0;
4
+ exports.RESERVE_ABI = [
5
+ "function getTokens() view returns (address[])",
6
+ "function isToken(address) view returns (bool)",
7
+ "function isCollateralAsset(address) view returns (bool)",
8
+ ];
9
+ //# sourceMappingURL=reserve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reserve.js","sourceRoot":"","sources":["../../src/abis/reserve.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG;IAC1B,+CAA+C;IAC/C,+CAA+C;IAC/C,yDAAyD;CACzD,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const UNIV3_POSITION_MANAGER_ABI: string[];
2
+ export declare const UNIV3_FACTORY_ABI: string[];
3
+ export declare const UNIV3_POOL_ABI: string[];
4
+ //# sourceMappingURL=uniswapV3.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uniswapV3.d.ts","sourceRoot":"","sources":["../../src/abis/uniswapV3.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B,UAItC,CAAA;AAED,eAAO,MAAM,iBAAiB,UAE7B,CAAA;AACD,eAAO,MAAM,cAAc,UAE1B,CAAA"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UNIV3_POOL_ABI = exports.UNIV3_FACTORY_ABI = exports.UNIV3_POSITION_MANAGER_ABI = void 0;
4
+ exports.UNIV3_POSITION_MANAGER_ABI = [
5
+ 'function balanceOf(address) view returns (uint256)',
6
+ 'function tokenOfOwnerByIndex(address, uint256) view returns (uint256)',
7
+ 'function positions(uint256) view returns (uint96, address, address, address, uint24, int24, int24, uint128, uint256, uint256, uint128, uint128)',
8
+ ];
9
+ exports.UNIV3_FACTORY_ABI = [
10
+ 'function getPool(address, address, uint24) view returns (address)',
11
+ ];
12
+ exports.UNIV3_POOL_ABI = [
13
+ 'function slot0() view returns (uint160, int24, uint160, int24, uint16, uint16)',
14
+ ];
15
+ //# sourceMappingURL=uniswapV3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uniswapV3.js","sourceRoot":"","sources":["../../src/abis/uniswapV3.ts"],"names":[],"mappings":";;;AAAa,QAAA,0BAA0B,GAAG;IACxC,oDAAoD;IACpD,uEAAuE;IACvE,iJAAiJ;CAClJ,CAAA;AAEY,QAAA,iBAAiB,GAAG;IAC/B,mEAAmE;CACpE,CAAA;AACY,QAAA,cAAc,GAAG;IAC5B,gFAAgF;CACjF,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { Provider as EthersProvider } from 'ethers';
2
+ import { ContractCallOptions, ProviderAdapter } from '../../types';
3
+ export declare class EthersAdapter implements ProviderAdapter {
4
+ private provider;
5
+ constructor(provider: EthersProvider);
6
+ readContract(options: ContractCallOptions): Promise<unknown>;
7
+ getChainId(): Promise<number>;
8
+ }
9
+ //# sourceMappingURL=ethersAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethersAdapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/implementations/ethersAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,QAAQ,IAAI,cAAc,EAAE,MAAM,QAAQ,CAAA;AACxE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElE,qBAAa,aAAc,YAAW,eAAe;IACvC,OAAO,CAAC,QAAQ;gBAAR,QAAQ,EAAE,cAAc;IAEtC,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAS5D,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;CAIpC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EthersAdapter = void 0;
4
+ const ethers_1 = require("ethers");
5
+ class EthersAdapter {
6
+ constructor(provider) {
7
+ this.provider = provider;
8
+ }
9
+ async readContract(options) {
10
+ const contract = new ethers_1.Contract(options.address, options.abi, this.provider);
11
+ return await contract[options.functionName](...(options.args || []));
12
+ }
13
+ async getChainId() {
14
+ const network = await this.provider.getNetwork();
15
+ return Number(network.chainId);
16
+ }
17
+ }
18
+ exports.EthersAdapter = EthersAdapter;
19
+ //# sourceMappingURL=ethersAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethersAdapter.js","sourceRoot":"","sources":["../../../src/adapters/implementations/ethersAdapter.ts"],"names":[],"mappings":";;;AAAA,mCAAwE;AAGxE,MAAa,aAAa;IACxB,YAAoB,QAAwB;QAAxB,aAAQ,GAAR,QAAQ,CAAgB;IAAG,CAAC;IAEhD,KAAK,CAAC,YAAY,CAAC,OAA4B;QAC7C,MAAM,QAAQ,GAAG,IAAI,iBAAQ,CAC3B,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,GAA2B,EACnC,IAAI,CAAC,QAAQ,CACd,CAAA;QACD,OAAO,MAAM,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAA;IACtE,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAA;QAChD,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAChC,CAAC;CACF;AAhBD,sCAgBC"}
@@ -0,0 +1,9 @@
1
+ import { providers } from 'ethers-v5';
2
+ import { ContractCallOptions, ProviderAdapter } from '../../types';
3
+ export declare class EthersV5Adapter implements ProviderAdapter {
4
+ private provider;
5
+ constructor(provider: providers.Provider);
6
+ readContract(options: ContractCallOptions): Promise<unknown>;
7
+ getChainId(): Promise<number>;
8
+ }
9
+ //# sourceMappingURL=ethersV5Adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethersV5Adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/implementations/ethersV5Adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAqB,MAAM,WAAW,CAAA;AAClE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElE,qBAAa,eAAgB,YAAW,eAAe;IACzC,OAAO,CAAC,QAAQ;gBAAR,QAAQ,EAAE,SAAS,CAAC,QAAQ;IAE1C,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAS5D,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;CAIpC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EthersV5Adapter = void 0;
4
+ const ethers_v5_1 = require("ethers-v5");
5
+ class EthersV5Adapter {
6
+ constructor(provider) {
7
+ this.provider = provider;
8
+ }
9
+ async readContract(options) {
10
+ const contract = new ethers_v5_1.Contract(options.address, options.abi, this.provider);
11
+ return await contract[options.functionName](...(options.args || []));
12
+ }
13
+ async getChainId() {
14
+ const network = await this.provider.getNetwork();
15
+ return Number(network.chainId);
16
+ }
17
+ }
18
+ exports.EthersV5Adapter = EthersV5Adapter;
19
+ //# sourceMappingURL=ethersV5Adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethersV5Adapter.js","sourceRoot":"","sources":["../../../src/adapters/implementations/ethersV5Adapter.ts"],"names":[],"mappings":";;;AAAA,yCAAkE;AAGlE,MAAa,eAAe;IAC1B,YAAoB,QAA4B;QAA5B,aAAQ,GAAR,QAAQ,CAAoB;IAAG,CAAC;IAEpD,KAAK,CAAC,YAAY,CAAC,OAA4B;QAC7C,MAAM,QAAQ,GAAG,IAAI,oBAAQ,CAC3B,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,GAAmC,EAC3C,IAAI,CAAC,QAAQ,CACd,CAAA;QACD,OAAO,MAAM,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAA;IACtE,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAA;QAChD,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAChC,CAAC;CACF;AAhBD,0CAgBC"}
@@ -0,0 +1,9 @@
1
+ import { type PublicClient } from 'viem';
2
+ import type { ContractCallOptions, ProviderAdapter } from '../../types';
3
+ export declare class ViemAdapter implements ProviderAdapter {
4
+ private client;
5
+ constructor(client: PublicClient);
6
+ readContract(options: ContractCallOptions): Promise<unknown>;
7
+ getChainId(): Promise<number>;
8
+ }
9
+ //# sourceMappingURL=viemAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viemAdapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/implementations/viemAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,MAAM,CAAA;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAEvE,qBAAa,WAAY,YAAW,eAAe;IACrC,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,YAAY;IAElC,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAe5D,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;CAGpC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ViemAdapter = void 0;
4
+ const viem_1 = require("viem");
5
+ class ViemAdapter {
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ async readContract(options) {
10
+ // Check if the abi is a string array(human readable format) or an array of objects(the normal format)
11
+ const abi = Array.isArray(options.abi) && typeof options.abi[0] === 'string'
12
+ ? (0, viem_1.parseAbi)(options.abi)
13
+ : options.abi;
14
+ return await this.client.readContract({
15
+ address: options.address,
16
+ abi: abi,
17
+ functionName: options.functionName,
18
+ args: options.args,
19
+ });
20
+ }
21
+ async getChainId() {
22
+ return await this.client.getChainId();
23
+ }
24
+ }
25
+ exports.ViemAdapter = ViemAdapter;
26
+ //# sourceMappingURL=viemAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viemAdapter.js","sourceRoot":"","sources":["../../../src/adapters/implementations/viemAdapter.ts"],"names":[],"mappings":";;;AAAA,+BAAkD;AAGlD,MAAa,WAAW;IACtB,YAAoB,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;IAAG,CAAC;IAE5C,KAAK,CAAC,YAAY,CAAC,OAA4B;QAC7C,sGAAsG;QACtG,MAAM,GAAG,GACP,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,QAAQ;YAC9D,CAAC,CAAC,IAAA,eAAQ,EAAC,OAAO,CAAC,GAAe,CAAC;YACnC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAA;QAEjB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YACpC,OAAO,EAAE,OAAO,CAAC,OAAwB;YACzC,GAAG,EAAE,GAAG;YACR,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAA;IACvC,CAAC;CACF;AArBD,kCAqBC"}
@@ -0,0 +1,5 @@
1
+ import { EthersV5AdapterProxy } from './proxies/ethersV5AdapterProxy';
2
+ import { EthersAdapterProxy } from './proxies/ethersAdapterProxy';
3
+ import { ViemAdapterProxy } from './proxies/viemAdapterProxy';
4
+ export { EthersV5AdapterProxy as EthersV5Adapter, EthersAdapterProxy as EthersAdapter, ViemAdapterProxy as ViemAdapter, };
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAE7D,OAAO,EACL,oBAAoB,IAAI,eAAe,EACvC,kBAAkB,IAAI,aAAa,EACnC,gBAAgB,IAAI,WAAW,GAChC,CAAA"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ViemAdapter = exports.EthersAdapter = exports.EthersV5Adapter = void 0;
4
+ const ethersV5AdapterProxy_1 = require("./proxies/ethersV5AdapterProxy");
5
+ Object.defineProperty(exports, "EthersV5Adapter", { enumerable: true, get: function () { return ethersV5AdapterProxy_1.EthersV5AdapterProxy; } });
6
+ const ethersAdapterProxy_1 = require("./proxies/ethersAdapterProxy");
7
+ Object.defineProperty(exports, "EthersAdapter", { enumerable: true, get: function () { return ethersAdapterProxy_1.EthersAdapterProxy; } });
8
+ const viemAdapterProxy_1 = require("./proxies/viemAdapterProxy");
9
+ Object.defineProperty(exports, "ViemAdapter", { enumerable: true, get: function () { return viemAdapterProxy_1.ViemAdapterProxy; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":";;;AAAA,yEAAqE;AAK3C,gGALjB,2CAAoB,OAKY;AAJzC,qEAAiE;AAKzC,8FALf,uCAAkB,OAKU;AAJrC,iEAA6D;AAKvC,4FALb,mCAAgB,OAKQ"}
@@ -0,0 +1,25 @@
1
+ import { ProviderAdapter } from '../../types';
2
+ import type { Provider as EthersV6Provider } from 'ethers';
3
+ /**
4
+ * Proxy class that implements lazy loading for ethers provider adapter.
5
+ *
6
+ * This is an implementation of the Virtual Proxy pattern, which provides
7
+ * a placeholder for the EthersAdapter and controls its initialization.
8
+ * The actual adapter is only loaded when needed, allowing for:
9
+ * - Lazy loading of the ethers dependency
10
+ * - Better error handling for missing dependencies
11
+ * - Same interface as the real adapter (ProviderAdapter)
12
+ *
13
+ * For more information about the proxy pattern implementation,
14
+ * see the README.md in this directory:
15
+ * ./adapters/proxies/README.md
16
+ */
17
+ export declare class EthersAdapterProxy implements ProviderAdapter {
18
+ private adapter;
19
+ private initPromise;
20
+ constructor(provider: EthersV6Provider);
21
+ private initialize;
22
+ readContract(...args: Parameters<ProviderAdapter['readContract']>): Promise<unknown>;
23
+ getChainId(): Promise<number>;
24
+ }
25
+ //# sourceMappingURL=ethersAdapterProxy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethersAdapterProxy.d.ts","sourceRoot":"","sources":["../../../src/adapters/proxies/ethersAdapterProxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,KAAK,EAAE,QAAQ,IAAI,gBAAgB,EAAE,MAAM,QAAQ,CAAA;AAE1D;;;;;;;;;;;;;GAaG;AACH,qBAAa,kBAAmB,YAAW,eAAe;IACxD,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,WAAW,CAAe;gBAEtB,QAAQ,EAAE,gBAAgB;YAIxB,UAAU;IAWlB,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;IAUjE,UAAU;CASjB"}
@@ -0,0 +1,71 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.EthersAdapterProxy = void 0;
27
+ /**
28
+ * Proxy class that implements lazy loading for ethers provider adapter.
29
+ *
30
+ * This is an implementation of the Virtual Proxy pattern, which provides
31
+ * a placeholder for the EthersAdapter and controls its initialization.
32
+ * The actual adapter is only loaded when needed, allowing for:
33
+ * - Lazy loading of the ethers dependency
34
+ * - Better error handling for missing dependencies
35
+ * - Same interface as the real adapter (ProviderAdapter)
36
+ *
37
+ * For more information about the proxy pattern implementation,
38
+ * see the README.md in this directory:
39
+ * ./adapters/proxies/README.md
40
+ */
41
+ class EthersAdapterProxy {
42
+ constructor(provider) {
43
+ this.adapter = null;
44
+ this.initPromise = this.initialize(provider);
45
+ }
46
+ async initialize(provider) {
47
+ try {
48
+ const { EthersAdapter } = await Promise.resolve().then(() => __importStar(require('../implementations/ethersAdapter')));
49
+ this.adapter = new EthersAdapter(provider);
50
+ }
51
+ catch (error) {
52
+ throw new Error('ethers v6 is not installed. Please install ethers@6 to use this adapter');
53
+ }
54
+ }
55
+ async readContract(...args) {
56
+ await this.initPromise;
57
+ if (!this.adapter) {
58
+ throw new Error('Adapter not initialized. Are you missing ethers v6 dependency?');
59
+ }
60
+ return this.adapter.readContract(...args);
61
+ }
62
+ async getChainId() {
63
+ await this.initPromise;
64
+ if (!this.adapter) {
65
+ throw new Error('Adapter not initialized. Are you missing ethers v6 dependency?');
66
+ }
67
+ return this.adapter.getChainId();
68
+ }
69
+ }
70
+ exports.EthersAdapterProxy = EthersAdapterProxy;
71
+ //# sourceMappingURL=ethersAdapterProxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethersAdapterProxy.js","sourceRoot":"","sources":["../../../src/adapters/proxies/ethersAdapterProxy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;;;;;;;;;;;;;GAaG;AACH,MAAa,kBAAkB;IAI7B,YAAY,QAA0B;QAH9B,YAAO,GAA2B,IAAI,CAAA;QAI5C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC9C,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,QAA0B;QACjD,IAAI,CAAC;YACH,MAAM,EAAE,aAAa,EAAE,GAAG,wDAAa,kCAAkC,GAAC,CAAA;YAC1E,IAAI,CAAC,OAAO,GAAG,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAA;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E,CAAA;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,GAAG,IAAiD;QACrE,MAAM,IAAI,CAAC,WAAW,CAAA;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAA;QACH,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAA;IAC3C,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,WAAW,CAAA;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAA;QACH,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAA;IAClC,CAAC;CACF;AAtCD,gDAsCC"}
@@ -0,0 +1,25 @@
1
+ import { ProviderAdapter } from '../../types';
2
+ import type { providers as EthersV5Providers } from 'ethers-v5';
3
+ /**
4
+ * Proxy class that implements lazy loading for ethers v5 provider adapter.
5
+ *
6
+ * This is an implementation of the Virtual Proxy pattern, which provides
7
+ * a placeholder for the EthersV5Adapter and controls its initialization.
8
+ * The actual adapter is only loaded when needed, allowing for:
9
+ * - Lazy loading of the ethers v5 dependency
10
+ * - Better error handling for missing dependencies
11
+ * - Same interface as the real adapter (ProviderAdapter)
12
+ *
13
+ * For more information about the proxy pattern implementation,
14
+ * see the README.md in this directory:
15
+ * ./adapters/proxies/README.md
16
+ */
17
+ export declare class EthersV5AdapterProxy implements ProviderAdapter {
18
+ private adapter;
19
+ private initPromise;
20
+ constructor(provider: EthersV5Providers.Provider);
21
+ private initialize;
22
+ readContract(...args: Parameters<ProviderAdapter['readContract']>): Promise<unknown>;
23
+ getChainId(): Promise<number>;
24
+ }
25
+ //# sourceMappingURL=ethersV5AdapterProxy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethersV5AdapterProxy.d.ts","sourceRoot":"","sources":["../../../src/adapters/proxies/ethersV5AdapterProxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,KAAK,EAAE,SAAS,IAAI,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAE/D;;;;;;;;;;;;;GAaG;AACH,qBAAa,oBAAqB,YAAW,eAAe;IAC1D,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,WAAW,CAAe;gBAEtB,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;YAIlC,UAAU;IAalB,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;IAUjE,UAAU;CASjB"}
@@ -0,0 +1,71 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.EthersV5AdapterProxy = void 0;
27
+ /**
28
+ * Proxy class that implements lazy loading for ethers v5 provider adapter.
29
+ *
30
+ * This is an implementation of the Virtual Proxy pattern, which provides
31
+ * a placeholder for the EthersV5Adapter and controls its initialization.
32
+ * The actual adapter is only loaded when needed, allowing for:
33
+ * - Lazy loading of the ethers v5 dependency
34
+ * - Better error handling for missing dependencies
35
+ * - Same interface as the real adapter (ProviderAdapter)
36
+ *
37
+ * For more information about the proxy pattern implementation,
38
+ * see the README.md in this directory:
39
+ * ./adapters/proxies/README.md
40
+ */
41
+ class EthersV5AdapterProxy {
42
+ constructor(provider) {
43
+ this.adapter = null;
44
+ this.initPromise = this.initialize(provider);
45
+ }
46
+ async initialize(provider) {
47
+ try {
48
+ const { EthersV5Adapter } = await Promise.resolve().then(() => __importStar(require('../implementations/ethersV5Adapter')));
49
+ this.adapter = new EthersV5Adapter(provider);
50
+ }
51
+ catch (error) {
52
+ throw new Error('ethers v5 is not installed. Please install ethers@5 to use this adapter');
53
+ }
54
+ }
55
+ async readContract(...args) {
56
+ await this.initPromise;
57
+ if (!this.adapter) {
58
+ throw new Error('Adapter not initialized. Are you missing ethers v5 dependency?');
59
+ }
60
+ return this.adapter.readContract(...args);
61
+ }
62
+ async getChainId() {
63
+ await this.initPromise;
64
+ if (!this.adapter) {
65
+ throw new Error('Adapter not initialized. Are you missing ethers v5 dependency?');
66
+ }
67
+ return this.adapter.getChainId();
68
+ }
69
+ }
70
+ exports.EthersV5AdapterProxy = EthersV5AdapterProxy;
71
+ //# sourceMappingURL=ethersV5AdapterProxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethersV5AdapterProxy.js","sourceRoot":"","sources":["../../../src/adapters/proxies/ethersV5AdapterProxy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;;;;;;;;;;;;;GAaG;AACH,MAAa,oBAAoB;IAI/B,YAAY,QAAoC;QAHxC,YAAO,GAA2B,IAAI,CAAA;QAI5C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC9C,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,QAAoC;QAC3D,IAAI,CAAC;YACH,MAAM,EAAE,eAAe,EAAE,GAAG,wDAC1B,oCAAoC,GACrC,CAAA;YACD,IAAI,CAAC,OAAO,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAA;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E,CAAA;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,GAAG,IAAiD;QACrE,MAAM,IAAI,CAAC,WAAW,CAAA;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAA;QACH,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAA;IAC3C,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,WAAW,CAAA;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAA;QACH,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAA;IAClC,CAAC;CACF;AAxCD,oDAwCC"}
@@ -0,0 +1,25 @@
1
+ import type { PublicClient } from 'viem';
2
+ import { ProviderAdapter } from '../../types';
3
+ /**
4
+ * Proxy class that implements lazy loading for viem provider adapter.
5
+ *
6
+ * This is an implementation of the Virtual Proxy pattern, which provides
7
+ * a placeholder for the ViemAdapter and controls its initialization.
8
+ * The actual adapter is only loaded when needed, allowing for:
9
+ * - Lazy loading of the viem dependency
10
+ * - Better error handling for missing dependencies
11
+ * - Same interface as the real adapter (ProviderAdapter)
12
+ *
13
+ * For more information about the proxy pattern implementation,
14
+ * see the README.md in this directory:
15
+ * ./adapters/proxies/README.md
16
+ */
17
+ export declare class ViemAdapterProxy implements ProviderAdapter {
18
+ private adapter;
19
+ private initPromise;
20
+ constructor(client: PublicClient);
21
+ private initialize;
22
+ readContract(...args: Parameters<ProviderAdapter['readContract']>): Promise<unknown>;
23
+ getChainId(): Promise<number>;
24
+ }
25
+ //# sourceMappingURL=viemAdapterProxy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viemAdapterProxy.d.ts","sourceRoot":"","sources":["../../../src/adapters/proxies/viemAdapterProxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAE7C;;;;;;;;;;;;;GAaG;AACH,qBAAa,gBAAiB,YAAW,eAAe;IACtD,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,WAAW,CAAe;gBAEtB,MAAM,EAAE,YAAY;YAIlB,UAAU;IAWlB,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;IAUjE,UAAU;CASjB"}