@bananapus/nana-sdk-core 1.4.0 → 1.5.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.
Files changed (235) hide show
  1. package/dist/cjs/utils/token.d.ts +2 -2
  2. package/dist/cjs/utils/token.d.ts.map +1 -1
  3. package/dist/cjs/utils/token.js +30 -9
  4. package/dist/cjs/utils/token.js.map +1 -1
  5. package/dist/cjs/v6/pay.d.ts +25 -0
  6. package/dist/cjs/v6/pay.d.ts.map +1 -1
  7. package/dist/cjs/v6/pay.js +31 -0
  8. package/dist/cjs/v6/pay.js.map +1 -1
  9. package/dist/cjs/v6/uniswapV4.d.ts +87 -1
  10. package/dist/cjs/v6/uniswapV4.d.ts.map +1 -1
  11. package/dist/cjs/v6/uniswapV4.js +191 -1
  12. package/dist/cjs/v6/uniswapV4.js.map +1 -1
  13. package/dist/esm/utils/token.d.ts +2 -2
  14. package/dist/esm/utils/token.d.ts.map +1 -1
  15. package/dist/esm/utils/token.js +30 -9
  16. package/dist/esm/utils/token.js.map +1 -1
  17. package/dist/esm/v6/pay.d.ts +25 -0
  18. package/dist/esm/v6/pay.d.ts.map +1 -1
  19. package/dist/esm/v6/pay.js +31 -1
  20. package/dist/esm/v6/pay.js.map +1 -1
  21. package/dist/esm/v6/uniswapV4.d.ts +87 -1
  22. package/dist/esm/v6/uniswapV4.d.ts.map +1 -1
  23. package/dist/esm/v6/uniswapV4.js +188 -1
  24. package/dist/esm/v6/uniswapV4.js.map +1 -1
  25. package/package.json +17 -10
  26. package/dist/cjs/utils/data.test.d.ts +0 -2
  27. package/dist/cjs/utils/data.test.d.ts.map +0 -1
  28. package/dist/cjs/utils/data.test.js +0 -27
  29. package/dist/cjs/utils/data.test.js.map +0 -1
  30. package/dist/cjs/utils/deploy.test.d.ts +0 -2
  31. package/dist/cjs/utils/deploy.test.d.ts.map +0 -1
  32. package/dist/cjs/utils/deploy.test.js +0 -65
  33. package/dist/cjs/utils/deploy.test.js.map +0 -1
  34. package/dist/cjs/utils/fee.test.d.ts +0 -2
  35. package/dist/cjs/utils/fee.test.d.ts.map +0 -1
  36. package/dist/cjs/utils/fee.test.js +0 -11
  37. package/dist/cjs/utils/fee.test.js.map +0 -1
  38. package/dist/cjs/utils/format.test.d.ts +0 -2
  39. package/dist/cjs/utils/format.test.d.ts.map +0 -1
  40. package/dist/cjs/utils/format.test.js +0 -27
  41. package/dist/cjs/utils/format.test.js.map +0 -1
  42. package/dist/cjs/utils/ipfs.test.d.ts +0 -2
  43. package/dist/cjs/utils/ipfs.test.d.ts.map +0 -1
  44. package/dist/cjs/utils/ipfs.test.js +0 -67
  45. package/dist/cjs/utils/ipfs.test.js.map +0 -1
  46. package/dist/cjs/utils/revnet.test.d.ts +0 -2
  47. package/dist/cjs/utils/revnet.test.d.ts.map +0 -1
  48. package/dist/cjs/utils/revnet.test.js +0 -12
  49. package/dist/cjs/utils/revnet.test.js.map +0 -1
  50. package/dist/cjs/utils/ruleset.test.d.ts +0 -2
  51. package/dist/cjs/utils/ruleset.test.d.ts.map +0 -1
  52. package/dist/cjs/utils/ruleset.test.js +0 -23
  53. package/dist/cjs/utils/ruleset.test.js.map +0 -1
  54. package/dist/cjs/utils/token.test.d.ts +0 -2
  55. package/dist/cjs/utils/token.test.d.ts.map +0 -1
  56. package/dist/cjs/utils/token.test.js +0 -40
  57. package/dist/cjs/utils/token.test.js.map +0 -1
  58. package/dist/cjs/utils/urn.test.d.ts +0 -2
  59. package/dist/cjs/utils/urn.test.d.ts.map +0 -1
  60. package/dist/cjs/utils/urn.test.js +0 -114
  61. package/dist/cjs/utils/urn.test.js.map +0 -1
  62. package/dist/cjs/v6/cashOut.test.d.ts +0 -2
  63. package/dist/cjs/v6/cashOut.test.d.ts.map +0 -1
  64. package/dist/cjs/v6/cashOut.test.js +0 -122
  65. package/dist/cjs/v6/cashOut.test.js.map +0 -1
  66. package/dist/cjs/v6/currency.test.d.ts +0 -2
  67. package/dist/cjs/v6/currency.test.d.ts.map +0 -1
  68. package/dist/cjs/v6/currency.test.js +0 -26
  69. package/dist/cjs/v6/currency.test.js.map +0 -1
  70. package/dist/cjs/v6/fees.test.d.ts +0 -2
  71. package/dist/cjs/v6/fees.test.d.ts.map +0 -1
  72. package/dist/cjs/v6/fees.test.js +0 -40
  73. package/dist/cjs/v6/fees.test.js.map +0 -1
  74. package/dist/cjs/v6/launch.test.d.ts +0 -2
  75. package/dist/cjs/v6/launch.test.d.ts.map +0 -1
  76. package/dist/cjs/v6/launch.test.js +0 -162
  77. package/dist/cjs/v6/launch.test.js.map +0 -1
  78. package/dist/cjs/v6/loans.test.d.ts +0 -2
  79. package/dist/cjs/v6/loans.test.d.ts.map +0 -1
  80. package/dist/cjs/v6/loans.test.js +0 -129
  81. package/dist/cjs/v6/loans.test.js.map +0 -1
  82. package/dist/cjs/v6/nft.test.d.ts +0 -2
  83. package/dist/cjs/v6/nft.test.d.ts.map +0 -1
  84. package/dist/cjs/v6/nft.test.js +0 -279
  85. package/dist/cjs/v6/nft.test.js.map +0 -1
  86. package/dist/cjs/v6/omnichain.test.d.ts +0 -2
  87. package/dist/cjs/v6/omnichain.test.d.ts.map +0 -1
  88. package/dist/cjs/v6/omnichain.test.js +0 -145
  89. package/dist/cjs/v6/omnichain.test.js.map +0 -1
  90. package/dist/cjs/v6/pay.test.d.ts +0 -2
  91. package/dist/cjs/v6/pay.test.d.ts.map +0 -1
  92. package/dist/cjs/v6/pay.test.js +0 -137
  93. package/dist/cjs/v6/pay.test.js.map +0 -1
  94. package/dist/cjs/v6/permissions.test.d.ts +0 -2
  95. package/dist/cjs/v6/permissions.test.d.ts.map +0 -1
  96. package/dist/cjs/v6/permissions.test.js +0 -142
  97. package/dist/cjs/v6/permissions.test.js.map +0 -1
  98. package/dist/cjs/v6/projectPayers.test.d.ts +0 -2
  99. package/dist/cjs/v6/projectPayers.test.d.ts.map +0 -1
  100. package/dist/cjs/v6/projectPayers.test.js +0 -85
  101. package/dist/cjs/v6/projectPayers.test.js.map +0 -1
  102. package/dist/cjs/v6/revnets.test.d.ts +0 -2
  103. package/dist/cjs/v6/revnets.test.d.ts.map +0 -1
  104. package/dist/cjs/v6/revnets.test.js +0 -233
  105. package/dist/cjs/v6/revnets.test.js.map +0 -1
  106. package/dist/cjs/v6/rulesets.test.d.ts +0 -2
  107. package/dist/cjs/v6/rulesets.test.d.ts.map +0 -1
  108. package/dist/cjs/v6/rulesets.test.js +0 -160
  109. package/dist/cjs/v6/rulesets.test.js.map +0 -1
  110. package/dist/cjs/v6/splits.test.d.ts +0 -2
  111. package/dist/cjs/v6/splits.test.d.ts.map +0 -1
  112. package/dist/cjs/v6/splits.test.js +0 -135
  113. package/dist/cjs/v6/splits.test.js.map +0 -1
  114. package/dist/cjs/v6/suckers.test.d.ts +0 -2
  115. package/dist/cjs/v6/suckers.test.d.ts.map +0 -1
  116. package/dist/cjs/v6/suckers.test.js +0 -362
  117. package/dist/cjs/v6/suckers.test.js.map +0 -1
  118. package/dist/cjs/v6/terminals.test.d.ts +0 -2
  119. package/dist/cjs/v6/terminals.test.d.ts.map +0 -1
  120. package/dist/cjs/v6/terminals.test.js +0 -59
  121. package/dist/cjs/v6/terminals.test.js.map +0 -1
  122. package/dist/cjs/v6/tokens.test.d.ts +0 -2
  123. package/dist/cjs/v6/tokens.test.d.ts.map +0 -1
  124. package/dist/cjs/v6/tokens.test.js +0 -141
  125. package/dist/cjs/v6/tokens.test.js.map +0 -1
  126. package/dist/cjs/v6/uniswapV4.test.d.ts +0 -2
  127. package/dist/cjs/v6/uniswapV4.test.d.ts.map +0 -1
  128. package/dist/cjs/v6/uniswapV4.test.js +0 -128
  129. package/dist/cjs/v6/uniswapV4.test.js.map +0 -1
  130. package/dist/esm/utils/data.test.d.ts +0 -2
  131. package/dist/esm/utils/data.test.d.ts.map +0 -1
  132. package/dist/esm/utils/data.test.js +0 -25
  133. package/dist/esm/utils/data.test.js.map +0 -1
  134. package/dist/esm/utils/deploy.test.d.ts +0 -2
  135. package/dist/esm/utils/deploy.test.d.ts.map +0 -1
  136. package/dist/esm/utils/deploy.test.js +0 -63
  137. package/dist/esm/utils/deploy.test.js.map +0 -1
  138. package/dist/esm/utils/fee.test.d.ts +0 -2
  139. package/dist/esm/utils/fee.test.d.ts.map +0 -1
  140. package/dist/esm/utils/fee.test.js +0 -9
  141. package/dist/esm/utils/fee.test.js.map +0 -1
  142. package/dist/esm/utils/format.test.d.ts +0 -2
  143. package/dist/esm/utils/format.test.d.ts.map +0 -1
  144. package/dist/esm/utils/format.test.js +0 -25
  145. package/dist/esm/utils/format.test.js.map +0 -1
  146. package/dist/esm/utils/ipfs.test.d.ts +0 -2
  147. package/dist/esm/utils/ipfs.test.d.ts.map +0 -1
  148. package/dist/esm/utils/ipfs.test.js +0 -62
  149. package/dist/esm/utils/ipfs.test.js.map +0 -1
  150. package/dist/esm/utils/revnet.test.d.ts +0 -2
  151. package/dist/esm/utils/revnet.test.d.ts.map +0 -1
  152. package/dist/esm/utils/revnet.test.js +0 -10
  153. package/dist/esm/utils/revnet.test.js.map +0 -1
  154. package/dist/esm/utils/ruleset.test.d.ts +0 -2
  155. package/dist/esm/utils/ruleset.test.d.ts.map +0 -1
  156. package/dist/esm/utils/ruleset.test.js +0 -21
  157. package/dist/esm/utils/ruleset.test.js.map +0 -1
  158. package/dist/esm/utils/token.test.d.ts +0 -2
  159. package/dist/esm/utils/token.test.d.ts.map +0 -1
  160. package/dist/esm/utils/token.test.js +0 -38
  161. package/dist/esm/utils/token.test.js.map +0 -1
  162. package/dist/esm/utils/urn.test.d.ts +0 -2
  163. package/dist/esm/utils/urn.test.d.ts.map +0 -1
  164. package/dist/esm/utils/urn.test.js +0 -112
  165. package/dist/esm/utils/urn.test.js.map +0 -1
  166. package/dist/esm/v6/cashOut.test.d.ts +0 -2
  167. package/dist/esm/v6/cashOut.test.d.ts.map +0 -1
  168. package/dist/esm/v6/cashOut.test.js +0 -120
  169. package/dist/esm/v6/cashOut.test.js.map +0 -1
  170. package/dist/esm/v6/currency.test.d.ts +0 -2
  171. package/dist/esm/v6/currency.test.d.ts.map +0 -1
  172. package/dist/esm/v6/currency.test.js +0 -24
  173. package/dist/esm/v6/currency.test.js.map +0 -1
  174. package/dist/esm/v6/fees.test.d.ts +0 -2
  175. package/dist/esm/v6/fees.test.d.ts.map +0 -1
  176. package/dist/esm/v6/fees.test.js +0 -38
  177. package/dist/esm/v6/fees.test.js.map +0 -1
  178. package/dist/esm/v6/launch.test.d.ts +0 -2
  179. package/dist/esm/v6/launch.test.d.ts.map +0 -1
  180. package/dist/esm/v6/launch.test.js +0 -160
  181. package/dist/esm/v6/launch.test.js.map +0 -1
  182. package/dist/esm/v6/loans.test.d.ts +0 -2
  183. package/dist/esm/v6/loans.test.d.ts.map +0 -1
  184. package/dist/esm/v6/loans.test.js +0 -127
  185. package/dist/esm/v6/loans.test.js.map +0 -1
  186. package/dist/esm/v6/nft.test.d.ts +0 -2
  187. package/dist/esm/v6/nft.test.d.ts.map +0 -1
  188. package/dist/esm/v6/nft.test.js +0 -277
  189. package/dist/esm/v6/nft.test.js.map +0 -1
  190. package/dist/esm/v6/omnichain.test.d.ts +0 -2
  191. package/dist/esm/v6/omnichain.test.d.ts.map +0 -1
  192. package/dist/esm/v6/omnichain.test.js +0 -143
  193. package/dist/esm/v6/omnichain.test.js.map +0 -1
  194. package/dist/esm/v6/pay.test.d.ts +0 -2
  195. package/dist/esm/v6/pay.test.d.ts.map +0 -1
  196. package/dist/esm/v6/pay.test.js +0 -135
  197. package/dist/esm/v6/pay.test.js.map +0 -1
  198. package/dist/esm/v6/permissions.test.d.ts +0 -2
  199. package/dist/esm/v6/permissions.test.d.ts.map +0 -1
  200. package/dist/esm/v6/permissions.test.js +0 -140
  201. package/dist/esm/v6/permissions.test.js.map +0 -1
  202. package/dist/esm/v6/projectPayers.test.d.ts +0 -2
  203. package/dist/esm/v6/projectPayers.test.d.ts.map +0 -1
  204. package/dist/esm/v6/projectPayers.test.js +0 -83
  205. package/dist/esm/v6/projectPayers.test.js.map +0 -1
  206. package/dist/esm/v6/revnets.test.d.ts +0 -2
  207. package/dist/esm/v6/revnets.test.d.ts.map +0 -1
  208. package/dist/esm/v6/revnets.test.js +0 -231
  209. package/dist/esm/v6/revnets.test.js.map +0 -1
  210. package/dist/esm/v6/rulesets.test.d.ts +0 -2
  211. package/dist/esm/v6/rulesets.test.d.ts.map +0 -1
  212. package/dist/esm/v6/rulesets.test.js +0 -158
  213. package/dist/esm/v6/rulesets.test.js.map +0 -1
  214. package/dist/esm/v6/splits.test.d.ts +0 -2
  215. package/dist/esm/v6/splits.test.d.ts.map +0 -1
  216. package/dist/esm/v6/splits.test.js +0 -133
  217. package/dist/esm/v6/splits.test.js.map +0 -1
  218. package/dist/esm/v6/suckers.test.d.ts +0 -2
  219. package/dist/esm/v6/suckers.test.d.ts.map +0 -1
  220. package/dist/esm/v6/suckers.test.js +0 -360
  221. package/dist/esm/v6/suckers.test.js.map +0 -1
  222. package/dist/esm/v6/terminals.test.d.ts +0 -2
  223. package/dist/esm/v6/terminals.test.d.ts.map +0 -1
  224. package/dist/esm/v6/terminals.test.js +0 -57
  225. package/dist/esm/v6/terminals.test.js.map +0 -1
  226. package/dist/esm/v6/tokens.test.d.ts +0 -2
  227. package/dist/esm/v6/tokens.test.d.ts.map +0 -1
  228. package/dist/esm/v6/tokens.test.js +0 -139
  229. package/dist/esm/v6/tokens.test.js.map +0 -1
  230. package/dist/esm/v6/uniswapV4.test.d.ts +0 -2
  231. package/dist/esm/v6/uniswapV4.test.d.ts.map +0 -1
  232. package/dist/esm/v6/uniswapV4.test.js +0 -126
  233. package/dist/esm/v6/uniswapV4.test.js.map +0 -1
  234. package/dist/tsconfig.cjs.tsbuildinfo +0 -1
  235. package/dist/tsconfig.tsbuildinfo +0 -1
package/package.json CHANGED
@@ -1,7 +1,12 @@
1
1
  {
2
2
  "name": "@bananapus/nana-sdk-core",
3
- "version": "1.4.0",
3
+ "version": "1.5.0",
4
4
  "type": "module",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/Bananapus/juice-sdk-v4",
8
+ "directory": "packages/core"
9
+ },
5
10
  "scripts": {
6
11
  "generate": "wagmi generate",
7
12
  "postgenerate": "tsx ./scripts/addJBProjectDeploymentAddresses.ts",
@@ -11,7 +16,8 @@
11
16
  "build:cjs": "tsc --project ./tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json",
12
17
  "dev": "tsc --project ./tsconfig.json --watch --preserveWatchOutput",
13
18
  "test": "vitest run",
14
- "type-check": "tsc --noEmit"
19
+ "test:coverage": "vitest run --coverage",
20
+ "type-check": "tsc --noEmit && tsc --project ./tsconfig.test.json"
15
21
  },
16
22
  "exports": {
17
23
  ".": {
@@ -38,34 +44,35 @@
38
44
  },
39
45
  "devDependencies": {
40
46
  "@bananapus/721-hook": "^1.0.0",
41
- "@bananapus/721-hook-v5": "^0.0.3",
47
+ "@bananapus/721-hook-v5": "^0.0.4",
42
48
  "@bananapus/721-hook-v6": "^1.1.0",
43
49
  "@bananapus/address-registry": "^1.0.0",
44
50
  "@bananapus/address-registry-v5": "0.0.2",
45
51
  "@bananapus/address-registry-v6": "^1.1.0",
46
52
  "@bananapus/buyback-hook": "^1.0.0",
47
53
  "@bananapus/buyback-hook-v5": "^0.0.2",
48
- "@bananapus/buyback-hook-v6": "^1.2.0",
54
+ "@bananapus/buyback-hook-v6": "^1.2.1",
49
55
  "@bananapus/core": "^1.0.5",
50
- "@bananapus/core-v5": "^0.0.4",
56
+ "@bananapus/core-v5": "^0.0.6",
51
57
  "@bananapus/core-v6": "^1.1.1",
52
58
  "@bananapus/omnichain-deployers": "github:bananapus/nana-omnichain-deployers#42d39e1442cba9e916ad812112755629711fb759",
53
- "@bananapus/omnichain-deployers-v5": "^0.0.2",
59
+ "@bananapus/omnichain-deployers-v5": "^0.0.3",
54
60
  "@bananapus/omnichain-deployers-v6": "^1.1.0",
55
- "@bananapus/router-terminal-v6": "^1.2.0",
61
+ "@bananapus/router-terminal-v6": "^1.2.1",
56
62
  "@bananapus/suckers": "^1.0.2",
57
63
  "@bananapus/suckers-v5": "0.0.2",
58
- "@bananapus/suckers-v6": "^1.1.1",
64
+ "@bananapus/suckers-v6": "^1.1.2",
59
65
  "@bananapus/swap-terminal": "^1.0.1",
60
66
  "@bananapus/swap-terminal-v5": "^0.0.4",
61
67
  "@rev-net/core": "^1.0.1",
62
68
  "@rev-net/core-v5": "^0.0.3",
63
69
  "@rev-net/core-v6": "^1.1.0",
64
- "@wagmi/cli": "^2.1.10",
70
+ "@wagmi/cli": "^2.10.0",
71
+ "@vitest/coverage-v8": "^3.2.6",
65
72
  "tsx": "^4.20.5",
66
73
  "typescript": "^5.4.5",
67
74
  "viem": "^2.12.0",
68
- "vitest": "^1.6.0",
75
+ "vitest": "^3.2.6",
69
76
  "wagmi": "^2.10.2"
70
77
  }
71
78
  }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data.test.d.ts","sourceRoot":"","sources":["../../../src/utils/data.test.ts"],"names":[],"mappings":""}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- const data_js_1 = require("./data.js");
5
- (0, vitest_1.describe)("jb", () => {
6
- (0, vitest_1.test)("reserved rate", () => {
7
- const reservedPercentRaw = 2_345; // 23.45%
8
- const reservedPercent = new data_js_1.ReservedPercent(reservedPercentRaw);
9
- (0, vitest_1.expect)(reservedPercent.format()).toEqual("0.2345");
10
- (0, vitest_1.expect)(reservedPercent.toFloat()).toEqual(0.2345);
11
- reservedPercent.setPercentage(0.5);
12
- (0, vitest_1.expect)(reservedPercent.format()).toEqual("0.5");
13
- (0, vitest_1.expect)(reservedPercent.formatPercentage()).toEqual(50);
14
- (0, vitest_1.expect)(reservedPercent.value).toEqual(5000n);
15
- });
16
- (0, vitest_1.test)("decay rate", () => {
17
- const weightCutPercentRaw = 200_000_000; // 20%
18
- const weightCutPercent = new data_js_1.WeightCutPercent(weightCutPercentRaw);
19
- (0, vitest_1.expect)(weightCutPercent.format()).toEqual("0.2");
20
- (0, vitest_1.expect)(weightCutPercent.toFloat()).toEqual(0.2);
21
- weightCutPercent.setPercentage(0.5123);
22
- (0, vitest_1.expect)(weightCutPercent.format()).toEqual("0.5123");
23
- (0, vitest_1.expect)(weightCutPercent.formatPercentage()).toEqual(51.23);
24
- (0, vitest_1.expect)(weightCutPercent.value).toEqual(512300000n);
25
- });
26
- });
27
- //# sourceMappingURL=data.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data.test.js","sourceRoot":"","sources":["../../../src/utils/data.test.ts"],"names":[],"mappings":";;AAAA,mCAAgD;AAChD,uCAA8D;AAE9D,IAAA,iBAAQ,EAAC,IAAI,EAAE,GAAG,EAAE;IAClB,IAAA,aAAI,EAAC,eAAe,EAAE,GAAG,EAAE;QACzB,MAAM,kBAAkB,GAAG,KAAK,CAAC,CAAC,SAAS;QAC3C,MAAM,eAAe,GAAoB,IAAI,yBAAe,CAAC,kBAAkB,CAAC,CAAC;QACjF,IAAA,eAAM,EAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAA,eAAM,EAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAElD,eAAe,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACnC,IAAA,eAAM,EAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAChD,IAAA,eAAM,EAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACvD,IAAA,eAAM,EAAC,eAAe,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,YAAY,EAAE,GAAG,EAAE;QACtB,MAAM,mBAAmB,GAAG,WAAW,CAAC,CAAC,MAAM;QAC/C,MAAM,gBAAgB,GAAG,IAAI,0BAAgB,CAAC,mBAAmB,CAAC,CAAC;QACnE,IAAA,eAAM,EAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjD,IAAA,eAAM,EAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAEhD,gBAAgB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACvC,IAAA,eAAM,EAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAA,eAAM,EAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAA,eAAM,EAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAY,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=deploy.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy.test.d.ts","sourceRoot":"","sources":["../../../src/utils/deploy.test.ts"],"names":[],"mappings":""}
@@ -1,65 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- const deploy_js_1 = require("./deploy.js");
5
- const chains_1 = require("viem/chains");
6
- const tx_js_1 = require("./tx.js");
7
- (0, vitest_1.describe)("sucker parsing", () => {
8
- (0, vitest_1.test)("ouputs correct amount of sucker configurations and mappings", () => {
9
- const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id, chains_1.arbitrum.id, chains_1.base.id], [deploy_js_1.MappableAsset.USDC, deploy_js_1.MappableAsset.NATIVE]);
10
- // Should be 3 deployer configurations, one for each chain that is being connected to mainnet.
11
- (0, vitest_1.expect)(result.deployerConfigurations.length).toBe(3);
12
- // Each configuration should have 2 mappings, one for USDC and one for NATIVE.
13
- result.deployerConfigurations.map((conf) => {
14
- (0, vitest_1.expect)(conf.mappings.length).toBe(2);
15
- });
16
- });
17
- (0, vitest_1.test)("keeps salt if passed in explicitly", () => {
18
- const salt = (0, tx_js_1.createSalt)();
19
- const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id, chains_1.arbitrum.id, chains_1.base.id], [deploy_js_1.MappableAsset.NATIVE], { salt: salt });
20
- // Salt should be the same as the one we passed in.
21
- (0, vitest_1.expect)(result.salt).toBe(salt);
22
- });
23
- });
24
- (0, vitest_1.describe)("v6 bridge selection", () => {
25
- (0, vitest_1.test)("native bridges from mainnet to each L2", () => {
26
- const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id, chains_1.arbitrum.id, chains_1.base.id], [deploy_js_1.MappableAsset.NATIVE], { version: 6, bridge: "native" });
27
- (0, vitest_1.expect)(result.deployerConfigurations.length).toBe(3);
28
- (0, vitest_1.expect)(result.deployerConfigurations[0].deployer).toBe("0x298a775c030adcedb641a89d9047ec9972674e1a");
29
- });
30
- (0, vitest_1.test)("both deploys a native and a CCIP sucker per L1<->L2 pair", () => {
31
- const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id], [deploy_js_1.MappableAsset.NATIVE], { version: 6, bridge: "both" });
32
- (0, vitest_1.expect)(result.deployerConfigurations.length).toBe(2);
33
- const [native, ccip] = result.deployerConfigurations;
34
- (0, vitest_1.expect)(native.deployer).not.toBe(ccip.deployer);
35
- });
36
- (0, vitest_1.test)("both falls back to CCIP alone for L2<->L2 pairs", () => {
37
- const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.optimism.id, [chains_1.base.id], [deploy_js_1.MappableAsset.NATIVE], { version: 6, bridge: "both" });
38
- (0, vitest_1.expect)(result.deployerConfigurations.length).toBe(1);
39
- });
40
- (0, vitest_1.test)("native throws for L2<->L2 pairs", () => {
41
- (0, vitest_1.expect)(() => (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.optimism.id, [chains_1.base.id], [deploy_js_1.MappableAsset.NATIVE], {
42
- version: 6,
43
- bridge: "native",
44
- })).toThrow(/native bridges only connect Ethereum with an L2/);
45
- });
46
- (0, vitest_1.test)("native throws for USDC (bridge-wrapped USDC.e trap)", () => {
47
- (0, vitest_1.expect)(() => (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id], [deploy_js_1.MappableAsset.USDC], {
48
- version: 6,
49
- bridge: "native",
50
- })).toThrow(/USDC\.e/);
51
- });
52
- (0, vitest_1.test)("both keeps USDC on the CCIP sucker only", () => {
53
- const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id], [deploy_js_1.MappableAsset.NATIVE, deploy_js_1.MappableAsset.USDC], { version: 6, bridge: "both" });
54
- (0, vitest_1.expect)(result.deployerConfigurations.length).toBe(2);
55
- const [native, ccip] = result.deployerConfigurations;
56
- (0, vitest_1.expect)(native.mappings.length).toBe(1); // native token only
57
- (0, vitest_1.expect)(ccip.mappings.length).toBe(2); // native + USDC
58
- });
59
- (0, vitest_1.test)("native is rejected for pre-v6 deployments", () => {
60
- (0, vitest_1.expect)(() => (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id], [deploy_js_1.MappableAsset.NATIVE], {
61
- bridge: "native",
62
- })).toThrow(/only supported for v6/);
63
- });
64
- });
65
- //# sourceMappingURL=deploy.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy.test.js","sourceRoot":"","sources":["../../../src/utils/deploy.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=fee.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fee.test.d.ts","sourceRoot":"","sources":["../../../src/utils/fee.test.ts"],"names":[],"mappings":""}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const constants_js_1 = require("../constants.js");
4
- const vitest_1 = require("vitest");
5
- const fee_js_1 = require("./fee.js");
6
- (0, vitest_1.describe)("fee", () => {
7
- (0, vitest_1.test)("applyJbDaoCashOutFee", () => {
8
- (0, vitest_1.expect)((0, fee_js_1.applyJbDaoCashOutFee)(constants_js_1.ONE_ETHER)).toEqual(975000000000000000n);
9
- });
10
- });
11
- //# sourceMappingURL=fee.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fee.test.js","sourceRoot":"","sources":["../../../src/utils/fee.test.ts"],"names":[],"mappings":";;AAAA,kDAA4C;AAC5C,mCAAgD;AAChD,qCAAgD;AAEhD,IAAA,iBAAQ,EAAC,KAAK,EAAE,GAAG,EAAE;IACnB,IAAA,aAAI,EAAC,sBAAsB,EAAE,GAAG,EAAE;QAChC,IAAA,eAAM,EAAC,IAAA,6BAAoB,EAAC,wBAAS,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=format.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"format.test.d.ts","sourceRoot":"","sources":["../../../src/utils/format.test.ts"],"names":[],"mappings":""}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- const format_js_1 = require("./format.js");
5
- (0, vitest_1.describe)("formatting utilities", () => {
6
- (0, vitest_1.test)("formats Ethereum address correctly", () => {
7
- const address = "0x123456789abcdef0123456789abcdef012345678";
8
- (0, vitest_1.expect)((0, format_js_1.formatEthAddress)(address, { truncateTo: 4 })).toEqual("0x1234...5678");
9
- });
10
- vitest_1.test.each `
11
- wei | fractionDigits | expected
12
- ${1000000000000000000n} | ${2} | ${"1"}
13
- ${1234567890123456789n} | ${3} | ${"1.235"}
14
- ${1234567890123456789n} | ${0} | ${"1"}
15
- `("formats Ether correctly", ({ wei, fractionDigits, expected }) => {
16
- (0, vitest_1.expect)((0, format_js_1.formatEther)(wei, { fractionDigits })).toEqual(expected);
17
- });
18
- vitest_1.test.each `
19
- value | units | fractionDigits | expected
20
- ${1000000000n} | ${9} | ${2} | ${"1"}
21
- ${1234567890n} | ${9} | ${3} | ${"1.235"}
22
- ${1234567890n} | ${9} | ${0} | ${"1"}
23
- `("formats Units correctly", ({ value, units, fractionDigits, expected }) => {
24
- (0, vitest_1.expect)((0, format_js_1.formatUnits)(value, units, { fractionDigits })).toEqual(expected);
25
- });
26
- });
27
- //# sourceMappingURL=format.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"format.test.js","sourceRoot":"","sources":["../../../src/utils/format.test.ts"],"names":[],"mappings":";;AAAA,mCAAgD;AAChD,2CAAyE;AAEzE,IAAA,iBAAQ,EAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,IAAA,aAAI,EAAC,oCAAoC,EAAE,GAAG,EAAE;QAC9C,MAAM,OAAO,GAAG,4CAA4C,CAAC;QAC7D,IAAA,eAAM,EAAC,IAAA,4BAAgB,EAAC,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAC1D,eAAe,CAChB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,aAAI,CAAC,IAAI,CAAA;;MAEL,oBAAoB,MAAM,CAAC,gBAAgB,GAAG;MAC9C,oBAAoB,MAAM,CAAC,gBAAgB,OAAO;MAClD,oBAAoB,MAAM,CAAC,gBAAgB,GAAG;GACjD,CAAC,yBAAyB,EAAE,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE;QACjE,IAAA,eAAM,EAAC,IAAA,uBAAW,EAAC,GAAG,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,aAAI,CAAC,IAAI,CAAA;;MAEL,WAAW,MAAM,CAAC,OAAO,CAAC,gBAAgB,GAAG;MAC7C,WAAW,MAAM,CAAC,OAAO,CAAC,gBAAgB,OAAO;MACjD,WAAW,MAAM,CAAC,OAAO,CAAC,gBAAgB,GAAG;GAChD,CAAC,yBAAyB,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1E,IAAA,eAAM,EAAC,IAAA,uBAAW,EAAC,KAAK,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=ipfs.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ipfs.test.d.ts","sourceRoot":"","sources":["../../../src/utils/ipfs.test.ts"],"names":[],"mappings":""}
@@ -1,67 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const bs58_1 = __importDefault(require("bs58"));
7
- const vitest_1 = require("vitest");
8
- const ipfs_js_1 = require("./ipfs.js");
9
- const cid = "QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR";
10
- const cidCorrespondingHex = "c3c4733ec8affd06cf9e9ff50ffc6bcd2ec85a6170004bb709669c31de94391a";
11
- const digest = "0xbdb815453bdd29f5af61a541e6382e7aace86076a9ba3ca3f6b3bdf7c58aa27f";
12
- const cidV0 = "Qmb7EZvTHUeVTDi6YmwDFQvKEfCR4UGciUka24coJcNJzS";
13
- const dagPbCidV1 = "bafybeif5xakuko65fh226ynfihtdqlt2vtuga5vjxi6kh5vtxx34lcvcp4";
14
- const rawCidV1 = "bafkreif5xakuko65fh226ynfihtdqlt2vtuga5vjxi6kh5vtxx34lcvcp4";
15
- (0, vitest_1.describe)("IPFS utilities", () => {
16
- (0, vitest_1.test)("generates IPFS gateway URL correctly", () => {
17
- (0, vitest_1.expect)((0, ipfs_js_1.ipfsGatewayUrl)(cid)).toEqual(`https://ipfs.io/ipfs/${cid}`);
18
- (0, vitest_1.expect)((0, ipfs_js_1.ipfsGatewayUrl)(cid, "another-gateway.com")).toEqual(`https://another-gateway.com/ipfs/${cid}`);
19
- (0, vitest_1.expect)((0, ipfs_js_1.ipfsGatewayUrl)(undefined)).toEqual("https://ipfs.io/ipfs/undefined");
20
- });
21
- (0, vitest_1.test)("encodes IPFS CID correctly", () => {
22
- const hexEncoded = (0, ipfs_js_1.encodeIpfsUri)(cid);
23
- (0, vitest_1.expect)(hexEncoded).toEqual("0x" + cidCorrespondingHex);
24
- });
25
- (0, vitest_1.test)("decodes hex-encoded IPFS CID correctly", () => {
26
- const hexEncoded = "0x" + cidCorrespondingHex;
27
- const decodedCid = (0, ipfs_js_1.decodeEncodedIpfsUri)(hexEncoded);
28
- (0, vitest_1.expect)(decodedCid).toEqual(cid);
29
- });
30
- (0, vitest_1.test)("encodes and then decodes IPFS CID correctly", () => {
31
- const expectedHex = Buffer.from(bs58_1.default.decode(cid).slice(2)).toString("hex");
32
- const hexEncoded = "0x" + expectedHex;
33
- const decodedCid = (0, ipfs_js_1.decodeEncodedIpfsUri)(hexEncoded);
34
- (0, vitest_1.expect)(decodedCid).toEqual(cid);
35
- });
36
- (0, vitest_1.test)("normalizes native, path-gateway, and subdomain-gateway locations", () => {
37
- (0, vitest_1.expect)((0, ipfs_js_1.ipfsUri)(cid, "/metadata.json")).toBe(`ipfs://${cid}/metadata.json`);
38
- (0, vitest_1.expect)((0, ipfs_js_1.ipfsAssetPath)(`ipfs://${cid}/metadata.json`)).toBe(`${cid}/metadata.json`);
39
- (0, vitest_1.expect)((0, ipfs_js_1.ipfsAssetPath)(`https://gateway.example/ipfs/${cid}/metadata.json`)).toBe(`${cid}/metadata.json`);
40
- (0, vitest_1.expect)((0, ipfs_js_1.ipfsAssetPath)(`https://${dagPbCidV1}.ipfs.example/metadata.json`)).toBe(`${dagPbCidV1}/metadata.json`);
41
- (0, vitest_1.expect)((0, ipfs_js_1.cidFromIpfsUri)(`ipfs://${cid}/metadata.json`)).toBe(cid);
42
- (0, vitest_1.expect)((0, ipfs_js_1.ipfsAssetPath)("https://example.com/metadata.json")).toBeNull();
43
- (0, vitest_1.expect)((0, ipfs_js_1.ipfsAssetPath)("ipfs://not-a-cid/metadata.json")).toBeNull();
44
- (0, vitest_1.expect)((0, ipfs_js_1.ipfsAssetPath)("https://gateway.example/ipfs/not-a-cid/metadata.json")).toBeNull();
45
- });
46
- (0, vitest_1.test)("encodes equivalent CIDv0 and DAG-PB CIDv1 values identically", () => {
47
- (0, vitest_1.expect)((0, ipfs_js_1.encodeIpfsUri)(`ipfs://${cidV0}`)).toBe(digest);
48
- (0, vitest_1.expect)((0, ipfs_js_1.encodeIpfsUri)(`ipfs://${dagPbCidV1}`)).toBe(digest);
49
- (0, vitest_1.expect)(() => (0, ipfs_js_1.encodeIpfsUri)(`ipfs://${rawCidV1}`)).toThrow(/DAG-PB/);
50
- (0, vitest_1.expect)(() => (0, ipfs_js_1.encodeIpfsUri)(`ipfs://${cidV0}/metadata.json`)).toThrow(/cannot include a path/);
51
- });
52
- (0, vitest_1.test)("reconstructs CIDv0 and raw CIDv1 candidates from a stored digest", () => {
53
- (0, vitest_1.expect)((0, ipfs_js_1.decodeEncodedIpfsUriCandidates)(digest)).toEqual([
54
- `ipfs://${cidV0}`,
55
- `ipfs://${rawCidV1}`,
56
- ]);
57
- (0, vitest_1.expect)((0, ipfs_js_1.bytes32ToCidV0)(digest)).toBe(cidV0);
58
- (0, vitest_1.expect)((0, ipfs_js_1.bytes32ToCidV0)(`0x${"0".repeat(64)}`)).toBeNull();
59
- (0, vitest_1.expect)((0, ipfs_js_1.decodeEncodedIpfsUriCandidates)("0x1234")).toBeNull();
60
- });
61
- (0, vitest_1.test)("recognizes supported CID shapes", () => {
62
- (0, vitest_1.expect)((0, ipfs_js_1.isIpfsCid)(cidV0)).toBe(true);
63
- (0, vitest_1.expect)((0, ipfs_js_1.isIpfsCid)(dagPbCidV1)).toBe(true);
64
- (0, vitest_1.expect)((0, ipfs_js_1.isIpfsCid)("not-a-cid")).toBe(false);
65
- });
66
- });
67
- //# sourceMappingURL=ipfs.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ipfs.test.js","sourceRoot":"","sources":["../../../src/utils/ipfs.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=revnet.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"revnet.test.d.ts","sourceRoot":"","sources":["../../../src/utils/revnet.test.ts"],"names":[],"mappings":""}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- const revnet_js_1 = require("./revnet.js");
5
- (0, vitest_1.describe)("calcPrepaidFee", () => {
6
- (0, vitest_1.test)("calcPrepaidFee", () => {
7
- (0, vitest_1.expect)((0, revnet_js_1.calcPrepaidFee)(1)).toEqual(29n);
8
- (0, vitest_1.expect)((0, revnet_js_1.calcPrepaidFee)(0)).toEqual(25n);
9
- (0, vitest_1.expect)((0, revnet_js_1.calcPrepaidFee)(121)).toEqual(500n);
10
- });
11
- });
12
- //# sourceMappingURL=revnet.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"revnet.test.js","sourceRoot":"","sources":["../../../src/utils/revnet.test.ts"],"names":[],"mappings":";;AAAA,mCAAgD;AAChD,2CAA6C;AAE7C,IAAA,iBAAQ,EAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,IAAA,aAAI,EAAC,gBAAgB,EAAE,GAAG,EAAE;QAC1B,IAAA,eAAM,EAAC,IAAA,0BAAc,EAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACvC,IAAA,eAAM,EAAC,IAAA,0BAAc,EAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACvC,IAAA,eAAM,EAAC,IAAA,0BAAc,EAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=ruleset.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ruleset.test.d.ts","sourceRoot":"","sources":["../../../src/utils/ruleset.test.ts"],"names":[],"mappings":""}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- const ruleset_js_1 = require("./ruleset.js");
5
- (0, vitest_1.describe)("Ruleset Weight utilities", () => {
6
- vitest_1.test.each `
7
- weight | weightCutPercent | expected
8
- ${100n} | ${200000000} | ${80n}
9
- ${200n} | ${300000000} | ${140n}
10
- ${300n} | ${0} | ${300n}
11
- `("computes next ruleset weight correctly", ({ weight, weightCutPercent, expected }) => {
12
- (0, vitest_1.expect)((0, ruleset_js_1.getNextRulesetWeight)({ weight, weightCutPercent })).toEqual(expected);
13
- });
14
- vitest_1.test.each `
15
- weight | weightCutPercent | expected
16
- ${80n} | ${200000000} | ${100n}
17
- ${160n} | ${300000000} | ${228n}
18
- ${300n} | ${0} | ${300n}
19
- `("computes previous cycle weight correctly", ({ weight, weightCutPercent, expected }) => {
20
- (0, vitest_1.expect)((0, ruleset_js_1.getPrevRulesetWeight)({ weight, weightCutPercent })).toEqual(expected);
21
- });
22
- });
23
- //# sourceMappingURL=ruleset.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ruleset.test.js","sourceRoot":"","sources":["../../../src/utils/ruleset.test.ts"],"names":[],"mappings":";;AAAA,mCAAgD;AAChD,6CAA0E;AAE1E,IAAA,iBAAQ,EAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,aAAI,CAAC,IAAI,CAAA;;MAEL,IAAI,MAAM,SAAS,UAAU,GAAG;MAChC,IAAI,MAAM,SAAS,UAAU,IAAI;MACjC,IAAI,MAAM,CAAC,iBAAiB,IAAI;GACnC,CACC,wCAAwC,EACxC,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE,EAAE;QACzC,IAAA,eAAM,EAAC,IAAA,iCAAoB,EAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,OAAO,CAChE,QAAQ,CACT,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,aAAI,CAAC,IAAI,CAAA;;MAEL,GAAG,OAAO,SAAS,UAAU,IAAI;MACjC,IAAI,MAAM,SAAS,UAAU,IAAI;MACjC,IAAI,MAAM,CAAC,iBAAiB,IAAI;GACnC,CACC,0CAA0C,EAC1C,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE,EAAE;QACzC,IAAA,eAAM,EAAC,IAAA,iCAAoB,EAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,OAAO,CAChE,QAAQ,CACT,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=token.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"token.test.d.ts","sourceRoot":"","sources":["../../../src/utils/token.test.ts"],"names":[],"mappings":""}
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const fpnum_1 = require("fpnum");
4
- const viem_1 = require("viem");
5
- const vitest_1 = require("vitest");
6
- const data_js_1 = require("./data.js");
7
- const token_js_1 = require("./token.js");
8
- (0, vitest_1.describe)("token", () => {
9
- (0, vitest_1.describe)("getTokenAToBQuote", () => {
10
- vitest_1.test.each `
11
- tokenAAmount | tokenADecimals | expectedPayerTokens
12
- ${1000000n} | ${6} | ${(0, viem_1.parseUnits)("1", 18)}
13
- ${(0, viem_1.parseEther)("1")} | ${18} | ${(0, viem_1.parseUnits)("1", 18)}
14
- `("should return the correct token B quote when amount is $tokenAAmount and decimals is $tokenADecimals", ({ tokenAAmount, tokenADecimals, expectedPayerTokens }) => {
15
- const weight = fpnum_1.FixedInt.parse("1", 18); // 1 token per USDC
16
- const reservedPercent = new data_js_1.ReservedPercent(0);
17
- const { payerTokens } = (0, token_js_1.getTokenAToBQuote)(new fpnum_1.FixedInt(tokenAAmount, tokenADecimals), {
18
- weight,
19
- reservedPercent,
20
- });
21
- (0, vitest_1.expect)(payerTokens).toEqual(expectedPayerTokens);
22
- });
23
- vitest_1.test.each `
24
- tokenADecimals | weight | expectedTokenBPrice
25
- ${18} | ${fpnum_1.FixedInt.parse("1", 18)} | ${(0, viem_1.parseUnits)("1", 18)}
26
- ${6} | ${fpnum_1.FixedInt.parse("1", 18)} | ${(0, viem_1.parseUnits)("1", 6)}
27
- ${18} | ${fpnum_1.FixedInt.parse("0.5", 18)} | ${(0, viem_1.parseUnits)("2", 18)}
28
- ${6} | ${fpnum_1.FixedInt.parse("0.5", 18)} | ${(0, viem_1.parseUnits)("2", 6)}
29
- ${6} | ${fpnum_1.FixedInt.parse("0.8", 18)} | ${(0, viem_1.parseUnits)("1.25", 6)}
30
- `("should return the correct token A quote when amount is $tokenBAmount and decimals is $tokenADecimals", ({ tokenADecimals, expectedTokenBPrice, weight }) => {
31
- const reservedPercent = new data_js_1.ReservedPercent(0);
32
- const tokenBPrice = (0, token_js_1.getTokenBPrice)(tokenADecimals, {
33
- weight,
34
- reservedPercent,
35
- });
36
- (0, vitest_1.expect)(tokenBPrice.value).toBe(expectedTokenBPrice);
37
- });
38
- });
39
- });
40
- //# sourceMappingURL=token.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"token.test.js","sourceRoot":"","sources":["../../../src/utils/token.test.ts"],"names":[],"mappings":";;AAAA,iCAAiC;AACjC,+BAA8C;AAC9C,mCAAgD;AAChD,uCAA4C;AAC5C,yCAA+D;AAE/D,IAAA,iBAAQ,EAAC,OAAO,EAAE,GAAG,EAAE;IACrB,IAAA,iBAAQ,EAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,aAAI,CAAC,IAAI,CAAA;;QAEL,QAAQ,aAAa,CAAC,gBAAgB,IAAA,iBAAU,EAAC,GAAG,EAAE,EAAE,CAAC;QACzD,IAAA,iBAAU,EAAC,GAAG,CAAC,MAAM,EAAE,eAAe,IAAA,iBAAU,EAAC,GAAG,EAAE,EAAE,CAAC;KAC5D,CACC,sGAAsG,EACtG,CAAC,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,EAAE,EAAE;YACxD,MAAM,MAAM,GAAG,gBAAQ,CAAC,KAAK,CAAK,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB;YAC/D,MAAM,eAAe,GAAG,IAAI,yBAAe,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,4BAAiB,EACvC,IAAI,gBAAQ,CAAC,YAAY,EAAE,cAAc,CAAC,EAC1C;gBACE,MAAM;gBACN,eAAe;aAChB,CACF,CAAC;YACF,IAAA,eAAM,EAAC,WAAW,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACnD,CAAC,CACF,CAAC;QAEF,aAAI,CAAC,IAAI,CAAA;;QAEL,EAAE,eAAe,gBAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,IAAA,iBAAU,EAAC,GAAG,EAAE,EAAE,CAAC;QACnE,CAAC,gBAAgB,gBAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,CAAC;QAClE,EAAE,eAAe,gBAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,EAAE,CAAC;QACnE,CAAC,gBAAgB,gBAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,CAAC;QAClE,CAAC,gBAAgB,gBAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,IAAA,iBAAU,EAAC,MAAM,EAAE,CAAC,CAAC;KACxE,CACC,sGAAsG,EACtG,CAAC,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE,EAAE;YAClD,MAAM,eAAe,GAAG,IAAI,yBAAe,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,WAAW,GAAG,IAAA,yBAAc,EAAC,cAAc,EAAE;gBACjD,MAAM;gBACN,eAAe;aAChB,CAAC,CAAC;YAEH,IAAA,eAAM,EAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtD,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=urn.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"urn.test.d.ts","sourceRoot":"","sources":["../../../src/utils/urn.test.ts"],"names":[],"mappings":""}
@@ -1,114 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chains_1 = require("viem/chains");
4
- const vitest_1 = require("vitest");
5
- const urn_js_1 = require("./urn.js");
6
- (0, vitest_1.describe)("jbUrn", () => {
7
- (0, vitest_1.describe)("valid URNs", () => {
8
- (0, vitest_1.it)("should parse /eth:3 as mainnet project id 3, version 4", () => {
9
- const result = (0, urn_js_1.jbUrn)("eth:3");
10
- (0, vitest_1.expect)(result).toEqual({
11
- chainId: chains_1.mainnet.id,
12
- projectId: 3n,
13
- version: 4,
14
- });
15
- });
16
- (0, vitest_1.it)("should parse /v5:eth:5 as mainnet project id 5, version 5", () => {
17
- const result = (0, urn_js_1.jbUrn)("v5:eth:5");
18
- (0, vitest_1.expect)(result).toEqual({
19
- chainId: chains_1.mainnet.id,
20
- projectId: 5n,
21
- version: 5,
22
- });
23
- });
24
- (0, vitest_1.it)("should parse large project IDs correctly", () => {
25
- const result = (0, urn_js_1.jbUrn)("eth:999999999999999999");
26
- (0, vitest_1.expect)(result).toEqual({
27
- chainId: chains_1.mainnet.id,
28
- projectId: 999999999999999999n,
29
- version: 4,
30
- });
31
- });
32
- });
33
- (0, vitest_1.describe)("supported chains", () => {
34
- const chainTests = [
35
- { slug: "eth", chainId: chains_1.mainnet.id, name: "Ethereum mainnet" },
36
- { slug: "sep", chainId: chains_1.sepolia.id, name: "Sepolia testnet" },
37
- { slug: "op", chainId: chains_1.optimism.id, name: "Optimism" },
38
- { slug: "base", chainId: chains_1.base.id, name: "Base" },
39
- { slug: "arb", chainId: chains_1.arbitrum.id, name: "Arbitrum" },
40
- ];
41
- chainTests.forEach(({ slug, chainId, name }) => {
42
- (0, vitest_1.it)(`should parse ${name} (${slug}) correctly`, () => {
43
- const result = (0, urn_js_1.jbUrn)(`${slug}:42`);
44
- (0, vitest_1.expect)(result).toEqual({ chainId, projectId: 42n, version: 4 });
45
- });
46
- });
47
- });
48
- (0, vitest_1.describe)("version validation", () => {
49
- (0, vitest_1.it)("should accept versions 4, 5 and 6, default to 4", () => {
50
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("v4:eth:1")?.version).toBe(4);
51
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("v5:eth:1")?.version).toBe(5);
52
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("v6:eth:1")?.version).toBe(6);
53
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:1")?.version).toBe(4); // default
54
- });
55
- (0, vitest_1.it)("should reject invalid versions", () => {
56
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("v1:eth:3")).toBeNull();
57
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("v7:eth:3")).toBeNull();
58
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("v0:eth:3")).toBeNull();
59
- });
60
- });
61
- (0, vitest_1.describe)("invalid URNs", () => {
62
- (0, vitest_1.it)("should return null for invalid version format", () => {
63
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("version5:eth:3")).toBeNull();
64
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("5:eth:3")).toBeNull();
65
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("V5:eth:3")).toBeNull();
66
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("v5a:eth:3")).toBeNull();
67
- });
68
- (0, vitest_1.it)("should return null for unknown chain names", () => {
69
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("bitcoin:3")).toBeNull();
70
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("ethereum:3")).toBeNull();
71
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("ETH:3")).toBeNull();
72
- });
73
- (0, vitest_1.it)("should return null for malformed URLs", () => {
74
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("")).toBeNull();
75
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:")).toBeNull();
76
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)(":3")).toBeNull();
77
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("v5:eth:3:extra")).toBeNull();
78
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth")).toBeNull();
79
- });
80
- (0, vitest_1.it)("should handle invalid project IDs", () => {
81
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:abc")).toBeNull();
82
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:3.14")).toBeNull();
83
- // 0x123 = 291
84
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:0x123")).toEqual({
85
- chainId: chains_1.mainnet.id,
86
- projectId: 291n,
87
- version: 4,
88
- });
89
- });
90
- });
91
- (0, vitest_1.describe)("edge cases", () => {
92
- (0, vitest_1.it)("should handle whitespace by trimming", () => {
93
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)(" eth:3")).toEqual({
94
- chainId: chains_1.mainnet.id,
95
- projectId: 3n,
96
- version: 4,
97
- });
98
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("v5: eth : 3 ")).toEqual({
99
- chainId: chains_1.mainnet.id,
100
- projectId: 3n,
101
- version: 5,
102
- });
103
- });
104
- (0, vitest_1.it)("should handle numeric edge cases", () => {
105
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:0003")?.projectId).toBe(3n);
106
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:0")?.projectId).toBe(0n);
107
- });
108
- (0, vitest_1.it)("should reject invalid formats", () => {
109
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth-test:3")).toBeNull();
110
- (0, vitest_1.expect)((0, urn_js_1.jbUrn)("a".repeat(1000) + ":1")).toBeNull();
111
- });
112
- });
113
- });
114
- //# sourceMappingURL=urn.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"urn.test.js","sourceRoot":"","sources":["../../../src/utils/urn.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=cashOut.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cashOut.test.d.ts","sourceRoot":"","sources":["../../../src/v6/cashOut.test.ts"],"names":[],"mappings":""}