@whetstone-research/doppler-sdk 0.0.18 → 0.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +46 -1
- package/dist/DopplerSDK.js +18 -18
- package/dist/DopplerSDK.mjs +17 -17
- package/dist/abis/index.d.mts +32 -1
- package/dist/abis/index.d.ts +32 -1
- package/dist/abis/index.js +26 -22
- package/dist/abis/index.mjs +1 -1
- package/dist/addresses.d.mts +1 -0
- package/dist/addresses.d.ts +1 -0
- package/dist/addresses.js +7 -7
- package/dist/addresses.mjs +2 -2
- package/dist/builders/DynamicAuctionBuilder.js +9 -9
- package/dist/builders/DynamicAuctionBuilder.mjs +8 -8
- package/dist/builders/MulticurveBuilder.d.mts +16 -0
- package/dist/builders/MulticurveBuilder.d.ts +16 -0
- package/dist/builders/MulticurveBuilder.js +9 -9
- package/dist/builders/MulticurveBuilder.mjs +8 -8
- package/dist/builders/StaticAuctionBuilder.js +9 -9
- package/dist/builders/StaticAuctionBuilder.mjs +8 -8
- package/dist/builders/index.js +17 -17
- package/dist/builders/index.mjs +10 -10
- package/dist/builders/shared.js +10 -10
- package/dist/builders/shared.mjs +6 -6
- package/dist/{chunk-ZQA3VG53.mjs → chunk-36Y3N257.mjs} +118 -20
- package/dist/chunk-36Y3N257.mjs.map +1 -0
- package/dist/{chunk-LOVD3NCN.js → chunk-3MVW6UIW.js} +18 -2
- package/dist/chunk-3MVW6UIW.js.map +1 -0
- package/dist/{chunk-WGP4RHM7.js → chunk-3SCK4LGS.js} +26 -26
- package/dist/{chunk-WGP4RHM7.js.map → chunk-3SCK4LGS.js.map} +1 -1
- package/dist/{chunk-UGBCLUOX.js → chunk-4CJS5XLY.js} +26 -26
- package/dist/{chunk-UGBCLUOX.js.map → chunk-4CJS5XLY.js.map} +1 -1
- package/dist/{chunk-IJEMEVGS.mjs → chunk-4LNXE5DF.mjs} +4 -4
- package/dist/{chunk-IJEMEVGS.mjs.map → chunk-4LNXE5DF.mjs.map} +1 -1
- package/dist/{chunk-4DUE547M.js → chunk-6BQY5EPB.js} +4 -2
- package/dist/chunk-6BQY5EPB.js.map +1 -0
- package/dist/{chunk-27TY7K5D.js → chunk-AS5UUJRI.js} +11 -11
- package/dist/{chunk-27TY7K5D.js.map → chunk-AS5UUJRI.js.map} +1 -1
- package/dist/{chunk-Y4IZVDJE.mjs → chunk-BFJGY436.mjs} +3 -3
- package/dist/{chunk-Y4IZVDJE.mjs.map → chunk-BFJGY436.mjs.map} +1 -1
- package/dist/{chunk-NVJNZ7XO.js → chunk-COUZYFEE.js} +27 -27
- package/dist/{chunk-NVJNZ7XO.js.map → chunk-COUZYFEE.js.map} +1 -1
- package/dist/{chunk-JCJVX42H.mjs → chunk-CXE33IZN.mjs} +5 -5
- package/dist/{chunk-JCJVX42H.mjs.map → chunk-CXE33IZN.mjs.map} +1 -1
- package/dist/{chunk-BZKX3J3R.mjs → chunk-E2NF4AQB.mjs} +18 -3
- package/dist/chunk-E2NF4AQB.mjs.map +1 -0
- package/dist/{chunk-3Q2BALCB.js → chunk-GFOBDFVW.js} +344 -147
- package/dist/chunk-GFOBDFVW.js.map +1 -0
- package/dist/{chunk-CXYA7OX6.js → chunk-GLMPU7VL.js} +132 -34
- package/dist/chunk-GLMPU7VL.js.map +1 -0
- package/dist/{chunk-PE47QUJV.mjs → chunk-HH7HQ4HC.mjs} +3 -3
- package/dist/{chunk-PE47QUJV.mjs.map → chunk-HH7HQ4HC.mjs.map} +1 -1
- package/dist/{chunk-IUXOT6OY.js → chunk-HHHCRTC7.js} +53 -15
- package/dist/chunk-HHHCRTC7.js.map +1 -0
- package/dist/{chunk-LXUF7RNX.mjs → chunk-IWJOPXYN.mjs} +4 -3
- package/dist/chunk-IWJOPXYN.mjs.map +1 -0
- package/dist/{chunk-4BPFHO6W.js → chunk-J2E2GILK.js} +20 -20
- package/dist/{chunk-4BPFHO6W.js.map → chunk-J2E2GILK.js.map} +1 -1
- package/dist/{chunk-2UUVAFXS.js → chunk-JHPDKSC4.js} +78 -72
- package/dist/chunk-JHPDKSC4.js.map +1 -0
- package/dist/{chunk-AQKQRG7M.js → chunk-K27G7LLT.js} +5 -5
- package/dist/{chunk-AQKQRG7M.js.map → chunk-K27G7LLT.js.map} +1 -1
- package/dist/{chunk-FM5ASWDQ.mjs → chunk-NJYBKWCD.mjs} +45 -7
- package/dist/chunk-NJYBKWCD.mjs.map +1 -0
- package/dist/{chunk-RAII4DRI.mjs → chunk-NWZGO2CH.mjs} +10 -4
- package/dist/chunk-NWZGO2CH.mjs.map +1 -0
- package/dist/{chunk-WM2YFSKT.mjs → chunk-QFQXHDC7.mjs} +11 -2
- package/dist/chunk-QFQXHDC7.mjs.map +1 -0
- package/dist/{chunk-RKJ2466C.mjs → chunk-QOGBOT2M.mjs} +3 -3
- package/dist/{chunk-RKJ2466C.mjs.map → chunk-QOGBOT2M.mjs.map} +1 -1
- package/dist/{chunk-AG3E3XYB.mjs → chunk-RJE6LWWF.mjs} +4 -4
- package/dist/{chunk-AG3E3XYB.mjs.map → chunk-RJE6LWWF.mjs.map} +1 -1
- package/dist/{chunk-EKQKHXJN.mjs → chunk-RKPAL3SU.mjs} +3 -3
- package/dist/{chunk-EKQKHXJN.mjs.map → chunk-RKPAL3SU.mjs.map} +1 -1
- package/dist/{chunk-JXNAHW6C.js → chunk-RLUMYHPI.js} +11 -2
- package/dist/chunk-RLUMYHPI.js.map +1 -0
- package/dist/{chunk-5FJCRKQ6.js → chunk-RXUJ4DUB.js} +28 -28
- package/dist/{chunk-5FJCRKQ6.js.map → chunk-RXUJ4DUB.js.map} +1 -1
- package/dist/{chunk-MGLI4N4B.js → chunk-SAX7P3MH.js} +22 -22
- package/dist/{chunk-MGLI4N4B.js.map → chunk-SAX7P3MH.js.map} +1 -1
- package/dist/{chunk-226TXYRB.mjs → chunk-SKU6VE6L.mjs} +12 -12
- package/dist/{chunk-226TXYRB.mjs.map → chunk-SKU6VE6L.mjs.map} +1 -1
- package/dist/{chunk-DVQWWF23.js → chunk-TYJZL2XZ.js} +24 -24
- package/dist/{chunk-DVQWWF23.js.map → chunk-TYJZL2XZ.js.map} +1 -1
- package/dist/{chunk-IJRI5LNK.mjs → chunk-U7CHPFU6.mjs} +248 -51
- package/dist/chunk-U7CHPFU6.mjs.map +1 -0
- package/dist/{chunk-WMOJQ6MS.mjs → chunk-V7YRKFYK.mjs} +5 -5
- package/dist/{chunk-WMOJQ6MS.mjs.map → chunk-V7YRKFYK.mjs.map} +1 -1
- package/dist/{chunk-IEEK2PMP.mjs → chunk-XEWKLVOD.mjs} +4 -4
- package/dist/{chunk-IEEK2PMP.mjs.map → chunk-XEWKLVOD.mjs.map} +1 -1
- package/dist/{chunk-HVYUDMHH.js → chunk-Y5RAENN5.js} +16 -16
- package/dist/{chunk-HVYUDMHH.js.map → chunk-Y5RAENN5.js.map} +1 -1
- package/dist/constants.d.mts +7 -1
- package/dist/constants.d.ts +7 -1
- package/dist/constants.js +51 -47
- package/dist/constants.mjs +1 -1
- package/dist/deployments.generated.d.mts +9 -0
- package/dist/deployments.generated.d.ts +9 -0
- package/dist/deployments.generated.js +2 -2
- package/dist/deployments.generated.mjs +1 -1
- package/dist/entities/DopplerFactory.d.mts +2 -0
- package/dist/entities/DopplerFactory.d.ts +2 -0
- package/dist/entities/DopplerFactory.js +7 -7
- package/dist/entities/DopplerFactory.mjs +6 -6
- package/dist/entities/auction/DynamicAuction.js +5 -5
- package/dist/entities/auction/DynamicAuction.mjs +4 -4
- package/dist/entities/auction/MulticurvePool.d.mts +9 -3
- package/dist/entities/auction/MulticurvePool.d.ts +9 -3
- package/dist/entities/auction/MulticurvePool.js +7 -6
- package/dist/entities/auction/MulticurvePool.mjs +6 -5
- package/dist/entities/auction/StaticAuction.js +5 -5
- package/dist/entities/auction/StaticAuction.mjs +4 -4
- package/dist/entities/auction/index.js +11 -10
- package/dist/entities/auction/index.mjs +8 -7
- package/dist/entities/quoter/Quoter.js +5 -5
- package/dist/entities/quoter/Quoter.mjs +4 -4
- package/dist/entities/quoter/index.js +5 -5
- package/dist/entities/quoter/index.mjs +4 -4
- package/dist/entities/token/derc20/Derc20.js +3 -3
- package/dist/entities/token/derc20/Derc20.mjs +2 -2
- package/dist/entities/token/derc20/index.js +3 -3
- package/dist/entities/token/derc20/index.mjs +2 -2
- package/dist/entities/token/index.js +3 -3
- package/dist/entities/token/index.mjs +2 -2
- package/dist/index.d.mts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +108 -100
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +17 -17
- package/dist/index.mjs.map +1 -1
- package/dist/types.d.mts +32 -1
- package/dist/types.d.ts +32 -1
- package/dist/types.js +8 -8
- package/dist/types.mjs +3 -3
- package/dist/utils/airlock.js +7 -7
- package/dist/utils/airlock.mjs +3 -3
- package/dist/utils/index.js +8 -8
- package/dist/utils/index.mjs +4 -4
- package/dist/utils/tokenAddressMiner.js +1 -1
- package/dist/utils/tokenAddressMiner.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunk-2UUVAFXS.js.map +0 -1
- package/dist/chunk-3Q2BALCB.js.map +0 -1
- package/dist/chunk-4DUE547M.js.map +0 -1
- package/dist/chunk-BZKX3J3R.mjs.map +0 -1
- package/dist/chunk-CXYA7OX6.js.map +0 -1
- package/dist/chunk-FM5ASWDQ.mjs.map +0 -1
- package/dist/chunk-IJRI5LNK.mjs.map +0 -1
- package/dist/chunk-IUXOT6OY.js.map +0 -1
- package/dist/chunk-JXNAHW6C.js.map +0 -1
- package/dist/chunk-LOVD3NCN.js.map +0 -1
- package/dist/chunk-LXUF7RNX.mjs.map +0 -1
- package/dist/chunk-RAII4DRI.mjs.map +0 -1
- package/dist/chunk-WM2YFSKT.mjs.map +0 -1
- package/dist/chunk-ZQA3VG53.mjs.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { getAddresses } from './chunk-
|
|
2
|
-
import { dopplerHookAbi, airlockAbi } from './chunk-
|
|
1
|
+
import { getAddresses } from './chunk-NWZGO2CH.mjs';
|
|
2
|
+
import { dopplerHookAbi, airlockAbi } from './chunk-E2NF4AQB.mjs';
|
|
3
3
|
import { zeroAddress, encodeAbiParameters, keccak256 } from 'viem';
|
|
4
4
|
|
|
5
5
|
var DynamicAuction = class {
|
|
@@ -291,5 +291,5 @@ var DynamicAuction = class {
|
|
|
291
291
|
};
|
|
292
292
|
|
|
293
293
|
export { DynamicAuction };
|
|
294
|
-
//# sourceMappingURL=chunk-
|
|
295
|
-
//# sourceMappingURL=chunk-
|
|
294
|
+
//# sourceMappingURL=chunk-XEWKLVOD.mjs.map
|
|
295
|
+
//# sourceMappingURL=chunk-XEWKLVOD.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/entities/auction/DynamicAuction.ts"],"names":[],"mappings":"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","file":"chunk-IEEK2PMP.mjs","sourcesContent":["import {\n type Address,\n type PublicClient,\n type Hex,\n keccak256,\n encodeAbiParameters,\n zeroAddress,\n} from 'viem';\nimport type { HookInfo, SupportedPublicClient } from '../../types';\nimport { dopplerHookAbi, airlockAbi } from '../../abis';\nimport { getAddresses } from '../../addresses';\n\n/**\n * DynamicAuction class for interacting with dynamic auctions (Uniswap V4 hook based)\n *\n * Dynamic auctions use a Uniswap V4 hook to create a gradual Dutch auction\n * where the price moves dynamically over time according to set parameters.\n */\nexport class DynamicAuction {\n private client: SupportedPublicClient;\n private hookAddress: Address;\n private get rpc(): PublicClient {\n return this.client as PublicClient;\n }\n\n constructor(client: SupportedPublicClient, hookAddress: Address) {\n this.client = client;\n this.hookAddress = hookAddress;\n }\n\n /**\n * Wait for a transaction to be confirmed and the contract to be ready for reads\n * @param hash - Transaction hash to wait for\n * @param confirmations - Number of block confirmations to wait for (default: 2)\n */\n async waitForDeployment(hash: Hex, confirmations: number = 2): Promise<void> {\n await this.rpc.waitForTransactionReceipt({ hash, confirmations });\n }\n\n /**\n * Get the hook address\n */\n getAddress(): Address {\n return this.hookAddress;\n }\n\n /**\n * Get current hook information\n */\n async getHookInfo(): Promise<HookInfo> {\n // Fetch all hook data in parallel\n const [\n state,\n earlyExit,\n insufficientProceeds,\n poolKeyRaw,\n startingTime,\n endingTime,\n epochLength,\n minimumProceeds,\n maximumProceeds,\n ] = await Promise.all([\n this.readHookState(),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'earlyExit',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'insufficientProceeds',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'poolKey',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'startingTime',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'endingTime',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'epochLength',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'minimumProceeds',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'maximumProceeds',\n }),\n ]);\n\n // Calculate current epoch\n const currentTime = BigInt(Math.floor(Date.now() / 1000));\n const elapsedTime =\n currentTime > startingTime ? currentTime - startingTime : BigInt(0);\n const currentEpoch =\n epochLength > 0n ? Number(elapsedTime / epochLength) : 0;\n\n // Determine token addresses from poolKey\n const poolKey = this.normalizePoolKey(poolKeyRaw as any);\n const isToken0 = poolKey.currency0 !== zeroAddress;\n const tokenAddress = isToken0 ? poolKey.currency0 : poolKey.currency1;\n const numeraireAddress = isToken0 ? poolKey.currency1 : poolKey.currency0;\n\n // Compute pool ID\n const poolId = this.computePoolId(poolKey);\n\n return {\n hookAddress: this.hookAddress,\n tokenAddress,\n numeraireAddress,\n poolId,\n currentEpoch,\n totalProceeds: (state as any).totalProceeds,\n totalTokensSold: (state as any).totalTokensSold,\n earlyExit,\n insufficientProceeds,\n startingTime,\n endingTime,\n epochLength,\n minimumProceeds,\n maximumProceeds,\n };\n }\n\n /**\n * Get the token address for this auction\n */\n async getTokenAddress(): Promise<Address> {\n const poolKeyRaw = await this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'poolKey',\n });\n const poolKey = this.normalizePoolKey(poolKeyRaw as any);\n\n const isToken0 = await this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'isToken0',\n });\n\n return isToken0 ? poolKey.currency0 : poolKey.currency1;\n }\n\n /**\n * Get the pool ID for this auction\n */\n async getPoolId(): Promise<string> {\n const poolKeyRaw = await this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'poolKey',\n });\n const poolKey = this.normalizePoolKey(poolKeyRaw as any);\n return this.computePoolId(poolKey);\n }\n\n /**\n * Check if the auction has graduated (ready for migration)\n */\n async hasGraduated(): Promise<boolean> {\n const tokenAddress = await this.getTokenAddress();\n const chainId = await this.rpc.getChainId();\n const addresses = getAddresses(chainId);\n\n const assetData = await this.rpc.readContract({\n address: addresses.airlock,\n abi: airlockAbi,\n functionName: 'getAssetData',\n args: [tokenAddress],\n });\n // Check if the asset is graduated (liquidityMigrator is zero)\n const liquidityMigrator = Array.isArray(assetData)\n ? (assetData as any)[3]\n : (assetData as any)?.liquidityMigrator;\n return liquidityMigrator === zeroAddress;\n }\n\n /**\n * Get the current epoch\n */\n async getCurrentEpoch(): Promise<number> {\n const [startingTime, epochLength] = await Promise.all([\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'startingTime',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'epochLength',\n }),\n ]);\n\n const currentTime = BigInt(Math.floor(Date.now() / 1000));\n const elapsedTime =\n currentTime > startingTime ? currentTime - startingTime : BigInt(0);\n\n return Number(elapsedTime / epochLength);\n }\n\n /**\n * Get the current price in the auction\n * Returns the current tick based on the epoch and gamma parameters\n */\n async getCurrentPrice(): Promise<bigint> {\n const [_state, startingTick, endingTick, gamma, startingTime, epochLength] =\n await Promise.all([\n this.readHookState(),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'startingTick',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'endingTick',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'gamma',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'startingTime',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'epochLength',\n }),\n ]);\n\n // Calculate current epoch\n const currentTime = BigInt(Math.floor(Date.now() / 1000));\n const elapsedTime =\n currentTime > startingTime ? currentTime - startingTime : BigInt(0);\n const currentEpoch =\n epochLength > 0n ? Number(elapsedTime / epochLength) : 0;\n\n // Calculate current tick based on the auction progression\n // The tick moves from startingTick towards endingTick based on epochs and gamma\n const direction = endingTick > startingTick ? 1 : -1;\n const tickMovement = Math.floor(currentEpoch * gamma * direction);\n const currentTick = Math.floor(startingTick + tickMovement);\n\n // Convert tick to price\n // price = 1.0001^tick\n // For simplicity, returning the tick as bigint for now\n // In production, you'd convert this to actual price using TickMath\n return BigInt(currentTick);\n }\n\n /**\n * Get total proceeds collected so far\n */\n async getTotalProceeds(): Promise<bigint> {\n const state = await this.readHookState();\n\n return (state as any).totalProceeds;\n }\n\n /**\n * Check if the auction ended early due to max proceeds\n */\n async hasEndedEarly(): Promise<boolean> {\n return await this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'earlyExit',\n });\n }\n\n /**\n * Compute V4 pool ID from pool key components\n */\n private computePoolId(poolKey: {\n currency0: Address;\n currency1: Address;\n fee: number;\n tickSpacing: number;\n hooks: Address;\n }): string {\n // V4 pools are identified by the hash of their PoolKey\n const encoded = encodeAbiParameters(\n [\n { type: 'address' },\n { type: 'address' },\n { type: 'uint24' },\n { type: 'int24' },\n { type: 'address' },\n ],\n [\n poolKey.currency0,\n poolKey.currency1,\n poolKey.fee,\n poolKey.tickSpacing,\n poolKey.hooks,\n ],\n );\n return keccak256(encoded);\n }\n\n /**\n * Read hook state with backward-compatible decoding.\n * Falls back to legacy state() ABI if the latest ABI fails to decode.\n */\n private async readHookState(): Promise<any> {\n const result: any = await this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'state',\n });\n if (Array.isArray(result)) {\n const [\n lastEpoch,\n tickAccumulator,\n totalTokensSold,\n totalProceeds,\n totalTokensSoldLastEpoch,\n feesAccrued,\n ] = result as any[];\n return {\n lastEpoch,\n tickAccumulator,\n totalTokensSold,\n totalProceeds,\n totalTokensSoldLastEpoch,\n feesAccrued,\n };\n }\n return result;\n }\n\n private normalizePoolKey(value: any): {\n currency0: Address;\n currency1: Address;\n fee: number;\n tickSpacing: number;\n hooks: Address;\n } {\n if (Array.isArray(value)) {\n const [currency0, currency1, fee, tickSpacing, hooks] = value as [\n Address,\n Address,\n number,\n number,\n Address,\n ];\n return { currency0, currency1, fee, tickSpacing, hooks };\n }\n return value as any;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/entities/auction/DynamicAuction.ts"],"names":[],"mappings":";;;;AAkBO,IAAM,iBAAN,MAAqB;AAAA,EAG1B,IAAY,GAAA,GAAoB;AAC9B,IAAA,OAAO,IAAA,CAAK,MAAA;AAAA,EACd;AAAA,EAEA,WAAA,CAAY,QAA+B,WAAA,EAAsB;AAC/D,IAAA,IAAA,CAAK,MAAA,GAAS,MAAA;AACd,IAAA,IAAA,CAAK,WAAA,GAAc,WAAA;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,iBAAA,CAAkB,IAAA,EAAW,aAAA,GAAwB,CAAA,EAAkB;AAC3E,IAAA,MAAM,KAAK,GAAA,CAAI,yBAAA,CAA0B,EAAE,IAAA,EAAM,eAAe,CAAA;AAAA,EAClE;AAAA;AAAA;AAAA;AAAA,EAKA,UAAA,GAAsB;AACpB,IAAA,OAAO,IAAA,CAAK,WAAA;AAAA,EACd;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,WAAA,GAAiC;AAErC,IAAA,MAAM;AAAA,MACJ,KAAA;AAAA,MACA,SAAA;AAAA,MACA,oBAAA;AAAA,MACA,UAAA;AAAA,MACA,YAAA;AAAA,MACA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,eAAA;AAAA,MACA;AAAA,KACF,GAAI,MAAM,OAAA,CAAQ,GAAA,CAAI;AAAA,MACpB,KAAK,aAAA,EAAc;AAAA,MACnB,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf;AAAA,KACF,CAAA;AAGD,IAAA,MAAM,WAAA,GAAc,OAAO,IAAA,CAAK,KAAA,CAAM,KAAK,GAAA,EAAI,GAAI,GAAI,CAAC,CAAA;AACxD,IAAA,MAAM,cACJ,WAAA,GAAc,YAAA,GAAe,WAAA,GAAc,YAAA,GAAe,OAAO,CAAC,CAAA;AACpE,IAAA,MAAM,eACJ,WAAA,GAAc,EAAA,GAAK,MAAA,CAAO,WAAA,GAAc,WAAW,CAAA,GAAI,CAAA;AAGzD,IAAA,MAAM,OAAA,GAAU,IAAA,CAAK,gBAAA,CAAiB,UAAiB,CAAA;AACvD,IAAA,MAAM,QAAA,GAAW,QAAQ,SAAA,KAAc,WAAA;AACvC,IAAA,MAAM,YAAA,GAAe,QAAA,GAAW,OAAA,CAAQ,SAAA,GAAY,OAAA,CAAQ,SAAA;AAC5D,IAAA,MAAM,gBAAA,GAAmB,QAAA,GAAW,OAAA,CAAQ,SAAA,GAAY,OAAA,CAAQ,SAAA;AAGhE,IAAA,MAAM,MAAA,GAAS,IAAA,CAAK,aAAA,CAAc,OAAO,CAAA;AAEzC,IAAA,OAAO;AAAA,MACL,aAAa,IAAA,CAAK,WAAA;AAAA,MAClB,YAAA;AAAA,MACA,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,YAAA;AAAA,MACA,eAAgB,KAAA,CAAc,aAAA;AAAA,MAC9B,iBAAkB,KAAA,CAAc,eAAA;AAAA,MAChC,SAAA;AAAA,MACA,oBAAA;AAAA,MACA,YAAA;AAAA,MACA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,eAAA;AAAA,MACA;AAAA,KACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,eAAA,GAAoC;AACxC,IAAA,MAAM,UAAA,GAAa,MAAM,IAAA,CAAK,GAAA,CAAI,YAAA,CAAa;AAAA,MAC7C,SAAS,IAAA,CAAK,WAAA;AAAA,MACd,GAAA,EAAK,cAAA;AAAA,MACL,YAAA,EAAc;AAAA,KACf,CAAA;AACD,IAAA,MAAM,OAAA,GAAU,IAAA,CAAK,gBAAA,CAAiB,UAAiB,CAAA;AAEvD,IAAA,MAAM,QAAA,GAAW,MAAM,IAAA,CAAK,GAAA,CAAI,YAAA,CAAa;AAAA,MAC3C,SAAS,IAAA,CAAK,WAAA;AAAA,MACd,GAAA,EAAK,cAAA;AAAA,MACL,YAAA,EAAc;AAAA,KACf,CAAA;AAED,IAAA,OAAO,QAAA,GAAW,OAAA,CAAQ,SAAA,GAAY,OAAA,CAAQ,SAAA;AAAA,EAChD;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,SAAA,GAA6B;AACjC,IAAA,MAAM,UAAA,GAAa,MAAM,IAAA,CAAK,GAAA,CAAI,YAAA,CAAa;AAAA,MAC7C,SAAS,IAAA,CAAK,WAAA;AAAA,MACd,GAAA,EAAK,cAAA;AAAA,MACL,YAAA,EAAc;AAAA,KACf,CAAA;AACD,IAAA,MAAM,OAAA,GAAU,IAAA,CAAK,gBAAA,CAAiB,UAAiB,CAAA;AACvD,IAAA,OAAO,IAAA,CAAK,cAAc,OAAO,CAAA;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,YAAA,GAAiC;AACrC,IAAA,MAAM,YAAA,GAAe,MAAM,IAAA,CAAK,eAAA,EAAgB;AAChD,IAAA,MAAM,OAAA,GAAU,MAAM,IAAA,CAAK,GAAA,CAAI,UAAA,EAAW;AAC1C,IAAA,MAAM,SAAA,GAAY,aAAa,OAAO,CAAA;AAEtC,IAAA,MAAM,SAAA,GAAY,MAAM,IAAA,CAAK,GAAA,CAAI,YAAA,CAAa;AAAA,MAC5C,SAAS,SAAA,CAAU,OAAA;AAAA,MACnB,GAAA,EAAK,UAAA;AAAA,MACL,YAAA,EAAc,cAAA;AAAA,MACd,IAAA,EAAM,CAAC,YAAY;AAAA,KACpB,CAAA;AAED,IAAA,MAAM,iBAAA,GAAoB,MAAM,OAAA,CAAQ,SAAS,IAC5C,SAAA,CAAkB,CAAC,IACnB,SAAA,EAAmB,iBAAA;AACxB,IAAA,OAAO,iBAAA,KAAsB,WAAA;AAAA,EAC/B;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,eAAA,GAAmC;AACvC,IAAA,MAAM,CAAC,YAAA,EAAc,WAAW,CAAA,GAAI,MAAM,QAAQ,GAAA,CAAI;AAAA,MACpD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf;AAAA,KACF,CAAA;AAED,IAAA,MAAM,WAAA,GAAc,OAAO,IAAA,CAAK,KAAA,CAAM,KAAK,GAAA,EAAI,GAAI,GAAI,CAAC,CAAA;AACxD,IAAA,MAAM,cACJ,WAAA,GAAc,YAAA,GAAe,WAAA,GAAc,YAAA,GAAe,OAAO,CAAC,CAAA;AAEpE,IAAA,OAAO,MAAA,CAAO,cAAc,WAAW,CAAA;AAAA,EACzC;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,eAAA,GAAmC;AACvC,IAAA,MAAM,CAAC,MAAA,EAAQ,YAAA,EAAc,UAAA,EAAY,KAAA,EAAO,cAAc,WAAW,CAAA,GACvE,MAAM,OAAA,CAAQ,GAAA,CAAI;AAAA,MAChB,KAAK,aAAA,EAAc;AAAA,MACnB,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf,CAAA;AAAA,MACD,IAAA,CAAK,IAAI,YAAA,CAAa;AAAA,QACpB,SAAS,IAAA,CAAK,WAAA;AAAA,QACd,GAAA,EAAK,cAAA;AAAA,QACL,YAAA,EAAc;AAAA,OACf;AAAA,KACF,CAAA;AAGH,IAAA,MAAM,WAAA,GAAc,OAAO,IAAA,CAAK,KAAA,CAAM,KAAK,GAAA,EAAI,GAAI,GAAI,CAAC,CAAA;AACxD,IAAA,MAAM,cACJ,WAAA,GAAc,YAAA,GAAe,WAAA,GAAc,YAAA,GAAe,OAAO,CAAC,CAAA;AACpE,IAAA,MAAM,eACJ,WAAA,GAAc,EAAA,GAAK,MAAA,CAAO,WAAA,GAAc,WAAW,CAAA,GAAI,CAAA;AAIzD,IAAA,MAAM,SAAA,GAAY,UAAA,GAAa,YAAA,GAAe,CAAA,GAAI,EAAA;AAClD,IAAA,MAAM,YAAA,GAAe,IAAA,CAAK,KAAA,CAAM,YAAA,GAAe,QAAQ,SAAS,CAAA;AAChE,IAAA,MAAM,WAAA,GAAc,IAAA,CAAK,KAAA,CAAM,YAAA,GAAe,YAAY,CAAA;AAM1D,IAAA,OAAO,OAAO,WAAW,CAAA;AAAA,EAC3B;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,gBAAA,GAAoC;AACxC,IAAA,MAAM,KAAA,GAAQ,MAAM,IAAA,CAAK,aAAA,EAAc;AAEvC,IAAA,OAAQ,KAAA,CAAc,aAAA;AAAA,EACxB;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,aAAA,GAAkC;AACtC,IAAA,OAAO,MAAM,IAAA,CAAK,GAAA,CAAI,YAAA,CAAa;AAAA,MACjC,SAAS,IAAA,CAAK,WAAA;AAAA,MACd,GAAA,EAAK,cAAA;AAAA,MACL,YAAA,EAAc;AAAA,KACf,CAAA;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKQ,cAAc,OAAA,EAMX;AAET,IAAA,MAAM,OAAA,GAAU,mBAAA;AAAA,MACd;AAAA,QACE,EAAE,MAAM,SAAA,EAAU;AAAA,QAClB,EAAE,MAAM,SAAA,EAAU;AAAA,QAClB,EAAE,MAAM,QAAA,EAAS;AAAA,QACjB,EAAE,MAAM,OAAA,EAAQ;AAAA,QAChB,EAAE,MAAM,SAAA;AAAU,OACpB;AAAA,MACA;AAAA,QACE,OAAA,CAAQ,SAAA;AAAA,QACR,OAAA,CAAQ,SAAA;AAAA,QACR,OAAA,CAAQ,GAAA;AAAA,QACR,OAAA,CAAQ,WAAA;AAAA,QACR,OAAA,CAAQ;AAAA;AACV,KACF;AACA,IAAA,OAAO,UAAU,OAAO,CAAA;AAAA,EAC1B;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAc,aAAA,GAA8B;AAC1C,IAAA,MAAM,MAAA,GAAc,MAAM,IAAA,CAAK,GAAA,CAAI,YAAA,CAAa;AAAA,MAC9C,SAAS,IAAA,CAAK,WAAA;AAAA,MACd,GAAA,EAAK,cAAA;AAAA,MACL,YAAA,EAAc;AAAA,KACf,CAAA;AACD,IAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,MAAM,CAAA,EAAG;AACzB,MAAA,MAAM;AAAA,QACJ,SAAA;AAAA,QACA,eAAA;AAAA,QACA,eAAA;AAAA,QACA,aAAA;AAAA,QACA,wBAAA;AAAA,QACA;AAAA,OACF,GAAI,MAAA;AACJ,MAAA,OAAO;AAAA,QACL,SAAA;AAAA,QACA,eAAA;AAAA,QACA,eAAA;AAAA,QACA,aAAA;AAAA,QACA,wBAAA;AAAA,QACA;AAAA,OACF;AAAA,IACF;AACA,IAAA,OAAO,MAAA;AAAA,EACT;AAAA,EAEQ,iBAAiB,KAAA,EAMvB;AACA,IAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,EAAG;AACxB,MAAA,MAAM,CAAC,SAAA,EAAW,SAAA,EAAW,GAAA,EAAK,WAAA,EAAa,KAAK,CAAA,GAAI,KAAA;AAOxD,MAAA,OAAO,EAAE,SAAA,EAAW,SAAA,EAAW,GAAA,EAAK,aAAa,KAAA,EAAM;AAAA,IACzD;AACA,IAAA,OAAO,KAAA;AAAA,EACT;AACF","file":"chunk-XEWKLVOD.mjs","sourcesContent":["import {\n type Address,\n type PublicClient,\n type Hex,\n keccak256,\n encodeAbiParameters,\n zeroAddress,\n} from 'viem';\nimport type { HookInfo, SupportedPublicClient } from '../../types';\nimport { dopplerHookAbi, airlockAbi } from '../../abis';\nimport { getAddresses } from '../../addresses';\n\n/**\n * DynamicAuction class for interacting with dynamic auctions (Uniswap V4 hook based)\n *\n * Dynamic auctions use a Uniswap V4 hook to create a gradual Dutch auction\n * where the price moves dynamically over time according to set parameters.\n */\nexport class DynamicAuction {\n private client: SupportedPublicClient;\n private hookAddress: Address;\n private get rpc(): PublicClient {\n return this.client as PublicClient;\n }\n\n constructor(client: SupportedPublicClient, hookAddress: Address) {\n this.client = client;\n this.hookAddress = hookAddress;\n }\n\n /**\n * Wait for a transaction to be confirmed and the contract to be ready for reads\n * @param hash - Transaction hash to wait for\n * @param confirmations - Number of block confirmations to wait for (default: 2)\n */\n async waitForDeployment(hash: Hex, confirmations: number = 2): Promise<void> {\n await this.rpc.waitForTransactionReceipt({ hash, confirmations });\n }\n\n /**\n * Get the hook address\n */\n getAddress(): Address {\n return this.hookAddress;\n }\n\n /**\n * Get current hook information\n */\n async getHookInfo(): Promise<HookInfo> {\n // Fetch all hook data in parallel\n const [\n state,\n earlyExit,\n insufficientProceeds,\n poolKeyRaw,\n startingTime,\n endingTime,\n epochLength,\n minimumProceeds,\n maximumProceeds,\n ] = await Promise.all([\n this.readHookState(),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'earlyExit',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'insufficientProceeds',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'poolKey',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'startingTime',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'endingTime',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'epochLength',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'minimumProceeds',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'maximumProceeds',\n }),\n ]);\n\n // Calculate current epoch\n const currentTime = BigInt(Math.floor(Date.now() / 1000));\n const elapsedTime =\n currentTime > startingTime ? currentTime - startingTime : BigInt(0);\n const currentEpoch =\n epochLength > 0n ? Number(elapsedTime / epochLength) : 0;\n\n // Determine token addresses from poolKey\n const poolKey = this.normalizePoolKey(poolKeyRaw as any);\n const isToken0 = poolKey.currency0 !== zeroAddress;\n const tokenAddress = isToken0 ? poolKey.currency0 : poolKey.currency1;\n const numeraireAddress = isToken0 ? poolKey.currency1 : poolKey.currency0;\n\n // Compute pool ID\n const poolId = this.computePoolId(poolKey);\n\n return {\n hookAddress: this.hookAddress,\n tokenAddress,\n numeraireAddress,\n poolId,\n currentEpoch,\n totalProceeds: (state as any).totalProceeds,\n totalTokensSold: (state as any).totalTokensSold,\n earlyExit,\n insufficientProceeds,\n startingTime,\n endingTime,\n epochLength,\n minimumProceeds,\n maximumProceeds,\n };\n }\n\n /**\n * Get the token address for this auction\n */\n async getTokenAddress(): Promise<Address> {\n const poolKeyRaw = await this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'poolKey',\n });\n const poolKey = this.normalizePoolKey(poolKeyRaw as any);\n\n const isToken0 = await this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'isToken0',\n });\n\n return isToken0 ? poolKey.currency0 : poolKey.currency1;\n }\n\n /**\n * Get the pool ID for this auction\n */\n async getPoolId(): Promise<string> {\n const poolKeyRaw = await this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'poolKey',\n });\n const poolKey = this.normalizePoolKey(poolKeyRaw as any);\n return this.computePoolId(poolKey);\n }\n\n /**\n * Check if the auction has graduated (ready for migration)\n */\n async hasGraduated(): Promise<boolean> {\n const tokenAddress = await this.getTokenAddress();\n const chainId = await this.rpc.getChainId();\n const addresses = getAddresses(chainId);\n\n const assetData = await this.rpc.readContract({\n address: addresses.airlock,\n abi: airlockAbi,\n functionName: 'getAssetData',\n args: [tokenAddress],\n });\n // Check if the asset is graduated (liquidityMigrator is zero)\n const liquidityMigrator = Array.isArray(assetData)\n ? (assetData as any)[3]\n : (assetData as any)?.liquidityMigrator;\n return liquidityMigrator === zeroAddress;\n }\n\n /**\n * Get the current epoch\n */\n async getCurrentEpoch(): Promise<number> {\n const [startingTime, epochLength] = await Promise.all([\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'startingTime',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'epochLength',\n }),\n ]);\n\n const currentTime = BigInt(Math.floor(Date.now() / 1000));\n const elapsedTime =\n currentTime > startingTime ? currentTime - startingTime : BigInt(0);\n\n return Number(elapsedTime / epochLength);\n }\n\n /**\n * Get the current price in the auction\n * Returns the current tick based on the epoch and gamma parameters\n */\n async getCurrentPrice(): Promise<bigint> {\n const [_state, startingTick, endingTick, gamma, startingTime, epochLength] =\n await Promise.all([\n this.readHookState(),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'startingTick',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'endingTick',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'gamma',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'startingTime',\n }),\n this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'epochLength',\n }),\n ]);\n\n // Calculate current epoch\n const currentTime = BigInt(Math.floor(Date.now() / 1000));\n const elapsedTime =\n currentTime > startingTime ? currentTime - startingTime : BigInt(0);\n const currentEpoch =\n epochLength > 0n ? Number(elapsedTime / epochLength) : 0;\n\n // Calculate current tick based on the auction progression\n // The tick moves from startingTick towards endingTick based on epochs and gamma\n const direction = endingTick > startingTick ? 1 : -1;\n const tickMovement = Math.floor(currentEpoch * gamma * direction);\n const currentTick = Math.floor(startingTick + tickMovement);\n\n // Convert tick to price\n // price = 1.0001^tick\n // For simplicity, returning the tick as bigint for now\n // In production, you'd convert this to actual price using TickMath\n return BigInt(currentTick);\n }\n\n /**\n * Get total proceeds collected so far\n */\n async getTotalProceeds(): Promise<bigint> {\n const state = await this.readHookState();\n\n return (state as any).totalProceeds;\n }\n\n /**\n * Check if the auction ended early due to max proceeds\n */\n async hasEndedEarly(): Promise<boolean> {\n return await this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'earlyExit',\n });\n }\n\n /**\n * Compute V4 pool ID from pool key components\n */\n private computePoolId(poolKey: {\n currency0: Address;\n currency1: Address;\n fee: number;\n tickSpacing: number;\n hooks: Address;\n }): string {\n // V4 pools are identified by the hash of their PoolKey\n const encoded = encodeAbiParameters(\n [\n { type: 'address' },\n { type: 'address' },\n { type: 'uint24' },\n { type: 'int24' },\n { type: 'address' },\n ],\n [\n poolKey.currency0,\n poolKey.currency1,\n poolKey.fee,\n poolKey.tickSpacing,\n poolKey.hooks,\n ],\n );\n return keccak256(encoded);\n }\n\n /**\n * Read hook state with backward-compatible decoding.\n * Falls back to legacy state() ABI if the latest ABI fails to decode.\n */\n private async readHookState(): Promise<any> {\n const result: any = await this.rpc.readContract({\n address: this.hookAddress,\n abi: dopplerHookAbi,\n functionName: 'state',\n });\n if (Array.isArray(result)) {\n const [\n lastEpoch,\n tickAccumulator,\n totalTokensSold,\n totalProceeds,\n totalTokensSoldLastEpoch,\n feesAccrued,\n ] = result as any[];\n return {\n lastEpoch,\n tickAccumulator,\n totalTokensSold,\n totalProceeds,\n totalTokensSoldLastEpoch,\n feesAccrued,\n };\n }\n return result;\n }\n\n private normalizePoolKey(value: any): {\n currency0: Address;\n currency1: Address;\n fee: number;\n tickSpacing: number;\n hooks: Address;\n } {\n if (Array.isArray(value)) {\n const [currency0, currency1, fee, tickSpacing, hooks] = value as [\n Address,\n Address,\n number,\n number,\n Address,\n ];\n return { currency0, currency1, fee, tickSpacing, hooks };\n }\n return value as any;\n }\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunkJHPDKSC4_js = require('./chunk-JHPDKSC4.js');
|
|
4
|
+
var chunk3MVW6UIW_js = require('./chunk-3MVW6UIW.js');
|
|
5
5
|
var viem = require('viem');
|
|
6
6
|
|
|
7
7
|
var StaticAuction = class {
|
|
@@ -25,35 +25,35 @@ var StaticAuction = class {
|
|
|
25
25
|
const [slot0, liquidity, token0, token1, fee] = await Promise.all([
|
|
26
26
|
this.rpc.readContract({
|
|
27
27
|
address: this.poolAddress,
|
|
28
|
-
abi:
|
|
28
|
+
abi: chunk3MVW6UIW_js.uniswapV3PoolAbi,
|
|
29
29
|
functionName: "slot0"
|
|
30
30
|
}),
|
|
31
31
|
this.rpc.readContract({
|
|
32
32
|
address: this.poolAddress,
|
|
33
|
-
abi:
|
|
33
|
+
abi: chunk3MVW6UIW_js.uniswapV3PoolAbi,
|
|
34
34
|
functionName: "liquidity"
|
|
35
35
|
}),
|
|
36
36
|
this.rpc.readContract({
|
|
37
37
|
address: this.poolAddress,
|
|
38
|
-
abi:
|
|
38
|
+
abi: chunk3MVW6UIW_js.uniswapV3PoolAbi,
|
|
39
39
|
functionName: "token0"
|
|
40
40
|
}),
|
|
41
41
|
this.rpc.readContract({
|
|
42
42
|
address: this.poolAddress,
|
|
43
|
-
abi:
|
|
43
|
+
abi: chunk3MVW6UIW_js.uniswapV3PoolAbi,
|
|
44
44
|
functionName: "token1"
|
|
45
45
|
}),
|
|
46
46
|
this.rpc.readContract({
|
|
47
47
|
address: this.poolAddress,
|
|
48
|
-
abi:
|
|
48
|
+
abi: chunk3MVW6UIW_js.uniswapV3PoolAbi,
|
|
49
49
|
functionName: "fee"
|
|
50
50
|
})
|
|
51
51
|
]);
|
|
52
52
|
const chainId = await this.rpc.getChainId();
|
|
53
|
-
const addresses =
|
|
53
|
+
const addresses = chunkJHPDKSC4_js.getAddresses(chainId);
|
|
54
54
|
const assetData = await this.rpc.readContract({
|
|
55
55
|
address: addresses.airlock,
|
|
56
|
-
abi:
|
|
56
|
+
abi: chunk3MVW6UIW_js.airlockAbi,
|
|
57
57
|
functionName: "getAssetData",
|
|
58
58
|
args: [token0]
|
|
59
59
|
});
|
|
@@ -87,10 +87,10 @@ var StaticAuction = class {
|
|
|
87
87
|
async hasGraduated() {
|
|
88
88
|
const tokenAddress = await this.getTokenAddress();
|
|
89
89
|
const chainId = await this.rpc.getChainId();
|
|
90
|
-
const addresses =
|
|
90
|
+
const addresses = chunkJHPDKSC4_js.getAddresses(chainId);
|
|
91
91
|
const assetData = await this.rpc.readContract({
|
|
92
92
|
address: addresses.airlock,
|
|
93
|
-
abi:
|
|
93
|
+
abi: chunk3MVW6UIW_js.airlockAbi,
|
|
94
94
|
functionName: "getAssetData",
|
|
95
95
|
args: [tokenAddress]
|
|
96
96
|
});
|
|
@@ -106,12 +106,12 @@ var StaticAuction = class {
|
|
|
106
106
|
const [token0] = await Promise.all([
|
|
107
107
|
this.rpc.readContract({
|
|
108
108
|
address: this.poolAddress,
|
|
109
|
-
abi:
|
|
109
|
+
abi: chunk3MVW6UIW_js.uniswapV3PoolAbi,
|
|
110
110
|
functionName: "token0"
|
|
111
111
|
}),
|
|
112
112
|
this.rpc.readContract({
|
|
113
113
|
address: this.poolAddress,
|
|
114
|
-
abi:
|
|
114
|
+
abi: chunk3MVW6UIW_js.uniswapV3PoolAbi,
|
|
115
115
|
functionName: "token1"
|
|
116
116
|
})
|
|
117
117
|
]);
|
|
@@ -132,12 +132,12 @@ var StaticAuction = class {
|
|
|
132
132
|
async getTotalLiquidity() {
|
|
133
133
|
return await this.rpc.readContract({
|
|
134
134
|
address: this.poolAddress,
|
|
135
|
-
abi:
|
|
135
|
+
abi: chunk3MVW6UIW_js.uniswapV3PoolAbi,
|
|
136
136
|
functionName: "liquidity"
|
|
137
137
|
});
|
|
138
138
|
}
|
|
139
139
|
};
|
|
140
140
|
|
|
141
141
|
exports.StaticAuction = StaticAuction;
|
|
142
|
-
//# sourceMappingURL=chunk-
|
|
143
|
-
//# sourceMappingURL=chunk-
|
|
142
|
+
//# sourceMappingURL=chunk-Y5RAENN5.js.map
|
|
143
|
+
//# sourceMappingURL=chunk-Y5RAENN5.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/entities/auction/StaticAuction.ts"],"names":["uniswapV3PoolAbi","getAddresses","airlockAbi","zeroAddress"],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/entities/auction/StaticAuction.ts"],"names":["uniswapV3PoolAbi","getAddresses","airlockAbi","zeroAddress"],"mappings":"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","file":"chunk-Y5RAENN5.js","sourcesContent":["import { type Address, zeroAddress, type PublicClient } from 'viem';\nimport type { PoolInfo, SupportedPublicClient } from '../../types';\nimport { uniswapV3PoolAbi, airlockAbi } from '../../abis';\nimport { getAddresses } from '../../addresses';\n\n/**\n * StaticAuction class for interacting with static auctions (Uniswap V3 based)\n *\n * Static auctions use a fixed price range on Uniswap V3 for initial liquidity bootstrapping.\n * This is ideal for simple, predictable price discovery events.\n */\nexport class StaticAuction {\n private client: SupportedPublicClient;\n private poolAddress: Address;\n private get rpc(): PublicClient {\n return this.client as PublicClient;\n }\n\n constructor(client: SupportedPublicClient, poolAddress: Address) {\n this.client = client;\n this.poolAddress = poolAddress;\n }\n\n /**\n * Get the pool address\n */\n getAddress(): Address {\n return this.poolAddress;\n }\n\n /**\n * Get current pool information\n */\n async getPoolInfo(): Promise<PoolInfo> {\n // Fetch all pool data in parallel\n const [slot0, liquidity, token0, token1, fee] = await Promise.all([\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'slot0',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'liquidity',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token0',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token1',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'fee',\n }),\n ]);\n\n // Determine which token is the auction token and which is numeraire\n // This requires checking with the Airlock contract\n const chainId = await this.rpc.getChainId();\n const addresses = getAddresses(chainId);\n\n const assetData = await this.rpc.readContract({\n address: addresses.airlock,\n abi: airlockAbi,\n functionName: 'getAssetData',\n args: [token0],\n });\n // Determine whether token0 is the auction token.\n // Handle both tuple and object return shapes from getAssetData.\n // Tuple (legacy): [numeraire, timelock, governance, liquidityMigrator, poolInitializer, pool, ...]\n // Object (unified): { poolOrHook, liquidityMigrator, numeraire, ... }\n let poolOrHook0: any;\n if (Array.isArray(assetData)) {\n poolOrHook0 = assetData[5];\n } else if (assetData && typeof assetData === 'object') {\n poolOrHook0 = (assetData as any).poolOrHook ?? (assetData as any).pool;\n }\n const isToken0AuctionToken = poolOrHook0 && poolOrHook0 !== zeroAddress;\n\n return {\n address: this.poolAddress,\n tokenAddress: isToken0AuctionToken ? token0 : token1,\n numeraireAddress: isToken0AuctionToken ? token1 : token0,\n fee,\n liquidity,\n sqrtPriceX96: slot0[0], // First element is sqrtPriceX96\n };\n }\n\n /**\n * Get the token address for this auction\n */\n async getTokenAddress(): Promise<Address> {\n const poolInfo = await this.getPoolInfo();\n return poolInfo.tokenAddress;\n }\n\n /**\n * Check if the auction has graduated (ready for migration)\n */\n async hasGraduated(): Promise<boolean> {\n const tokenAddress = await this.getTokenAddress();\n const chainId = await this.rpc.getChainId();\n const addresses = getAddresses(chainId);\n\n const assetData = await this.rpc.readContract({\n address: addresses.airlock,\n abi: airlockAbi,\n functionName: 'getAssetData',\n args: [tokenAddress],\n });\n // Check if the asset is graduated (liquidityMigrator is zero)\n const liquidityMigrator = Array.isArray(assetData)\n ? (assetData as any)[3]\n : (assetData as any)?.liquidityMigrator;\n return liquidityMigrator === zeroAddress;\n }\n\n /**\n * Get the current price in the pool\n * Returns the price of token in terms of numeraire (token/numeraire)\n */\n async getCurrentPrice(): Promise<bigint> {\n const poolInfo = await this.getPoolInfo();\n\n // Get token ordering\n const [token0] = await Promise.all([\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token0',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token1',\n }),\n ]);\n\n // Calculate price from sqrtPriceX96\n // sqrtPriceX96 = sqrt(price) * 2^96\n // price = (sqrtPriceX96 / 2^96)^2\n const sqrtPriceX96 = poolInfo.sqrtPriceX96;\n const Q96 = BigInt(2) ** BigInt(96);\n\n // price0 = amount of token1 per token0\n const sqrtPriceX96Squared = sqrtPriceX96 * sqrtPriceX96;\n const Q96Squared = Q96 * Q96;\n const price0 = sqrtPriceX96Squared / Q96Squared;\n\n // Return price based on which token is the auction token\n if (poolInfo.tokenAddress === token0) {\n // Auction token is token0, return price in terms of token1 (numeraire)\n return price0;\n } else {\n // Auction token is token1, return reciprocal price\n // price1 = 1 / price0 (with precision handling)\n return Q96Squared / price0;\n }\n }\n\n /**\n * Get total liquidity in the pool\n */\n async getTotalLiquidity(): Promise<bigint> {\n return await this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'liquidity',\n });\n }\n}\n"]}
|
package/dist/constants.d.mts
CHANGED
|
@@ -28,6 +28,12 @@ declare const V3_FEE_TIERS: readonly FeeTier[];
|
|
|
28
28
|
* @see DopplerHookInitializer.sol line 171: `uint24 constant MAX_LP_FEE = 100_000`
|
|
29
29
|
*/
|
|
30
30
|
declare const V4_MAX_FEE = 100000;
|
|
31
|
+
/**
|
|
32
|
+
* Maximum allowed start fee for decay multicurve schedules.
|
|
33
|
+
* This is intentionally higher than V4_MAX_FEE to support anti-sniping launches.
|
|
34
|
+
* 800_000 = 80%
|
|
35
|
+
*/
|
|
36
|
+
declare const DECAY_MAX_START_FEE = 800000;
|
|
31
37
|
declare const TICK_SPACINGS: {
|
|
32
38
|
readonly 100: 1;
|
|
33
39
|
readonly 500: 10;
|
|
@@ -82,4 +88,4 @@ declare const FEE_AMOUNT_MASK = 16777215;
|
|
|
82
88
|
*/
|
|
83
89
|
declare const DYNAMIC_AUCTION_VALID_FEES: readonly [100, 500, 3000, 10000];
|
|
84
90
|
|
|
85
|
-
export { BASIS_POINTS, DAY_SECONDS, DEAD_ADDRESS, DEFAULT_AUCTION_DURATION, DEFAULT_CREATE_GAS_LIMIT, DEFAULT_EPOCH_LENGTH, DEFAULT_LOCK_DURATION, DEFAULT_MULTICURVE_LOWER_TICKS, DEFAULT_MULTICURVE_MAX_SUPPLY_SHARES, DEFAULT_MULTICURVE_NUM_POSITIONS, DEFAULT_MULTICURVE_UPPER_TICKS, DEFAULT_PD_SLUGS, DEFAULT_V3_END_TICK, DEFAULT_V3_FEE, DEFAULT_V3_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V3_INITIAL_SUPPLY, DEFAULT_V3_INITIAL_VOTING_DELAY, DEFAULT_V3_INITIAL_VOTING_PERIOD, DEFAULT_V3_MAX_SHARE_TO_BE_SOLD, DEFAULT_V3_NUM_POSITIONS, DEFAULT_V3_NUM_TOKENS_TO_SELL, DEFAULT_V3_PRE_MINT, DEFAULT_V3_START_TICK, DEFAULT_V3_VESTING_DURATION, DEFAULT_V3_YEARLY_MINT_RATE, DEFAULT_V4_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V4_INITIAL_VOTING_DELAY, DEFAULT_V4_INITIAL_VOTING_PERIOD, DEFAULT_V4_YEARLY_MINT_RATE, DOPPLER_FLAGS, DOPPLER_MAX_TICK_SPACING, DYNAMIC_AUCTION_VALID_FEES, DYNAMIC_FEE_FLAG, FEE_AMOUNT_MASK, FEE_TIERS, FLAG_MASK, type FeeTier, MAX_SQRT_RATIO, MIN_SQRT_RATIO, SECONDS_PER_DAY, SECONDS_PER_YEAR, TICK_SPACINGS, V3_FEE_TIERS, V4_MAX_FEE, VALID_FEE_TIERS, WAD, ZERO_ADDRESS };
|
|
91
|
+
export { BASIS_POINTS, DAY_SECONDS, DEAD_ADDRESS, DECAY_MAX_START_FEE, DEFAULT_AUCTION_DURATION, DEFAULT_CREATE_GAS_LIMIT, DEFAULT_EPOCH_LENGTH, DEFAULT_LOCK_DURATION, DEFAULT_MULTICURVE_LOWER_TICKS, DEFAULT_MULTICURVE_MAX_SUPPLY_SHARES, DEFAULT_MULTICURVE_NUM_POSITIONS, DEFAULT_MULTICURVE_UPPER_TICKS, DEFAULT_PD_SLUGS, DEFAULT_V3_END_TICK, DEFAULT_V3_FEE, DEFAULT_V3_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V3_INITIAL_SUPPLY, DEFAULT_V3_INITIAL_VOTING_DELAY, DEFAULT_V3_INITIAL_VOTING_PERIOD, DEFAULT_V3_MAX_SHARE_TO_BE_SOLD, DEFAULT_V3_NUM_POSITIONS, DEFAULT_V3_NUM_TOKENS_TO_SELL, DEFAULT_V3_PRE_MINT, DEFAULT_V3_START_TICK, DEFAULT_V3_VESTING_DURATION, DEFAULT_V3_YEARLY_MINT_RATE, DEFAULT_V4_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V4_INITIAL_VOTING_DELAY, DEFAULT_V4_INITIAL_VOTING_PERIOD, DEFAULT_V4_YEARLY_MINT_RATE, DOPPLER_FLAGS, DOPPLER_MAX_TICK_SPACING, DYNAMIC_AUCTION_VALID_FEES, DYNAMIC_FEE_FLAG, FEE_AMOUNT_MASK, FEE_TIERS, FLAG_MASK, type FeeTier, MAX_SQRT_RATIO, MIN_SQRT_RATIO, SECONDS_PER_DAY, SECONDS_PER_YEAR, TICK_SPACINGS, V3_FEE_TIERS, V4_MAX_FEE, VALID_FEE_TIERS, WAD, ZERO_ADDRESS };
|
package/dist/constants.d.ts
CHANGED
|
@@ -28,6 +28,12 @@ declare const V3_FEE_TIERS: readonly FeeTier[];
|
|
|
28
28
|
* @see DopplerHookInitializer.sol line 171: `uint24 constant MAX_LP_FEE = 100_000`
|
|
29
29
|
*/
|
|
30
30
|
declare const V4_MAX_FEE = 100000;
|
|
31
|
+
/**
|
|
32
|
+
* Maximum allowed start fee for decay multicurve schedules.
|
|
33
|
+
* This is intentionally higher than V4_MAX_FEE to support anti-sniping launches.
|
|
34
|
+
* 800_000 = 80%
|
|
35
|
+
*/
|
|
36
|
+
declare const DECAY_MAX_START_FEE = 800000;
|
|
31
37
|
declare const TICK_SPACINGS: {
|
|
32
38
|
readonly 100: 1;
|
|
33
39
|
readonly 500: 10;
|
|
@@ -82,4 +88,4 @@ declare const FEE_AMOUNT_MASK = 16777215;
|
|
|
82
88
|
*/
|
|
83
89
|
declare const DYNAMIC_AUCTION_VALID_FEES: readonly [100, 500, 3000, 10000];
|
|
84
90
|
|
|
85
|
-
export { BASIS_POINTS, DAY_SECONDS, DEAD_ADDRESS, DEFAULT_AUCTION_DURATION, DEFAULT_CREATE_GAS_LIMIT, DEFAULT_EPOCH_LENGTH, DEFAULT_LOCK_DURATION, DEFAULT_MULTICURVE_LOWER_TICKS, DEFAULT_MULTICURVE_MAX_SUPPLY_SHARES, DEFAULT_MULTICURVE_NUM_POSITIONS, DEFAULT_MULTICURVE_UPPER_TICKS, DEFAULT_PD_SLUGS, DEFAULT_V3_END_TICK, DEFAULT_V3_FEE, DEFAULT_V3_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V3_INITIAL_SUPPLY, DEFAULT_V3_INITIAL_VOTING_DELAY, DEFAULT_V3_INITIAL_VOTING_PERIOD, DEFAULT_V3_MAX_SHARE_TO_BE_SOLD, DEFAULT_V3_NUM_POSITIONS, DEFAULT_V3_NUM_TOKENS_TO_SELL, DEFAULT_V3_PRE_MINT, DEFAULT_V3_START_TICK, DEFAULT_V3_VESTING_DURATION, DEFAULT_V3_YEARLY_MINT_RATE, DEFAULT_V4_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V4_INITIAL_VOTING_DELAY, DEFAULT_V4_INITIAL_VOTING_PERIOD, DEFAULT_V4_YEARLY_MINT_RATE, DOPPLER_FLAGS, DOPPLER_MAX_TICK_SPACING, DYNAMIC_AUCTION_VALID_FEES, DYNAMIC_FEE_FLAG, FEE_AMOUNT_MASK, FEE_TIERS, FLAG_MASK, type FeeTier, MAX_SQRT_RATIO, MIN_SQRT_RATIO, SECONDS_PER_DAY, SECONDS_PER_YEAR, TICK_SPACINGS, V3_FEE_TIERS, V4_MAX_FEE, VALID_FEE_TIERS, WAD, ZERO_ADDRESS };
|
|
91
|
+
export { BASIS_POINTS, DAY_SECONDS, DEAD_ADDRESS, DECAY_MAX_START_FEE, DEFAULT_AUCTION_DURATION, DEFAULT_CREATE_GAS_LIMIT, DEFAULT_EPOCH_LENGTH, DEFAULT_LOCK_DURATION, DEFAULT_MULTICURVE_LOWER_TICKS, DEFAULT_MULTICURVE_MAX_SUPPLY_SHARES, DEFAULT_MULTICURVE_NUM_POSITIONS, DEFAULT_MULTICURVE_UPPER_TICKS, DEFAULT_PD_SLUGS, DEFAULT_V3_END_TICK, DEFAULT_V3_FEE, DEFAULT_V3_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V3_INITIAL_SUPPLY, DEFAULT_V3_INITIAL_VOTING_DELAY, DEFAULT_V3_INITIAL_VOTING_PERIOD, DEFAULT_V3_MAX_SHARE_TO_BE_SOLD, DEFAULT_V3_NUM_POSITIONS, DEFAULT_V3_NUM_TOKENS_TO_SELL, DEFAULT_V3_PRE_MINT, DEFAULT_V3_START_TICK, DEFAULT_V3_VESTING_DURATION, DEFAULT_V3_YEARLY_MINT_RATE, DEFAULT_V4_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V4_INITIAL_VOTING_DELAY, DEFAULT_V4_INITIAL_VOTING_PERIOD, DEFAULT_V4_YEARLY_MINT_RATE, DOPPLER_FLAGS, DOPPLER_MAX_TICK_SPACING, DYNAMIC_AUCTION_VALID_FEES, DYNAMIC_FEE_FLAG, FEE_AMOUNT_MASK, FEE_TIERS, FLAG_MASK, type FeeTier, MAX_SQRT_RATIO, MIN_SQRT_RATIO, SECONDS_PER_DAY, SECONDS_PER_YEAR, TICK_SPACINGS, V3_FEE_TIERS, V4_MAX_FEE, VALID_FEE_TIERS, WAD, ZERO_ADDRESS };
|
package/dist/constants.js
CHANGED
|
@@ -1,192 +1,196 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunk6BQY5EPB_js = require('./chunk-6BQY5EPB.js');
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
Object.defineProperty(exports, "BASIS_POINTS", {
|
|
8
8
|
enumerable: true,
|
|
9
|
-
get: function () { return
|
|
9
|
+
get: function () { return chunk6BQY5EPB_js.BASIS_POINTS; }
|
|
10
10
|
});
|
|
11
11
|
Object.defineProperty(exports, "DAY_SECONDS", {
|
|
12
12
|
enumerable: true,
|
|
13
|
-
get: function () { return
|
|
13
|
+
get: function () { return chunk6BQY5EPB_js.DAY_SECONDS; }
|
|
14
14
|
});
|
|
15
15
|
Object.defineProperty(exports, "DEAD_ADDRESS", {
|
|
16
16
|
enumerable: true,
|
|
17
|
-
get: function () { return
|
|
17
|
+
get: function () { return chunk6BQY5EPB_js.DEAD_ADDRESS; }
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports, "DECAY_MAX_START_FEE", {
|
|
20
|
+
enumerable: true,
|
|
21
|
+
get: function () { return chunk6BQY5EPB_js.DECAY_MAX_START_FEE; }
|
|
18
22
|
});
|
|
19
23
|
Object.defineProperty(exports, "DEFAULT_AUCTION_DURATION", {
|
|
20
24
|
enumerable: true,
|
|
21
|
-
get: function () { return
|
|
25
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_AUCTION_DURATION; }
|
|
22
26
|
});
|
|
23
27
|
Object.defineProperty(exports, "DEFAULT_CREATE_GAS_LIMIT", {
|
|
24
28
|
enumerable: true,
|
|
25
|
-
get: function () { return
|
|
29
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_CREATE_GAS_LIMIT; }
|
|
26
30
|
});
|
|
27
31
|
Object.defineProperty(exports, "DEFAULT_EPOCH_LENGTH", {
|
|
28
32
|
enumerable: true,
|
|
29
|
-
get: function () { return
|
|
33
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_EPOCH_LENGTH; }
|
|
30
34
|
});
|
|
31
35
|
Object.defineProperty(exports, "DEFAULT_LOCK_DURATION", {
|
|
32
36
|
enumerable: true,
|
|
33
|
-
get: function () { return
|
|
37
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_LOCK_DURATION; }
|
|
34
38
|
});
|
|
35
39
|
Object.defineProperty(exports, "DEFAULT_MULTICURVE_LOWER_TICKS", {
|
|
36
40
|
enumerable: true,
|
|
37
|
-
get: function () { return
|
|
41
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_MULTICURVE_LOWER_TICKS; }
|
|
38
42
|
});
|
|
39
43
|
Object.defineProperty(exports, "DEFAULT_MULTICURVE_MAX_SUPPLY_SHARES", {
|
|
40
44
|
enumerable: true,
|
|
41
|
-
get: function () { return
|
|
45
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_MULTICURVE_MAX_SUPPLY_SHARES; }
|
|
42
46
|
});
|
|
43
47
|
Object.defineProperty(exports, "DEFAULT_MULTICURVE_NUM_POSITIONS", {
|
|
44
48
|
enumerable: true,
|
|
45
|
-
get: function () { return
|
|
49
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_MULTICURVE_NUM_POSITIONS; }
|
|
46
50
|
});
|
|
47
51
|
Object.defineProperty(exports, "DEFAULT_MULTICURVE_UPPER_TICKS", {
|
|
48
52
|
enumerable: true,
|
|
49
|
-
get: function () { return
|
|
53
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_MULTICURVE_UPPER_TICKS; }
|
|
50
54
|
});
|
|
51
55
|
Object.defineProperty(exports, "DEFAULT_PD_SLUGS", {
|
|
52
56
|
enumerable: true,
|
|
53
|
-
get: function () { return
|
|
57
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_PD_SLUGS; }
|
|
54
58
|
});
|
|
55
59
|
Object.defineProperty(exports, "DEFAULT_V3_END_TICK", {
|
|
56
60
|
enumerable: true,
|
|
57
|
-
get: function () { return
|
|
61
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_END_TICK; }
|
|
58
62
|
});
|
|
59
63
|
Object.defineProperty(exports, "DEFAULT_V3_FEE", {
|
|
60
64
|
enumerable: true,
|
|
61
|
-
get: function () { return
|
|
65
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_FEE; }
|
|
62
66
|
});
|
|
63
67
|
Object.defineProperty(exports, "DEFAULT_V3_INITIAL_PROPOSAL_THRESHOLD", {
|
|
64
68
|
enumerable: true,
|
|
65
|
-
get: function () { return
|
|
69
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_INITIAL_PROPOSAL_THRESHOLD; }
|
|
66
70
|
});
|
|
67
71
|
Object.defineProperty(exports, "DEFAULT_V3_INITIAL_SUPPLY", {
|
|
68
72
|
enumerable: true,
|
|
69
|
-
get: function () { return
|
|
73
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_INITIAL_SUPPLY; }
|
|
70
74
|
});
|
|
71
75
|
Object.defineProperty(exports, "DEFAULT_V3_INITIAL_VOTING_DELAY", {
|
|
72
76
|
enumerable: true,
|
|
73
|
-
get: function () { return
|
|
77
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_INITIAL_VOTING_DELAY; }
|
|
74
78
|
});
|
|
75
79
|
Object.defineProperty(exports, "DEFAULT_V3_INITIAL_VOTING_PERIOD", {
|
|
76
80
|
enumerable: true,
|
|
77
|
-
get: function () { return
|
|
81
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_INITIAL_VOTING_PERIOD; }
|
|
78
82
|
});
|
|
79
83
|
Object.defineProperty(exports, "DEFAULT_V3_MAX_SHARE_TO_BE_SOLD", {
|
|
80
84
|
enumerable: true,
|
|
81
|
-
get: function () { return
|
|
85
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_MAX_SHARE_TO_BE_SOLD; }
|
|
82
86
|
});
|
|
83
87
|
Object.defineProperty(exports, "DEFAULT_V3_NUM_POSITIONS", {
|
|
84
88
|
enumerable: true,
|
|
85
|
-
get: function () { return
|
|
89
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_NUM_POSITIONS; }
|
|
86
90
|
});
|
|
87
91
|
Object.defineProperty(exports, "DEFAULT_V3_NUM_TOKENS_TO_SELL", {
|
|
88
92
|
enumerable: true,
|
|
89
|
-
get: function () { return
|
|
93
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_NUM_TOKENS_TO_SELL; }
|
|
90
94
|
});
|
|
91
95
|
Object.defineProperty(exports, "DEFAULT_V3_PRE_MINT", {
|
|
92
96
|
enumerable: true,
|
|
93
|
-
get: function () { return
|
|
97
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_PRE_MINT; }
|
|
94
98
|
});
|
|
95
99
|
Object.defineProperty(exports, "DEFAULT_V3_START_TICK", {
|
|
96
100
|
enumerable: true,
|
|
97
|
-
get: function () { return
|
|
101
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_START_TICK; }
|
|
98
102
|
});
|
|
99
103
|
Object.defineProperty(exports, "DEFAULT_V3_VESTING_DURATION", {
|
|
100
104
|
enumerable: true,
|
|
101
|
-
get: function () { return
|
|
105
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_VESTING_DURATION; }
|
|
102
106
|
});
|
|
103
107
|
Object.defineProperty(exports, "DEFAULT_V3_YEARLY_MINT_RATE", {
|
|
104
108
|
enumerable: true,
|
|
105
|
-
get: function () { return
|
|
109
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V3_YEARLY_MINT_RATE; }
|
|
106
110
|
});
|
|
107
111
|
Object.defineProperty(exports, "DEFAULT_V4_INITIAL_PROPOSAL_THRESHOLD", {
|
|
108
112
|
enumerable: true,
|
|
109
|
-
get: function () { return
|
|
113
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V4_INITIAL_PROPOSAL_THRESHOLD; }
|
|
110
114
|
});
|
|
111
115
|
Object.defineProperty(exports, "DEFAULT_V4_INITIAL_VOTING_DELAY", {
|
|
112
116
|
enumerable: true,
|
|
113
|
-
get: function () { return
|
|
117
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V4_INITIAL_VOTING_DELAY; }
|
|
114
118
|
});
|
|
115
119
|
Object.defineProperty(exports, "DEFAULT_V4_INITIAL_VOTING_PERIOD", {
|
|
116
120
|
enumerable: true,
|
|
117
|
-
get: function () { return
|
|
121
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V4_INITIAL_VOTING_PERIOD; }
|
|
118
122
|
});
|
|
119
123
|
Object.defineProperty(exports, "DEFAULT_V4_YEARLY_MINT_RATE", {
|
|
120
124
|
enumerable: true,
|
|
121
|
-
get: function () { return
|
|
125
|
+
get: function () { return chunk6BQY5EPB_js.DEFAULT_V4_YEARLY_MINT_RATE; }
|
|
122
126
|
});
|
|
123
127
|
Object.defineProperty(exports, "DOPPLER_FLAGS", {
|
|
124
128
|
enumerable: true,
|
|
125
|
-
get: function () { return
|
|
129
|
+
get: function () { return chunk6BQY5EPB_js.DOPPLER_FLAGS; }
|
|
126
130
|
});
|
|
127
131
|
Object.defineProperty(exports, "DOPPLER_MAX_TICK_SPACING", {
|
|
128
132
|
enumerable: true,
|
|
129
|
-
get: function () { return
|
|
133
|
+
get: function () { return chunk6BQY5EPB_js.DOPPLER_MAX_TICK_SPACING; }
|
|
130
134
|
});
|
|
131
135
|
Object.defineProperty(exports, "DYNAMIC_AUCTION_VALID_FEES", {
|
|
132
136
|
enumerable: true,
|
|
133
|
-
get: function () { return
|
|
137
|
+
get: function () { return chunk6BQY5EPB_js.DYNAMIC_AUCTION_VALID_FEES; }
|
|
134
138
|
});
|
|
135
139
|
Object.defineProperty(exports, "DYNAMIC_FEE_FLAG", {
|
|
136
140
|
enumerable: true,
|
|
137
|
-
get: function () { return
|
|
141
|
+
get: function () { return chunk6BQY5EPB_js.DYNAMIC_FEE_FLAG; }
|
|
138
142
|
});
|
|
139
143
|
Object.defineProperty(exports, "FEE_AMOUNT_MASK", {
|
|
140
144
|
enumerable: true,
|
|
141
|
-
get: function () { return
|
|
145
|
+
get: function () { return chunk6BQY5EPB_js.FEE_AMOUNT_MASK; }
|
|
142
146
|
});
|
|
143
147
|
Object.defineProperty(exports, "FEE_TIERS", {
|
|
144
148
|
enumerable: true,
|
|
145
|
-
get: function () { return
|
|
149
|
+
get: function () { return chunk6BQY5EPB_js.FEE_TIERS; }
|
|
146
150
|
});
|
|
147
151
|
Object.defineProperty(exports, "FLAG_MASK", {
|
|
148
152
|
enumerable: true,
|
|
149
|
-
get: function () { return
|
|
153
|
+
get: function () { return chunk6BQY5EPB_js.FLAG_MASK; }
|
|
150
154
|
});
|
|
151
155
|
Object.defineProperty(exports, "MAX_SQRT_RATIO", {
|
|
152
156
|
enumerable: true,
|
|
153
|
-
get: function () { return
|
|
157
|
+
get: function () { return chunk6BQY5EPB_js.MAX_SQRT_RATIO; }
|
|
154
158
|
});
|
|
155
159
|
Object.defineProperty(exports, "MIN_SQRT_RATIO", {
|
|
156
160
|
enumerable: true,
|
|
157
|
-
get: function () { return
|
|
161
|
+
get: function () { return chunk6BQY5EPB_js.MIN_SQRT_RATIO; }
|
|
158
162
|
});
|
|
159
163
|
Object.defineProperty(exports, "SECONDS_PER_DAY", {
|
|
160
164
|
enumerable: true,
|
|
161
|
-
get: function () { return
|
|
165
|
+
get: function () { return chunk6BQY5EPB_js.SECONDS_PER_DAY; }
|
|
162
166
|
});
|
|
163
167
|
Object.defineProperty(exports, "SECONDS_PER_YEAR", {
|
|
164
168
|
enumerable: true,
|
|
165
|
-
get: function () { return
|
|
169
|
+
get: function () { return chunk6BQY5EPB_js.SECONDS_PER_YEAR; }
|
|
166
170
|
});
|
|
167
171
|
Object.defineProperty(exports, "TICK_SPACINGS", {
|
|
168
172
|
enumerable: true,
|
|
169
|
-
get: function () { return
|
|
173
|
+
get: function () { return chunk6BQY5EPB_js.TICK_SPACINGS; }
|
|
170
174
|
});
|
|
171
175
|
Object.defineProperty(exports, "V3_FEE_TIERS", {
|
|
172
176
|
enumerable: true,
|
|
173
|
-
get: function () { return
|
|
177
|
+
get: function () { return chunk6BQY5EPB_js.V3_FEE_TIERS; }
|
|
174
178
|
});
|
|
175
179
|
Object.defineProperty(exports, "V4_MAX_FEE", {
|
|
176
180
|
enumerable: true,
|
|
177
|
-
get: function () { return
|
|
181
|
+
get: function () { return chunk6BQY5EPB_js.V4_MAX_FEE; }
|
|
178
182
|
});
|
|
179
183
|
Object.defineProperty(exports, "VALID_FEE_TIERS", {
|
|
180
184
|
enumerable: true,
|
|
181
|
-
get: function () { return
|
|
185
|
+
get: function () { return chunk6BQY5EPB_js.VALID_FEE_TIERS; }
|
|
182
186
|
});
|
|
183
187
|
Object.defineProperty(exports, "WAD", {
|
|
184
188
|
enumerable: true,
|
|
185
|
-
get: function () { return
|
|
189
|
+
get: function () { return chunk6BQY5EPB_js.WAD; }
|
|
186
190
|
});
|
|
187
191
|
Object.defineProperty(exports, "ZERO_ADDRESS", {
|
|
188
192
|
enumerable: true,
|
|
189
|
-
get: function () { return
|
|
193
|
+
get: function () { return chunk6BQY5EPB_js.ZERO_ADDRESS; }
|
|
190
194
|
});
|
|
191
195
|
//# sourceMappingURL=constants.js.map
|
|
192
196
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { BASIS_POINTS, DAY_SECONDS, DEAD_ADDRESS, DEFAULT_AUCTION_DURATION, DEFAULT_CREATE_GAS_LIMIT, DEFAULT_EPOCH_LENGTH, DEFAULT_LOCK_DURATION, DEFAULT_MULTICURVE_LOWER_TICKS, DEFAULT_MULTICURVE_MAX_SUPPLY_SHARES, DEFAULT_MULTICURVE_NUM_POSITIONS, DEFAULT_MULTICURVE_UPPER_TICKS, DEFAULT_PD_SLUGS, DEFAULT_V3_END_TICK, DEFAULT_V3_FEE, DEFAULT_V3_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V3_INITIAL_SUPPLY, DEFAULT_V3_INITIAL_VOTING_DELAY, DEFAULT_V3_INITIAL_VOTING_PERIOD, DEFAULT_V3_MAX_SHARE_TO_BE_SOLD, DEFAULT_V3_NUM_POSITIONS, DEFAULT_V3_NUM_TOKENS_TO_SELL, DEFAULT_V3_PRE_MINT, DEFAULT_V3_START_TICK, DEFAULT_V3_VESTING_DURATION, DEFAULT_V3_YEARLY_MINT_RATE, DEFAULT_V4_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V4_INITIAL_VOTING_DELAY, DEFAULT_V4_INITIAL_VOTING_PERIOD, DEFAULT_V4_YEARLY_MINT_RATE, DOPPLER_FLAGS, DOPPLER_MAX_TICK_SPACING, DYNAMIC_AUCTION_VALID_FEES, DYNAMIC_FEE_FLAG, FEE_AMOUNT_MASK, FEE_TIERS, FLAG_MASK, MAX_SQRT_RATIO, MIN_SQRT_RATIO, SECONDS_PER_DAY, SECONDS_PER_YEAR, TICK_SPACINGS, V3_FEE_TIERS, V4_MAX_FEE, VALID_FEE_TIERS, WAD, ZERO_ADDRESS } from './chunk-
|
|
1
|
+
export { BASIS_POINTS, DAY_SECONDS, DEAD_ADDRESS, DECAY_MAX_START_FEE, DEFAULT_AUCTION_DURATION, DEFAULT_CREATE_GAS_LIMIT, DEFAULT_EPOCH_LENGTH, DEFAULT_LOCK_DURATION, DEFAULT_MULTICURVE_LOWER_TICKS, DEFAULT_MULTICURVE_MAX_SUPPLY_SHARES, DEFAULT_MULTICURVE_NUM_POSITIONS, DEFAULT_MULTICURVE_UPPER_TICKS, DEFAULT_PD_SLUGS, DEFAULT_V3_END_TICK, DEFAULT_V3_FEE, DEFAULT_V3_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V3_INITIAL_SUPPLY, DEFAULT_V3_INITIAL_VOTING_DELAY, DEFAULT_V3_INITIAL_VOTING_PERIOD, DEFAULT_V3_MAX_SHARE_TO_BE_SOLD, DEFAULT_V3_NUM_POSITIONS, DEFAULT_V3_NUM_TOKENS_TO_SELL, DEFAULT_V3_PRE_MINT, DEFAULT_V3_START_TICK, DEFAULT_V3_VESTING_DURATION, DEFAULT_V3_YEARLY_MINT_RATE, DEFAULT_V4_INITIAL_PROPOSAL_THRESHOLD, DEFAULT_V4_INITIAL_VOTING_DELAY, DEFAULT_V4_INITIAL_VOTING_PERIOD, DEFAULT_V4_YEARLY_MINT_RATE, DOPPLER_FLAGS, DOPPLER_MAX_TICK_SPACING, DYNAMIC_AUCTION_VALID_FEES, DYNAMIC_FEE_FLAG, FEE_AMOUNT_MASK, FEE_TIERS, FLAG_MASK, MAX_SQRT_RATIO, MIN_SQRT_RATIO, SECONDS_PER_DAY, SECONDS_PER_YEAR, TICK_SPACINGS, V3_FEE_TIERS, V4_MAX_FEE, VALID_FEE_TIERS, WAD, ZERO_ADDRESS } from './chunk-IWJOPXYN.mjs';
|
|
2
2
|
//# sourceMappingURL=constants.mjs.map
|
|
3
3
|
//# sourceMappingURL=constants.mjs.map
|
|
@@ -115,6 +115,8 @@ declare const GENERATED_DOPPLER_DEPLOYMENTS: {
|
|
|
115
115
|
readonly Bundler: "0x136191B46478cAB023cbC01a36160C4Aad81677a";
|
|
116
116
|
readonly CloneDERC20VotesV2: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7";
|
|
117
117
|
readonly CloneDERC20VotesV2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1";
|
|
118
|
+
readonly DecayMulticurveInitializer: "0xD59cE43E53D69F190E15d9822Fb4540dCcc91178";
|
|
119
|
+
readonly DecayMulticurveInitializerHook: "0xbB7784A4d481184283Ed89619A3e3ed143e1Adc0";
|
|
118
120
|
readonly DopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421";
|
|
119
121
|
readonly DopplerHookInitializer: "0xAA096F558f3d4c9226De77E7Cc05f18E180B2544";
|
|
120
122
|
readonly DopplerLensQuoter: "0x43d0D97EC9241A8F05A264f94B82A1d2E600f2B3";
|
|
@@ -184,6 +186,8 @@ declare const GENERATED_DOPPLER_DEPLOYMENTS: {
|
|
|
184
186
|
readonly CloneERC20Factory: "0xbf4Ca4D527c9760A884df31292f72E9AcA503045";
|
|
185
187
|
readonly CloneERC20Votes: "0x52831E40151a79FE2e74549b0974d44A10Ac30aD";
|
|
186
188
|
readonly CloneERC20VotesFactory: "0x9a497a9fB78e49984B9d260abA1F4AD6321D4D92";
|
|
189
|
+
readonly DecayMulticurveInitializer: "0xd59ce43e53d69f190e15d9822fb4540dccc91178";
|
|
190
|
+
readonly DecayMulticurveInitializerHook: "0xbb7784a4d481184283ed89619a3e3ed143e1adc0";
|
|
187
191
|
readonly DopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421";
|
|
188
192
|
readonly DopplerHookInitializer: "0xAA096F558f3d4c9226De77E7Cc05f18E180B2544";
|
|
189
193
|
readonly DopplerLensQuoter: "0x4a8d81Db741248a36D9eb3bc6eF648Bf798B47a7";
|
|
@@ -198,11 +202,16 @@ declare const GENERATED_DOPPLER_DEPLOYMENTS: {
|
|
|
198
202
|
readonly TeamGovernanceFactory: "0x8aF3001ED75F86f4Dd910577ECa9C5dB7CEa765c";
|
|
199
203
|
readonly TokenFactory: "0x9D8fd79B2a59c5d91ccBd79c3AEb4de56451Bb02";
|
|
200
204
|
readonly TokenFactory80: "0xf0B5141dD9096254B2ca624dff26024f46087229";
|
|
205
|
+
readonly TopUpDistributor: "0xD8F05757B7d638a48Fd14e15EB6782bab50Ad57F";
|
|
206
|
+
readonly UniswapV2Locker: "0x78500ab9297aD87b1f6A0329e6af226F73886a5D";
|
|
201
207
|
readonly UniswapV2Migrator: "0x04a898f3722c38F9Def707bD17DC78920EFA977C";
|
|
208
|
+
readonly UniswapV2MigratorSplit: "0x935D94FcbBbA9BE1184953BF0B93E4D844cd0335";
|
|
202
209
|
readonly UniswapV3Initializer: "0x4C3062B9ccFdbCB10353F57C1B59a29d4c5CFa47";
|
|
203
210
|
readonly UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad";
|
|
204
211
|
readonly UniswapV4Migrator: "0xEEe0eCCb54398ce371CAACBCEf076d3Ed597DDb3";
|
|
205
212
|
readonly UniswapV4MigratorHook: "0x127cAAAd598Ffa97577940b0a5c3b6150019E500";
|
|
213
|
+
readonly UniswapV4MigratorSplit: "0xC647fED0746cc14fBF645aEDa15CC40B18505490";
|
|
214
|
+
readonly UniswapV4MigratorSplitHook: "0x20e03085adBcfCB840De898F37617ABD08da2500";
|
|
206
215
|
readonly UniswapV4MulticurveInitializer: "0x1718405E58c61425cDc0083262bC9f72198F5232";
|
|
207
216
|
readonly UniswapV4MulticurveInitializerHook: "0x6a1061FC558dDe1E6fD0eFd641b370d435b56d40";
|
|
208
217
|
readonly UniswapV4ScheduledMulticurveInitializer: "0xF84378C9F39e0FF267f3101c88773359c5393876";
|
|
@@ -115,6 +115,8 @@ declare const GENERATED_DOPPLER_DEPLOYMENTS: {
|
|
|
115
115
|
readonly Bundler: "0x136191B46478cAB023cbC01a36160C4Aad81677a";
|
|
116
116
|
readonly CloneDERC20VotesV2: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7";
|
|
117
117
|
readonly CloneDERC20VotesV2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1";
|
|
118
|
+
readonly DecayMulticurveInitializer: "0xD59cE43E53D69F190E15d9822Fb4540dCcc91178";
|
|
119
|
+
readonly DecayMulticurveInitializerHook: "0xbB7784A4d481184283Ed89619A3e3ed143e1Adc0";
|
|
118
120
|
readonly DopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421";
|
|
119
121
|
readonly DopplerHookInitializer: "0xAA096F558f3d4c9226De77E7Cc05f18E180B2544";
|
|
120
122
|
readonly DopplerLensQuoter: "0x43d0D97EC9241A8F05A264f94B82A1d2E600f2B3";
|
|
@@ -184,6 +186,8 @@ declare const GENERATED_DOPPLER_DEPLOYMENTS: {
|
|
|
184
186
|
readonly CloneERC20Factory: "0xbf4Ca4D527c9760A884df31292f72E9AcA503045";
|
|
185
187
|
readonly CloneERC20Votes: "0x52831E40151a79FE2e74549b0974d44A10Ac30aD";
|
|
186
188
|
readonly CloneERC20VotesFactory: "0x9a497a9fB78e49984B9d260abA1F4AD6321D4D92";
|
|
189
|
+
readonly DecayMulticurveInitializer: "0xd59ce43e53d69f190e15d9822fb4540dccc91178";
|
|
190
|
+
readonly DecayMulticurveInitializerHook: "0xbb7784a4d481184283ed89619a3e3ed143e1adc0";
|
|
187
191
|
readonly DopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421";
|
|
188
192
|
readonly DopplerHookInitializer: "0xAA096F558f3d4c9226De77E7Cc05f18E180B2544";
|
|
189
193
|
readonly DopplerLensQuoter: "0x4a8d81Db741248a36D9eb3bc6eF648Bf798B47a7";
|
|
@@ -198,11 +202,16 @@ declare const GENERATED_DOPPLER_DEPLOYMENTS: {
|
|
|
198
202
|
readonly TeamGovernanceFactory: "0x8aF3001ED75F86f4Dd910577ECa9C5dB7CEa765c";
|
|
199
203
|
readonly TokenFactory: "0x9D8fd79B2a59c5d91ccBd79c3AEb4de56451Bb02";
|
|
200
204
|
readonly TokenFactory80: "0xf0B5141dD9096254B2ca624dff26024f46087229";
|
|
205
|
+
readonly TopUpDistributor: "0xD8F05757B7d638a48Fd14e15EB6782bab50Ad57F";
|
|
206
|
+
readonly UniswapV2Locker: "0x78500ab9297aD87b1f6A0329e6af226F73886a5D";
|
|
201
207
|
readonly UniswapV2Migrator: "0x04a898f3722c38F9Def707bD17DC78920EFA977C";
|
|
208
|
+
readonly UniswapV2MigratorSplit: "0x935D94FcbBbA9BE1184953BF0B93E4D844cd0335";
|
|
202
209
|
readonly UniswapV3Initializer: "0x4C3062B9ccFdbCB10353F57C1B59a29d4c5CFa47";
|
|
203
210
|
readonly UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad";
|
|
204
211
|
readonly UniswapV4Migrator: "0xEEe0eCCb54398ce371CAACBCEf076d3Ed597DDb3";
|
|
205
212
|
readonly UniswapV4MigratorHook: "0x127cAAAd598Ffa97577940b0a5c3b6150019E500";
|
|
213
|
+
readonly UniswapV4MigratorSplit: "0xC647fED0746cc14fBF645aEDa15CC40B18505490";
|
|
214
|
+
readonly UniswapV4MigratorSplitHook: "0x20e03085adBcfCB840De898F37617ABD08da2500";
|
|
206
215
|
readonly UniswapV4MulticurveInitializer: "0x1718405E58c61425cDc0083262bC9f72198F5232";
|
|
207
216
|
readonly UniswapV4MulticurveInitializerHook: "0x6a1061FC558dDe1E6fD0eFd641b370d435b56d40";
|
|
208
217
|
readonly UniswapV4ScheduledMulticurveInitializer: "0xF84378C9F39e0FF267f3101c88773359c5393876";
|