@whetstone-research/doppler-sdk 0.0.23 → 1.0.0
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 +556 -229
- package/dist/chunk-3LTCKCJC.js +319 -0
- package/dist/chunk-3LTCKCJC.js.map +1 -0
- package/dist/chunk-PZ5AY32C.js +9 -0
- package/dist/{chunk-3PNCB4W5.js.map → chunk-PZ5AY32C.js.map} +1 -1
- package/dist/chunk-RO6R66OM.js +974 -0
- package/dist/chunk-RO6R66OM.js.map +1 -0
- package/dist/evm/index.d.ts +8533 -0
- package/dist/evm/index.js +15055 -0
- package/dist/evm/index.js.map +1 -0
- package/dist/oracle-BSvZ6pxp.d.ts +820 -0
- package/dist/pda-RVIHNLRP.js +4 -0
- package/dist/pda-RVIHNLRP.js.map +1 -0
- package/dist/solana/index.d.ts +2495 -0
- package/dist/solana/index.js +2209 -0
- package/dist/solana/index.js.map +1 -0
- package/dist/solana/react/index.d.ts +1046 -0
- package/dist/solana/react/index.js +1436 -0
- package/dist/solana/react/index.js.map +1 -0
- package/package.json +37 -21
- package/dist/DopplerSDK.d.mts +0 -94
- package/dist/DopplerSDK.d.ts +0 -94
- package/dist/DopplerSDK.js +0 -51
- package/dist/DopplerSDK.js.map +0 -1
- package/dist/DopplerSDK.mjs +0 -42
- package/dist/DopplerSDK.mjs.map +0 -1
- package/dist/abis/bytecodes/derc20.d.mts +0 -3
- package/dist/abis/bytecodes/derc20.d.ts +0 -3
- package/dist/abis/bytecodes/derc20.js +0 -9
- package/dist/abis/bytecodes/derc20.js.map +0 -1
- package/dist/abis/bytecodes/derc20.mjs +0 -3
- package/dist/abis/bytecodes/derc20.mjs.map +0 -1
- package/dist/abis/bytecodes/derc2080.d.mts +0 -3
- package/dist/abis/bytecodes/derc2080.d.ts +0 -3
- package/dist/abis/bytecodes/derc2080.js +0 -9
- package/dist/abis/bytecodes/derc2080.js.map +0 -1
- package/dist/abis/bytecodes/derc2080.mjs +0 -3
- package/dist/abis/bytecodes/derc2080.mjs.map +0 -1
- package/dist/abis/bytecodes/doppler.d.mts +0 -3
- package/dist/abis/bytecodes/doppler.d.ts +0 -3
- package/dist/abis/bytecodes/doppler.js +0 -9
- package/dist/abis/bytecodes/doppler.js.map +0 -1
- package/dist/abis/bytecodes/doppler.mjs +0 -3
- package/dist/abis/bytecodes/doppler.mjs.map +0 -1
- package/dist/abis/bytecodes/dopplerDN404.d.mts +0 -3
- package/dist/abis/bytecodes/dopplerDN404.d.ts +0 -3
- package/dist/abis/bytecodes/dopplerDN404.js +0 -9
- package/dist/abis/bytecodes/dopplerDN404.js.map +0 -1
- package/dist/abis/bytecodes/dopplerDN404.mjs +0 -3
- package/dist/abis/bytecodes/dopplerDN404.mjs.map +0 -1
- package/dist/abis/bytecodes/stateView.d.mts +0 -3
- package/dist/abis/bytecodes/stateView.d.ts +0 -3
- package/dist/abis/bytecodes/stateView.js +0 -9
- package/dist/abis/bytecodes/stateView.js.map +0 -1
- package/dist/abis/bytecodes/stateView.mjs +0 -3
- package/dist/abis/bytecodes/stateView.mjs.map +0 -1
- package/dist/abis/bytecodes.d.mts +0 -5
- package/dist/abis/bytecodes.d.ts +0 -5
- package/dist/abis/bytecodes.js +0 -33
- package/dist/abis/bytecodes.js.map +0 -1
- package/dist/abis/bytecodes.mjs +0 -8
- package/dist/abis/bytecodes.mjs.map +0 -1
- package/dist/abis/index.d.mts +0 -3460
- package/dist/abis/index.d.ts +0 -3460
- package/dist/abis/index.js +0 -122
- package/dist/abis/index.js.map +0 -1
- package/dist/abis/index.mjs +0 -9
- package/dist/abis/index.mjs.map +0 -1
- package/dist/addresses.d.mts +0 -65
- package/dist/addresses.d.ts +0 -65
- package/dist/addresses.js +0 -29
- package/dist/addresses.js.map +0 -1
- package/dist/addresses.mjs +0 -4
- package/dist/addresses.mjs.map +0 -1
- package/dist/builders/DynamicAuctionBuilder.d.mts +0 -138
- package/dist/builders/DynamicAuctionBuilder.d.ts +0 -138
- package/dist/builders/DynamicAuctionBuilder.js +0 -35
- package/dist/builders/DynamicAuctionBuilder.js.map +0 -1
- package/dist/builders/DynamicAuctionBuilder.mjs +0 -26
- package/dist/builders/DynamicAuctionBuilder.mjs.map +0 -1
- package/dist/builders/MulticurveBuilder.d.mts +0 -183
- package/dist/builders/MulticurveBuilder.d.ts +0 -183
- package/dist/builders/MulticurveBuilder.js +0 -35
- package/dist/builders/MulticurveBuilder.js.map +0 -1
- package/dist/builders/MulticurveBuilder.mjs +0 -26
- package/dist/builders/MulticurveBuilder.mjs.map +0 -1
- package/dist/builders/StaticAuctionBuilder.d.mts +0 -131
- package/dist/builders/StaticAuctionBuilder.d.ts +0 -131
- package/dist/builders/StaticAuctionBuilder.js +0 -35
- package/dist/builders/StaticAuctionBuilder.js.map +0 -1
- package/dist/builders/StaticAuctionBuilder.mjs +0 -26
- package/dist/builders/StaticAuctionBuilder.mjs.map +0 -1
- package/dist/builders/index.d.mts +0 -8
- package/dist/builders/index.d.ts +0 -8
- package/dist/builders/index.js +0 -62
- package/dist/builders/index.js.map +0 -1
- package/dist/builders/index.mjs +0 -29
- package/dist/builders/index.mjs.map +0 -1
- package/dist/builders/shared.d.mts +0 -115
- package/dist/builders/shared.d.ts +0 -115
- package/dist/builders/shared.js +0 -45
- package/dist/builders/shared.js.map +0 -1
- package/dist/builders/shared.mjs +0 -24
- package/dist/builders/shared.mjs.map +0 -1
- package/dist/chunk-25GEBO3B.mjs +0 -219
- package/dist/chunk-25GEBO3B.mjs.map +0 -1
- package/dist/chunk-3MVW6UIW.js +0 -2294
- package/dist/chunk-3MVW6UIW.js.map +0 -1
- package/dist/chunk-3NMGCQJ4.mjs +0 -6
- package/dist/chunk-3NMGCQJ4.mjs.map +0 -1
- package/dist/chunk-3PNCB4W5.js +0 -4
- package/dist/chunk-4VWQNNNW.js +0 -233
- package/dist/chunk-4VWQNNNW.js.map +0 -1
- package/dist/chunk-4XN6DQBW.js +0 -4
- package/dist/chunk-4XN6DQBW.js.map +0 -1
- package/dist/chunk-5TQOT6CW.js +0 -8
- package/dist/chunk-5TQOT6CW.js.map +0 -1
- package/dist/chunk-6BQY5EPB.js +0 -144
- package/dist/chunk-6BQY5EPB.js.map +0 -1
- package/dist/chunk-6H6X3VTZ.js +0 -18
- package/dist/chunk-6H6X3VTZ.js.map +0 -1
- package/dist/chunk-6UHDSD42.js +0 -2585
- package/dist/chunk-6UHDSD42.js.map +0 -1
- package/dist/chunk-7CAAI5DL.js +0 -273
- package/dist/chunk-7CAAI5DL.js.map +0 -1
- package/dist/chunk-7M57PU6V.js +0 -28
- package/dist/chunk-7M57PU6V.js.map +0 -1
- package/dist/chunk-7P2SPZC7.mjs +0 -2583
- package/dist/chunk-7P2SPZC7.mjs.map +0 -1
- package/dist/chunk-7ZUV6WPX.mjs +0 -3
- package/dist/chunk-7ZUV6WPX.mjs.map +0 -1
- package/dist/chunk-ABT6AT7C.mjs +0 -16
- package/dist/chunk-ABT6AT7C.mjs.map +0 -1
- package/dist/chunk-C6MH7HYT.mjs +0 -138
- package/dist/chunk-C6MH7HYT.mjs.map +0 -1
- package/dist/chunk-CATH4QRQ.mjs +0 -141
- package/dist/chunk-CATH4QRQ.mjs.map +0 -1
- package/dist/chunk-CFAAYL5M.mjs +0 -26
- package/dist/chunk-CFAAYL5M.mjs.map +0 -1
- package/dist/chunk-CMNJZKTM.js +0 -140
- package/dist/chunk-CMNJZKTM.js.map +0 -1
- package/dist/chunk-CWTGQAOG.mjs +0 -72
- package/dist/chunk-CWTGQAOG.mjs.map +0 -1
- package/dist/chunk-DNB3T5P2.js +0 -269
- package/dist/chunk-DNB3T5P2.js.map +0 -1
- package/dist/chunk-DOUF6NON.mjs +0 -3
- package/dist/chunk-DOUF6NON.mjs.map +0 -1
- package/dist/chunk-DSYPZETD.js +0 -4
- package/dist/chunk-DSYPZETD.js.map +0 -1
- package/dist/chunk-E2NF4AQB.mjs +0 -2271
- package/dist/chunk-E2NF4AQB.mjs.map +0 -1
- package/dist/chunk-EH3V2BJF.js +0 -592
- package/dist/chunk-EH3V2BJF.js.map +0 -1
- package/dist/chunk-EIXUJANI.mjs +0 -590
- package/dist/chunk-EIXUJANI.mjs.map +0 -1
- package/dist/chunk-FFV6DMPA.mjs +0 -263
- package/dist/chunk-FFV6DMPA.mjs.map +0 -1
- package/dist/chunk-FLFYAWSS.mjs +0 -238
- package/dist/chunk-FLFYAWSS.mjs.map +0 -1
- package/dist/chunk-FNUBKONK.js +0 -291
- package/dist/chunk-FNUBKONK.js.map +0 -1
- package/dist/chunk-FOESYJP3.mjs +0 -3
- package/dist/chunk-FOESYJP3.mjs.map +0 -1
- package/dist/chunk-FTRCBE3J.js +0 -320
- package/dist/chunk-FTRCBE3J.js.map +0 -1
- package/dist/chunk-FZ4FIWCR.js +0 -240
- package/dist/chunk-FZ4FIWCR.js.map +0 -1
- package/dist/chunk-GDODJJ7D.mjs +0 -36
- package/dist/chunk-GDODJJ7D.mjs.map +0 -1
- package/dist/chunk-GSBQIVME.mjs +0 -278
- package/dist/chunk-GSBQIVME.mjs.map +0 -1
- package/dist/chunk-GSTY3GO7.mjs +0 -40
- package/dist/chunk-GSTY3GO7.mjs.map +0 -1
- package/dist/chunk-H3B54PFV.mjs +0 -17
- package/dist/chunk-H3B54PFV.mjs.map +0 -1
- package/dist/chunk-H7WPK5CR.js +0 -297
- package/dist/chunk-H7WPK5CR.js.map +0 -1
- package/dist/chunk-HJFVRV47.js +0 -120
- package/dist/chunk-HJFVRV47.js.map +0 -1
- package/dist/chunk-HL7ZAAD4.mjs +0 -375
- package/dist/chunk-HL7ZAAD4.mjs.map +0 -1
- package/dist/chunk-IWJOPXYN.mjs +0 -96
- package/dist/chunk-IWJOPXYN.mjs.map +0 -1
- package/dist/chunk-J62YDWIK.js +0 -8
- package/dist/chunk-J62YDWIK.js.map +0 -1
- package/dist/chunk-JB5XXPLL.js +0 -377
- package/dist/chunk-JB5XXPLL.js.map +0 -1
- package/dist/chunk-JIKAD4YL.js +0 -4
- package/dist/chunk-JIKAD4YL.js.map +0 -1
- package/dist/chunk-KAZQJ24E.mjs +0 -59
- package/dist/chunk-KAZQJ24E.mjs.map +0 -1
- package/dist/chunk-KHUE77HC.js +0 -81
- package/dist/chunk-KHUE77HC.js.map +0 -1
- package/dist/chunk-KOAC3BBP.mjs +0 -11
- package/dist/chunk-KOAC3BBP.mjs.map +0 -1
- package/dist/chunk-OHA5KJ2M.mjs +0 -6
- package/dist/chunk-OHA5KJ2M.mjs.map +0 -1
- package/dist/chunk-OX5CESVM.js +0 -40
- package/dist/chunk-OX5CESVM.js.map +0 -1
- package/dist/chunk-P25HBGP5.mjs +0 -3
- package/dist/chunk-P25HBGP5.mjs.map +0 -1
- package/dist/chunk-P7CHGWY7.js +0 -4
- package/dist/chunk-P7CHGWY7.js.map +0 -1
- package/dist/chunk-QAPQGDWK.js +0 -8
- package/dist/chunk-QAPQGDWK.js.map +0 -1
- package/dist/chunk-QOGBOT2M.mjs +0 -328
- package/dist/chunk-QOGBOT2M.mjs.map +0 -1
- package/dist/chunk-QRTABC4Z.js +0 -8
- package/dist/chunk-QRTABC4Z.js.map +0 -1
- package/dist/chunk-QSQGLWNY.mjs +0 -3
- package/dist/chunk-QSQGLWNY.mjs.map +0 -1
- package/dist/chunk-RI6SDMER.mjs +0 -295
- package/dist/chunk-RI6SDMER.mjs.map +0 -1
- package/dist/chunk-RIIVW6TQ.mjs +0 -267
- package/dist/chunk-RIIVW6TQ.mjs.map +0 -1
- package/dist/chunk-RV64M4Q6.mjs +0 -3
- package/dist/chunk-RV64M4Q6.mjs.map +0 -1
- package/dist/chunk-RXUJ4DUB.js +0 -330
- package/dist/chunk-RXUJ4DUB.js.map +0 -1
- package/dist/chunk-SD7BHT2F.mjs +0 -3
- package/dist/chunk-SD7BHT2F.mjs.map +0 -1
- package/dist/chunk-SWWLOD7Q.mjs +0 -6
- package/dist/chunk-SWWLOD7Q.mjs.map +0 -1
- package/dist/chunk-TIGHBA37.js +0 -143
- package/dist/chunk-TIGHBA37.js.map +0 -1
- package/dist/chunk-TLEVIIUE.mjs +0 -34
- package/dist/chunk-TLEVIIUE.mjs.map +0 -1
- package/dist/chunk-U3GOWK6J.mjs +0 -6
- package/dist/chunk-U3GOWK6J.mjs.map +0 -1
- package/dist/chunk-UPVKABAV.js +0 -19
- package/dist/chunk-UPVKABAV.js.map +0 -1
- package/dist/chunk-VCX6FG3E.mjs +0 -318
- package/dist/chunk-VCX6FG3E.mjs.map +0 -1
- package/dist/chunk-VEIVYUYF.js +0 -4
- package/dist/chunk-VEIVYUYF.js.map +0 -1
- package/dist/chunk-VYSOAGRU.mjs +0 -6
- package/dist/chunk-VYSOAGRU.mjs.map +0 -1
- package/dist/chunk-WJBJARLJ.js +0 -38
- package/dist/chunk-WJBJARLJ.js.map +0 -1
- package/dist/chunk-WNUB3UTT.js +0 -241
- package/dist/chunk-WNUB3UTT.js.map +0 -1
- package/dist/chunk-WQHTNL5L.js +0 -4
- package/dist/chunk-WQHTNL5L.js.map +0 -1
- package/dist/chunk-X3UMAHOJ.js +0 -4
- package/dist/chunk-X3UMAHOJ.js.map +0 -1
- package/dist/chunk-XMFOZYNI.js +0 -8
- package/dist/chunk-XMFOZYNI.js.map +0 -1
- package/dist/chunk-XNMXN5SZ.mjs +0 -3
- package/dist/chunk-XNMXN5SZ.mjs.map +0 -1
- package/dist/chunk-XRYLHTVV.mjs +0 -267
- package/dist/chunk-XRYLHTVV.mjs.map +0 -1
- package/dist/chunk-XSJTASPK.js +0 -13
- package/dist/chunk-XSJTASPK.js.map +0 -1
- package/dist/chunk-XT3BAM4H.js +0 -45
- package/dist/chunk-XT3BAM4H.js.map +0 -1
- package/dist/chunk-YBK6EBA5.mjs +0 -239
- package/dist/chunk-YBK6EBA5.mjs.map +0 -1
- package/dist/chunk-YFEPTSI2.js +0 -265
- package/dist/chunk-YFEPTSI2.js.map +0 -1
- package/dist/chunk-YYLD3AJ7.js +0 -61
- package/dist/chunk-YYLD3AJ7.js.map +0 -1
- package/dist/chunk-ZEDJUNC6.mjs +0 -115
- package/dist/chunk-ZEDJUNC6.mjs.map +0 -1
- package/dist/constants.d.mts +0 -91
- package/dist/constants.d.ts +0 -91
- package/dist/constants.js +0 -196
- package/dist/constants.js.map +0 -1
- package/dist/constants.mjs +0 -3
- package/dist/constants.mjs.map +0 -1
- package/dist/deployments.generated.d.mts +0 -267
- package/dist/deployments.generated.d.ts +0 -267
- package/dist/deployments.generated.js +0 -12
- package/dist/deployments.generated.js.map +0 -1
- package/dist/deployments.generated.mjs +0 -3
- package/dist/deployments.generated.mjs.map +0 -1
- package/dist/entities/DopplerFactory.d.mts +0 -266
- package/dist/entities/DopplerFactory.d.ts +0 -266
- package/dist/entities/DopplerFactory.js +0 -33
- package/dist/entities/DopplerFactory.js.map +0 -1
- package/dist/entities/DopplerFactory.mjs +0 -24
- package/dist/entities/DopplerFactory.mjs.map +0 -1
- package/dist/entities/auction/DynamicAuction.d.mts +0 -72
- package/dist/entities/auction/DynamicAuction.d.ts +0 -72
- package/dist/entities/auction/DynamicAuction.js +0 -21
- package/dist/entities/auction/DynamicAuction.js.map +0 -1
- package/dist/entities/auction/DynamicAuction.mjs +0 -12
- package/dist/entities/auction/DynamicAuction.mjs.map +0 -1
- package/dist/entities/auction/MulticurvePool.d.mts +0 -74
- package/dist/entities/auction/MulticurvePool.d.ts +0 -74
- package/dist/entities/auction/MulticurvePool.js +0 -24
- package/dist/entities/auction/MulticurvePool.js.map +0 -1
- package/dist/entities/auction/MulticurvePool.mjs +0 -15
- package/dist/entities/auction/MulticurvePool.mjs.map +0 -1
- package/dist/entities/auction/StaticAuction.d.mts +0 -44
- package/dist/entities/auction/StaticAuction.d.ts +0 -44
- package/dist/entities/auction/StaticAuction.js +0 -21
- package/dist/entities/auction/StaticAuction.js.map +0 -1
- package/dist/entities/auction/StaticAuction.mjs +0 -12
- package/dist/entities/auction/StaticAuction.mjs.map +0 -1
- package/dist/entities/auction/index.d.mts +0 -7
- package/dist/entities/auction/index.d.ts +0 -7
- package/dist/entities/auction/index.js +0 -35
- package/dist/entities/auction/index.js.map +0 -1
- package/dist/entities/auction/index.mjs +0 -18
- package/dist/entities/auction/index.mjs.map +0 -1
- package/dist/entities/quoter/Quoter.d.mts +0 -150
- package/dist/entities/quoter/Quoter.d.ts +0 -150
- package/dist/entities/quoter/Quoter.js +0 -21
- package/dist/entities/quoter/Quoter.js.map +0 -1
- package/dist/entities/quoter/Quoter.mjs +0 -12
- package/dist/entities/quoter/Quoter.mjs.map +0 -1
- package/dist/entities/quoter/index.d.mts +0 -5
- package/dist/entities/quoter/index.d.ts +0 -5
- package/dist/entities/quoter/index.js +0 -22
- package/dist/entities/quoter/index.js.map +0 -1
- package/dist/entities/quoter/index.mjs +0 -13
- package/dist/entities/quoter/index.mjs.map +0 -1
- package/dist/entities/token/derc20/Derc20.d.mts +0 -102
- package/dist/entities/token/derc20/Derc20.d.ts +0 -102
- package/dist/entities/token/derc20/Derc20.js +0 -19
- package/dist/entities/token/derc20/Derc20.js.map +0 -1
- package/dist/entities/token/derc20/Derc20.mjs +0 -10
- package/dist/entities/token/derc20/Derc20.mjs.map +0 -1
- package/dist/entities/token/derc20/index.d.mts +0 -5
- package/dist/entities/token/derc20/index.d.ts +0 -5
- package/dist/entities/token/derc20/index.js +0 -20
- package/dist/entities/token/derc20/index.js.map +0 -1
- package/dist/entities/token/derc20/index.mjs +0 -11
- package/dist/entities/token/derc20/index.mjs.map +0 -1
- package/dist/entities/token/eth/Eth.d.mts +0 -54
- package/dist/entities/token/eth/Eth.d.ts +0 -54
- package/dist/entities/token/eth/Eth.js +0 -12
- package/dist/entities/token/eth/Eth.js.map +0 -1
- package/dist/entities/token/eth/Eth.mjs +0 -3
- package/dist/entities/token/eth/Eth.mjs.map +0 -1
- package/dist/entities/token/eth/index.d.mts +0 -5
- package/dist/entities/token/eth/index.d.ts +0 -5
- package/dist/entities/token/eth/index.js +0 -13
- package/dist/entities/token/eth/index.js.map +0 -1
- package/dist/entities/token/eth/index.mjs +0 -4
- package/dist/entities/token/eth/index.mjs.map +0 -1
- package/dist/entities/token/index.d.mts +0 -6
- package/dist/entities/token/index.d.ts +0 -6
- package/dist/entities/token/index.js +0 -27
- package/dist/entities/token/index.js.map +0 -1
- package/dist/entities/token/index.mjs +0 -14
- package/dist/entities/token/index.mjs.map +0 -1
- package/dist/index.d.mts +0 -37
- package/dist/index.d.ts +0 -37
- package/dist/index.js +0 -565
- package/dist/index.js.map +0 -1
- package/dist/index.mjs +0 -47
- package/dist/index.mjs.map +0 -1
- package/dist/types.d.mts +0 -607
- package/dist/types.d.ts +0 -607
- package/dist/types.js +0 -30
- package/dist/types.js.map +0 -1
- package/dist/types.mjs +0 -5
- package/dist/types.mjs.map +0 -1
- package/dist/utils/airlock.d.mts +0 -11
- package/dist/utils/airlock.d.ts +0 -11
- package/dist/utils/airlock.js +0 -26
- package/dist/utils/airlock.js.map +0 -1
- package/dist/utils/airlock.mjs +0 -5
- package/dist/utils/airlock.mjs.map +0 -1
- package/dist/utils/balanceDelta.d.mts +0 -10
- package/dist/utils/balanceDelta.d.ts +0 -10
- package/dist/utils/balanceDelta.js +0 -12
- package/dist/utils/balanceDelta.js.map +0 -1
- package/dist/utils/balanceDelta.mjs +0 -3
- package/dist/utils/balanceDelta.mjs.map +0 -1
- package/dist/utils/computeOptimalGamma.d.mts +0 -7
- package/dist/utils/computeOptimalGamma.d.ts +0 -7
- package/dist/utils/computeOptimalGamma.js +0 -12
- package/dist/utils/computeOptimalGamma.js.map +0 -1
- package/dist/utils/computeOptimalGamma.mjs +0 -3
- package/dist/utils/computeOptimalGamma.mjs.map +0 -1
- package/dist/utils/dopplerHookMigrator.d.mts +0 -11
- package/dist/utils/dopplerHookMigrator.d.ts +0 -11
- package/dist/utils/dopplerHookMigrator.js +0 -12
- package/dist/utils/dopplerHookMigrator.js.map +0 -1
- package/dist/utils/dopplerHookMigrator.mjs +0 -3
- package/dist/utils/dopplerHookMigrator.mjs.map +0 -1
- package/dist/utils/index.d.mts +0 -14
- package/dist/utils/index.d.ts +0 -14
- package/dist/utils/index.js +0 -195
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/index.mjs +0 -22
- package/dist/utils/index.mjs.map +0 -1
- package/dist/utils/isToken0Expected.d.mts +0 -13
- package/dist/utils/isToken0Expected.d.ts +0 -13
- package/dist/utils/isToken0Expected.js +0 -12
- package/dist/utils/isToken0Expected.js.map +0 -1
- package/dist/utils/isToken0Expected.mjs +0 -3
- package/dist/utils/isToken0Expected.mjs.map +0 -1
- package/dist/utils/marketCapHelpers.d.mts +0 -259
- package/dist/utils/marketCapHelpers.d.ts +0 -259
- package/dist/utils/marketCapHelpers.js +0 -58
- package/dist/utils/marketCapHelpers.js.map +0 -1
- package/dist/utils/marketCapHelpers.mjs +0 -5
- package/dist/utils/marketCapHelpers.mjs.map +0 -1
- package/dist/utils/poolKey.d.mts +0 -17
- package/dist/utils/poolKey.d.ts +0 -17
- package/dist/utils/poolKey.js +0 -12
- package/dist/utils/poolKey.js.map +0 -1
- package/dist/utils/poolKey.mjs +0 -3
- package/dist/utils/poolKey.mjs.map +0 -1
- package/dist/utils/priceHelpers.d.mts +0 -86
- package/dist/utils/priceHelpers.d.ts +0 -86
- package/dist/utils/priceHelpers.js +0 -41
- package/dist/utils/priceHelpers.js.map +0 -1
- package/dist/utils/priceHelpers.mjs +0 -4
- package/dist/utils/priceHelpers.mjs.map +0 -1
- package/dist/utils/tickMath.d.mts +0 -72
- package/dist/utils/tickMath.d.ts +0 -72
- package/dist/utils/tickMath.js +0 -60
- package/dist/utils/tickMath.js.map +0 -1
- package/dist/utils/tickMath.mjs +0 -3
- package/dist/utils/tickMath.mjs.map +0 -1
- package/dist/utils/tokenAddressMiner.d.mts +0 -37
- package/dist/utils/tokenAddressMiner.d.ts +0 -37
- package/dist/utils/tokenAddressMiner.js +0 -19
- package/dist/utils/tokenAddressMiner.js.map +0 -1
- package/dist/utils/tokenAddressMiner.mjs +0 -10
- package/dist/utils/tokenAddressMiner.mjs.map +0 -1
package/dist/chunk-HL7ZAAD4.mjs
DELETED
|
@@ -1,375 +0,0 @@
|
|
|
1
|
-
import { computeTicks } from './chunk-ZEDJUNC6.mjs';
|
|
2
|
-
import { computeOptimalGamma } from './chunk-H3B54PFV.mjs';
|
|
3
|
-
import { validateMarketCapParameters, marketCapToTicksForDynamicAuction } from './chunk-GSBQIVME.mjs';
|
|
4
|
-
import { DEFAULT_V4_YEARLY_MINT_RATE, ZERO_ADDRESS, DOPPLER_MAX_TICK_SPACING, DEFAULT_AUCTION_DURATION, DEFAULT_EPOCH_LENGTH, V4_MAX_FEE, FEE_TIERS } from './chunk-IWJOPXYN.mjs';
|
|
5
|
-
import { isNoOpEnabledChain, isLaunchpadEnabledChain } from './chunk-TLEVIIUE.mjs';
|
|
6
|
-
|
|
7
|
-
// src/builders/DynamicAuctionBuilder.ts
|
|
8
|
-
var DynamicAuctionBuilder = class _DynamicAuctionBuilder {
|
|
9
|
-
constructor(chainId) {
|
|
10
|
-
this.chainId = chainId;
|
|
11
|
-
}
|
|
12
|
-
static forChain(chainId) {
|
|
13
|
-
return new _DynamicAuctionBuilder(chainId);
|
|
14
|
-
}
|
|
15
|
-
tokenConfig(params) {
|
|
16
|
-
if (params && "type" in params && params.type === "doppler404") {
|
|
17
|
-
this.token = {
|
|
18
|
-
type: "doppler404",
|
|
19
|
-
name: params.name,
|
|
20
|
-
symbol: params.symbol,
|
|
21
|
-
baseURI: params.baseURI,
|
|
22
|
-
unit: params.unit
|
|
23
|
-
};
|
|
24
|
-
} else {
|
|
25
|
-
this.token = {
|
|
26
|
-
type: "standard",
|
|
27
|
-
name: params.name,
|
|
28
|
-
symbol: params.symbol,
|
|
29
|
-
tokenURI: params.tokenURI,
|
|
30
|
-
yearlyMintRate: params.yearlyMintRate ?? DEFAULT_V4_YEARLY_MINT_RATE
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
return this;
|
|
34
|
-
}
|
|
35
|
-
saleConfig(params) {
|
|
36
|
-
this.sale = {
|
|
37
|
-
initialSupply: params.initialSupply,
|
|
38
|
-
numTokensToSell: params.numTokensToSell,
|
|
39
|
-
numeraire: params.numeraire ?? ZERO_ADDRESS
|
|
40
|
-
};
|
|
41
|
-
return this;
|
|
42
|
-
}
|
|
43
|
-
poolConfig(params) {
|
|
44
|
-
if (this.marketCapConfig) {
|
|
45
|
-
throw new Error(
|
|
46
|
-
"Cannot use poolConfig() after withMarketCapRange(). Use withMarketCapRange() for market cap-based configuration, or poolConfig() + auctionByTicks() for manual tick configuration."
|
|
47
|
-
);
|
|
48
|
-
}
|
|
49
|
-
if (params.tickSpacing > DOPPLER_MAX_TICK_SPACING) {
|
|
50
|
-
throw new Error(
|
|
51
|
-
`Dynamic auctions require tickSpacing <= ${DOPPLER_MAX_TICK_SPACING} (Doppler.sol MAX_TICK_SPACING). Got tickSpacing=${params.tickSpacing}. Use a smaller tickSpacing, or use withMarketCapRange() which handles this automatically.`
|
|
52
|
-
);
|
|
53
|
-
}
|
|
54
|
-
this.pool = { fee: params.fee, tickSpacing: params.tickSpacing };
|
|
55
|
-
return this;
|
|
56
|
-
}
|
|
57
|
-
// Provide ticks directly
|
|
58
|
-
auctionByTicks(params) {
|
|
59
|
-
const duration = params.duration ?? DEFAULT_AUCTION_DURATION;
|
|
60
|
-
const epochLength = params.epochLength ?? DEFAULT_EPOCH_LENGTH;
|
|
61
|
-
const gamma = params.gamma ?? (this.pool ? computeOptimalGamma(
|
|
62
|
-
params.startTick,
|
|
63
|
-
params.endTick,
|
|
64
|
-
duration,
|
|
65
|
-
epochLength,
|
|
66
|
-
this.pool.tickSpacing
|
|
67
|
-
) : void 0);
|
|
68
|
-
this.auction = {
|
|
69
|
-
duration,
|
|
70
|
-
epochLength,
|
|
71
|
-
startTick: params.startTick,
|
|
72
|
-
endTick: params.endTick,
|
|
73
|
-
gamma,
|
|
74
|
-
minProceeds: params.minProceeds,
|
|
75
|
-
maxProceeds: params.maxProceeds,
|
|
76
|
-
numPdSlugs: params.numPdSlugs
|
|
77
|
-
};
|
|
78
|
-
return this;
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* @deprecated Use withMarketCapRange() instead for more intuitive market cap configuration
|
|
82
|
-
*/
|
|
83
|
-
auctionByPriceRange(params) {
|
|
84
|
-
const tickSpacing = params.tickSpacing ?? this.pool?.tickSpacing;
|
|
85
|
-
if (!tickSpacing) {
|
|
86
|
-
throw new Error(
|
|
87
|
-
"tickSpacing is required (set poolConfig first or pass tickSpacing)"
|
|
88
|
-
);
|
|
89
|
-
}
|
|
90
|
-
const ticks = computeTicks(params.priceRange, tickSpacing);
|
|
91
|
-
return this.auctionByTicks({
|
|
92
|
-
startTick: ticks.startTick,
|
|
93
|
-
endTick: ticks.endTick,
|
|
94
|
-
minProceeds: params.minProceeds,
|
|
95
|
-
maxProceeds: params.maxProceeds,
|
|
96
|
-
duration: params.duration,
|
|
97
|
-
epochLength: params.epochLength,
|
|
98
|
-
gamma: params.gamma,
|
|
99
|
-
numPdSlugs: params.numPdSlugs
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* Configure auction using target market cap range.
|
|
104
|
-
* Converts market cap values (in USD) to Uniswap ticks.
|
|
105
|
-
*
|
|
106
|
-
* V4 pools support custom fees (0-100,000). Standard fee tiers auto-derive
|
|
107
|
-
* tickSpacing; custom fees require explicit tickSpacing (max: 30).
|
|
108
|
-
*
|
|
109
|
-
* @param params - Market cap configuration with auction parameters
|
|
110
|
-
* @returns Builder instance for chaining
|
|
111
|
-
*
|
|
112
|
-
* @example Standard fee tier (auto tickSpacing)
|
|
113
|
-
* ```ts
|
|
114
|
-
* builder
|
|
115
|
-
* .saleConfig({ initialSupply, numTokensToSell, numeraire: WETH })
|
|
116
|
-
* .withMarketCapRange({
|
|
117
|
-
* marketCap: { start: 500_000, min: 50_000 },
|
|
118
|
-
* numerairePrice: 3000,
|
|
119
|
-
* minProceeds: parseEther('10'),
|
|
120
|
-
* maxProceeds: parseEther('1000'),
|
|
121
|
-
* fee: 10000, // Standard tier, tickSpacing auto = 30
|
|
122
|
-
* })
|
|
123
|
-
* ```
|
|
124
|
-
*
|
|
125
|
-
* @example Custom fee (requires explicit tickSpacing)
|
|
126
|
-
* ```ts
|
|
127
|
-
* builder
|
|
128
|
-
* .saleConfig({ initialSupply, numTokensToSell, numeraire: WETH })
|
|
129
|
-
* .withMarketCapRange({
|
|
130
|
-
* marketCap: { start: 500_000, min: 50_000 },
|
|
131
|
-
* numerairePrice: 3000,
|
|
132
|
-
* minProceeds: parseEther('10'),
|
|
133
|
-
* maxProceeds: parseEther('1000'),
|
|
134
|
-
* fee: 2500, // Custom 0.25% fee
|
|
135
|
-
* tickSpacing: 10, // Required for custom fees
|
|
136
|
-
* })
|
|
137
|
-
* ```
|
|
138
|
-
*/
|
|
139
|
-
withMarketCapRange(params) {
|
|
140
|
-
if (this.pool) {
|
|
141
|
-
throw new Error(
|
|
142
|
-
"Cannot use withMarketCapRange() after poolConfig(). Use withMarketCapRange() for market cap-based configuration, or poolConfig() + auctionByTicks() for manual tick configuration."
|
|
143
|
-
);
|
|
144
|
-
}
|
|
145
|
-
if (params.numerairePrice <= 0) {
|
|
146
|
-
throw new Error("numerairePrice must be greater than 0");
|
|
147
|
-
}
|
|
148
|
-
if (params.marketCap.start <= 0 || params.marketCap.min <= 0) {
|
|
149
|
-
throw new Error("marketCap values must be greater than 0");
|
|
150
|
-
}
|
|
151
|
-
if (params.marketCap.min >= params.marketCap.start) {
|
|
152
|
-
throw new Error("marketCap.min must be less than marketCap.start");
|
|
153
|
-
}
|
|
154
|
-
if (params.fee !== void 0 && params.fee > V4_MAX_FEE) {
|
|
155
|
-
throw new Error(
|
|
156
|
-
`Fee ${params.fee} exceeds maximum allowed for V4 pools (${V4_MAX_FEE} = 10%). Use a fee between 0 and ${V4_MAX_FEE}.`
|
|
157
|
-
);
|
|
158
|
-
}
|
|
159
|
-
if (params.tickSpacing !== void 0 && params.tickSpacing > DOPPLER_MAX_TICK_SPACING) {
|
|
160
|
-
throw new Error(
|
|
161
|
-
`tickSpacing ${params.tickSpacing} exceeds maximum allowed for Doppler pools (${DOPPLER_MAX_TICK_SPACING}). Use tickSpacing <= ${DOPPLER_MAX_TICK_SPACING}.`
|
|
162
|
-
);
|
|
163
|
-
}
|
|
164
|
-
this.marketCapConfig = {
|
|
165
|
-
marketCap: params.marketCap,
|
|
166
|
-
numerairePrice: params.numerairePrice,
|
|
167
|
-
tokenSupply: params.tokenSupply,
|
|
168
|
-
tokenDecimals: params.tokenDecimals,
|
|
169
|
-
numeraireDecimals: params.numeraireDecimals,
|
|
170
|
-
fee: params.fee,
|
|
171
|
-
tickSpacing: params.tickSpacing,
|
|
172
|
-
minProceeds: params.minProceeds,
|
|
173
|
-
maxProceeds: params.maxProceeds,
|
|
174
|
-
duration: params.duration,
|
|
175
|
-
epochLength: params.epochLength,
|
|
176
|
-
gamma: params.gamma,
|
|
177
|
-
numPdSlugs: params.numPdSlugs
|
|
178
|
-
};
|
|
179
|
-
return this;
|
|
180
|
-
}
|
|
181
|
-
withVesting(params) {
|
|
182
|
-
if (!params) {
|
|
183
|
-
this.vesting = void 0;
|
|
184
|
-
return this;
|
|
185
|
-
}
|
|
186
|
-
this.vesting = {
|
|
187
|
-
duration: Number(params.duration ?? 0n),
|
|
188
|
-
cliffDuration: params.cliffDuration ?? 0,
|
|
189
|
-
recipients: params.recipients,
|
|
190
|
-
amounts: params.amounts
|
|
191
|
-
};
|
|
192
|
-
return this;
|
|
193
|
-
}
|
|
194
|
-
withGovernance(params) {
|
|
195
|
-
this.governance = params;
|
|
196
|
-
return this;
|
|
197
|
-
}
|
|
198
|
-
withMigration(migration) {
|
|
199
|
-
this.migration = migration;
|
|
200
|
-
return this;
|
|
201
|
-
}
|
|
202
|
-
withUserAddress(address) {
|
|
203
|
-
this.userAddress = address;
|
|
204
|
-
return this;
|
|
205
|
-
}
|
|
206
|
-
withIntegrator(address) {
|
|
207
|
-
this.integrator = address ?? ZERO_ADDRESS;
|
|
208
|
-
return this;
|
|
209
|
-
}
|
|
210
|
-
withGasLimit(gas) {
|
|
211
|
-
this.gasLimit = gas;
|
|
212
|
-
return this;
|
|
213
|
-
}
|
|
214
|
-
withTime(params) {
|
|
215
|
-
if (!params) {
|
|
216
|
-
this.startTimeOffset = void 0;
|
|
217
|
-
this.blockTimestamp = void 0;
|
|
218
|
-
return this;
|
|
219
|
-
}
|
|
220
|
-
this.startTimeOffset = params.startTimeOffset;
|
|
221
|
-
this.blockTimestamp = params.blockTimestamp;
|
|
222
|
-
return this;
|
|
223
|
-
}
|
|
224
|
-
// Address override helpers
|
|
225
|
-
overrideModule(key, address) {
|
|
226
|
-
this.moduleAddresses = {
|
|
227
|
-
...this.moduleAddresses,
|
|
228
|
-
[key]: address
|
|
229
|
-
};
|
|
230
|
-
return this;
|
|
231
|
-
}
|
|
232
|
-
withTokenFactory(address) {
|
|
233
|
-
return this.overrideModule("tokenFactory", address);
|
|
234
|
-
}
|
|
235
|
-
withAirlock(address) {
|
|
236
|
-
return this.overrideModule("airlock", address);
|
|
237
|
-
}
|
|
238
|
-
withV4Initializer(address) {
|
|
239
|
-
return this.overrideModule("v4Initializer", address);
|
|
240
|
-
}
|
|
241
|
-
withPoolManager(address) {
|
|
242
|
-
return this.overrideModule("poolManager", address);
|
|
243
|
-
}
|
|
244
|
-
withDopplerDeployer(address) {
|
|
245
|
-
return this.overrideModule("dopplerDeployer", address);
|
|
246
|
-
}
|
|
247
|
-
withGovernanceFactory(address) {
|
|
248
|
-
return this.overrideModule("governanceFactory", address);
|
|
249
|
-
}
|
|
250
|
-
withV2Migrator(address) {
|
|
251
|
-
return this.overrideModule("v2Migrator", address);
|
|
252
|
-
}
|
|
253
|
-
withV4Migrator(address) {
|
|
254
|
-
return this.overrideModule("v4Migrator", address);
|
|
255
|
-
}
|
|
256
|
-
withDopplerHookMigrator(address) {
|
|
257
|
-
return this.overrideModule("dopplerHookMigrator", address);
|
|
258
|
-
}
|
|
259
|
-
withRehypeDopplerHookMigrator(address) {
|
|
260
|
-
return this.overrideModule("rehypeDopplerHookMigrator", address);
|
|
261
|
-
}
|
|
262
|
-
withNoOpMigrator(address) {
|
|
263
|
-
return this.overrideModule("noOpMigrator", address);
|
|
264
|
-
}
|
|
265
|
-
build() {
|
|
266
|
-
if (!this.token) throw new Error("tokenConfig is required");
|
|
267
|
-
if (!this.sale) throw new Error("saleConfig is required");
|
|
268
|
-
if (!this.migration) throw new Error("migration configuration is required");
|
|
269
|
-
if (!this.userAddress) throw new Error("userAddress is required");
|
|
270
|
-
if (this.marketCapConfig && !this.pool) {
|
|
271
|
-
const config = this.marketCapConfig;
|
|
272
|
-
const tokenSupply = config.tokenSupply ?? this.sale.initialSupply;
|
|
273
|
-
if (!tokenSupply) {
|
|
274
|
-
throw new Error(
|
|
275
|
-
"tokenSupply must be provided (either via saleConfig() or withMarketCapRange() params)"
|
|
276
|
-
);
|
|
277
|
-
}
|
|
278
|
-
const fee = config.fee ?? FEE_TIERS.HIGH;
|
|
279
|
-
const tickSpacing = config.tickSpacing ?? DOPPLER_MAX_TICK_SPACING;
|
|
280
|
-
this.pool = { fee, tickSpacing };
|
|
281
|
-
const startValidation = validateMarketCapParameters(
|
|
282
|
-
config.marketCap.start,
|
|
283
|
-
tokenSupply,
|
|
284
|
-
config.tokenDecimals
|
|
285
|
-
);
|
|
286
|
-
const minValidation = validateMarketCapParameters(
|
|
287
|
-
config.marketCap.min,
|
|
288
|
-
tokenSupply,
|
|
289
|
-
config.tokenDecimals
|
|
290
|
-
);
|
|
291
|
-
const allWarnings = [
|
|
292
|
-
...startValidation.warnings,
|
|
293
|
-
...minValidation.warnings
|
|
294
|
-
];
|
|
295
|
-
if (allWarnings.length > 0) {
|
|
296
|
-
console.warn("Market cap validation warnings:");
|
|
297
|
-
allWarnings.forEach((w) => console.warn(` - ${w}`));
|
|
298
|
-
}
|
|
299
|
-
const { startTick, endTick } = marketCapToTicksForDynamicAuction({
|
|
300
|
-
marketCapRange: {
|
|
301
|
-
start: config.marketCap.min,
|
|
302
|
-
end: config.marketCap.start
|
|
303
|
-
},
|
|
304
|
-
tokenSupply,
|
|
305
|
-
numerairePriceUSD: config.numerairePrice,
|
|
306
|
-
numeraire: this.sale.numeraire,
|
|
307
|
-
tickSpacing,
|
|
308
|
-
tokenDecimals: config.tokenDecimals ?? 18,
|
|
309
|
-
numeraireDecimals: config.numeraireDecimals ?? 18
|
|
310
|
-
});
|
|
311
|
-
const duration = config.duration ?? DEFAULT_AUCTION_DURATION;
|
|
312
|
-
const epochLength = config.epochLength ?? DEFAULT_EPOCH_LENGTH;
|
|
313
|
-
const gamma2 = config.gamma ?? computeOptimalGamma(
|
|
314
|
-
startTick,
|
|
315
|
-
endTick,
|
|
316
|
-
duration,
|
|
317
|
-
epochLength,
|
|
318
|
-
tickSpacing
|
|
319
|
-
);
|
|
320
|
-
this.auction = {
|
|
321
|
-
duration,
|
|
322
|
-
epochLength,
|
|
323
|
-
startTick,
|
|
324
|
-
endTick,
|
|
325
|
-
gamma: gamma2,
|
|
326
|
-
minProceeds: config.minProceeds,
|
|
327
|
-
maxProceeds: config.maxProceeds,
|
|
328
|
-
numPdSlugs: config.numPdSlugs
|
|
329
|
-
};
|
|
330
|
-
}
|
|
331
|
-
if (!this.pool) throw new Error("poolConfig is required");
|
|
332
|
-
if (!this.auction) throw new Error("auction configuration is required");
|
|
333
|
-
if (this.migration.type === "noOp") {
|
|
334
|
-
throw new Error(
|
|
335
|
-
"noOp migration is not supported for dynamic auctions. Use uniswapV2, uniswapV4, or dopplerHook migration instead."
|
|
336
|
-
);
|
|
337
|
-
}
|
|
338
|
-
const governance = this.governance ?? (isNoOpEnabledChain(this.chainId) ? { type: "noOp" } : { type: "default" });
|
|
339
|
-
if (governance.type === "launchpad" && !isLaunchpadEnabledChain(this.chainId)) {
|
|
340
|
-
throw new Error(
|
|
341
|
-
`Launchpad governance is not supported on chain ${this.chainId}. Use a supported chain or a different governance type.`
|
|
342
|
-
);
|
|
343
|
-
}
|
|
344
|
-
let { gamma } = this.auction;
|
|
345
|
-
if (gamma === void 0) {
|
|
346
|
-
gamma = computeOptimalGamma(
|
|
347
|
-
this.auction.startTick,
|
|
348
|
-
this.auction.endTick,
|
|
349
|
-
this.auction.duration,
|
|
350
|
-
this.auction.epochLength,
|
|
351
|
-
this.pool.tickSpacing
|
|
352
|
-
);
|
|
353
|
-
}
|
|
354
|
-
const auction = { ...this.auction, gamma };
|
|
355
|
-
return {
|
|
356
|
-
token: this.token,
|
|
357
|
-
sale: this.sale,
|
|
358
|
-
auction,
|
|
359
|
-
pool: this.pool,
|
|
360
|
-
vesting: this.vesting,
|
|
361
|
-
governance,
|
|
362
|
-
migration: this.migration,
|
|
363
|
-
integrator: this.integrator ?? ZERO_ADDRESS,
|
|
364
|
-
userAddress: this.userAddress,
|
|
365
|
-
startTimeOffset: this.startTimeOffset,
|
|
366
|
-
blockTimestamp: this.blockTimestamp,
|
|
367
|
-
modules: this.moduleAddresses,
|
|
368
|
-
gas: this.gasLimit
|
|
369
|
-
};
|
|
370
|
-
}
|
|
371
|
-
};
|
|
372
|
-
|
|
373
|
-
export { DynamicAuctionBuilder };
|
|
374
|
-
//# sourceMappingURL=chunk-HL7ZAAD4.mjs.map
|
|
375
|
-
//# sourceMappingURL=chunk-HL7ZAAD4.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/builders/DynamicAuctionBuilder.ts"],"names":["gamma"],"mappings":"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","file":"chunk-HL7ZAAD4.mjs","sourcesContent":["import type { Address } from 'viem';\nimport {\n DEFAULT_AUCTION_DURATION,\n DEFAULT_EPOCH_LENGTH,\n DEFAULT_V4_YEARLY_MINT_RATE,\n DOPPLER_MAX_TICK_SPACING,\n FEE_TIERS,\n V4_MAX_FEE,\n ZERO_ADDRESS,\n} from '../constants';\nimport {\n computeOptimalGamma,\n marketCapToTicksForDynamicAuction,\n validateMarketCapParameters,\n} from '../utils';\nimport {\n isNoOpEnabledChain,\n isLaunchpadEnabledChain,\n type CreateDynamicAuctionParams,\n type GovernanceOption,\n type MigrationConfig,\n type PriceRange,\n type VestingConfig,\n type TokenConfig,\n type DynamicAuctionMarketCapConfig,\n type ModuleAddressOverrides,\n} from '../types';\nimport { type SupportedChainId } from '../addresses';\nimport { computeTicks, type BaseAuctionBuilder } from './shared';\n\nexport class DynamicAuctionBuilder<\n C extends SupportedChainId,\n> implements BaseAuctionBuilder<C> {\n private token?: TokenConfig;\n private sale?: CreateDynamicAuctionParams<C>['sale'];\n private auction?: CreateDynamicAuctionParams<C>['auction'];\n private pool?: CreateDynamicAuctionParams<C>['pool'];\n private vesting?: VestingConfig;\n private governance?: GovernanceOption<C>;\n private migration?: MigrationConfig;\n private integrator?: Address;\n private userAddress?: Address;\n private startTimeOffset?: number;\n private blockTimestamp?: number;\n private moduleAddresses?: ModuleAddressOverrides;\n private gasLimit?: bigint;\n // Deferred market cap config - converted to pool and auction in build()\n private marketCapConfig?: {\n marketCap: { start: number; min: number };\n numerairePrice: number;\n tokenSupply?: bigint;\n tokenDecimals?: number;\n numeraireDecimals?: number;\n fee?: number;\n tickSpacing?: number;\n minProceeds: bigint;\n maxProceeds: bigint;\n duration?: number;\n epochLength?: number;\n gamma?: number;\n numPdSlugs?: number;\n };\n public chainId: C;\n\n constructor(chainId: C) {\n this.chainId = chainId;\n }\n\n static forChain<C extends SupportedChainId>(\n chainId: C,\n ): DynamicAuctionBuilder<C> {\n return new DynamicAuctionBuilder(chainId);\n }\n\n tokenConfig(\n params:\n | {\n type?: 'standard';\n name: string;\n symbol: string;\n tokenURI: string;\n yearlyMintRate?: bigint;\n }\n | {\n type: 'doppler404';\n name: string;\n symbol: string;\n baseURI: string;\n unit?: bigint;\n },\n ): this {\n if (params && 'type' in params && params.type === 'doppler404') {\n this.token = {\n type: 'doppler404',\n name: params.name,\n symbol: params.symbol,\n baseURI: params.baseURI,\n unit: params.unit,\n };\n } else {\n this.token = {\n type: 'standard',\n name: params.name,\n symbol: params.symbol,\n tokenURI: params.tokenURI,\n yearlyMintRate: params.yearlyMintRate ?? DEFAULT_V4_YEARLY_MINT_RATE,\n };\n }\n return this;\n }\n\n saleConfig(params: {\n initialSupply: bigint;\n numTokensToSell: bigint;\n numeraire?: Address;\n }): this {\n this.sale = {\n initialSupply: params.initialSupply,\n numTokensToSell: params.numTokensToSell,\n numeraire: params.numeraire ?? ZERO_ADDRESS,\n };\n return this;\n }\n\n poolConfig(params: { fee: number; tickSpacing: number }): this {\n // Mutual exclusion: cannot use poolConfig() after withMarketCapRange()\n if (this.marketCapConfig) {\n throw new Error(\n 'Cannot use poolConfig() after withMarketCapRange(). ' +\n 'Use withMarketCapRange() for market cap-based configuration, ' +\n 'or poolConfig() + auctionByTicks() for manual tick configuration.',\n );\n }\n\n // Validate tick spacing against Doppler contract constraint\n if (params.tickSpacing > DOPPLER_MAX_TICK_SPACING) {\n throw new Error(\n `Dynamic auctions require tickSpacing <= ${DOPPLER_MAX_TICK_SPACING} (Doppler.sol MAX_TICK_SPACING). ` +\n `Got tickSpacing=${params.tickSpacing}. ` +\n `Use a smaller tickSpacing, or use withMarketCapRange() which handles this automatically.`,\n );\n }\n\n this.pool = { fee: params.fee, tickSpacing: params.tickSpacing };\n return this;\n }\n\n // Provide ticks directly\n auctionByTicks(params: {\n startTick: number;\n endTick: number;\n minProceeds: bigint;\n maxProceeds: bigint;\n duration?: number;\n epochLength?: number;\n gamma?: number;\n numPdSlugs?: number;\n }): this {\n const duration = params.duration ?? DEFAULT_AUCTION_DURATION;\n const epochLength = params.epochLength ?? DEFAULT_EPOCH_LENGTH;\n const gamma =\n params.gamma ??\n (this.pool\n ? computeOptimalGamma(\n params.startTick,\n params.endTick,\n duration,\n epochLength,\n this.pool.tickSpacing,\n )\n : undefined);\n this.auction = {\n duration,\n epochLength,\n startTick: params.startTick,\n endTick: params.endTick,\n gamma,\n minProceeds: params.minProceeds,\n maxProceeds: params.maxProceeds,\n numPdSlugs: params.numPdSlugs,\n };\n return this;\n }\n\n /**\n * @deprecated Use withMarketCapRange() instead for more intuitive market cap configuration\n */\n auctionByPriceRange(params: {\n priceRange: PriceRange;\n minProceeds: bigint;\n maxProceeds: bigint;\n duration?: number;\n epochLength?: number;\n gamma?: number;\n tickSpacing?: number; // optional; will use pool.tickSpacing if not provided\n numPdSlugs?: number;\n }): this {\n const tickSpacing = params.tickSpacing ?? this.pool?.tickSpacing;\n if (!tickSpacing) {\n throw new Error(\n 'tickSpacing is required (set poolConfig first or pass tickSpacing)',\n );\n }\n const ticks = computeTicks(params.priceRange, tickSpacing);\n return this.auctionByTicks({\n startTick: ticks.startTick,\n endTick: ticks.endTick,\n minProceeds: params.minProceeds,\n maxProceeds: params.maxProceeds,\n duration: params.duration,\n epochLength: params.epochLength,\n gamma: params.gamma,\n numPdSlugs: params.numPdSlugs,\n });\n }\n\n /**\n * Configure auction using target market cap range.\n * Converts market cap values (in USD) to Uniswap ticks.\n *\n * V4 pools support custom fees (0-100,000). Standard fee tiers auto-derive\n * tickSpacing; custom fees require explicit tickSpacing (max: 30).\n *\n * @param params - Market cap configuration with auction parameters\n * @returns Builder instance for chaining\n *\n * @example Standard fee tier (auto tickSpacing)\n * ```ts\n * builder\n * .saleConfig({ initialSupply, numTokensToSell, numeraire: WETH })\n * .withMarketCapRange({\n * marketCap: { start: 500_000, min: 50_000 },\n * numerairePrice: 3000,\n * minProceeds: parseEther('10'),\n * maxProceeds: parseEther('1000'),\n * fee: 10000, // Standard tier, tickSpacing auto = 30\n * })\n * ```\n *\n * @example Custom fee (requires explicit tickSpacing)\n * ```ts\n * builder\n * .saleConfig({ initialSupply, numTokensToSell, numeraire: WETH })\n * .withMarketCapRange({\n * marketCap: { start: 500_000, min: 50_000 },\n * numerairePrice: 3000,\n * minProceeds: parseEther('10'),\n * maxProceeds: parseEther('1000'),\n * fee: 2500, // Custom 0.25% fee\n * tickSpacing: 10, // Required for custom fees\n * })\n * ```\n */\n withMarketCapRange(params: DynamicAuctionMarketCapConfig): this {\n // Mutual exclusion: cannot use withMarketCapRange() after poolConfig()\n if (this.pool) {\n throw new Error(\n 'Cannot use withMarketCapRange() after poolConfig(). ' +\n 'Use withMarketCapRange() for market cap-based configuration, ' +\n 'or poolConfig() + auctionByTicks() for manual tick configuration.',\n );\n }\n\n // Basic validation that doesn't require saleConfig\n if (params.numerairePrice <= 0) {\n throw new Error('numerairePrice must be greater than 0');\n }\n if (params.marketCap.start <= 0 || params.marketCap.min <= 0) {\n throw new Error('marketCap values must be greater than 0');\n }\n if (params.marketCap.min >= params.marketCap.start) {\n throw new Error('marketCap.min must be less than marketCap.start');\n }\n\n // Validate fee if provided\n if (params.fee !== undefined && params.fee > V4_MAX_FEE) {\n throw new Error(\n `Fee ${params.fee} exceeds maximum allowed for V4 pools (${V4_MAX_FEE} = 10%). ` +\n `Use a fee between 0 and ${V4_MAX_FEE}.`,\n );\n }\n\n // Validate tickSpacing if provided\n if (\n params.tickSpacing !== undefined &&\n params.tickSpacing > DOPPLER_MAX_TICK_SPACING\n ) {\n throw new Error(\n `tickSpacing ${params.tickSpacing} exceeds maximum allowed for Doppler pools (${DOPPLER_MAX_TICK_SPACING}). ` +\n `Use tickSpacing <= ${DOPPLER_MAX_TICK_SPACING}.`,\n );\n }\n\n // Store config for deferred conversion in build()\n this.marketCapConfig = {\n marketCap: params.marketCap,\n numerairePrice: params.numerairePrice,\n tokenSupply: params.tokenSupply,\n tokenDecimals: params.tokenDecimals,\n numeraireDecimals: params.numeraireDecimals,\n fee: params.fee,\n tickSpacing: params.tickSpacing,\n minProceeds: params.minProceeds,\n maxProceeds: params.maxProceeds,\n duration: params.duration,\n epochLength: params.epochLength,\n gamma: params.gamma,\n numPdSlugs: params.numPdSlugs,\n };\n\n return this;\n }\n\n withVesting(params?: {\n duration?: bigint;\n cliffDuration?: number;\n recipients?: Address[];\n amounts?: bigint[];\n }): this {\n if (!params) {\n this.vesting = undefined;\n return this;\n }\n this.vesting = {\n duration: Number(params.duration ?? 0n),\n cliffDuration: params.cliffDuration ?? 0,\n recipients: params.recipients,\n amounts: params.amounts,\n };\n return this;\n }\n\n withGovernance(params: GovernanceOption<C>): this {\n this.governance = params;\n return this;\n }\n\n withMigration(migration: MigrationConfig): this {\n this.migration = migration;\n return this;\n }\n\n withUserAddress(address: Address): this {\n this.userAddress = address;\n return this;\n }\n\n withIntegrator(address?: Address): this {\n this.integrator = address ?? ZERO_ADDRESS;\n return this;\n }\n\n withGasLimit(gas?: bigint): this {\n this.gasLimit = gas;\n return this;\n }\n\n withTime(params?: {\n startTimeOffset?: number;\n blockTimestamp?: number;\n }): this {\n if (!params) {\n this.startTimeOffset = undefined;\n this.blockTimestamp = undefined;\n return this;\n }\n this.startTimeOffset = params.startTimeOffset;\n this.blockTimestamp = params.blockTimestamp;\n return this;\n }\n\n // Address override helpers\n private overrideModule<K extends keyof ModuleAddressOverrides>(\n key: K,\n address: NonNullable<ModuleAddressOverrides[K]>,\n ): this {\n this.moduleAddresses = {\n ...this.moduleAddresses,\n [key]: address,\n } as ModuleAddressOverrides;\n return this;\n }\n\n withTokenFactory(address: Address): this {\n return this.overrideModule('tokenFactory', address);\n }\n\n withAirlock(address: Address): this {\n return this.overrideModule('airlock', address);\n }\n\n withV4Initializer(address: Address): this {\n return this.overrideModule('v4Initializer', address);\n }\n\n withPoolManager(address: Address): this {\n return this.overrideModule('poolManager', address);\n }\n\n withDopplerDeployer(address: Address): this {\n return this.overrideModule('dopplerDeployer', address);\n }\n\n withGovernanceFactory(address: Address): this {\n return this.overrideModule('governanceFactory', address);\n }\n\n withV2Migrator(address: Address): this {\n return this.overrideModule('v2Migrator', address);\n }\n\n withV4Migrator(address: Address): this {\n return this.overrideModule('v4Migrator', address);\n }\n\n withDopplerHookMigrator(address: Address): this {\n return this.overrideModule('dopplerHookMigrator', address);\n }\n\n withRehypeDopplerHookMigrator(address: Address): this {\n return this.overrideModule('rehypeDopplerHookMigrator', address);\n }\n\n withNoOpMigrator(address: Address): this {\n return this.overrideModule('noOpMigrator', address);\n }\n\n build(): CreateDynamicAuctionParams<C> {\n if (!this.token) throw new Error('tokenConfig is required');\n if (!this.sale) throw new Error('saleConfig is required');\n if (!this.migration) throw new Error('migration configuration is required');\n if (!this.userAddress) throw new Error('userAddress is required');\n\n // Convert deferred market cap config to pool and auction if set\n if (this.marketCapConfig && !this.pool) {\n const config = this.marketCapConfig;\n\n // Get token supply from config or saleConfig\n const tokenSupply = config.tokenSupply ?? this.sale.initialSupply;\n if (!tokenSupply) {\n throw new Error(\n 'tokenSupply must be provided (either via saleConfig() or withMarketCapRange() params)',\n );\n }\n\n // Derive fee and tickSpacing\n const fee = config.fee ?? FEE_TIERS.HIGH;\n const tickSpacing = config.tickSpacing ?? DOPPLER_MAX_TICK_SPACING;\n\n // Set pool config\n this.pool = { fee, tickSpacing };\n\n // Validate market cap parameters\n const startValidation = validateMarketCapParameters(\n config.marketCap.start,\n tokenSupply,\n config.tokenDecimals,\n );\n const minValidation = validateMarketCapParameters(\n config.marketCap.min,\n tokenSupply,\n config.tokenDecimals,\n );\n\n const allWarnings = [\n ...startValidation.warnings,\n ...minValidation.warnings,\n ];\n if (allWarnings.length > 0) {\n console.warn('Market cap validation warnings:');\n allWarnings.forEach((w) => console.warn(` - ${w}`));\n }\n\n // Convert market cap range to ticks for V4 Dynamic auction\n const { startTick, endTick } = marketCapToTicksForDynamicAuction({\n marketCapRange: {\n start: config.marketCap.min,\n end: config.marketCap.start,\n },\n tokenSupply,\n numerairePriceUSD: config.numerairePrice,\n numeraire: this.sale.numeraire,\n tickSpacing,\n tokenDecimals: config.tokenDecimals ?? 18,\n numeraireDecimals: config.numeraireDecimals ?? 18,\n });\n\n // Set auction config\n const duration = config.duration ?? DEFAULT_AUCTION_DURATION;\n const epochLength = config.epochLength ?? DEFAULT_EPOCH_LENGTH;\n const gamma =\n config.gamma ??\n computeOptimalGamma(\n startTick,\n endTick,\n duration,\n epochLength,\n tickSpacing,\n );\n\n this.auction = {\n duration,\n epochLength,\n startTick,\n endTick,\n gamma,\n minProceeds: config.minProceeds,\n maxProceeds: config.maxProceeds,\n numPdSlugs: config.numPdSlugs,\n };\n }\n\n if (!this.pool) throw new Error('poolConfig is required');\n if (!this.auction) throw new Error('auction configuration is required');\n\n // Validate noOp migration is not supported for dynamic auctions\n if (this.migration.type === 'noOp') {\n throw new Error(\n 'noOp migration is not supported for dynamic auctions. ' +\n 'Use uniswapV2, uniswapV4, or dopplerHook migration instead.',\n );\n }\n\n // Default governance: noOp on supported chains, default on others (e.g., Ink)\n const governance =\n this.governance ??\n (isNoOpEnabledChain(this.chainId)\n ? { type: 'noOp' as const }\n : { type: 'default' as const });\n\n if (\n governance.type === 'launchpad' &&\n !isLaunchpadEnabledChain(this.chainId)\n ) {\n throw new Error(\n `Launchpad governance is not supported on chain ${this.chainId}. Use a supported chain or a different governance type.`,\n );\n }\n\n // Ensure gamma is set and valid\n let { gamma } = this.auction;\n if (gamma === undefined) {\n gamma = computeOptimalGamma(\n this.auction.startTick,\n this.auction.endTick,\n this.auction.duration,\n this.auction.epochLength,\n this.pool.tickSpacing,\n );\n }\n\n const auction = { ...this.auction, gamma };\n\n return {\n token: this.token,\n sale: this.sale,\n auction,\n pool: this.pool,\n vesting: this.vesting,\n governance: governance as GovernanceOption<C>,\n migration: this.migration,\n integrator: this.integrator ?? ZERO_ADDRESS,\n userAddress: this.userAddress,\n startTimeOffset: this.startTimeOffset,\n blockTimestamp: this.blockTimestamp,\n modules: this.moduleAddresses,\n gas: this.gasLimit,\n };\n }\n}\n"]}
|
package/dist/chunk-IWJOPXYN.mjs
DELETED
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
import { parseEther } from 'viem';
|
|
2
|
-
|
|
3
|
-
// src/constants.ts
|
|
4
|
-
var WAD = 10n ** 18n;
|
|
5
|
-
var DEAD_ADDRESS = "0x000000000000000000000000000000000000dEaD";
|
|
6
|
-
var ZERO_ADDRESS = "0x0000000000000000000000000000000000000000";
|
|
7
|
-
var FEE_TIERS = {
|
|
8
|
-
LOWEST: 100,
|
|
9
|
-
// 0.01%
|
|
10
|
-
LOW: 500,
|
|
11
|
-
// 0.05%
|
|
12
|
-
MEDIUM: 3e3,
|
|
13
|
-
// 0.30%
|
|
14
|
-
HIGH: 1e4
|
|
15
|
-
// 1.00%
|
|
16
|
-
};
|
|
17
|
-
var VALID_FEE_TIERS = [
|
|
18
|
-
100,
|
|
19
|
-
500,
|
|
20
|
-
3e3,
|
|
21
|
-
1e4
|
|
22
|
-
];
|
|
23
|
-
var V3_FEE_TIERS = VALID_FEE_TIERS;
|
|
24
|
-
var V4_MAX_FEE = 1e5;
|
|
25
|
-
var DECAY_MAX_START_FEE = 8e5;
|
|
26
|
-
var TICK_SPACINGS = {
|
|
27
|
-
100: 1,
|
|
28
|
-
500: 10,
|
|
29
|
-
3e3: 60,
|
|
30
|
-
1e4: 200
|
|
31
|
-
};
|
|
32
|
-
var DOPPLER_MAX_TICK_SPACING = 30;
|
|
33
|
-
var SECONDS_PER_DAY = 86400;
|
|
34
|
-
var SECONDS_PER_YEAR = 365 * SECONDS_PER_DAY;
|
|
35
|
-
var DEFAULT_EPOCH_LENGTH = 43200;
|
|
36
|
-
var DEFAULT_AUCTION_DURATION = 7 * SECONDS_PER_DAY;
|
|
37
|
-
var DEFAULT_LOCK_DURATION = SECONDS_PER_YEAR;
|
|
38
|
-
var DEFAULT_PD_SLUGS = 5;
|
|
39
|
-
var DAY_SECONDS = SECONDS_PER_DAY;
|
|
40
|
-
var DEFAULT_CREATE_GAS_LIMIT = 13500000n;
|
|
41
|
-
var DEFAULT_V3_START_TICK = 175e3;
|
|
42
|
-
var DEFAULT_V3_END_TICK = 225e3;
|
|
43
|
-
var DEFAULT_V3_NUM_POSITIONS = 15;
|
|
44
|
-
var DEFAULT_V3_FEE = 1e4;
|
|
45
|
-
var DEFAULT_V3_INITIAL_VOTING_DELAY = 172800;
|
|
46
|
-
var DEFAULT_V3_INITIAL_VOTING_PERIOD = 1209600;
|
|
47
|
-
var DEFAULT_V3_INITIAL_PROPOSAL_THRESHOLD = 0n;
|
|
48
|
-
var DEFAULT_V3_VESTING_DURATION = BigInt(SECONDS_PER_YEAR);
|
|
49
|
-
var DEFAULT_V3_INITIAL_SUPPLY = parseEther("1000000000");
|
|
50
|
-
var DEFAULT_V3_NUM_TOKENS_TO_SELL = parseEther("900000000");
|
|
51
|
-
var DEFAULT_V3_YEARLY_MINT_RATE = parseEther("0.02");
|
|
52
|
-
var DEFAULT_V3_PRE_MINT = parseEther("9000000");
|
|
53
|
-
var DEFAULT_V3_MAX_SHARE_TO_BE_SOLD = parseEther("0.35");
|
|
54
|
-
var DEFAULT_V4_INITIAL_VOTING_DELAY = 7200;
|
|
55
|
-
var DEFAULT_V4_INITIAL_VOTING_PERIOD = 50400;
|
|
56
|
-
var DEFAULT_V4_INITIAL_PROPOSAL_THRESHOLD = 0n;
|
|
57
|
-
var DEFAULT_V4_YEARLY_MINT_RATE = parseEther("0.02");
|
|
58
|
-
var DEFAULT_MULTICURVE_LOWER_TICKS = [
|
|
59
|
-
-202100,
|
|
60
|
-
-183100,
|
|
61
|
-
-167e3
|
|
62
|
-
];
|
|
63
|
-
var DEFAULT_MULTICURVE_UPPER_TICKS = [
|
|
64
|
-
-188200,
|
|
65
|
-
-172100,
|
|
66
|
-
-156e3
|
|
67
|
-
];
|
|
68
|
-
var DEFAULT_MULTICURVE_NUM_POSITIONS = [11, 11, 11];
|
|
69
|
-
var DEFAULT_MULTICURVE_MAX_SUPPLY_SHARES = [
|
|
70
|
-
parseEther("0.05"),
|
|
71
|
-
// 5% for LOW tier
|
|
72
|
-
parseEther("0.125"),
|
|
73
|
-
// 12.5% for MEDIUM tier
|
|
74
|
-
parseEther("0.2")
|
|
75
|
-
// 20% for HIGH tier
|
|
76
|
-
];
|
|
77
|
-
var MIN_SQRT_RATIO = 4295128739n;
|
|
78
|
-
var MAX_SQRT_RATIO = 1461446703485210103287273052203988822378723970342n;
|
|
79
|
-
var BASIS_POINTS = 1e4;
|
|
80
|
-
var FLAG_MASK = BigInt(16383);
|
|
81
|
-
var DOPPLER_FLAGS = BigInt(
|
|
82
|
-
1 << 13 | // BEFORE_INITIALIZE_FLAG
|
|
83
|
-
1 << 12 | // AFTER_INITIALIZE_FLAG
|
|
84
|
-
1 << 11 | // BEFORE_ADD_LIQUIDITY_FLAG
|
|
85
|
-
1 << 7 | // BEFORE_SWAP_FLAG
|
|
86
|
-
1 << 6 | // AFTER_SWAP_FLAG
|
|
87
|
-
1 << 5
|
|
88
|
-
// BEFORE_DONATE_FLAG
|
|
89
|
-
);
|
|
90
|
-
var DYNAMIC_FEE_FLAG = 8388608;
|
|
91
|
-
var FEE_AMOUNT_MASK = 16777215;
|
|
92
|
-
var DYNAMIC_AUCTION_VALID_FEES = [100, 500, 3e3, 1e4];
|
|
93
|
-
|
|
94
|
-
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 };
|
|
95
|
-
//# sourceMappingURL=chunk-IWJOPXYN.mjs.map
|
|
96
|
-
//# sourceMappingURL=chunk-IWJOPXYN.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/constants.ts"],"names":[],"mappings":";;;AAGO,IAAM,MAAM,GAAA,IAAO;AACnB,IAAM,YAAA,GACX;AACK,IAAM,YAAA,GACX;AAaK,IAAM,SAAA,GAAY;AAAA,EACvB,MAAA,EAAQ,GAAA;AAAA;AAAA,EACR,GAAA,EAAK,GAAA;AAAA;AAAA,EACL,MAAA,EAAQ,GAAA;AAAA;AAAA,EACR,IAAA,EAAM;AAAA;AACR;AASO,IAAM,eAAA,GAAsC;AAAA,EACjD,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAM;AAClB;AAMO,IAAM,YAAA,GAAe;AAOrB,IAAM,UAAA,GAAa;AAOnB,IAAM,mBAAA,GAAsB;AAI5B,IAAM,aAAA,GAAgB;AAAA,EAC3B,GAAA,EAAK,CAAA;AAAA,EACL,GAAA,EAAK,EAAA;AAAA,EACL,GAAA,EAAM,EAAA;AAAA,EACN,GAAA,EAAO;AACT;AAMO,IAAM,wBAAA,GAA2B;AAGjC,IAAM,eAAA,GAAkB;AACxB,IAAM,mBAAmB,GAAA,GAAM;AAG/B,IAAM,oBAAA,GAAuB;AAC7B,IAAM,2BAA2B,CAAA,GAAI;AACrC,IAAM,qBAAA,GAAwB;AAC9B,IAAM,gBAAA,GAAmB;AACzB,IAAM,WAAA,GAAc;AAGpB,IAAM,wBAAA,GAA2B;AAGjC,IAAM,qBAAA,GAAwB;AAC9B,IAAM,mBAAA,GAAsB;AAC5B,IAAM,wBAAA,GAA2B;AACjC,IAAM,cAAA,GAAiB;AACvB,IAAM,+BAAA,GAAkC;AACxC,IAAM,gCAAA,GAAmC;AACzC,IAAM,qCAAA,GAAwC;AAC9C,IAAM,2BAAA,GAA8B,OAAO,gBAAgB;AAC3D,IAAM,yBAAA,GAA4B,WAAW,YAAY;AACzD,IAAM,6BAAA,GAAgC,WAAW,WAAW;AAC5D,IAAM,2BAAA,GAA8B,WAAW,MAAM;AACrD,IAAM,mBAAA,GAAsB,WAAW,SAAS;AAChD,IAAM,+BAAA,GAAkC,WAAW,MAAM;AAGzD,IAAM,+BAAA,GAAkC;AACxC,IAAM,gCAAA,GAAmC;AACzC,IAAM,qCAAA,GAAwC;AAC9C,IAAM,2BAAA,GAA8B,WAAW,MAAM;AAKrD,IAAM,8BAAA,GAAiC;AAAA,EAC5C,OAAA;AAAA,EAAU,OAAA;AAAA,EAAU;AACtB;AACO,IAAM,8BAAA,GAAiC;AAAA,EAC5C,OAAA;AAAA,EAAU,OAAA;AAAA,EAAU;AACtB;AACO,IAAM,gCAAA,GAAmC,CAAC,EAAA,EAAI,EAAA,EAAI,EAAE;AACpD,IAAM,oCAAA,GAAuC;AAAA,EAClD,WAAW,MAAM,CAAA;AAAA;AAAA,EACjB,WAAW,OAAO,CAAA;AAAA;AAAA,EAClB,WAAW,KAAK;AAAA;AAClB;AAGO,IAAM,cAAA,GAAiB;AACvB,IAAM,cAAA,GACX;AAGK,IAAM,YAAA,GAAe;AAGrB,IAAM,SAAA,GAAY,OAAO,KAAM;AAC/B,IAAM,aAAA,GAAgB,MAAA;AAAA,EAC1B,CAAA,IAAK,EAAA;AAAA,EACH,CAAA,IAAK,EAAA;AAAA,EACL,CAAA,IAAK,EAAA;AAAA,EACL,CAAA,IAAK,CAAA;AAAA,EACL,CAAA,IAAK,CAAA;AAAA,EACL,CAAA,IAAK;AAAA;AACV;AAGO,IAAM,gBAAA,GAAmB;AACzB,IAAM,eAAA,GAAkB;AAOxB,IAAM,0BAAA,GAA6B,CAAC,GAAA,EAAK,GAAA,EAAK,KAAM,GAAK","file":"chunk-IWJOPXYN.mjs","sourcesContent":["import { Address, parseEther } from 'viem';\n\n// Common constants\nexport const WAD = 10n ** 18n;\nexport const DEAD_ADDRESS =\n '0x000000000000000000000000000000000000dEaD' as Address;\nexport const ZERO_ADDRESS =\n '0x0000000000000000000000000000000000000000' as Address;\n\n// =============================================================================\n// Fee Tiers - V3 vs V4 Distinction\n// =============================================================================\n//\n// Uniswap V3 (Static Auctions): Fees are COUPLED to tick spacings. Only 4 tiers allowed.\n// Uniswap V4 (Dynamic/Multicurve): Fees are DECOUPLED. Any fee 0-100,000 is valid.\n//\n// The standard fee tiers below are recognized by both V3 and V4, but V4 pools\n// can use ANY fee value as long as you provide an explicit tickSpacing.\n\n/** Standard fee tiers recognized by both Uniswap V3 and V4 */\nexport const FEE_TIERS = {\n LOWEST: 100, // 0.01%\n LOW: 500, // 0.05%\n MEDIUM: 3000, // 0.30%\n HIGH: 10000, // 1.00%\n} as const;\n\n/** Valid fee tier values (100, 500, 3000, 10000) */\nexport type FeeTier = (typeof FEE_TIERS)[keyof typeof FEE_TIERS];\n\n/**\n * Standard fee tiers - REQUIRED for V3 (Static Auctions).\n * V4 pools can use custom fees but these are the recommended defaults.\n */\nexport const VALID_FEE_TIERS: readonly FeeTier[] = [\n 100, 500, 3000, 10000,\n] as const;\n\n/**\n * V3 fee tiers - These are the ONLY valid fees for Uniswap V3 pools.\n * Static Auctions use V3 and must use one of these tiers.\n */\nexport const V3_FEE_TIERS = VALID_FEE_TIERS;\n\n/**\n * Maximum LP fee for V4 pools (from DopplerHookInitializer.sol).\n * V4 pools can use any fee from 0 to this value.\n * @see DopplerHookInitializer.sol line 171: `uint24 constant MAX_LP_FEE = 100_000`\n */\nexport const V4_MAX_FEE = 100_000; // 10%\n\n/**\n * Maximum allowed start fee for decay multicurve schedules.\n * This is intentionally higher than V4_MAX_FEE to support anti-sniping launches.\n * 800_000 = 80%\n */\nexport const DECAY_MAX_START_FEE = 800_000; // 80%\n\n// Tick spacings for different fee tiers (standard Uniswap V3 mapping)\n// In V4, tickSpacing is independent of fee - you can use any combination\nexport const TICK_SPACINGS = {\n 100: 1,\n 500: 10,\n 3000: 60,\n 10000: 200,\n} as const;\n\n/**\n * Maximum tick spacing allowed by Doppler.sol for dynamic (Dutch) auctions.\n * @see Doppler.sol line 159: `int24 constant MAX_TICK_SPACING = 30`\n */\nexport const DOPPLER_MAX_TICK_SPACING = 30;\n\n// Time constants\nexport const SECONDS_PER_DAY = 86400;\nexport const SECONDS_PER_YEAR = 365 * SECONDS_PER_DAY;\n\n// Default values\nexport const DEFAULT_EPOCH_LENGTH = 43200; // 12 hours in seconds (matching V4 SDK)\nexport const DEFAULT_AUCTION_DURATION = 7 * SECONDS_PER_DAY; // 7 days\nexport const DEFAULT_LOCK_DURATION = SECONDS_PER_YEAR; // 1 year\nexport const DEFAULT_PD_SLUGS = 5; // Default price discovery slugs\nexport const DAY_SECONDS = SECONDS_PER_DAY; // Alias for consistency\n\n// Default gas limit to fall back on when create() simulations do not return a value\nexport const DEFAULT_CREATE_GAS_LIMIT = 13_500_000n;\n\n// V3 Default parameters\nexport const DEFAULT_V3_START_TICK = 175000;\nexport const DEFAULT_V3_END_TICK = 225000;\nexport const DEFAULT_V3_NUM_POSITIONS = 15;\nexport const DEFAULT_V3_FEE = 10000; // 1% fee tier\nexport const DEFAULT_V3_INITIAL_VOTING_DELAY = 172800; // 2 days\nexport const DEFAULT_V3_INITIAL_VOTING_PERIOD = 1209600; // 14 days\nexport const DEFAULT_V3_INITIAL_PROPOSAL_THRESHOLD = 0n;\nexport const DEFAULT_V3_VESTING_DURATION = BigInt(SECONDS_PER_YEAR);\nexport const DEFAULT_V3_INITIAL_SUPPLY = parseEther('1000000000'); // 1 billion tokens\nexport const DEFAULT_V3_NUM_TOKENS_TO_SELL = parseEther('900000000'); // 900 million tokens\nexport const DEFAULT_V3_YEARLY_MINT_RATE = parseEther('0.02'); // 2% yearly mint rate\nexport const DEFAULT_V3_PRE_MINT = parseEther('9000000'); // 9 million tokens (0.9%)\nexport const DEFAULT_V3_MAX_SHARE_TO_BE_SOLD = parseEther('0.35'); // 35%\n\n// V4 Default parameters\nexport const DEFAULT_V4_INITIAL_VOTING_DELAY = 7200; // 2 hours\nexport const DEFAULT_V4_INITIAL_VOTING_PERIOD = 50400; // 14 hours\nexport const DEFAULT_V4_INITIAL_PROPOSAL_THRESHOLD = 0n;\nexport const DEFAULT_V4_YEARLY_MINT_RATE = parseEther('0.02'); // 2% yearly mint rate\n\n// V4 Multicurve Default Tick Ranges\n// Based on market cap tiers: LOW ($7.5k -> $30k), MEDIUM ($50k -> $150k), HIGH ($250k -> $750k)\n// Calculated for 1B token supply, $4500 numeraire (e.g., WETH on Base)\nexport const DEFAULT_MULTICURVE_LOWER_TICKS = [\n -202_100, -183_100, -167_000,\n] as const;\nexport const DEFAULT_MULTICURVE_UPPER_TICKS = [\n -188_200, -172_100, -156_000,\n] as const;\nexport const DEFAULT_MULTICURVE_NUM_POSITIONS = [11, 11, 11] as const;\nexport const DEFAULT_MULTICURVE_MAX_SUPPLY_SHARES = [\n parseEther('0.05'), // 5% for LOW tier\n parseEther('0.125'), // 12.5% for MEDIUM tier\n parseEther('0.2'), // 20% for HIGH tier\n] as const;\n\n// Price bounds\nexport const MIN_SQRT_RATIO = 4295128739n;\nexport const MAX_SQRT_RATIO =\n 1461446703485210103287273052203988822378723970342n;\n\n// Basis points\nexport const BASIS_POINTS = 10000;\n\n// V4 Hook Flags for Doppler\nexport const FLAG_MASK = BigInt(0x3fff);\nexport const DOPPLER_FLAGS = BigInt(\n (1 << 13) | // BEFORE_INITIALIZE_FLAG\n (1 << 12) | // AFTER_INITIALIZE_FLAG\n (1 << 11) | // BEFORE_ADD_LIQUIDITY_FLAG\n (1 << 7) | // BEFORE_SWAP_FLAG\n (1 << 6) | // AFTER_SWAP_FLAG\n (1 << 5), // BEFORE_DONATE_FLAG\n);\n\n// V4 Dynamic Fee Flag\nexport const DYNAMIC_FEE_FLAG = 0x800000; // 8388608 in decimal\nexport const FEE_AMOUNT_MASK = 0xffffff; // Mask to extract actual fee from dynamic fee\n\n/**\n * @deprecated Dynamic auctions (V4) support ANY fee 0-100,000 with explicit tickSpacing.\n * This constant is kept for backwards compatibility but is no longer enforced.\n * Standard fee tiers still auto-derive tickSpacing; custom fees require explicit tickSpacing.\n */\nexport const DYNAMIC_AUCTION_VALID_FEES = [100, 500, 3000, 10000] as const;\n"]}
|
package/dist/chunk-J62YDWIK.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
// src/abis/bytecodes/derc2080.ts
|
|
4
|
-
var derc2080_default = "0x6101c0604052346100ab5761002761001561023e565b9897909796919695929594939461070b565b60405161279f90816112d5823960805181611a67015260a05181611b24015260c05181611a31015260e05181611ab601526101005181611adc01526101205181610b8701526101405181610bb001526101605181818161065201528181610c7e01526115820152610180518181816104a501526115a401526101a051816114350152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b601f909101601f19168101906001600160401b038211908210176100e657604052565b6100af565b604051906100fa6040836100c3565b565b81601f820112156100ab578051906001600160401b0382116100e65760405192610130601f8401601f1916602001856100c3565b828452602083830101116100ab57815f9260208093018386015e8301015290565b51906001600160a01b03821682036100ab57565b6001600160401b0381116100e65760051b60200190565b9080601f830112156100ab57815161019381610165565b926101a160405194856100c3565b81845260208085019260051b8201019283116100ab57602001905b8282106101c95750505090565b602080916101d684610151565b8152019101906101bc565b9080601f830112156100ab5781516101f881610165565b9261020660405194856100c3565b81845260208085019260051b8201019283116100ab57602001905b82821061022e5750505090565b8151815260209182019101610221565b613ab490813803806040519361025482866100c3565b8439820191610140818403126100ab5780516001600160401b0381116100ab57836102809183016100fc565b60208201519093906001600160401b0381116100ab57816102a29184016100fc565b936040830151936102b560608501610151565b936102c260808201610151565b9360a08201519360c08301519360e084015160018060401b0381116100ab57836102ed91860161017c565b6101008501519094906001600160401b0381116100ab57846103109183016101e1565b6101208201519094906001600160401b0381116100ab5761033192016100fc565b9199989796959493929190565b156103465750565b630ca514df60e01b5f5260045266470de4df82000060245260445ffd5b90600182811c92168015610391575b602083101461037d57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610372565b601f81116103a7575050565b60035f5260205f20906020601f840160051c830193106103e1575b601f0160051c01905b8181106103d6575050565b5f81556001016103cb565b90915081906103c2565b601f82116103f857505050565b5f5260205f20906020601f840160051c83019310610430575b601f0160051c01905b818110610425575050565b5f815560010161041a565b9091508190610411565b8160011b915f199060031b1c19161790565b80519091906001600160401b0381116100e6576104758161046e601054610363565b60106103eb565b602092601f82116001146104a857610498929382915f9261049d575b505061043a565b601055565b015190505f80610491565b60105f52601f198216937f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae672915f5b86811061050c57508360019596106104f4575b505050811b01601055565b01515f1960f88460031b161c191690555f80806104e9565b919260206001819286850151815501940192016104d6565b80519091906001600160401b0381116100e65761054d81610546600454610363565b60046103eb565b602092601f82116001146105745761056f929382915f9261049d57505061043a565b600455565b60045f52601f198216937f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b915f5b8681106105d857508360019596106105c0575b505050811b01600455565b01515f1960f88460031b161c191690555f80806105b5565b919260206001819286850151815501940192016105a2565b156105f757565b631dc0052360e11b5f5260045ffd5b634e487b7160e01b5f52601160045260245ffd5b90670b1a2bc2ec500000820291808304670b1a2bc2ec500000149015171561063e57565b610606565b634e487b7160e01b5f52603260045260245ffd5b805182101561066b5760209160051b010190565b610643565b6001600160a01b03165f90815260096020526040902090565b9190820180921161063e57565b1561069f575050565b630443fb3960e11b5f5260045260245260445ffd5b156106bd575050565b6323f3f88b60e01b5f5260045260245260445ffd5b156106db575050565b6305767d1760e01b5f5260045260245260445ffd5b5f1981019190821161063e57565b9190820391821161063e57565b61074b9591816107249261073d959a9b99969c97610873565b6107388166470de4df82000081111561033e565b600d55565b42610160526101805261044c565b8251610759825182146105f0565b5f936107756107678561061a565b670de0b6b3a7640000900490565b5f935b8385106107d75750505050506100fa9291816107a661079c6107676107c29561061a565b83818111156106b4565b6107b381838181106106d2565b816101a052816107c8576106fe565b906109d9565b6107d282306109d9565b6106fe565b909192939561086884600192610863868b61085c61082a61081d8461085261082a61081d878f8161080791610657565b519c8d61084b61084361082a61081d8686610657565b516001600160a01b031690565b6001600160a01b03165f90815260116020526040902090565b918254610689565b9055610657565b541115938d610657565b5490610696565b610689565b960193929190610778565b9290604051916108846040846100c3565b60018352603160f81b60208401908152845190946001600160401b0382116100e6576108ba826108b5600354610363565b61039b565b602090601f83116001146109525791806108e0926108e895945f9261049d57505061043a565b600355610524565b6108f181610b0f565b610120526108fe82610bf7565b610140526020815191012060e052519020610100524660a05261091f610cdc565b6080523060c0526001600160a01b0381161561093e576100fa90610ac7565b631e4fbdf760e01b5f90815260045260245ffd5b60035f52601f19831691907fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b925f5b8181106109c157509160019391856108e8979694106109a9575b505050811b01600355610524565b01515f1960f88460031b161c191690555f808061099b565b92936020600181928786015181550195019301610981565b91906001600160a01b0383168015610ab457600c546001600160a01b03811682149081610aa5575b50610a9657610a1a610a1583600254610689565b600255565b6001600160a01b0384165f90815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9190a3600254926001600160d01b03808511610a7f57506100fa929350610da5565b630e58ae9360e11b5f52600485905260245260445ffd5b632e13674560e01b5f5260045ffd5b60ff915060a01c16155f610a01565b63ec442f0560e01b5f525f60045260245ffd5b600b80546001600160a01b039283166001600160a01b0319821681179092559091167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3565b908151602081105f14610b2a575090610b2790610d3a565b90565b6001600160401b0381116100e657610b4e81610b47600554610363565b60056103eb565b602092601f8211600114610b7857610b70929382915f9261049d57505061043a565b60055560ff90565b60055f52601f198216937f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0915f5b868110610bdf5750836001959610610bc7575b505050811b0160055560ff90565b01515f1960f88460031b161c191690555f8080610bb9565b91926020600181928685015181550194019201610ba6565b908151602081105f14610c0f575090610b2790610d3a565b6001600160401b0381116100e657610c3381610c2c600654610363565b60066103eb565b602092601f8211600114610c5d57610c55929382915f9261049d57505061043a565b60065560ff90565b60065f52601f198216937ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f915f5b868110610cc45750836001959610610cac575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f8080610c9e565b91926020600181928685015181550194019201610c8b565b60e051610100516040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a08152610d3460c0826100c3565b51902090565b601f815111610d65576020815191015160208210610d56571790565b5f198260200360031b1b161790565b604460209160405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b90610daf81610ea4565b9165ffffffffffff4311610e8c57600a5480610e565750610de9610dd96100fa945f5b6001611278565b65ffffffffffff4316600a611159565b50506001600160a01b03168015610e3e575b60086020527f5eff886ea0ce6ca488a3d6e336d6c0f75f46d19b42c06ce5ee98e42c96d256c7545f9182526040909120546001600160a01b039081169116610fd3565b610e4f610e4a83610ea4565b610ed5565b5050610dfb565b92835f1981011161063e57600a5f525f80516020613a74833981519152909301546100fa93610de991610dd9919060301c610dd2565b6306dfcc6560e41b5f5260306004524360245260445ffd5b6001600160d01b038111610ebe576001600160d01b031690565b6306dfcc6560e41b5f5260d060045260245260445ffd5b65ffffffffffff4311610e8c57600a5480610eff5750610dd9610efb915f5b6002611278565b9091565b805f1981011161063e57600a5f525f80516020613a748339815191520154610efb91610dd99160301c610ef4565b65ffffffffffff4311610e8c57805480610f615750610f51610efb925f6002611278565b9065ffffffffffff431690611159565b805f1981011161063e575f82815260209020015f190154610efb92610f519160301c610ef4565b65ffffffffffff4311610e8c57805480610fac5750610f51610efb925f6001611278565b805f1981011161063e575f82815260209020015f190154610efb92610f519160301c610dd2565b6001600160a01b038083169392919081169081851415806110a8575b610ffb575b5050505050565b8161105d575b505082611010575b8080610ff4565b5f80516020613a948339815191529161103461102e61103a93610670565b91610ea4565b90610f88565b604080516001600160d01b039384168152919092166020820152a25f8080611009565b6110866110775f80516020613a9483398151915292610670565b61108086610ea4565b90610f2d565b604080516001600160d01b039384168152919092166020820152a25f80611001565b50831515610fef565b9065ffffffffffff82549181199060301b169116179055565b908154680100000000000000008110156100e6576001810180845581101561066b576100fa925f5260205f20019065ffffffffffff81511665ffffffffffff19835416178255602060018060d01b0391015116906110b1565b604080519192919081016001600160401b038111828210176100e657604052915465ffffffffffff8116835260301c6020830152565b80549293929190821561124f57611185611180611175856106f0565b835f5260205f200190565b611123565b9065ffffffffffff61119d835165ffffffffffff1690565b8185169182911611611240576112049460209488926111d06111c5875165ffffffffffff1690565b65ffffffffffff1690565b0361120857506111f6926111e66111f1926106f0565b905f5260205f200190565b6110b1565b01516001600160d01b031690565b9190565b91505061123b9161122861121a6100eb565b65ffffffffffff9093168352565b6001600160d01b038816828601526110ca565b6111f6565b632520601d60e01b5f5260045ffd5b611273925061125f61121a6100eb565b6001600160d01b03851660208301526110ca565b5f9190565b919091806001146112ba5760021461129e57634e487b7160e01b5f52605160045260245ffd5b6001600160d01b039081169181169190910390811161063e5790565b506001600160d01b039182169082160190811161063e579056fe60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146102d4578063095ea7b3146102cf57806310aa0ebb146102ca57806313cff13d146102c55780631514617e146102c057806316f0115b146102bb57806318160ddd146102b657806320720df7146102b1578063207d0636146102ac57806323b872dd146102a7578063254800d4146102a2578063313ce5671461029d5780633644e515146102985780633a46b1a8146102935780633c130d901461028e57806342966c68146102895780634bf5d7e9146102845780634c8697951461027f578063587cde1e1461027a5780635c19a95c146102755780636fcfff451461027057806370a082311461026b578063715018a6146102665780637ecebe001461026157806384b0196e1461025c57806386d1a69f1461025757806389026538146102525780638da5cb5b1461024d5780638e539e8c146102485780638e80ff5d1461024357806391ddadf41461023e57806395d89b411461023957806398cd6153146102345780639ab24eb01461022f5780639ccb51751461022a578063a9059cbb14610225578063c3cda52014610220578063c551a2f91461021b578063d505accf14610216578063dd62ed3e14610211578063f1127ed81461020c578063f2fde38b14610207578063f68d90d8146102025763f6939d34146101fd575f80fd5b6114b0565b61141e565b6113ab565b611314565b6112e8565b6111dd565b6111c5565b6110cd565b611087565b61100a565b610fc3565b610f52565b610e81565b610e56565b610e39565b610d45565b610d1d565b610ce7565b610c6c565b610b6f565b610b37565b610aef565b610acc565b610a6a565b610a48565b610a08565b6109e5565b610955565b610868565b6107d6565b6106b2565b610690565b610675565b61063b565b61056d565b61052a565b61050d565b6104f0565b6104c8565b61048e565b610471565b61044c565b61041b565b610311565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b90602061030e9281815201906102d9565b90565b346103eb575f3660031901126103eb576040515f60035461033181610747565b80845290600181169081156103c75750600114610369575b61036583610359818503826107b3565b604051918291826102fd565b0390f35b60035f9081527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b939250905b8082106103ad57509091508101602001610359610349565b919260018160209254838588010152019101909291610395565b60ff191660208086019190915291151560051b840190910191506103599050610349565b5f80fd5b600435906001600160a01b03821682036103eb57565b602435906001600160a01b03821682036103eb57565b346103eb5760403660031901126103eb576104416104376103ef565b6024359033611da8565b602060405160018152f35b346103eb575f3660031901126103eb57602060ff600c5460a01c166040519015158152f35b346103eb575f3660031901126103eb576020600e54604051908152f35b346103eb575f3660031901126103eb5760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346103eb575f3660031901126103eb57600c546040516001600160a01b039091168152602090f35b346103eb575f3660031901126103eb576020600254604051908152f35b346103eb575f3660031901126103eb576020600d54604051908152f35b346103eb5760203660031901126103eb576105436103ef565b61054b611929565b600c80546001600160a81b0319166001600160a01b0392909216919091179055005b346103eb5760603660031901126103eb576105866103ef565b61058e610405565b6044359061059c33846118ca565b92600184016105bc575b6105b09350611967565b60405160018152602090f35b828410610620576001600160a01b038116801561060d5733156105fa576105b09484915f526001602052036105f43360405f2061148a565b556105a6565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8284637dc7a0d960e11b5f523360045260245260445260645ffd5b346103eb575f3660031901126103eb5760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346103eb575f3660031901126103eb57602060405160128152f35b346103eb575f3660031901126103eb5760206106aa611a2e565b604051908152f35b346103eb5760403660031901126103eb576106cb6103ef565b60243565ffffffffffff6106de43611b4a565b169182821015610731576001600160a01b03165f90815260096020526040902061036592506001600160d01b0391610720919061071a90611b4a565b90611b79565b604051911681529081906020820190565b50637669fc0f60e11b5f5260045260245260445ffd5b90600182811c92168015610775575b602083101461076157565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610756565b634e487b7160e01b5f52604160045260245ffd5b604081019081106001600160401b038211176107ae57604052565b61077f565b601f909101601f19168101906001600160401b038211908210176107ae57604052565b346103eb575f3660031901126103eb576040515f6010546107f681610747565b80845290600181169081156103c7575060011461081d5761036583610359818503826107b3565b60105f9081525f80516020612753833981519152939250905b80821061084e57509091508101602001610359610349565b919260018160209254838588010152019101909291610836565b346103eb5760203660031901126103eb57600435610884611929565b600b546001600160a01b031690811561094257600c546001600160a01b038116159081610933575b50610924576108ba82611458565b5481811061090e5761090c92825f92036108d382611458565b556108e18360025403600255565b81815f805160206127338339815191526040518061090488829190602083019252565b0390a36124c2565b005b63391434e360e21b5f5261092192611950565b5ffd5b632e13674560e01b5f5260045ffd5b60ff915060a01c16155f6108ac565b634b637e8f60e11b5f525f60045260245ffd5b346103eb575f3660031901126103eb5761096e43611b4a565b65ffffffffffff8061097f43611b4a565b169116036109d6576103656040516109986040826107b3565b601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c7400000060208201526040519182916020835260208301906102d9565b6301bfc1c560e61b5f5260045ffd5b346103eb5760203660031901126103eb5760206106aa610a036103ef565b611580565b346103eb5760203660031901126103eb576001600160a01b03610a296103ef565b165f526008602052602060018060a01b0360405f205416604051908152f35b346103eb5760203660031901126103eb5761090c610a646103ef565b33611c0a565b346103eb5760203660031901126103eb576001600160a01b03610a8b6103ef565b165f52600960205260405f205463ffffffff8111610ab55760405163ffffffff9091168152602090f35b6306dfcc6560e41b5f52602060045260245260445ffd5b346103eb5760203660031901126103eb5760206106aa610aea6103ef565b61165c565b346103eb575f3660031901126103eb57610b07611929565b600b80546001600160a01b031981169091555f906001600160a01b03165f805160206127138339815191528280a3005b346103eb5760203660031901126103eb576001600160a01b03610b586103ef565b165f526007602052602060405f2054604051908152f35b346103eb575f3660031901126103eb57610c13610bab7f00000000000000000000000000000000000000000000000000000000000000006120cc565b610bd47f0000000000000000000000000000000000000000000000000000000000000000612191565b6020604051610be382826107b3565b5f815281610c2181830194601f198301368737604051978897600f60f81b895260e0858a015260e08901906102d9565b9087820360408901526102d9565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b828110610c5557505050500390f35b835185528695509381019392810192600101610c46565b346103eb575f3660031901126103eb577f000000000000000000000000000000000000000000000000000000000000000015610cd857610cab33611580565b335f526011602052600160405f2001908154818101809111610cd35761090c92553330611967565b6114f4565b63641c0b2160e11b5f5260045ffd5b346103eb575f3660031901126103eb57610cff611929565b600c805460ff60a01b1916600160a01b17905542600f819055600e55005b346103eb575f3660031901126103eb57600b546040516001600160a01b039091168152602090f35b346103eb5760203660031901126103eb5760043565ffffffffffff610d6943611b4a565b169081811015610e2457610d7c90611b4a565b600a54905f829160058411610dd0575b610d989350600a611f80565b80610db4575060205f5b6040516001600160d01b039091168152f35b610dbf602091611534565b600a5f52815f20015460301c610da2565b9192610ddb81611e0d565b8103908111610cd357610d9893600a5f5265ffffffffffff8260205f2001541665ffffffffffff8516105f14610e12575091610d8c565b929150610e1e90611519565b90610d8c565b637669fc0f60e11b5f5260045260245260445ffd5b346103eb575f3660031901126103eb576020600f54604051908152f35b346103eb575f3660031901126103eb576020610e7143611b4a565b65ffffffffffff60405191168152f35b346103eb575f3660031901126103eb576040515f600454610ea181610747565b80845290600181169081156103c75750600114610ec85761036583610359818503826107b3565b60045f9081527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b939250905b808210610f0c57509091508101602001610359610349565b919260018160209254838588010152019101909291610ef4565b60405190610f356040836107b3565b565b6001600160401b0381116107ae57601f01601f191660200190565b346103eb5760203660031901126103eb576004356001600160401b0381116103eb57366023820112156103eb578060040135610f8d81610f37565b90610f9b60405192836107b3565b80825236602482850101116103eb576020815f92602461090c96018386013783010152611676565b346103eb5760203660031901126103eb576001600160a01b03610fe46103ef565b165f526009602052602060018060d01b0361100160405f20611c76565b16604051908152f35b346103eb5760203660031901126103eb57600435611026611929565b66470de4df820000811161106a57600e54151580611055575b61104857600d55005b6110506117c8565b600d55005b50600f544281420311610cd35742141561103f565b630ca514df60e01b5f5260045266470de4df82000060245260445ffd5b346103eb5760403660031901126103eb576104416110a36103ef565b6024359033611967565b6064359060ff821682036103eb57565b6084359060ff821682036103eb57565b346103eb5760c03660031901126103eb576110e66103ef565b602435906044356110f56110ad565b6084359060a435928042116111b3579161117a939161116c6111719460405160208101917fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf835260018060a01b038a1660408301528a606083015260808201526080815261116460a0826107b3565b519020611ca0565b612236565b909291926122d7565b61118381611d86565b8093036111945761090c9250611c0a565b90506301d4b62360e61b5f5260018060a01b031660045260245260445ffd5b632341d78760e11b5f5260045260245ffd5b346103eb575f3660031901126103eb5761090c6117c8565b346103eb5760e03660031901126103eb576111f66103ef565b6111fe610405565b604435906064359261120e6110bd565b60a43560c435908642116112d55761129a9261129561122c86611d86565b9860405160208101917f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9835260018060a01b0389169b8c604084015260018060a01b038b1660608401528b608084015260a083015260c082015260c0815261116460e0826107b3565b611cc6565b936001600160a01b038516036112b45761090c9350611da8565b6325c0072360e11b5f526001600160a01b038085166004521660245260445ffd5b8663313c898160e11b5f5260045260245ffd5b346103eb5760403660031901126103eb5760206106aa6113066103ef565b61130e610405565b906118ca565b346103eb5760403660031901126103eb5761132d6103ef565b6024359063ffffffff821682036103eb576113829161137c9161134e611911565b50611357611911565b506001600160a01b03165f908152600960205260409020611376611911565b50612353565b5061237c565b60408051825165ffffffffffff1681526020928301516001600160d01b03169281019290925290f35b346103eb5760203660031901126103eb576113c46103ef565b6113cc611929565b6001600160a01b0316801561140b57600b80546001600160a01b0319811683179091556001600160a01b03165f805160206127138339815191525f80a3005b631e4fbdf760e01b5f525f60045260245ffd5b346103eb575f3660031901126103eb5760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b6001600160a01b03165f90815260208190526040902090565b6001600160a01b03165f90815260096020526040902090565b9060018060a01b03165f5260205260405f2090565b908152602081019190915260400190565b346103eb5760203660031901126103eb576001600160a01b036114d16103ef565b165f52601160205260405f2060018154910154906103656040519283928361149f565b634e487b7160e01b5f52601160045260245ffd5b906301e133808201809211610cd357565b9060018201809211610cd357565b91908201809211610cd357565b5f19810191908211610cd357565b91908203918211610cd357565b81810292918115918404141715610cd357565b811561156c570490565b634e487b7160e01b5f52601260045260245ffd5b7f0000000000000000000000000000000000000000000000000000000000000000907f0000000000000000000000000000000000000000000000000000000000000000808301808411610cd357421015611635576001600160a01b0382165f9081526011602052604090205442938403938411610cd35761161260019261160d61030e9661162d9461154f565b611562565b6001600160a01b039093165f90815260116020526040902090565b015490611542565b506001600160a01b03165f908152601160205260409020805461030e92509060019061162d565b6001600160a01b03165f9081526020819052604090205490565b9061167f611929565b81516001600160401b0381116107ae576116a38161169e601054610747565b61174c565b602092601f82116001146116e3576116d3929382915f926116d8575b50508160011b915f199060031b1c19161790565b601055565b015190505f806116bf565b60105f52601f198216935f80516020612753833981519152915f5b868110611734575083600195961061171c575b505050811b01601055565b01515f1960f88460031b161c191690555f8080611711565b919260206001819286850151815501940192016116fe565b601f8111611758575050565b60105f5260205f20906020601f840160051c83019310611792575b601f0160051c01905b818110611787575050565b5f815560010161177c565b9091508190611773565b156117a357565b633601f27d60e11b5f5260045ffd5b156117b957565b63bbb80c2b60e01b5f5260045ffd5b600e546117d681151561179c565b5f90600254600f5490600d54915b6117ed84611508565b421115611851576118499161183d611836611825611816611843956118118a611508565b611542565b611820888661154f565b61154f565b6a1a1601fc4ea7109e000000900490565b8092611527565b95611527565b92611508565b9192826117e4565b9091610f35949392824211611892575b505050611878906118738315156117b2565b600e55565b61188142600f55565b600b546001600160a01b0316611cd5565b6118256118c1936118b56118ae6118789798956118bb9561154f565b9142611542565b9061154f565b90611527565b91905f80611861565b906001600160a01b0381166e22d473030f116ddee9f6b43ac78ba31461190a576119069160018060a01b03165f52600160205260405f2061148a565b5490565b50505f1990565b6040519061191e82610793565b5f6020838281520152565b600b546001600160a01b0316330361193d57565b63118cdaa760e01b5f523360045260245ffd5b6001600160a01b0316600452602452604452606490565b6001600160a01b038116939291908415610942576001600160a01b0382168015611a1b57600c546001600160a01b03811682149081611a0c575b50610924576119af82611458565b54958487106119f75784610f359697036119c884611458565b556119d284611458565b8054860190556040518581525f80516020612733833981519152908060208101610904565b63391434e360e21b5f52610921858885611950565b60ff915060a01c16155f6119a1565b63ec442f0560e01b5f525f60045260245ffd5b307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161480611b21575b15611a89577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a08152611b1b60c0826107b3565b51902090565b507f00000000000000000000000000000000000000000000000000000000000000004614611a60565b65ffffffffffff8111611b625765ffffffffffff1690565b6306dfcc6560e41b5f52603060045260245260445ffd5b908154905f829160058411611bb7575b611b94935084611f80565b80611b9f5750505f90565b611ba890611534565b905f5260205f20015460301c90565b9192611bc281611e0d565b8103908111610cd357611b9493855f5265ffffffffffff8260205f2001541665ffffffffffff8516105f14611bf8575091611b89565b929150611c0490611519565b90611b89565b6001600160a01b038181165f81815260086020526040812080548685166001600160a01b031982168117909255610f3596941694611c709390928691907f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9080a461165c565b91611fe4565b80549081611c845750505f90565b815f19810111610cd3575f525f199060205f2001015460301c90565b604290611cab611a2e565b906040519161190160f01b8352600283015260228201522090565b9161030e939161117193612236565b91906001600160a01b0383168015611a1b57600c546001600160a01b03811682149081611d77575b5061092457611d16611d1183600254611527565b600255565b611d1f84611458565b8054830190556040518281525f905f8051602061273383398151915290602090a3600254926001600160d01b03808511611d605750610f359293505f6124c2565b630e58ae9360e11b5f52600485905260245260445ffd5b60ff915060a01c16155f611cfd565b6001600160a01b03165f90815260076020526040902080546001810190915590565b6001600160a01b031690811561060d576001600160a01b0381169283156105fa5780611e007f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92593855f52600160205260405f2061148a565b55604051908152602090a3565b8015611f7b5761030e90611f11611f0a611f00611ef6611eec611ee2611ed8611ece6001611ebc5f8b608081901c80611f6d575b5080611e50611eb29260401c90565b80611f60575b50611e618160201c90565b80611f53575b50611e728160101c90565b80611f46575b50611e838160081c90565b80611f39575b50611e948160041c90565b80611f2c575b50611ea58160021c90565b80611f1f575b5060011c90565b611f175760011c90565b1b611ec7818b611562565b0160011c90565b611ec7818a611562565b611ec78189611562565b611ec78188611562565b611ec78187611562565b611ec78186611562565b611ec78185611562565b8092611562565b906123a0565b820160011c90565b600291509201915f611eab565b600491509201915f611e9a565b600891509201915f611e89565b601091509201915f611e78565b602091509201915f611e67565b604091509201915f611e56565b608092509050611eb2611e41565b505f90565b91905b838210611f905750505090565b9091928083169080841860011c8201809211610cd357845f5265ffffffffffff8260205f2001541665ffffffffffff8416105f14611fd25750925b9190611f83565b939250611fde90611519565b91611fcb565b6001600160a01b038083169392919081169081851415806120c3575b61200c575b5050505050565b81612073575b505082612021575b8080612005565b5f805160206127738339815191529161204561203f61204b93611471565b916123b2565b9061241b565b604051918291612068916001600160d01b0391821691168361149f565b0390a25f808061201a565b61209c61208d5f8051602061277383398151915292611471565b612096866123b2565b906123e3565b6040519182916120b9916001600160d01b0391821691168361149f565b0390a25f80612012565b50831515612000565b60ff81146120dd5761030e90612484565b50604051600554815f6120ef83610747565b80835292600181169081156121725750600114612113575b61030e925003826107b3565b5060055f90815290917f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db05b81831061215657505090602061030e92820101612107565b602091935080600191548385880101520191019091839261213e565b6020925061030e94915060ff191682840152151560051b820101612107565b60ff81146121a25761030e90612484565b50604051600654815f6121b483610747565b808352926001811690811561217257506001146121d75761030e925003826107b3565b5060065f90815290917ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f5b81831061221a57505090602061030e92820101612107565b6020919350806001915483858801015201910190918392612202565b91906fa2a8918ca85bafe22016d0b997e4df60600160ff1b0384116122ae579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa156122a3575f516001600160a01b0381161561229957905f905f90565b505f906001905f90565b6040513d5f823e3d90fd5b5050505f9160039190565b600411156122c357565b634e487b7160e01b5f52602160045260245ffd5b6122e0816122b9565b806122e9575050565b6122f2816122b9565b600181036123095763f645eedf60e01b5f5260045ffd5b612312816122b9565b6002810361232d575063fce698f760e01b5f5260045260245ffd5b806123396003926122b9565b146123415750565b6335e2f38360e21b5f5260045260245ffd5b8054821015612368575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b9060405161238981610793565b915465ffffffffffff8116835260301c6020830152565b90808210156123ad575090565b905090565b6001600160d01b0381116123cc576001600160d01b031690565b6306dfcc6560e41b5f5260d060045260245260445ffd5b906123ed43611b4a565b906123f783611c76565b6001600160d01b039182169082160391908211610cd357612417926125f3565b9091565b9061242543611b4a565b9061242f83611c76565b6001600160d01b039182169082160191908211610cd357612417926125f3565b61245843611b4a565b90612463600a611c76565b6001600160d01b0391821690821603908111610cd35761241791600a6125f3565b60ff811690601f82116124b357604051916124a06040846107b3565b6020808452838101919036833783525290565b632cd44ac360e21b5f5260045ffd5b9091906001600160a01b03168015612529575b610f35926001600160a01b0316908115612511575b5f90815260086020526040808220549282529020546001600160a01b039081169116611fe4565b61252261251d846123b2565b61244f565b50506124ea565b612532826123b2565b9261253c43611b4a565b93612547600a611c76565b6001600160d01b039182169082160194908511610cd357610f359461256d91600a6125f3565b90505092506124d5565b9065ffffffffffff82549181199060301b169116179055565b8054600160401b8110156107ae576125ad91600182018155612353565b6125e0578165ffffffffffff610f3593511665ffffffffffff19835416178255602060018060d01b039101511690612577565b634e487b7160e01b5f525f60045260245ffd5b8054929392919082156126e95761261f61261a61260f85611534565b835f5260205f200190565b61237c565b9065ffffffffffff612637835165ffffffffffff1690565b81851691829116116126da5761269e94602094889261266a61265f875165ffffffffffff1690565b65ffffffffffff1690565b036126a257506126909261268061268b92611534565b905f5260205f200190565b612577565b01516001600160d01b031690565b9190565b9150506126d5916126c26126b4610f26565b65ffffffffffff9093168352565b6001600160d01b03881682860152612590565b612690565b632520601d60e01b5f5260045ffd5b61270d92506126f96126b4610f26565b6001600160d01b0385166020830152612590565b5f919056fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae672dec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724a164736f6c634300081a000ac65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a7dec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724";
|
|
5
|
-
|
|
6
|
-
exports.derc2080_default = derc2080_default;
|
|
7
|
-
//# sourceMappingURL=chunk-J62YDWIK.js.map
|
|
8
|
-
//# sourceMappingURL=chunk-J62YDWIK.js.map
|