@whetstone-research/doppler-sdk 0.0.21 → 0.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/README.md +20 -0
  2. package/dist/DopplerSDK.js +13 -13
  3. package/dist/DopplerSDK.mjs +12 -12
  4. package/dist/addresses.d.mts +1 -0
  5. package/dist/addresses.d.ts +1 -0
  6. package/dist/addresses.js +6 -6
  7. package/dist/addresses.mjs +1 -1
  8. package/dist/builders/DynamicAuctionBuilder.js +5 -5
  9. package/dist/builders/DynamicAuctionBuilder.mjs +4 -4
  10. package/dist/builders/MulticurveBuilder.js +5 -5
  11. package/dist/builders/MulticurveBuilder.mjs +4 -4
  12. package/dist/builders/StaticAuctionBuilder.js +5 -5
  13. package/dist/builders/StaticAuctionBuilder.mjs +4 -4
  14. package/dist/builders/index.js +9 -9
  15. package/dist/builders/index.mjs +6 -6
  16. package/dist/builders/shared.js +2 -2
  17. package/dist/builders/shared.mjs +2 -2
  18. package/dist/{chunk-Y5RAENN5.js → chunk-3L4DLMOK.js} +5 -5
  19. package/dist/{chunk-Y5RAENN5.js.map → chunk-3L4DLMOK.js.map} +1 -1
  20. package/dist/{chunk-GLMPU7VL.js → chunk-3XYDN2XB.js} +5 -5
  21. package/dist/{chunk-GLMPU7VL.js.map → chunk-3XYDN2XB.js.map} +1 -1
  22. package/dist/{chunk-JHPDKSC4.js → chunk-5VV7STYK.js} +40 -11
  23. package/dist/chunk-5VV7STYK.js.map +1 -0
  24. package/dist/{chunk-COUZYFEE.js → chunk-5WYXNWNH.js} +5 -5
  25. package/dist/{chunk-COUZYFEE.js.map → chunk-5WYXNWNH.js.map} +1 -1
  26. package/dist/{chunk-NWZGO2CH.mjs → chunk-ADAAU4F5.mjs} +40 -11
  27. package/dist/chunk-ADAAU4F5.mjs.map +1 -0
  28. package/dist/{chunk-RKPAL3SU.mjs → chunk-AZH2P4JK.mjs} +3 -3
  29. package/dist/{chunk-RKPAL3SU.mjs.map → chunk-AZH2P4JK.mjs.map} +1 -1
  30. package/dist/{chunk-AS5UUJRI.js → chunk-COOVGAOE.js} +13 -11
  31. package/dist/chunk-COOVGAOE.js.map +1 -0
  32. package/dist/{chunk-36Y3N257.mjs → chunk-CS6FVODR.mjs} +3 -3
  33. package/dist/{chunk-36Y3N257.mjs.map → chunk-CS6FVODR.mjs.map} +1 -1
  34. package/dist/{chunk-TYJZL2XZ.js → chunk-CUB4F546.js} +5 -5
  35. package/dist/{chunk-TYJZL2XZ.js.map → chunk-CUB4F546.js.map} +1 -1
  36. package/dist/{chunk-RJE6LWWF.mjs → chunk-D7PCIMWU.mjs} +3 -3
  37. package/dist/{chunk-RJE6LWWF.mjs.map → chunk-D7PCIMWU.mjs.map} +1 -1
  38. package/dist/{chunk-CXE33IZN.mjs → chunk-FVTTG72Z.mjs} +3 -3
  39. package/dist/{chunk-CXE33IZN.mjs.map → chunk-FVTTG72Z.mjs.map} +1 -1
  40. package/dist/{chunk-SQRQYDB3.mjs → chunk-HJ4AS5DZ.mjs} +11 -11
  41. package/dist/{chunk-SQRQYDB3.mjs.map → chunk-HJ4AS5DZ.mjs.map} +1 -1
  42. package/dist/{chunk-4CJS5XLY.js → chunk-INLXNN7P.js} +4 -4
  43. package/dist/{chunk-4CJS5XLY.js.map → chunk-INLXNN7P.js.map} +1 -1
  44. package/dist/{chunk-U7CHPFU6.mjs → chunk-KITPRKQ4.mjs} +3 -3
  45. package/dist/{chunk-U7CHPFU6.mjs.map → chunk-KITPRKQ4.mjs.map} +1 -1
  46. package/dist/{chunk-BFJGY436.mjs → chunk-M2EMKIP5.mjs} +5 -3
  47. package/dist/chunk-M2EMKIP5.mjs.map +1 -0
  48. package/dist/{chunk-5JQDXMDN.js → chunk-MT34O3YL.js} +24 -24
  49. package/dist/{chunk-5JQDXMDN.js.map → chunk-MT34O3YL.js.map} +1 -1
  50. package/dist/{chunk-XEWKLVOD.mjs → chunk-O3RH43H3.mjs} +3 -3
  51. package/dist/{chunk-XEWKLVOD.mjs.map → chunk-O3RH43H3.mjs.map} +1 -1
  52. package/dist/{chunk-GFOBDFVW.js → chunk-QQEOKYEX.js} +17 -17
  53. package/dist/{chunk-GFOBDFVW.js.map → chunk-QQEOKYEX.js.map} +1 -1
  54. package/dist/{chunk-HX3A6ALC.mjs → chunk-RWVNXU7Z.mjs} +3 -3
  55. package/dist/{chunk-HX3A6ALC.mjs.map → chunk-RWVNXU7Z.mjs.map} +1 -1
  56. package/dist/{chunk-K27G7LLT.js → chunk-S4IZ5ATO.js} +5 -5
  57. package/dist/{chunk-K27G7LLT.js.map → chunk-S4IZ5ATO.js.map} +1 -1
  58. package/dist/{chunk-HHHCRTC7.js → chunk-WKKOBMXR.js} +5 -5
  59. package/dist/{chunk-HHHCRTC7.js.map → chunk-WKKOBMXR.js.map} +1 -1
  60. package/dist/{chunk-V7YRKFYK.mjs → chunk-YWK6YH6M.mjs} +3 -3
  61. package/dist/{chunk-V7YRKFYK.mjs.map → chunk-YWK6YH6M.mjs.map} +1 -1
  62. package/dist/{chunk-545TB6TH.js → chunk-ZDTJ3BPS.js} +11 -11
  63. package/dist/{chunk-545TB6TH.js.map → chunk-ZDTJ3BPS.js.map} +1 -1
  64. package/dist/{chunk-NJYBKWCD.mjs → chunk-ZRNPHFP3.mjs} +3 -3
  65. package/dist/{chunk-NJYBKWCD.mjs.map → chunk-ZRNPHFP3.mjs.map} +1 -1
  66. package/dist/entities/DopplerFactory.js +4 -4
  67. package/dist/entities/DopplerFactory.mjs +3 -3
  68. package/dist/entities/auction/DynamicAuction.js +3 -3
  69. package/dist/entities/auction/DynamicAuction.mjs +2 -2
  70. package/dist/entities/auction/MulticurvePool.js +4 -4
  71. package/dist/entities/auction/MulticurvePool.mjs +3 -3
  72. package/dist/entities/auction/StaticAuction.js +3 -3
  73. package/dist/entities/auction/StaticAuction.mjs +2 -2
  74. package/dist/entities/auction/index.js +8 -8
  75. package/dist/entities/auction/index.mjs +5 -5
  76. package/dist/entities/quoter/Quoter.js +3 -3
  77. package/dist/entities/quoter/Quoter.mjs +2 -2
  78. package/dist/entities/quoter/index.js +3 -3
  79. package/dist/entities/quoter/index.mjs +2 -2
  80. package/dist/index.js +31 -31
  81. package/dist/index.mjs +12 -12
  82. package/dist/types.d.mts +3 -3
  83. package/dist/types.d.ts +3 -3
  84. package/dist/types.js +7 -7
  85. package/dist/types.mjs +2 -2
  86. package/dist/utils/airlock.js +6 -6
  87. package/dist/utils/airlock.mjs +2 -2
  88. package/dist/utils/index.js +6 -6
  89. package/dist/utils/index.mjs +2 -2
  90. package/package.json +1 -1
  91. package/dist/chunk-AS5UUJRI.js.map +0 -1
  92. package/dist/chunk-BFJGY436.mjs.map +0 -1
  93. package/dist/chunk-JHPDKSC4.js.map +0 -1
  94. package/dist/chunk-NWZGO2CH.mjs.map +0 -1
package/README.md CHANGED
@@ -1165,6 +1165,26 @@ pnpm test airlock-whitelisting
1165
1165
  ALCHEMY_API_KEY=your_key_here pnpm test airlock-whitelisting
1166
1166
  ```
1167
1167
 
1168
+ To run fork tests (Anvil):
1169
+
1170
+ ```bash
1171
+ # all fork tests
1172
+ ALCHEMY_API_KEY=your_key_here pnpm test:fork
1173
+
1174
+ # chain-specific fork tests
1175
+ ALCHEMY_API_KEY=your_key_here TEST_CHAIN=base pnpm test:fork
1176
+ ALCHEMY_API_KEY=your_key_here TEST_CHAIN=base-sepolia pnpm test:fork
1177
+ ALCHEMY_API_KEY=your_key_here TEST_CHAIN=mainnet pnpm test:fork
1178
+ ALCHEMY_API_KEY=your_key_here TEST_CHAIN=eth-sepolia pnpm test:fork
1179
+ ```
1180
+
1181
+ You can also provide chain-specific RPC URLs directly:
1182
+
1183
+ ```bash
1184
+ ETH_MAINNET_RPC_URL=https://... TEST_CHAIN=mainnet pnpm test:fork
1185
+ ETH_SEPOLIA_RPC_URL=https://... TEST_CHAIN=eth-sepolia pnpm test:fork
1186
+ ```
1187
+
1168
1188
  ## Migration from Previous SDKs
1169
1189
 
1170
1190
  If you're migrating from `doppler-v3-sdk` or `doppler-v4-sdk`, see our [Migration Guide](./docs/migration-guide.md).
@@ -1,23 +1,23 @@
1
1
  'use strict';
2
2
 
3
- var chunk5JQDXMDN_js = require('./chunk-5JQDXMDN.js');
3
+ var chunkMT34O3YL_js = require('./chunk-MT34O3YL.js');
4
4
  require('./chunk-3PNCB4W5.js');
5
5
  require('./chunk-P7CHGWY7.js');
6
- require('./chunk-545TB6TH.js');
6
+ require('./chunk-ZDTJ3BPS.js');
7
7
  require('./chunk-WQHTNL5L.js');
8
8
  require('./chunk-X3UMAHOJ.js');
9
9
  require('./chunk-RXUJ4DUB.js');
10
10
  require('./chunk-VEIVYUYF.js');
11
11
  require('./chunk-YYLD3AJ7.js');
12
- require('./chunk-4CJS5XLY.js');
13
- require('./chunk-HHHCRTC7.js');
14
- require('./chunk-Y5RAENN5.js');
12
+ require('./chunk-INLXNN7P.js');
13
+ require('./chunk-WKKOBMXR.js');
14
+ require('./chunk-3L4DLMOK.js');
15
15
  require('./chunk-JIKAD4YL.js');
16
- require('./chunk-TYJZL2XZ.js');
17
- require('./chunk-GLMPU7VL.js');
18
- require('./chunk-COUZYFEE.js');
16
+ require('./chunk-CUB4F546.js');
17
+ require('./chunk-3XYDN2XB.js');
18
+ require('./chunk-5WYXNWNH.js');
19
19
  require('./chunk-SAX7P3MH.js');
20
- require('./chunk-GFOBDFVW.js');
20
+ require('./chunk-QQEOKYEX.js');
21
21
  require('./chunk-WTS75RUC.js');
22
22
  require('./chunk-UPVKABAV.js');
23
23
  require('./chunk-N33R22A2.js');
@@ -26,11 +26,11 @@ require('./chunk-7M57PU6V.js');
26
26
  require('./chunk-KHUE77HC.js');
27
27
  require('./chunk-4VWQNNNW.js');
28
28
  require('./chunk-OROTK4OT.js');
29
- require('./chunk-K27G7LLT.js');
29
+ require('./chunk-S4IZ5ATO.js');
30
30
  require('./chunk-XSJTASPK.js');
31
31
  require('./chunk-6BQY5EPB.js');
32
- require('./chunk-AS5UUJRI.js');
33
- require('./chunk-JHPDKSC4.js');
32
+ require('./chunk-COOVGAOE.js');
33
+ require('./chunk-5VV7STYK.js');
34
34
  require('./chunk-RLUMYHPI.js');
35
35
  require('./chunk-3MVW6UIW.js');
36
36
  require('./chunk-4XN6DQBW.js');
@@ -44,7 +44,7 @@ require('./chunk-OGYWNJGI.js');
44
44
 
45
45
  Object.defineProperty(exports, "DopplerSDK", {
46
46
  enumerable: true,
47
- get: function () { return chunk5JQDXMDN_js.DopplerSDK; }
47
+ get: function () { return chunkMT34O3YL_js.DopplerSDK; }
48
48
  });
49
49
  //# sourceMappingURL=DopplerSDK.js.map
50
50
  //# sourceMappingURL=DopplerSDK.js.map
@@ -1,21 +1,21 @@
1
- export { DopplerSDK } from './chunk-SQRQYDB3.mjs';
1
+ export { DopplerSDK } from './chunk-HJ4AS5DZ.mjs';
2
2
  import './chunk-SD7BHT2F.mjs';
3
3
  import './chunk-QSQGLWNY.mjs';
4
- import './chunk-HX3A6ALC.mjs';
4
+ import './chunk-RWVNXU7Z.mjs';
5
5
  import './chunk-FOESYJP3.mjs';
6
6
  import './chunk-RV64M4Q6.mjs';
7
7
  import './chunk-QOGBOT2M.mjs';
8
8
  import './chunk-XNMXN5SZ.mjs';
9
9
  import './chunk-KAZQJ24E.mjs';
10
- import './chunk-XEWKLVOD.mjs';
11
- import './chunk-NJYBKWCD.mjs';
12
- import './chunk-RJE6LWWF.mjs';
10
+ import './chunk-O3RH43H3.mjs';
11
+ import './chunk-ZRNPHFP3.mjs';
12
+ import './chunk-D7PCIMWU.mjs';
13
13
  import './chunk-P25HBGP5.mjs';
14
- import './chunk-CXE33IZN.mjs';
15
- import './chunk-36Y3N257.mjs';
16
- import './chunk-V7YRKFYK.mjs';
14
+ import './chunk-FVTTG72Z.mjs';
15
+ import './chunk-CS6FVODR.mjs';
16
+ import './chunk-YWK6YH6M.mjs';
17
17
  import './chunk-HH7HQ4HC.mjs';
18
- import './chunk-U7CHPFU6.mjs';
18
+ import './chunk-KITPRKQ4.mjs';
19
19
  import './chunk-5TL5V6UX.mjs';
20
20
  import './chunk-H3B54PFV.mjs';
21
21
  import './chunk-MQNSJCAW.mjs';
@@ -24,11 +24,11 @@ import './chunk-CFAAYL5M.mjs';
24
24
  import './chunk-CWTGQAOG.mjs';
25
25
  import './chunk-25GEBO3B.mjs';
26
26
  import './chunk-VGCXJRUV.mjs';
27
- import './chunk-RKPAL3SU.mjs';
27
+ import './chunk-AZH2P4JK.mjs';
28
28
  import './chunk-KOAC3BBP.mjs';
29
29
  import './chunk-IWJOPXYN.mjs';
30
- import './chunk-BFJGY436.mjs';
31
- import './chunk-NWZGO2CH.mjs';
30
+ import './chunk-M2EMKIP5.mjs';
31
+ import './chunk-ADAAU4F5.mjs';
32
32
  import './chunk-QFQXHDC7.mjs';
33
33
  import './chunk-E2NF4AQB.mjs';
34
34
  import './chunk-DOUF6NON.mjs';
@@ -2,6 +2,7 @@ import { Address } from 'viem';
2
2
 
3
3
  declare const CHAIN_IDS: {
4
4
  readonly MAINNET: 1;
5
+ readonly ETH_SEPOLIA: 11155111;
5
6
  readonly BASE: 8453;
6
7
  readonly BASE_SEPOLIA: 84532;
7
8
  readonly INK: 57073;
@@ -2,6 +2,7 @@ import { Address } from 'viem';
2
2
 
3
3
  declare const CHAIN_IDS: {
4
4
  readonly MAINNET: 1;
5
+ readonly ETH_SEPOLIA: 11155111;
5
6
  readonly BASE: 8453;
6
7
  readonly BASE_SEPOLIA: 84532;
7
8
  readonly INK: 57073;
package/dist/addresses.js CHANGED
@@ -1,29 +1,29 @@
1
1
  'use strict';
2
2
 
3
- var chunkJHPDKSC4_js = require('./chunk-JHPDKSC4.js');
3
+ var chunk5VV7STYK_js = require('./chunk-5VV7STYK.js');
4
4
  require('./chunk-RLUMYHPI.js');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "ADDRESSES", {
9
9
  enumerable: true,
10
- get: function () { return chunkJHPDKSC4_js.ADDRESSES; }
10
+ get: function () { return chunk5VV7STYK_js.ADDRESSES; }
11
11
  });
12
12
  Object.defineProperty(exports, "CHAIN_IDS", {
13
13
  enumerable: true,
14
- get: function () { return chunkJHPDKSC4_js.CHAIN_IDS; }
14
+ get: function () { return chunk5VV7STYK_js.CHAIN_IDS; }
15
15
  });
16
16
  Object.defineProperty(exports, "SUPPORTED_CHAIN_IDS", {
17
17
  enumerable: true,
18
- get: function () { return chunkJHPDKSC4_js.SUPPORTED_CHAIN_IDS; }
18
+ get: function () { return chunk5VV7STYK_js.SUPPORTED_CHAIN_IDS; }
19
19
  });
20
20
  Object.defineProperty(exports, "getAddresses", {
21
21
  enumerable: true,
22
- get: function () { return chunkJHPDKSC4_js.getAddresses; }
22
+ get: function () { return chunk5VV7STYK_js.getAddresses; }
23
23
  });
24
24
  Object.defineProperty(exports, "isSupportedChainId", {
25
25
  enumerable: true,
26
- get: function () { return chunkJHPDKSC4_js.isSupportedChainId; }
26
+ get: function () { return chunk5VV7STYK_js.isSupportedChainId; }
27
27
  });
28
28
  //# sourceMappingURL=addresses.js.map
29
29
  //# sourceMappingURL=addresses.js.map
@@ -1,4 +1,4 @@
1
- export { ADDRESSES, CHAIN_IDS, SUPPORTED_CHAIN_IDS, getAddresses, isSupportedChainId } from './chunk-NWZGO2CH.mjs';
1
+ export { ADDRESSES, CHAIN_IDS, SUPPORTED_CHAIN_IDS, getAddresses, isSupportedChainId } from './chunk-ADAAU4F5.mjs';
2
2
  import './chunk-QFQXHDC7.mjs';
3
3
  //# sourceMappingURL=addresses.mjs.map
4
4
  //# sourceMappingURL=addresses.mjs.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYJZL2XZ_js = require('../chunk-TYJZL2XZ.js');
3
+ var chunkCUB4F546_js = require('../chunk-CUB4F546.js');
4
4
  require('../chunk-SAX7P3MH.js');
5
5
  require('../chunk-WTS75RUC.js');
6
6
  require('../chunk-UPVKABAV.js');
@@ -10,11 +10,11 @@ require('../chunk-7M57PU6V.js');
10
10
  require('../chunk-KHUE77HC.js');
11
11
  require('../chunk-4VWQNNNW.js');
12
12
  require('../chunk-OROTK4OT.js');
13
- require('../chunk-K27G7LLT.js');
13
+ require('../chunk-S4IZ5ATO.js');
14
14
  require('../chunk-XSJTASPK.js');
15
15
  require('../chunk-6BQY5EPB.js');
16
- require('../chunk-AS5UUJRI.js');
17
- require('../chunk-JHPDKSC4.js');
16
+ require('../chunk-COOVGAOE.js');
17
+ require('../chunk-5VV7STYK.js');
18
18
  require('../chunk-RLUMYHPI.js');
19
19
  require('../chunk-3MVW6UIW.js');
20
20
  require('../chunk-4XN6DQBW.js');
@@ -28,7 +28,7 @@ require('../chunk-OGYWNJGI.js');
28
28
 
29
29
  Object.defineProperty(exports, "DynamicAuctionBuilder", {
30
30
  enumerable: true,
31
- get: function () { return chunkTYJZL2XZ_js.DynamicAuctionBuilder; }
31
+ get: function () { return chunkCUB4F546_js.DynamicAuctionBuilder; }
32
32
  });
33
33
  //# sourceMappingURL=DynamicAuctionBuilder.js.map
34
34
  //# sourceMappingURL=DynamicAuctionBuilder.js.map
@@ -1,4 +1,4 @@
1
- export { DynamicAuctionBuilder } from '../chunk-CXE33IZN.mjs';
1
+ export { DynamicAuctionBuilder } from '../chunk-FVTTG72Z.mjs';
2
2
  import '../chunk-HH7HQ4HC.mjs';
3
3
  import '../chunk-5TL5V6UX.mjs';
4
4
  import '../chunk-H3B54PFV.mjs';
@@ -8,11 +8,11 @@ import '../chunk-CFAAYL5M.mjs';
8
8
  import '../chunk-CWTGQAOG.mjs';
9
9
  import '../chunk-25GEBO3B.mjs';
10
10
  import '../chunk-VGCXJRUV.mjs';
11
- import '../chunk-RKPAL3SU.mjs';
11
+ import '../chunk-AZH2P4JK.mjs';
12
12
  import '../chunk-KOAC3BBP.mjs';
13
13
  import '../chunk-IWJOPXYN.mjs';
14
- import '../chunk-BFJGY436.mjs';
15
- import '../chunk-NWZGO2CH.mjs';
14
+ import '../chunk-M2EMKIP5.mjs';
15
+ import '../chunk-ADAAU4F5.mjs';
16
16
  import '../chunk-QFQXHDC7.mjs';
17
17
  import '../chunk-E2NF4AQB.mjs';
18
18
  import '../chunk-DOUF6NON.mjs';
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkGLMPU7VL_js = require('../chunk-GLMPU7VL.js');
3
+ var chunk3XYDN2XB_js = require('../chunk-3XYDN2XB.js');
4
4
  require('../chunk-SAX7P3MH.js');
5
5
  require('../chunk-WTS75RUC.js');
6
6
  require('../chunk-UPVKABAV.js');
@@ -10,11 +10,11 @@ require('../chunk-7M57PU6V.js');
10
10
  require('../chunk-KHUE77HC.js');
11
11
  require('../chunk-4VWQNNNW.js');
12
12
  require('../chunk-OROTK4OT.js');
13
- require('../chunk-K27G7LLT.js');
13
+ require('../chunk-S4IZ5ATO.js');
14
14
  require('../chunk-XSJTASPK.js');
15
15
  require('../chunk-6BQY5EPB.js');
16
- require('../chunk-AS5UUJRI.js');
17
- require('../chunk-JHPDKSC4.js');
16
+ require('../chunk-COOVGAOE.js');
17
+ require('../chunk-5VV7STYK.js');
18
18
  require('../chunk-RLUMYHPI.js');
19
19
  require('../chunk-3MVW6UIW.js');
20
20
  require('../chunk-4XN6DQBW.js');
@@ -28,7 +28,7 @@ require('../chunk-OGYWNJGI.js');
28
28
 
29
29
  Object.defineProperty(exports, "MulticurveBuilder", {
30
30
  enumerable: true,
31
- get: function () { return chunkGLMPU7VL_js.MulticurveBuilder; }
31
+ get: function () { return chunk3XYDN2XB_js.MulticurveBuilder; }
32
32
  });
33
33
  //# sourceMappingURL=MulticurveBuilder.js.map
34
34
  //# sourceMappingURL=MulticurveBuilder.js.map
@@ -1,4 +1,4 @@
1
- export { MulticurveBuilder } from '../chunk-36Y3N257.mjs';
1
+ export { MulticurveBuilder } from '../chunk-CS6FVODR.mjs';
2
2
  import '../chunk-HH7HQ4HC.mjs';
3
3
  import '../chunk-5TL5V6UX.mjs';
4
4
  import '../chunk-H3B54PFV.mjs';
@@ -8,11 +8,11 @@ import '../chunk-CFAAYL5M.mjs';
8
8
  import '../chunk-CWTGQAOG.mjs';
9
9
  import '../chunk-25GEBO3B.mjs';
10
10
  import '../chunk-VGCXJRUV.mjs';
11
- import '../chunk-RKPAL3SU.mjs';
11
+ import '../chunk-AZH2P4JK.mjs';
12
12
  import '../chunk-KOAC3BBP.mjs';
13
13
  import '../chunk-IWJOPXYN.mjs';
14
- import '../chunk-BFJGY436.mjs';
15
- import '../chunk-NWZGO2CH.mjs';
14
+ import '../chunk-M2EMKIP5.mjs';
15
+ import '../chunk-ADAAU4F5.mjs';
16
16
  import '../chunk-QFQXHDC7.mjs';
17
17
  import '../chunk-E2NF4AQB.mjs';
18
18
  import '../chunk-DOUF6NON.mjs';
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkCOUZYFEE_js = require('../chunk-COUZYFEE.js');
3
+ var chunk5WYXNWNH_js = require('../chunk-5WYXNWNH.js');
4
4
  require('../chunk-SAX7P3MH.js');
5
5
  require('../chunk-WTS75RUC.js');
6
6
  require('../chunk-UPVKABAV.js');
@@ -10,11 +10,11 @@ require('../chunk-7M57PU6V.js');
10
10
  require('../chunk-KHUE77HC.js');
11
11
  require('../chunk-4VWQNNNW.js');
12
12
  require('../chunk-OROTK4OT.js');
13
- require('../chunk-K27G7LLT.js');
13
+ require('../chunk-S4IZ5ATO.js');
14
14
  require('../chunk-XSJTASPK.js');
15
15
  require('../chunk-6BQY5EPB.js');
16
- require('../chunk-AS5UUJRI.js');
17
- require('../chunk-JHPDKSC4.js');
16
+ require('../chunk-COOVGAOE.js');
17
+ require('../chunk-5VV7STYK.js');
18
18
  require('../chunk-RLUMYHPI.js');
19
19
  require('../chunk-3MVW6UIW.js');
20
20
  require('../chunk-4XN6DQBW.js');
@@ -28,7 +28,7 @@ require('../chunk-OGYWNJGI.js');
28
28
 
29
29
  Object.defineProperty(exports, "StaticAuctionBuilder", {
30
30
  enumerable: true,
31
- get: function () { return chunkCOUZYFEE_js.StaticAuctionBuilder; }
31
+ get: function () { return chunk5WYXNWNH_js.StaticAuctionBuilder; }
32
32
  });
33
33
  //# sourceMappingURL=StaticAuctionBuilder.js.map
34
34
  //# sourceMappingURL=StaticAuctionBuilder.js.map
@@ -1,4 +1,4 @@
1
- export { StaticAuctionBuilder } from '../chunk-V7YRKFYK.mjs';
1
+ export { StaticAuctionBuilder } from '../chunk-YWK6YH6M.mjs';
2
2
  import '../chunk-HH7HQ4HC.mjs';
3
3
  import '../chunk-5TL5V6UX.mjs';
4
4
  import '../chunk-H3B54PFV.mjs';
@@ -8,11 +8,11 @@ import '../chunk-CFAAYL5M.mjs';
8
8
  import '../chunk-CWTGQAOG.mjs';
9
9
  import '../chunk-25GEBO3B.mjs';
10
10
  import '../chunk-VGCXJRUV.mjs';
11
- import '../chunk-RKPAL3SU.mjs';
11
+ import '../chunk-AZH2P4JK.mjs';
12
12
  import '../chunk-KOAC3BBP.mjs';
13
13
  import '../chunk-IWJOPXYN.mjs';
14
- import '../chunk-BFJGY436.mjs';
15
- import '../chunk-NWZGO2CH.mjs';
14
+ import '../chunk-M2EMKIP5.mjs';
15
+ import '../chunk-ADAAU4F5.mjs';
16
16
  import '../chunk-QFQXHDC7.mjs';
17
17
  import '../chunk-E2NF4AQB.mjs';
18
18
  import '../chunk-DOUF6NON.mjs';
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  require('../chunk-JIKAD4YL.js');
4
- var chunkTYJZL2XZ_js = require('../chunk-TYJZL2XZ.js');
5
- var chunkGLMPU7VL_js = require('../chunk-GLMPU7VL.js');
6
- var chunkCOUZYFEE_js = require('../chunk-COUZYFEE.js');
4
+ var chunkCUB4F546_js = require('../chunk-CUB4F546.js');
5
+ var chunk3XYDN2XB_js = require('../chunk-3XYDN2XB.js');
6
+ var chunk5WYXNWNH_js = require('../chunk-5WYXNWNH.js');
7
7
  var chunkSAX7P3MH_js = require('../chunk-SAX7P3MH.js');
8
8
  require('../chunk-WTS75RUC.js');
9
9
  require('../chunk-UPVKABAV.js');
@@ -13,11 +13,11 @@ require('../chunk-7M57PU6V.js');
13
13
  require('../chunk-KHUE77HC.js');
14
14
  require('../chunk-4VWQNNNW.js');
15
15
  require('../chunk-OROTK4OT.js');
16
- require('../chunk-K27G7LLT.js');
16
+ require('../chunk-S4IZ5ATO.js');
17
17
  require('../chunk-XSJTASPK.js');
18
18
  require('../chunk-6BQY5EPB.js');
19
- require('../chunk-AS5UUJRI.js');
20
- require('../chunk-JHPDKSC4.js');
19
+ require('../chunk-COOVGAOE.js');
20
+ require('../chunk-5VV7STYK.js');
21
21
  require('../chunk-RLUMYHPI.js');
22
22
  require('../chunk-3MVW6UIW.js');
23
23
  require('../chunk-4XN6DQBW.js');
@@ -31,15 +31,15 @@ require('../chunk-OGYWNJGI.js');
31
31
 
32
32
  Object.defineProperty(exports, "DynamicAuctionBuilder", {
33
33
  enumerable: true,
34
- get: function () { return chunkTYJZL2XZ_js.DynamicAuctionBuilder; }
34
+ get: function () { return chunkCUB4F546_js.DynamicAuctionBuilder; }
35
35
  });
36
36
  Object.defineProperty(exports, "MulticurveBuilder", {
37
37
  enumerable: true,
38
- get: function () { return chunkGLMPU7VL_js.MulticurveBuilder; }
38
+ get: function () { return chunk3XYDN2XB_js.MulticurveBuilder; }
39
39
  });
40
40
  Object.defineProperty(exports, "StaticAuctionBuilder", {
41
41
  enumerable: true,
42
- get: function () { return chunkCOUZYFEE_js.StaticAuctionBuilder; }
42
+ get: function () { return chunk5WYXNWNH_js.StaticAuctionBuilder; }
43
43
  });
44
44
  Object.defineProperty(exports, "MARKET_CAP_PRESETS", {
45
45
  enumerable: true,
@@ -1,7 +1,7 @@
1
1
  import '../chunk-P25HBGP5.mjs';
2
- export { DynamicAuctionBuilder } from '../chunk-CXE33IZN.mjs';
3
- export { MulticurveBuilder } from '../chunk-36Y3N257.mjs';
4
- export { StaticAuctionBuilder } from '../chunk-V7YRKFYK.mjs';
2
+ export { DynamicAuctionBuilder } from '../chunk-FVTTG72Z.mjs';
3
+ export { MulticurveBuilder } from '../chunk-CS6FVODR.mjs';
4
+ export { StaticAuctionBuilder } from '../chunk-YWK6YH6M.mjs';
5
5
  export { MARKET_CAP_PRESETS, MARKET_CAP_PRESET_ORDER, buildCurvesFromPresets, computeTicks } from '../chunk-HH7HQ4HC.mjs';
6
6
  import '../chunk-5TL5V6UX.mjs';
7
7
  import '../chunk-H3B54PFV.mjs';
@@ -11,11 +11,11 @@ import '../chunk-CFAAYL5M.mjs';
11
11
  import '../chunk-CWTGQAOG.mjs';
12
12
  import '../chunk-25GEBO3B.mjs';
13
13
  import '../chunk-VGCXJRUV.mjs';
14
- import '../chunk-RKPAL3SU.mjs';
14
+ import '../chunk-AZH2P4JK.mjs';
15
15
  import '../chunk-KOAC3BBP.mjs';
16
16
  import '../chunk-IWJOPXYN.mjs';
17
- import '../chunk-BFJGY436.mjs';
18
- import '../chunk-NWZGO2CH.mjs';
17
+ import '../chunk-M2EMKIP5.mjs';
18
+ import '../chunk-ADAAU4F5.mjs';
19
19
  import '../chunk-QFQXHDC7.mjs';
20
20
  import '../chunk-E2NF4AQB.mjs';
21
21
  import '../chunk-DOUF6NON.mjs';
@@ -9,10 +9,10 @@ require('../chunk-7M57PU6V.js');
9
9
  require('../chunk-KHUE77HC.js');
10
10
  require('../chunk-4VWQNNNW.js');
11
11
  require('../chunk-OROTK4OT.js');
12
- require('../chunk-K27G7LLT.js');
12
+ require('../chunk-S4IZ5ATO.js');
13
13
  require('../chunk-XSJTASPK.js');
14
14
  require('../chunk-6BQY5EPB.js');
15
- require('../chunk-JHPDKSC4.js');
15
+ require('../chunk-5VV7STYK.js');
16
16
  require('../chunk-RLUMYHPI.js');
17
17
  require('../chunk-3MVW6UIW.js');
18
18
  require('../chunk-4XN6DQBW.js');
@@ -7,10 +7,10 @@ import '../chunk-CFAAYL5M.mjs';
7
7
  import '../chunk-CWTGQAOG.mjs';
8
8
  import '../chunk-25GEBO3B.mjs';
9
9
  import '../chunk-VGCXJRUV.mjs';
10
- import '../chunk-RKPAL3SU.mjs';
10
+ import '../chunk-AZH2P4JK.mjs';
11
11
  import '../chunk-KOAC3BBP.mjs';
12
12
  import '../chunk-IWJOPXYN.mjs';
13
- import '../chunk-NWZGO2CH.mjs';
13
+ import '../chunk-ADAAU4F5.mjs';
14
14
  import '../chunk-QFQXHDC7.mjs';
15
15
  import '../chunk-E2NF4AQB.mjs';
16
16
  import '../chunk-DOUF6NON.mjs';
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkJHPDKSC4_js = require('./chunk-JHPDKSC4.js');
3
+ var chunk5VV7STYK_js = require('./chunk-5VV7STYK.js');
4
4
  var chunk3MVW6UIW_js = require('./chunk-3MVW6UIW.js');
5
5
  var viem = require('viem');
6
6
 
@@ -50,7 +50,7 @@ var StaticAuction = class {
50
50
  })
51
51
  ]);
52
52
  const chainId = await this.rpc.getChainId();
53
- const addresses = chunkJHPDKSC4_js.getAddresses(chainId);
53
+ const addresses = chunk5VV7STYK_js.getAddresses(chainId);
54
54
  const assetData = await this.rpc.readContract({
55
55
  address: addresses.airlock,
56
56
  abi: chunk3MVW6UIW_js.airlockAbi,
@@ -87,7 +87,7 @@ var StaticAuction = class {
87
87
  async hasGraduated() {
88
88
  const tokenAddress = await this.getTokenAddress();
89
89
  const chainId = await this.rpc.getChainId();
90
- const addresses = chunkJHPDKSC4_js.getAddresses(chainId);
90
+ const addresses = chunk5VV7STYK_js.getAddresses(chainId);
91
91
  const assetData = await this.rpc.readContract({
92
92
  address: addresses.airlock,
93
93
  abi: chunk3MVW6UIW_js.airlockAbi,
@@ -139,5 +139,5 @@ var StaticAuction = class {
139
139
  };
140
140
 
141
141
  exports.StaticAuction = StaticAuction;
142
- //# sourceMappingURL=chunk-Y5RAENN5.js.map
143
- //# sourceMappingURL=chunk-Y5RAENN5.js.map
142
+ //# sourceMappingURL=chunk-3L4DLMOK.js.map
143
+ //# sourceMappingURL=chunk-3L4DLMOK.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/entities/auction/StaticAuction.ts"],"names":["uniswapV3PoolAbi","getAddresses","airlockAbi","zeroAddress"],"mappings":"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","file":"chunk-Y5RAENN5.js","sourcesContent":["import { type Address, zeroAddress, type PublicClient } from 'viem';\nimport type { PoolInfo, SupportedPublicClient } from '../../types';\nimport { uniswapV3PoolAbi, airlockAbi } from '../../abis';\nimport { getAddresses } from '../../addresses';\n\n/**\n * StaticAuction class for interacting with static auctions (Uniswap V3 based)\n *\n * Static auctions use a fixed price range on Uniswap V3 for initial liquidity bootstrapping.\n * This is ideal for simple, predictable price discovery events.\n */\nexport class StaticAuction {\n private client: SupportedPublicClient;\n private poolAddress: Address;\n private get rpc(): PublicClient {\n return this.client as PublicClient;\n }\n\n constructor(client: SupportedPublicClient, poolAddress: Address) {\n this.client = client;\n this.poolAddress = poolAddress;\n }\n\n /**\n * Get the pool address\n */\n getAddress(): Address {\n return this.poolAddress;\n }\n\n /**\n * Get current pool information\n */\n async getPoolInfo(): Promise<PoolInfo> {\n // Fetch all pool data in parallel\n const [slot0, liquidity, token0, token1, fee] = await Promise.all([\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'slot0',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'liquidity',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token0',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token1',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'fee',\n }),\n ]);\n\n // Determine which token is the auction token and which is numeraire\n // This requires checking with the Airlock contract\n const chainId = await this.rpc.getChainId();\n const addresses = getAddresses(chainId);\n\n const assetData = await this.rpc.readContract({\n address: addresses.airlock,\n abi: airlockAbi,\n functionName: 'getAssetData',\n args: [token0],\n });\n // Determine whether token0 is the auction token.\n // Handle both tuple and object return shapes from getAssetData.\n // Tuple (legacy): [numeraire, timelock, governance, liquidityMigrator, poolInitializer, pool, ...]\n // Object (unified): { poolOrHook, liquidityMigrator, numeraire, ... }\n let poolOrHook0: any;\n if (Array.isArray(assetData)) {\n poolOrHook0 = assetData[5];\n } else if (assetData && typeof assetData === 'object') {\n poolOrHook0 = (assetData as any).poolOrHook ?? (assetData as any).pool;\n }\n const isToken0AuctionToken = poolOrHook0 && poolOrHook0 !== zeroAddress;\n\n return {\n address: this.poolAddress,\n tokenAddress: isToken0AuctionToken ? token0 : token1,\n numeraireAddress: isToken0AuctionToken ? token1 : token0,\n fee,\n liquidity,\n sqrtPriceX96: slot0[0], // First element is sqrtPriceX96\n };\n }\n\n /**\n * Get the token address for this auction\n */\n async getTokenAddress(): Promise<Address> {\n const poolInfo = await this.getPoolInfo();\n return poolInfo.tokenAddress;\n }\n\n /**\n * Check if the auction has graduated (ready for migration)\n */\n async hasGraduated(): Promise<boolean> {\n const tokenAddress = await this.getTokenAddress();\n const chainId = await this.rpc.getChainId();\n const addresses = getAddresses(chainId);\n\n const assetData = await this.rpc.readContract({\n address: addresses.airlock,\n abi: airlockAbi,\n functionName: 'getAssetData',\n args: [tokenAddress],\n });\n // Check if the asset is graduated (liquidityMigrator is zero)\n const liquidityMigrator = Array.isArray(assetData)\n ? (assetData as any)[3]\n : (assetData as any)?.liquidityMigrator;\n return liquidityMigrator === zeroAddress;\n }\n\n /**\n * Get the current price in the pool\n * Returns the price of token in terms of numeraire (token/numeraire)\n */\n async getCurrentPrice(): Promise<bigint> {\n const poolInfo = await this.getPoolInfo();\n\n // Get token ordering\n const [token0] = await Promise.all([\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token0',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token1',\n }),\n ]);\n\n // Calculate price from sqrtPriceX96\n // sqrtPriceX96 = sqrt(price) * 2^96\n // price = (sqrtPriceX96 / 2^96)^2\n const sqrtPriceX96 = poolInfo.sqrtPriceX96;\n const Q96 = BigInt(2) ** BigInt(96);\n\n // price0 = amount of token1 per token0\n const sqrtPriceX96Squared = sqrtPriceX96 * sqrtPriceX96;\n const Q96Squared = Q96 * Q96;\n const price0 = sqrtPriceX96Squared / Q96Squared;\n\n // Return price based on which token is the auction token\n if (poolInfo.tokenAddress === token0) {\n // Auction token is token0, return price in terms of token1 (numeraire)\n return price0;\n } else {\n // Auction token is token1, return reciprocal price\n // price1 = 1 / price0 (with precision handling)\n return Q96Squared / price0;\n }\n }\n\n /**\n * Get total liquidity in the pool\n */\n async getTotalLiquidity(): Promise<bigint> {\n return await this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'liquidity',\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/entities/auction/StaticAuction.ts"],"names":["uniswapV3PoolAbi","getAddresses","airlockAbi","zeroAddress"],"mappings":"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","file":"chunk-3L4DLMOK.js","sourcesContent":["import { type Address, zeroAddress, type PublicClient } from 'viem';\nimport type { PoolInfo, SupportedPublicClient } from '../../types';\nimport { uniswapV3PoolAbi, airlockAbi } from '../../abis';\nimport { getAddresses } from '../../addresses';\n\n/**\n * StaticAuction class for interacting with static auctions (Uniswap V3 based)\n *\n * Static auctions use a fixed price range on Uniswap V3 for initial liquidity bootstrapping.\n * This is ideal for simple, predictable price discovery events.\n */\nexport class StaticAuction {\n private client: SupportedPublicClient;\n private poolAddress: Address;\n private get rpc(): PublicClient {\n return this.client as PublicClient;\n }\n\n constructor(client: SupportedPublicClient, poolAddress: Address) {\n this.client = client;\n this.poolAddress = poolAddress;\n }\n\n /**\n * Get the pool address\n */\n getAddress(): Address {\n return this.poolAddress;\n }\n\n /**\n * Get current pool information\n */\n async getPoolInfo(): Promise<PoolInfo> {\n // Fetch all pool data in parallel\n const [slot0, liquidity, token0, token1, fee] = await Promise.all([\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'slot0',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'liquidity',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token0',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token1',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'fee',\n }),\n ]);\n\n // Determine which token is the auction token and which is numeraire\n // This requires checking with the Airlock contract\n const chainId = await this.rpc.getChainId();\n const addresses = getAddresses(chainId);\n\n const assetData = await this.rpc.readContract({\n address: addresses.airlock,\n abi: airlockAbi,\n functionName: 'getAssetData',\n args: [token0],\n });\n // Determine whether token0 is the auction token.\n // Handle both tuple and object return shapes from getAssetData.\n // Tuple (legacy): [numeraire, timelock, governance, liquidityMigrator, poolInitializer, pool, ...]\n // Object (unified): { poolOrHook, liquidityMigrator, numeraire, ... }\n let poolOrHook0: any;\n if (Array.isArray(assetData)) {\n poolOrHook0 = assetData[5];\n } else if (assetData && typeof assetData === 'object') {\n poolOrHook0 = (assetData as any).poolOrHook ?? (assetData as any).pool;\n }\n const isToken0AuctionToken = poolOrHook0 && poolOrHook0 !== zeroAddress;\n\n return {\n address: this.poolAddress,\n tokenAddress: isToken0AuctionToken ? token0 : token1,\n numeraireAddress: isToken0AuctionToken ? token1 : token0,\n fee,\n liquidity,\n sqrtPriceX96: slot0[0], // First element is sqrtPriceX96\n };\n }\n\n /**\n * Get the token address for this auction\n */\n async getTokenAddress(): Promise<Address> {\n const poolInfo = await this.getPoolInfo();\n return poolInfo.tokenAddress;\n }\n\n /**\n * Check if the auction has graduated (ready for migration)\n */\n async hasGraduated(): Promise<boolean> {\n const tokenAddress = await this.getTokenAddress();\n const chainId = await this.rpc.getChainId();\n const addresses = getAddresses(chainId);\n\n const assetData = await this.rpc.readContract({\n address: addresses.airlock,\n abi: airlockAbi,\n functionName: 'getAssetData',\n args: [tokenAddress],\n });\n // Check if the asset is graduated (liquidityMigrator is zero)\n const liquidityMigrator = Array.isArray(assetData)\n ? (assetData as any)[3]\n : (assetData as any)?.liquidityMigrator;\n return liquidityMigrator === zeroAddress;\n }\n\n /**\n * Get the current price in the pool\n * Returns the price of token in terms of numeraire (token/numeraire)\n */\n async getCurrentPrice(): Promise<bigint> {\n const poolInfo = await this.getPoolInfo();\n\n // Get token ordering\n const [token0] = await Promise.all([\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token0',\n }),\n this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'token1',\n }),\n ]);\n\n // Calculate price from sqrtPriceX96\n // sqrtPriceX96 = sqrt(price) * 2^96\n // price = (sqrtPriceX96 / 2^96)^2\n const sqrtPriceX96 = poolInfo.sqrtPriceX96;\n const Q96 = BigInt(2) ** BigInt(96);\n\n // price0 = amount of token1 per token0\n const sqrtPriceX96Squared = sqrtPriceX96 * sqrtPriceX96;\n const Q96Squared = Q96 * Q96;\n const price0 = sqrtPriceX96Squared / Q96Squared;\n\n // Return price based on which token is the auction token\n if (poolInfo.tokenAddress === token0) {\n // Auction token is token0, return price in terms of token1 (numeraire)\n return price0;\n } else {\n // Auction token is token1, return reciprocal price\n // price1 = 1 / price0 (with precision handling)\n return Q96Squared / price0;\n }\n }\n\n /**\n * Get total liquidity in the pool\n */\n async getTotalLiquidity(): Promise<bigint> {\n return await this.rpc.readContract({\n address: this.poolAddress,\n abi: uniswapV3PoolAbi,\n functionName: 'liquidity',\n });\n }\n}\n"]}
@@ -3,7 +3,7 @@
3
3
  var chunkSAX7P3MH_js = require('./chunk-SAX7P3MH.js');
4
4
  var chunkN33R22A2_js = require('./chunk-N33R22A2.js');
5
5
  var chunk6BQY5EPB_js = require('./chunk-6BQY5EPB.js');
6
- var chunkAS5UUJRI_js = require('./chunk-AS5UUJRI.js');
6
+ var chunkCOOVGAOE_js = require('./chunk-COOVGAOE.js');
7
7
 
8
8
  // src/builders/MulticurveBuilder.ts
9
9
  var MulticurveBuilder = class _MulticurveBuilder {
@@ -563,8 +563,8 @@ var MulticurveBuilder = class _MulticurveBuilder {
563
563
  }
564
564
  const schedule = initializer.type === "scheduled" ? { startTime: initializer.startTime } : void 0;
565
565
  dopplerHook = initializer.type === "rehype" ? initializer.config : void 0;
566
- const governance = this.governance ?? (chunkAS5UUJRI_js.isNoOpEnabledChain(this.chainId) ? { type: "noOp" } : { type: "default" });
567
- if (governance.type === "launchpad" && !chunkAS5UUJRI_js.isLaunchpadEnabledChain(this.chainId)) {
566
+ const governance = this.governance ?? (chunkCOOVGAOE_js.isNoOpEnabledChain(this.chainId) ? { type: "noOp" } : { type: "default" });
567
+ if (governance.type === "launchpad" && !chunkCOOVGAOE_js.isLaunchpadEnabledChain(this.chainId)) {
568
568
  throw new Error(
569
569
  `Launchpad governance is not supported on chain ${this.chainId}. Use a supported chain or a different governance type.`
570
570
  );
@@ -588,5 +588,5 @@ var MulticurveBuilder = class _MulticurveBuilder {
588
588
  };
589
589
 
590
590
  exports.MulticurveBuilder = MulticurveBuilder;
591
- //# sourceMappingURL=chunk-GLMPU7VL.js.map
592
- //# sourceMappingURL=chunk-GLMPU7VL.js.map
591
+ //# sourceMappingURL=chunk-3XYDN2XB.js.map
592
+ //# sourceMappingURL=chunk-3XYDN2XB.js.map