@wormhole-foundation/sdk-base 4.23.0 → 5.0.0-beta.1

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 (228) hide show
  1. package/dist/esm/constants/chains.d.ts +7 -9
  2. package/dist/esm/constants/chains.d.ts.map +1 -1
  3. package/dist/esm/constants/chains.js +0 -1
  4. package/dist/esm/constants/chains.js.map +1 -1
  5. package/dist/esm/constants/contracts/core.d.ts +1 -1
  6. package/dist/esm/constants/contracts/core.d.ts.map +1 -1
  7. package/dist/esm/constants/contracts/core.js +1 -2
  8. package/dist/esm/constants/contracts/core.js.map +1 -1
  9. package/dist/esm/constants/contracts/executor.d.ts +1 -1
  10. package/dist/esm/constants/contracts/executor.d.ts.map +1 -1
  11. package/dist/esm/constants/contracts/executor.js +0 -1
  12. package/dist/esm/constants/contracts/executor.js.map +1 -1
  13. package/dist/esm/constants/contracts/index.d.ts +3 -41
  14. package/dist/esm/constants/contracts/index.d.ts.map +1 -1
  15. package/dist/esm/constants/explorer.d.ts +0 -159
  16. package/dist/esm/constants/explorer.d.ts.map +1 -1
  17. package/dist/esm/constants/explorer.js +0 -10
  18. package/dist/esm/constants/explorer.js.map +1 -1
  19. package/dist/esm/constants/finality.d.ts +2 -4
  20. package/dist/esm/constants/finality.d.ts.map +1 -1
  21. package/dist/esm/constants/finality.js +0 -2
  22. package/dist/esm/constants/finality.js.map +1 -1
  23. package/dist/esm/constants/nativeChainIds.d.ts +4 -24
  24. package/dist/esm/constants/nativeChainIds.d.ts.map +1 -1
  25. package/dist/esm/constants/nativeChainIds.js +1 -2
  26. package/dist/esm/constants/nativeChainIds.js.map +1 -1
  27. package/dist/esm/constants/platforms.d.ts +3 -4
  28. package/dist/esm/constants/platforms.d.ts.map +1 -1
  29. package/dist/esm/constants/platforms.js +0 -1
  30. package/dist/esm/constants/platforms.js.map +1 -1
  31. package/dist/esm/constants/rpc.d.ts +1 -1
  32. package/dist/esm/constants/rpc.d.ts.map +1 -1
  33. package/dist/esm/constants/rpc.js +2 -3
  34. package/dist/esm/constants/rpc.js.map +1 -1
  35. package/package.json +21 -83
  36. package/dist/cjs/constants/ausd.d.ts +0 -383
  37. package/dist/cjs/constants/ausd.d.ts.map +0 -1
  38. package/dist/cjs/constants/ausd.js +0 -29
  39. package/dist/cjs/constants/ausd.js.map +0 -1
  40. package/dist/cjs/constants/chains.d.ts +0 -147
  41. package/dist/cjs/constants/chains.d.ts.map +0 -1
  42. package/dist/cjs/constants/chains.js +0 -134
  43. package/dist/cjs/constants/chains.js.map +0 -1
  44. package/dist/cjs/constants/circle.d.ts +0 -1757
  45. package/dist/cjs/constants/circle.d.ts.map +0 -1
  46. package/dist/cjs/constants/circle.js +0 -149
  47. package/dist/cjs/constants/circle.js.map +0 -1
  48. package/dist/cjs/constants/contracts/circle.d.ts +0 -108
  49. package/dist/cjs/constants/contracts/circle.d.ts.map +0 -1
  50. package/dist/cjs/constants/contracts/circle.js +0 -153
  51. package/dist/cjs/constants/contracts/circle.js.map +0 -1
  52. package/dist/cjs/constants/contracts/core.d.ts +0 -2
  53. package/dist/cjs/constants/contracts/core.d.ts.map +0 -1
  54. package/dist/cjs/constants/contracts/core.js +0 -112
  55. package/dist/cjs/constants/contracts/core.js.map +0 -1
  56. package/dist/cjs/constants/contracts/cosmos.d.ts +0 -3
  57. package/dist/cjs/constants/contracts/cosmos.d.ts.map +0 -1
  58. package/dist/cjs/constants/contracts/cosmos.js +0 -26
  59. package/dist/cjs/constants/contracts/cosmos.js.map +0 -1
  60. package/dist/cjs/constants/contracts/customConsistencyLevel.d.ts +0 -2
  61. package/dist/cjs/constants/contracts/customConsistencyLevel.d.ts.map +0 -1
  62. package/dist/cjs/constants/contracts/customConsistencyLevel.js +0 -22
  63. package/dist/cjs/constants/contracts/customConsistencyLevel.js.map +0 -1
  64. package/dist/cjs/constants/contracts/executor.d.ts +0 -2
  65. package/dist/cjs/constants/contracts/executor.d.ts.map +0 -1
  66. package/dist/cjs/constants/contracts/executor.js +0 -69
  67. package/dist/cjs/constants/contracts/executor.js.map +0 -1
  68. package/dist/cjs/constants/contracts/executorQuoter.d.ts +0 -2
  69. package/dist/cjs/constants/contracts/executorQuoter.d.ts.map +0 -1
  70. package/dist/cjs/constants/contracts/executorQuoter.js +0 -20
  71. package/dist/cjs/constants/contracts/executorQuoter.js.map +0 -1
  72. package/dist/cjs/constants/contracts/executorTokenBridge.d.ts +0 -114
  73. package/dist/cjs/constants/contracts/executorTokenBridge.d.ts.map +0 -1
  74. package/dist/cjs/constants/contracts/executorTokenBridge.js +0 -51
  75. package/dist/cjs/constants/contracts/executorTokenBridge.js.map +0 -1
  76. package/dist/cjs/constants/contracts/index.d.ts +0 -14742
  77. package/dist/cjs/constants/contracts/index.d.ts.map +0 -1
  78. package/dist/cjs/constants/contracts/index.js +0 -70
  79. package/dist/cjs/constants/contracts/index.js.map +0 -1
  80. package/dist/cjs/constants/contracts/nftBridge.d.ts +0 -2
  81. package/dist/cjs/constants/contracts/nftBridge.d.ts.map +0 -1
  82. package/dist/cjs/constants/contracts/nftBridge.js +0 -50
  83. package/dist/cjs/constants/contracts/nftBridge.js.map +0 -1
  84. package/dist/cjs/constants/contracts/portico.d.ts +0 -48
  85. package/dist/cjs/constants/contracts/portico.d.ts.map +0 -1
  86. package/dist/cjs/constants/contracts/portico.js +0 -60
  87. package/dist/cjs/constants/contracts/portico.js.map +0 -1
  88. package/dist/cjs/constants/contracts/relayer.d.ts +0 -2
  89. package/dist/cjs/constants/contracts/relayer.d.ts.map +0 -1
  90. package/dist/cjs/constants/contracts/relayer.js +0 -56
  91. package/dist/cjs/constants/contracts/relayer.js.map +0 -1
  92. package/dist/cjs/constants/contracts/rollupCheckpoint.d.ts +0 -2
  93. package/dist/cjs/constants/contracts/rollupCheckpoint.d.ts.map +0 -1
  94. package/dist/cjs/constants/contracts/rollupCheckpoint.js +0 -22
  95. package/dist/cjs/constants/contracts/rollupCheckpoint.js.map +0 -1
  96. package/dist/cjs/constants/contracts/tbtc.d.ts +0 -2
  97. package/dist/cjs/constants/contracts/tbtc.d.ts.map +0 -1
  98. package/dist/cjs/constants/contracts/tbtc.js +0 -17
  99. package/dist/cjs/constants/contracts/tbtc.js.map +0 -1
  100. package/dist/cjs/constants/contracts/tokenBridge.d.ts +0 -2
  101. package/dist/cjs/constants/contracts/tokenBridge.d.ts.map +0 -1
  102. package/dist/cjs/constants/contracts/tokenBridge.js +0 -91
  103. package/dist/cjs/constants/contracts/tokenBridge.js.map +0 -1
  104. package/dist/cjs/constants/contracts/tokenBridgeRelayer.d.ts +0 -2
  105. package/dist/cjs/constants/contracts/tokenBridgeRelayer.d.ts.map +0 -1
  106. package/dist/cjs/constants/contracts/tokenBridgeRelayer.js +0 -37
  107. package/dist/cjs/constants/contracts/tokenBridgeRelayer.js.map +0 -1
  108. package/dist/cjs/constants/dai.d.ts +0 -98
  109. package/dist/cjs/constants/dai.d.ts.map +0 -1
  110. package/dist/cjs/constants/dai.js +0 -14
  111. package/dist/cjs/constants/dai.js.map +0 -1
  112. package/dist/cjs/constants/decimals.d.ts +0 -24
  113. package/dist/cjs/constants/decimals.d.ts.map +0 -1
  114. package/dist/cjs/constants/decimals.js +0 -27
  115. package/dist/cjs/constants/decimals.js.map +0 -1
  116. package/dist/cjs/constants/executor.d.ts +0 -8
  117. package/dist/cjs/constants/executor.d.ts.map +0 -1
  118. package/dist/cjs/constants/executor.js +0 -10
  119. package/dist/cjs/constants/executor.js.map +0 -1
  120. package/dist/cjs/constants/explorer.d.ts +0 -8386
  121. package/dist/cjs/constants/explorer.d.ts.map +0 -1
  122. package/dist/cjs/constants/explorer.js +0 -511
  123. package/dist/cjs/constants/explorer.js.map +0 -1
  124. package/dist/cjs/constants/finality.d.ts +0 -156
  125. package/dist/cjs/constants/finality.d.ts.map +0 -1
  126. package/dist/cjs/constants/finality.js +0 -217
  127. package/dist/cjs/constants/finality.js.map +0 -1
  128. package/dist/cjs/constants/graphQL.d.ts +0 -4
  129. package/dist/cjs/constants/graphQL.d.ts.map +0 -1
  130. package/dist/cjs/constants/graphQL.js +0 -21
  131. package/dist/cjs/constants/graphQL.js.map +0 -1
  132. package/dist/cjs/constants/guardians.d.ts +0 -525
  133. package/dist/cjs/constants/guardians.d.ts.map +0 -1
  134. package/dist/cjs/constants/guardians.js +0 -42
  135. package/dist/cjs/constants/guardians.js.map +0 -1
  136. package/dist/cjs/constants/index.d.ts +0 -24
  137. package/dist/cjs/constants/index.d.ts.map +0 -1
  138. package/dist/cjs/constants/index.js +0 -53
  139. package/dist/cjs/constants/index.js.map +0 -1
  140. package/dist/cjs/constants/nativeChainIds.d.ts +0 -2483
  141. package/dist/cjs/constants/nativeChainIds.d.ts.map +0 -1
  142. package/dist/cjs/constants/nativeChainIds.js +0 -156
  143. package/dist/cjs/constants/nativeChainIds.js.map +0 -1
  144. package/dist/cjs/constants/networks.d.ts +0 -4
  145. package/dist/cjs/constants/networks.d.ts.map +0 -1
  146. package/dist/cjs/constants/networks.js +0 -12
  147. package/dist/cjs/constants/networks.js.map +0 -1
  148. package/dist/cjs/constants/platforms.d.ts +0 -108
  149. package/dist/cjs/constants/platforms.d.ts.map +0 -1
  150. package/dist/cjs/constants/platforms.js +0 -120
  151. package/dist/cjs/constants/platforms.js.map +0 -1
  152. package/dist/cjs/constants/rpc.d.ts +0 -5
  153. package/dist/cjs/constants/rpc.d.ts.map +0 -1
  154. package/dist/cjs/constants/rpc.js +0 -119
  155. package/dist/cjs/constants/rpc.js.map +0 -1
  156. package/dist/cjs/constants/sui/executorTokenBridgeState.d.ts +0 -55
  157. package/dist/cjs/constants/sui/executorTokenBridgeState.d.ts.map +0 -1
  158. package/dist/cjs/constants/sui/executorTokenBridgeState.js +0 -45
  159. package/dist/cjs/constants/sui/executorTokenBridgeState.js.map +0 -1
  160. package/dist/cjs/constants/tbtc.d.ts +0 -193
  161. package/dist/cjs/constants/tbtc.d.ts.map +0 -1
  162. package/dist/cjs/constants/tbtc.js +0 -20
  163. package/dist/cjs/constants/tbtc.js.map +0 -1
  164. package/dist/cjs/constants/tokens/index.d.ts +0 -10
  165. package/dist/cjs/constants/tokens/index.d.ts.map +0 -1
  166. package/dist/cjs/constants/tokens/index.js +0 -65
  167. package/dist/cjs/constants/tokens/index.js.map +0 -1
  168. package/dist/cjs/constants/tokens/mainnet.d.ts +0 -4240
  169. package/dist/cjs/constants/tokens/mainnet.d.ts.map +0 -1
  170. package/dist/cjs/constants/tokens/mainnet.js +0 -3941
  171. package/dist/cjs/constants/tokens/mainnet.js.map +0 -1
  172. package/dist/cjs/constants/tokens/testnet.d.ts +0 -3198
  173. package/dist/cjs/constants/tokens/testnet.d.ts.map +0 -1
  174. package/dist/cjs/constants/tokens/testnet.js +0 -3019
  175. package/dist/cjs/constants/tokens/testnet.js.map +0 -1
  176. package/dist/cjs/constants/tokens.d.ts +0 -31
  177. package/dist/cjs/constants/tokens.d.ts.map +0 -1
  178. package/dist/cjs/constants/tokens.js +0 -24
  179. package/dist/cjs/constants/tokens.js.map +0 -1
  180. package/dist/cjs/constants/usds.d.ts +0 -136
  181. package/dist/cjs/constants/usds.d.ts.map +0 -1
  182. package/dist/cjs/constants/usds.js +0 -16
  183. package/dist/cjs/constants/usds.js.map +0 -1
  184. package/dist/cjs/constants/usdt.d.ts +0 -288
  185. package/dist/cjs/constants/usdt.d.ts.map +0 -1
  186. package/dist/cjs/constants/usdt.js +0 -24
  187. package/dist/cjs/constants/usdt.js.map +0 -1
  188. package/dist/cjs/index.d.ts +0 -3
  189. package/dist/cjs/index.d.ts.map +0 -1
  190. package/dist/cjs/index.js +0 -19
  191. package/dist/cjs/index.js.map +0 -1
  192. package/dist/cjs/package.json +0 -1
  193. package/dist/cjs/utils/amount.d.ts +0 -87
  194. package/dist/cjs/utils/amount.d.ts.map +0 -1
  195. package/dist/cjs/utils/amount.js +0 -205
  196. package/dist/cjs/utils/amount.js.map +0 -1
  197. package/dist/cjs/utils/array.d.ts +0 -71
  198. package/dist/cjs/utils/array.d.ts.map +0 -1
  199. package/dist/cjs/utils/array.js +0 -42
  200. package/dist/cjs/utils/array.js.map +0 -1
  201. package/dist/cjs/utils/encoding.d.ts +0 -59
  202. package/dist/cjs/utils/encoding.d.ts.map +0 -1
  203. package/dist/cjs/utils/encoding.js +0 -112
  204. package/dist/cjs/utils/encoding.js.map +0 -1
  205. package/dist/cjs/utils/index.d.ts +0 -9
  206. package/dist/cjs/utils/index.d.ts.map +0 -1
  207. package/dist/cjs/utils/index.js +0 -38
  208. package/dist/cjs/utils/index.js.map +0 -1
  209. package/dist/cjs/utils/layout.d.ts +0 -2
  210. package/dist/cjs/utils/layout.d.ts.map +0 -1
  211. package/dist/cjs/utils/layout.js +0 -17
  212. package/dist/cjs/utils/layout.js.map +0 -1
  213. package/dist/cjs/utils/mapping.d.ts +0 -96
  214. package/dist/cjs/utils/mapping.d.ts.map +0 -1
  215. package/dist/cjs/utils/mapping.js +0 -206
  216. package/dist/cjs/utils/mapping.js.map +0 -1
  217. package/dist/cjs/utils/metaprogramming.d.ts +0 -28
  218. package/dist/cjs/utils/metaprogramming.d.ts.map +0 -1
  219. package/dist/cjs/utils/metaprogramming.js +0 -10
  220. package/dist/cjs/utils/metaprogramming.js.map +0 -1
  221. package/dist/cjs/utils/misc.d.ts +0 -6
  222. package/dist/cjs/utils/misc.d.ts.map +0 -1
  223. package/dist/cjs/utils/misc.js +0 -41
  224. package/dist/cjs/utils/misc.js.map +0 -1
  225. package/dist/cjs/utils/time.d.ts +0 -2
  226. package/dist/cjs/utils/time.d.ts.map +0 -1
  227. package/dist/cjs/utils/time.js +0 -8
  228. package/dist/cjs/utils/time.js.map +0 -1
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.usdtContract = void 0;
4
- const index_js_1 = require("./../utils/index.js");
5
- // prettier-ignore
6
- const usdtContracts = [[
7
- "Mainnet", [
8
- // Non exhaustive list of USDT addresses
9
- ["Arbitrum", "0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9"],
10
- ["Avalanche", "0x9702230A8Ea53601f5cD2dc00fDbC13d4dF4A8c7"],
11
- ["Base", "0xfde4C96c8593536E31F229EA8f37b2ADa2699bb2"],
12
- ["Bsc", "0x55d398326f99059fF775485246999027B3197955"],
13
- ["Celo", "0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e"],
14
- ["Ethereum", "0xdAC17F958D2ee523a2206206994597C13D831ec7"],
15
- ["Optimism", "0x94b008aA00579c1307B0EF2c499aD98a8ce58e58"],
16
- ["Polygon", "0xc2132D05D31c914a87C6611C10748AEb04B58e8F"],
17
- ["Solana", "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"],
18
- ["Monad", "0xe7cd86e13AC4309349F30B3435a9d337750fC82D"],
19
- ["Unichain", "0x9151434b16b9763660705744891fA906F660EcC5"],
20
- ]
21
- ],
22
- ];
23
- exports.usdtContract = (0, index_js_1.constMap)(usdtContracts);
24
- //# sourceMappingURL=usdt.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usdt.js","sourceRoot":"","sources":["../../../src/constants/usdt.ts"],"names":[],"mappings":";;;AACA,kDAA+C;AAI/C,kBAAkB;AAClB,MAAM,aAAa,GAAG,CAAC;QACrB,SAAS,EAAE;YACP,wCAAwC;YACxC,CAAC,UAAU,EAAE,4CAA4C,CAAC;YAC1D,CAAC,WAAW,EAAE,4CAA4C,CAAC;YAC3D,CAAC,MAAM,EAAE,4CAA4C,CAAC;YACtD,CAAC,KAAK,EAAE,4CAA4C,CAAC;YACrD,CAAC,MAAM,EAAE,4CAA4C,CAAC;YACtD,CAAC,UAAU,EAAE,4CAA4C,CAAC;YAC1D,CAAC,UAAU,EAAE,4CAA4C,CAAC;YAC1D,CAAC,SAAS,EAAE,4CAA4C,CAAC;YACzD,CAAC,QAAQ,EAAE,8CAA8C,CAAC;YAC1D,CAAC,OAAO,EAAE,4CAA4C,CAAC;YACvD,CAAC,UAAU,EAAE,4CAA4C,CAAC;SAC7D;KAAC;CAC2D,CAAC;AAEnD,QAAA,YAAY,GAAG,IAAA,mBAAQ,EAAC,aAAa,CAAC,CAAC"}
@@ -1,3 +0,0 @@
1
- export * from "./constants/index.js";
2
- export * from "./utils/index.js";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC"}
package/dist/cjs/index.js DELETED
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./constants/index.js"), exports);
18
- __exportStar(require("./utils/index.js"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,mDAAiC"}
@@ -1 +0,0 @@
1
- {"type":"commonjs"}
@@ -1,87 +0,0 @@
1
- /**
2
- * Amount is a number of base units and decimal precision,
3
- * expressed using a string for JSON-compatibility
4
- */
5
- export interface Amount {
6
- /** Amount expressed in base units */
7
- amount: string;
8
- /** Number of decimal places in amount */
9
- decimals: number;
10
- }
11
- /**
12
- * Removes potential floating point noise from input amount beyond given decimal level
13
- * denoise(9.535695950000001, 9) -> 9.535695950
14
- * @param amount The string or number to denoise
15
- * @param decimals The number of decimals for the token this amount is of
16
- * @returns A number, with no floating point noise
17
- */
18
- export declare function denoise(amount: string | number, decimals: number): number;
19
- /**
20
- * Parses a string or number into an Amount, given a decimal level
21
- * @param amount The string or number to parse
22
- * @param decimals The number of decimals for the token this amount is of
23
- * @returns An Amount, expressed as base units and decimals
24
- */
25
- export declare function parse(amount: string | number, decimals: number): Amount;
26
- /**
27
- * A utility function to truncate an amount to some max decimal
28
- *
29
- * This is useful for things like the TokenBridge, where we want to truncate
30
- * the amount to represent a maximum of 8 decimals
31
- *
32
- * @param amount the Amount to truncate
33
- * @param maxDecimals the max number of decimals we want to keep, zeroing out the rest
34
- * @returns the truncated Amount
35
- */
36
- export declare function truncate(amount: Amount, maxDecimals: number): Amount;
37
- /**
38
- * Utility function to scale some amount to a given number of decimals
39
- *
40
- * This is useful for things like the TokenBridge, where we want to scale
41
- * the amount from some the over-the-wire 8 decimals
42
- *
43
- * @param amount the amount to scale
44
- * @param toDecimals the number of decimals to scale to
45
- * @returns the scaled amount
46
- */
47
- export declare function scale(amount: Amount, toDecimals: number): Amount;
48
- /**
49
- * Directly creates an Amount given the base units and decimal level
50
- * @param amount Amount expressed as base units
51
- * @param decimals The number of decimals for the token this amount is of
52
- * @returns An Amount, expressed as base units and decimals
53
- */
54
- export declare function fromBaseUnits(amount: bigint, decimals: number): Amount;
55
- /**
56
- * Returns the base units from an Amount, as a bigint
57
- * @param amount An Amount
58
- * @returns A bigint, representing the base units for the Amount
59
- */
60
- export declare function units(amount: Amount): bigint;
61
- /**
62
- * Formats an Amount as a human-readable string
63
- * @param amount An Amount
64
- * @param precision Number of decimal places to render
65
- * @returns A string representing the Amount as a fixed point number
66
- */
67
- export declare function display(amount: Amount, precision?: number): string;
68
- /**
69
- * Returns the decimal amount as a number (may lose precision)
70
- * @param amount An Amount
71
- * @returns A number, representing the decimal amount for the Amount
72
- */
73
- export declare function whole(amount: Amount): number;
74
- /**
75
- * fmt formats a bigint amount to a string with the given number of decimals
76
- * @param amount bigint amount
77
- * @param decimals number of decimals
78
- */
79
- export declare function fmt(amount: bigint, decimals: number): string;
80
- /**
81
- * Calculates a percentage of an amount using tenths of basis points (dBps)
82
- * @param amt The amount to calculate percentage from
83
- * @param dBps Tenths of basis points (e.g., 100 = 0.1%, 1000 = 1%, 10000 = 10%)
84
- * @returns An Amount representing the percentage portion
85
- */
86
- export declare function getDeciBps(amt: Amount, dBps: bigint): Amount;
87
- //# sourceMappingURL=amount.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"amount.d.ts","sourceRoot":"","sources":["../../../src/utils/amount.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEzE;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA2BvE;AACD;;;;;;;;;GASG;AAEH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAYpE;AAED;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CA0BhE;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG5C;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAqBlE;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED;;;;GAIG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE5D;AA6BD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAK5D"}
@@ -1,205 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDeciBps = exports.fmt = exports.whole = exports.display = exports.units = exports.fromBaseUnits = exports.scale = exports.truncate = exports.parse = exports.denoise = void 0;
4
- /**
5
- * Removes potential floating point noise from input amount beyond given decimal level
6
- * denoise(9.535695950000001, 9) -> 9.535695950
7
- * @param amount The string or number to denoise
8
- * @param decimals The number of decimals for the token this amount is of
9
- * @returns A number, with no floating point noise
10
- */
11
- function denoise(amount, decimals) {
12
- return Number(Number(amount).toFixed(decimals));
13
- }
14
- exports.denoise = denoise;
15
- /**
16
- * Parses a string or number into an Amount, given a decimal level
17
- * @param amount The string or number to parse
18
- * @param decimals The number of decimals for the token this amount is of
19
- * @returns An Amount, expressed as base units and decimals
20
- */
21
- function parse(amount, decimals) {
22
- validateAmountInput(amount, decimals);
23
- amount = amount.toString();
24
- // TODO :)
25
- if (amount.includes("e"))
26
- throw new Error("Scientific notation is not supported yet by Amount");
27
- const chunks = amount.split(".");
28
- if (chunks.length > 2)
29
- throw "Too many decimals";
30
- let [whole, partial] = chunks.length === 0 ? ["0", ""] : chunks.length === 1 ? [chunks[0], ""] : chunks;
31
- partial = partial.padEnd(decimals, "0");
32
- if (partial.length > decimals) {
33
- // if we'd be cutting off non-zero decimals, throw
34
- if (BigInt(partial.substring(decimals)) !== 0n)
35
- throw new Error("Amount: invalid input. Decimals too low.");
36
- // otherwise, truncate the partial to exactly the number of decimals
37
- partial = partial.substring(0, decimals);
38
- }
39
- const amountStr = BigInt(whole + partial).toString();
40
- return { amount: amountStr, decimals };
41
- }
42
- exports.parse = parse;
43
- /**
44
- * A utility function to truncate an amount to some max decimal
45
- *
46
- * This is useful for things like the TokenBridge, where we want to truncate
47
- * the amount to represent a maximum of 8 decimals
48
- *
49
- * @param amount the Amount to truncate
50
- * @param maxDecimals the max number of decimals we want to keep, zeroing out the rest
51
- * @returns the truncated Amount
52
- */
53
- function truncate(amount, maxDecimals) {
54
- if (amount.decimals <= maxDecimals)
55
- return amount;
56
- const delta = BigInt(amount.decimals - maxDecimals);
57
- // first scale down to maxDecimals, this will truncate the amount
58
- const scaledAmount = units(amount) / 10n ** delta;
59
- // then scale back to original decimals
60
- const amt = scaledAmount * 10n ** delta;
61
- return {
62
- amount: amt.toString(),
63
- decimals: amount.decimals,
64
- };
65
- }
66
- exports.truncate = truncate;
67
- /**
68
- * Utility function to scale some amount to a given number of decimals
69
- *
70
- * This is useful for things like the TokenBridge, where we want to scale
71
- * the amount from some the over-the-wire 8 decimals
72
- *
73
- * @param amount the amount to scale
74
- * @param toDecimals the number of decimals to scale to
75
- * @returns the scaled amount
76
- */
77
- function scale(amount, toDecimals) {
78
- if (amount.decimals === toDecimals)
79
- return amount;
80
- if (amount.amount === "0")
81
- return { amount: amount.amount, decimals: toDecimals };
82
- const delta = toDecimals - amount.decimals;
83
- // Scaling up is easy; simply add zeroes to the base units value
84
- if (delta > 0)
85
- return {
86
- amount: amount.amount + "0".repeat(delta),
87
- decimals: toDecimals,
88
- };
89
- // Scaling down is trickier; we have to make sure we're not altering the amount.
90
- // This should be done explicitly using truncateAmount to avoid bugs.
91
- if (BigInt(amount.amount.substring(amount.amount.length + delta)) === 0n) {
92
- return {
93
- amount: amount.amount.substring(0, amount.amount.length + delta),
94
- decimals: toDecimals,
95
- };
96
- }
97
- throw new Error(`scaleAmount(${JSON.stringify(amount)}, ${toDecimals}) would result in altered amount. Use truncateAmount first if you intended to truncate it.`);
98
- }
99
- exports.scale = scale;
100
- /**
101
- * Directly creates an Amount given the base units and decimal level
102
- * @param amount Amount expressed as base units
103
- * @param decimals The number of decimals for the token this amount is of
104
- * @returns An Amount, expressed as base units and decimals
105
- */
106
- function fromBaseUnits(amount, decimals) {
107
- return { amount: amount.toString(), decimals };
108
- }
109
- exports.fromBaseUnits = fromBaseUnits;
110
- /**
111
- * Returns the base units from an Amount, as a bigint
112
- * @param amount An Amount
113
- * @returns A bigint, representing the base units for the Amount
114
- */
115
- function units(amount) {
116
- validateAmount(amount);
117
- return BigInt(amount.amount);
118
- }
119
- exports.units = units;
120
- /**
121
- * Formats an Amount as a human-readable string
122
- * @param amount An Amount
123
- * @param precision Number of decimal places to render
124
- * @returns A string representing the Amount as a fixed point number
125
- */
126
- function display(amount, precision) {
127
- validateAmount(amount);
128
- let whole = amount.amount.substring(0, amount.amount.length - amount.decimals).padStart(1, "0");
129
- let partial = amount.amount
130
- .substring(amount.amount.length - amount.decimals)
131
- .padStart(amount.decimals, "0");
132
- if (precision !== undefined) {
133
- while (partial.length > precision) {
134
- if (partial[partial.length - 1] !== "0")
135
- break;
136
- partial = partial.substring(0, partial.length - 1);
137
- }
138
- partial = partial.padEnd(precision, "0");
139
- }
140
- else {
141
- // If no specific precision is given, just trim trailing zeroes
142
- // and return all significant digits.
143
- partial = partial.replace(/0+$/, "");
144
- }
145
- return partial.length > 0 ? `${whole}.${partial}` : whole;
146
- }
147
- exports.display = display;
148
- /**
149
- * Returns the decimal amount as a number (may lose precision)
150
- * @param amount An Amount
151
- * @returns A number, representing the decimal amount for the Amount
152
- */
153
- function whole(amount) {
154
- return Number(display(amount));
155
- }
156
- exports.whole = whole;
157
- /**
158
- * fmt formats a bigint amount to a string with the given number of decimals
159
- * @param amount bigint amount
160
- * @param decimals number of decimals
161
- */
162
- function fmt(amount, decimals) {
163
- return display(fromBaseUnits(amount, decimals));
164
- }
165
- exports.fmt = fmt;
166
- function validateAmountInput(amount, decimals) {
167
- if (typeof amount === "number") {
168
- if (!isFinite(amount))
169
- throw new Error("Amount: invalid input. Amount must be finite");
170
- if (amount < 0)
171
- throw new Error("Amount: invalid input. Amount cannot be negative");
172
- }
173
- else {
174
- if (!/^[0-9\.]*$/.test(amount)) {
175
- throw new Error("Amount: invalid input. Must only contain digits.");
176
- }
177
- }
178
- if (!isFinite(decimals)) {
179
- throw new Error("Amount: invalid input. Decimals must be finite");
180
- }
181
- }
182
- function validateAmount(amount) {
183
- if (!/^[0-9]*$/.test(amount.amount)) {
184
- throw new Error("Amount: invalid input. Must only contain digits.");
185
- }
186
- if (amount.decimals < 0) {
187
- throw new Error("Amount: invalid input. Decimals must be >= 0");
188
- }
189
- if (!isFinite(amount.decimals)) {
190
- throw new Error("Amount: invalid input. Decimals must be a finite number.");
191
- }
192
- }
193
- /**
194
- * Calculates a percentage of an amount using tenths of basis points (dBps)
195
- * @param amt The amount to calculate percentage from
196
- * @param dBps Tenths of basis points (e.g., 100 = 0.1%, 1000 = 1%, 10000 = 10%)
197
- * @returns An Amount representing the percentage portion
198
- */
199
- function getDeciBps(amt, dBps) {
200
- const amtUnits = units(amt);
201
- const portionUnits = (amtUnits * dBps) / 100000n;
202
- return fromBaseUnits(portionUnits, amt.decimals);
203
- }
204
- exports.getDeciBps = getDeciBps;
205
- //# sourceMappingURL=amount.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"amount.js","sourceRoot":"","sources":["../../../src/utils/amount.ts"],"names":[],"mappings":"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"}
@@ -1,71 +0,0 @@
1
- import type { RoPair, RoTuple, RoArray, Extends, Xor, Not } from './metaprogramming.js';
2
- export type RoTuple2D<T = unknown> = RoTuple<RoTuple<T>>;
3
- export type RoArray2D<T = unknown> = RoArray<RoArray<T>>;
4
- type TupleRangeImpl<L extends number, A extends number[] = []> = A["length"] extends L ? A : TupleRangeImpl<L, [...A, A["length"]]>;
5
- export type TupleRange<L extends number> = number extends L ? never : L extends any ? TupleRangeImpl<L> : never;
6
- export type Range<L extends number> = L extends any ? number extends L ? number[] : TupleRange<L> : never;
7
- export type TupleWithLength<T, L extends number> = TupleRange<L> extends infer R extends RoArray<number> ? [...{
8
- [K in keyof R]: T;
9
- }] : never;
10
- export type RoTupleWithLength<T, L extends number> = Readonly<TupleWithLength<T, L>>;
11
- export declare const range: <const L extends number>(length: L) => Range<L>;
12
- export type IndexEs = number;
13
- export type HeadTail<T extends RoTuple, Head extends T[number], Tail extends RoTuple<T[number]>> = readonly [Head, ...Tail];
14
- export type TupleEntries<T extends RoTuple> = [
15
- ...{
16
- [K in keyof T]: K extends `${infer N extends number}` ? [N, T[K]] : never;
17
- }
18
- ];
19
- export type Entries<T extends RoArray> = T extends RoTuple ? TupleEntries<T> : T extends RoArray<infer U> ? [number, U][] : never;
20
- export declare function entries<const T extends RoTuple>(arr: T): TupleEntries<T>;
21
- export declare function entries<const T extends RoArray>(arr: T): Entries<T>;
22
- export type IsArray<T> = T extends RoArray<any> ? true : false;
23
- export type IsFlat<A extends RoArray> = true extends IsArray<A[number]> ? false : true;
24
- export type TupleFlatten<T extends RoTuple> = T extends HeadTail<T, infer Head, infer Tail> ? Head extends RoTuple ? [...Head, ...TupleFlatten<Tail>] : [Head, ...TupleFlatten<Tail>] : [];
25
- type StripArray<T> = T extends RoArray<infer E> ? E : T;
26
- export type Flatten<A extends RoArray> = A extends RoTuple ? TupleFlatten<A> : StripArray<A[number]>[];
27
- export declare const flatten: <const A extends RoArray>(arr: A) => Flatten<A>;
28
- export type InnerFlatten<A extends RoArray> = [
29
- ...{
30
- [K in keyof A]: K extends `${number}` ? A[K] extends RoArray ? Flatten<A[K]> : A[K] : never;
31
- }
32
- ];
33
- export type Unflatten<A extends RoArray> = [
34
- ...{
35
- [K in keyof A]: K extends `${number}` ? [A[K]] : never;
36
- }
37
- ];
38
- export type IsRectangular<T extends RoTuple> = T extends RoTuple2D ? T extends HeadTail<T, infer Head extends RoTuple, infer Tail extends RoTuple2D> ? Tail extends readonly [] ? true : Tail[number]["length"] extends Head["length"] ? true : false : true : true;
39
- export type Column<A extends RoArray2D, I extends number> = [
40
- ...{
41
- [K in keyof A]: K extends `${number}` ? A[K][I] : never;
42
- }
43
- ];
44
- export declare const column: <const A extends RoArray2D<unknown>, const I extends number>(tupArr: A, index: I) => [...{ [K in keyof A]: K extends `${number}` ? A[K][I] : never; }];
45
- export type TupleZip<T extends RoTuple2D> = IsRectangular<T> extends true ? T[0] extends infer Head extends RoTuple ? [
46
- ...{
47
- [K in keyof Head]: K extends `${number}` ? [...{
48
- [K2 in keyof T]: K extends keyof T[K2] ? T[K2][K] : never;
49
- }] : never;
50
- }
51
- ] : [] : never;
52
- export type Zip<A extends RoArray2D> = A extends RoTuple2D ? TupleZip<A> : Flatten<A>[number][][];
53
- export declare const zip: <const Args extends RoArray2D<unknown>>(arr: Args) => Zip<Args>;
54
- export type TuplePickWithOrder<A extends RoArray, I extends RoTuple<number>> = I extends HeadTail<I, infer Head, infer Tail> ? A[Head] extends undefined ? TuplePickWithOrder<A, Tail> : [A[Head], ...TuplePickWithOrder<A, Tail>] : [];
55
- export type PickWithOrder<A extends RoArray, I extends RoArray<number>> = [
56
- A,
57
- I
58
- ] extends [infer T extends RoTuple, infer TI extends RoTuple<number>] ? TuplePickWithOrder<T, TI> : A;
59
- export declare const pickWithOrder: <const A extends RoArray, const I extends RoArray<number>>(arr: A, indexes: I) => PickWithOrder<A, I>;
60
- type FilterIndexesImpl<T extends RoTuple, I extends IndexEs, E extends boolean> = T extends HeadTail<T, infer Head, infer Tail> ? Head extends RoPair<infer J extends number, infer V> ? Not<Xor<Not<E>, Extends<J, I>>> extends true ? [V, ...FilterIndexesImpl<Tail, I, E>] : FilterIndexesImpl<Tail, I, E> : never : [];
61
- export type FilterIndexes<A extends RoArray, I extends IndexEs, E extends boolean = false> = A extends infer T extends RoTuple ? FilterIndexesImpl<Entries<T>, I, E> : A;
62
- export declare const filterIndexes: <const T extends RoArray, const I extends RoArray<number>, const E extends boolean = false>(arr: T, indexes: I, exclude?: E) => FilterIndexes<T, I[number], E>;
63
- export type Cartesian<L, R> = L extends RoArray ? Flatten<[...{
64
- [K in keyof L]: K extends `${number}` ? Cartesian<L[K], R> : never;
65
- }]> : R extends RoArray ? [...{
66
- [K in keyof R]: K extends `${number}` ? [L, R[K]] : never;
67
- }] : [L, R];
68
- export declare function median(arr: RoArray<number>, isSorted?: boolean): number;
69
- export declare function median(arr: RoArray<bigint>, isSorted?: boolean): bigint;
70
- export {};
71
- //# sourceMappingURL=array.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/utils/array.ts"],"names":[],"mappings":"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"}
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.median = exports.filterIndexes = exports.pickWithOrder = exports.zip = exports.column = exports.flatten = exports.entries = exports.range = void 0;
4
- const range = (length) => [...Array(length).keys()];
5
- exports.range = range;
6
- function entries(arr) {
7
- return [...arr.entries()];
8
- }
9
- exports.entries = entries;
10
- const flatten = (arr) => arr.flat();
11
- exports.flatten = flatten;
12
- const column = (tupArr, index) => tupArr.map((tuple) => tuple[index]);
13
- exports.column = column;
14
- const zip = (arr) => (0, exports.range)(arr[0].length).map(col => (0, exports.range)(arr.length).map(row => arr[row][col]));
15
- exports.zip = zip;
16
- const pickWithOrder = (arr, indexes) => indexes.map((i) => arr[i]);
17
- exports.pickWithOrder = pickWithOrder;
18
- const filterIndexes = (arr, indexes, exclude) => {
19
- const indexSet = new Set(Array.isArray(indexes) ? indexes : [indexes]);
20
- return arr.filter((_, i) => indexSet.has(i) !== exclude);
21
- };
22
- exports.filterIndexes = filterIndexes;
23
- function median(arr, isSorted = false) {
24
- if (arr.length === 0)
25
- throw new Error("Can't calculate median of empty array");
26
- const sorted = isSorted ? arr : [...arr].sort((a, b) => (a > b ? 1 : a < b ? -1 : 0)); // handle bigint and number
27
- const mid = Math.floor(sorted.length / 2);
28
- if (sorted.length % 2 === 1) {
29
- return sorted[mid];
30
- }
31
- const left = sorted[mid - 1];
32
- const right = sorted[mid];
33
- if (typeof left === "bigint" && typeof right === "bigint") {
34
- return (left + right) / 2n;
35
- }
36
- if (typeof left === "number" && typeof right === "number") {
37
- return (left + right) / 2;
38
- }
39
- throw new Error("Can't calculate median of array with mixed number and bigint");
40
- }
41
- exports.median = median;
42
- //# sourceMappingURL=array.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../src/utils/array.ts"],"names":[],"mappings":"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"}
@@ -1,59 +0,0 @@
1
- export { bech32 } from "@scure/base";
2
- /** Utility method to strip a given prefix, frequently used to remove '0x' from an address */
3
- export declare const stripPrefix: (prefix: string, str: string) => string;
4
- /** Base16/Hex encoding and decoding utilities */
5
- export declare const hex: {
6
- /** check if a string is valid hex */
7
- valid: (input: string) => boolean;
8
- /** decode a hex string to Uint8Array */
9
- decode: (input: string) => Uint8Array;
10
- /** encode a string or Uint8Array to hex */
11
- encode: (input: string | Uint8Array, prefix?: boolean) => string;
12
- };
13
- /** Base64 encoding and decoding utilities */
14
- export declare const b64: {
15
- /** check if a string is valid base64 */
16
- valid: (input: string) => boolean;
17
- /** decode a base64 string to Uint8Array */
18
- decode: (str: string) => Uint8Array;
19
- /** encode a string or Uint8Array to base64 */
20
- encode: (input: string | Uint8Array) => string;
21
- };
22
- /** Base58 encoding and decoding utilities */
23
- export declare const b58: {
24
- /** decode a base58 string to Uint8Array */
25
- decode: (str: string) => Uint8Array;
26
- /** encode a string or Uint8Array to base58 */
27
- encode: (input: string | Uint8Array) => string;
28
- };
29
- /** BigInt encoding and decoding utilities */
30
- export declare const bignum: {
31
- /** decode a hex string or bytes to a bigint */
32
- decode: (input: string | Uint8Array) => bigint;
33
- /** encode a bigint as a hex string */
34
- encode: (input: bigint, prefix?: boolean) => string;
35
- /** convert a bigint to a hexstring */
36
- toString: (input: bigint, prefix?: boolean) => string;
37
- /** convert a bigint or number to bytes,
38
- * optionally specify length, left padded with 0s to length
39
- */
40
- toBytes: (input: bigint | number, length?: number) => Uint8Array;
41
- /** safe cast from bigint to number */
42
- toNumber: (input: bigint) => number;
43
- /** safe cast from number to bigint */
44
- toBigInt: (input: number) => bigint;
45
- };
46
- /** Uint8Array encoding and decoding utilities */
47
- export declare const bytes: {
48
- /** encode a string to Uint8Array */
49
- encode: (value: string) => Uint8Array;
50
- /** decode a Uint8Array to string */
51
- decode: (value: Uint8Array) => string;
52
- /** compare two Uint8Arrays for equality */
53
- equals: (lhs: Uint8Array, rhs: Uint8Array) => boolean;
54
- /** pad a Uint8Array to a given length, optionally specifying padding direction */
55
- zpad: (arr: Uint8Array, length: number, padStart?: boolean) => Uint8Array;
56
- /** concatenate multiple Uint8Arrays into a single Uint8Array */
57
- concat: (...args: Uint8Array[]) => Uint8Array;
58
- };
59
- //# sourceMappingURL=encoding.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../../../src/utils/encoding.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,6FAA6F;AAC7F,eAAO,MAAM,WAAW,WAAY,MAAM,OAAO,MAAM,KAAG,MACD,CAAC;AAI1D,iDAAiD;AACjD,eAAO,MAAM,GAAG;IACd,qCAAqC;mBACtB,MAAM;IACrB,wCAAwC;oBACxB,MAAM;IACtB,2CAA2C;oBAC3B,MAAM,GAAG,UAAU,WAAU,OAAO;CAIrD,CAAC;AAMF,6CAA6C;AAC7C,eAAO,MAAM,GAAG;IACd,wCAAwC;mBACzB,MAAM;IACrB,2CAA2C;;IAE3C,8CAA8C;oBAC9B,MAAM,GAAG,UAAU;CAEpC,CAAC;AAEF,6CAA6C;AAC7C,eAAO,MAAM,GAAG;IACd,2CAA2C;;IAE3C,8CAA8C;oBAC9B,MAAM,GAAG,UAAU;CAEpC,CAAC;AAEF,6CAA6C;AAC7C,eAAO,MAAM,MAAM;IACjB,+CAA+C;oBAC/B,MAAM,GAAG,UAAU;IAKnC,sCAAsC;oBACtB,MAAM,WAAU,OAAO;IACvC,sCAAsC;sBACpB,MAAM,WAAU,OAAO;IAMzC;;OAEG;qBACc,MAAM,GAAG,MAAM,WAAW,MAAM;IAOjD,sCAAsC;sBACpB,MAAM;IAMxB,sCAAsC;sBACpB,MAAM;CAMzB,CAAC;AAEF,iDAAiD;AACjD,eAAO,MAAM,KAAK;IAChB,oCAAoC;oBACpB,MAAM,KAAG,UAAU;IACnC,oCAAoC;oBACpB,UAAU,KAAG,MAAM;IACnC,2CAA2C;kBAC7B,UAAU,OAAO,UAAU,KAAG,OAAO;IAEnD,kFAAkF;gBACtE,UAAU,UAAU,MAAM,aAAY,OAAO,KAAU,UAAU;IAI7E,gEAAgE;sBAC9C,UAAU,EAAE,KAAG,UAAU;CAU5C,CAAC"}