@adriangalilea/utils 0.0.10

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 (110) hide show
  1. package/README.md +99 -0
  2. package/dist/browser.d.ts +14 -0
  3. package/dist/browser.d.ts.map +1 -0
  4. package/dist/browser.js +18 -0
  5. package/dist/browser.js.map +1 -0
  6. package/dist/currency/crypto-symbols-data.d.ts +10 -0
  7. package/dist/currency/crypto-symbols-data.d.ts.map +1 -0
  8. package/dist/currency/crypto-symbols-data.js +13765 -0
  9. package/dist/currency/crypto-symbols-data.js.map +1 -0
  10. package/dist/currency/crypto-symbols.d.ts +20 -0
  11. package/dist/currency/crypto-symbols.d.ts.map +1 -0
  12. package/dist/currency/crypto-symbols.js +23 -0
  13. package/dist/currency/crypto-symbols.js.map +1 -0
  14. package/dist/currency/download-crypto-list.d.ts +10 -0
  15. package/dist/currency/download-crypto-list.d.ts.map +1 -0
  16. package/dist/currency/download-crypto-list.js +69 -0
  17. package/dist/currency/download-crypto-list.js.map +1 -0
  18. package/dist/currency/index.d.ts +84 -0
  19. package/dist/currency/index.d.ts.map +1 -0
  20. package/dist/currency/index.js +230 -0
  21. package/dist/currency/index.js.map +1 -0
  22. package/dist/dir.d.ts +40 -0
  23. package/dist/dir.d.ts.map +1 -0
  24. package/dist/dir.js +108 -0
  25. package/dist/dir.js.map +1 -0
  26. package/dist/file.d.ts +53 -0
  27. package/dist/file.d.ts.map +1 -0
  28. package/dist/file.js +211 -0
  29. package/dist/file.js.map +1 -0
  30. package/dist/format.d.ts +40 -0
  31. package/dist/format.d.ts.map +1 -0
  32. package/dist/format.js +83 -0
  33. package/dist/format.js.map +1 -0
  34. package/dist/index.d.ts +16 -0
  35. package/dist/index.d.ts.map +1 -0
  36. package/dist/index.js +20 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/kev.d.ts +149 -0
  39. package/dist/kev.d.ts.map +1 -0
  40. package/dist/kev.js +761 -0
  41. package/dist/kev.js.map +1 -0
  42. package/dist/log.d.ts +91 -0
  43. package/dist/log.d.ts.map +1 -0
  44. package/dist/log.js +300 -0
  45. package/dist/log.js.map +1 -0
  46. package/dist/logger.d.ts +91 -0
  47. package/dist/logger.d.ts.map +1 -0
  48. package/dist/logger.js +269 -0
  49. package/dist/logger.js.map +1 -0
  50. package/dist/offensive.d.ts +73 -0
  51. package/dist/offensive.d.ts.map +1 -0
  52. package/dist/offensive.js +103 -0
  53. package/dist/offensive.js.map +1 -0
  54. package/dist/path.d.ts +67 -0
  55. package/dist/path.d.ts.map +1 -0
  56. package/dist/path.js +107 -0
  57. package/dist/path.js.map +1 -0
  58. package/dist/platform/dir.d.ts +40 -0
  59. package/dist/platform/dir.d.ts.map +1 -0
  60. package/dist/platform/dir.js +108 -0
  61. package/dist/platform/dir.js.map +1 -0
  62. package/dist/platform/file.d.ts +53 -0
  63. package/dist/platform/file.d.ts.map +1 -0
  64. package/dist/platform/file.js +211 -0
  65. package/dist/platform/file.js.map +1 -0
  66. package/dist/platform/kev.d.ts +149 -0
  67. package/dist/platform/kev.d.ts.map +1 -0
  68. package/dist/platform/kev.js +762 -0
  69. package/dist/platform/kev.js.map +1 -0
  70. package/dist/platform/path.d.ts +67 -0
  71. package/dist/platform/path.d.ts.map +1 -0
  72. package/dist/platform/path.js +108 -0
  73. package/dist/platform/path.js.map +1 -0
  74. package/dist/platform/project.d.ts +35 -0
  75. package/dist/platform/project.d.ts.map +1 -0
  76. package/dist/platform/project.js +155 -0
  77. package/dist/platform/project.js.map +1 -0
  78. package/dist/project.d.ts +35 -0
  79. package/dist/project.d.ts.map +1 -0
  80. package/dist/project.js +154 -0
  81. package/dist/project.js.map +1 -0
  82. package/dist/runtime.d.ts +65 -0
  83. package/dist/runtime.d.ts.map +1 -0
  84. package/dist/runtime.js +193 -0
  85. package/dist/runtime.js.map +1 -0
  86. package/dist/universal/currency/crypto-symbols-data.d.ts +10 -0
  87. package/dist/universal/currency/crypto-symbols-data.d.ts.map +1 -0
  88. package/dist/universal/currency/crypto-symbols-data.js +13765 -0
  89. package/dist/universal/currency/crypto-symbols-data.js.map +1 -0
  90. package/dist/universal/currency/crypto-symbols.d.ts +20 -0
  91. package/dist/universal/currency/crypto-symbols.d.ts.map +1 -0
  92. package/dist/universal/currency/crypto-symbols.js +23 -0
  93. package/dist/universal/currency/crypto-symbols.js.map +1 -0
  94. package/dist/universal/currency/download-crypto-list.d.ts +10 -0
  95. package/dist/universal/currency/download-crypto-list.d.ts.map +1 -0
  96. package/dist/universal/currency/download-crypto-list.js +69 -0
  97. package/dist/universal/currency/download-crypto-list.js.map +1 -0
  98. package/dist/universal/currency/index.d.ts +90 -0
  99. package/dist/universal/currency/index.d.ts.map +1 -0
  100. package/dist/universal/currency/index.js +276 -0
  101. package/dist/universal/currency/index.js.map +1 -0
  102. package/dist/universal/format.d.ts +40 -0
  103. package/dist/universal/format.d.ts.map +1 -0
  104. package/dist/universal/format.js +83 -0
  105. package/dist/universal/format.js.map +1 -0
  106. package/dist/universal/log.d.ts +91 -0
  107. package/dist/universal/log.d.ts.map +1 -0
  108. package/dist/universal/log.js +309 -0
  109. package/dist/universal/log.js.map +1 -0
  110. package/package.json +75 -0
@@ -0,0 +1,276 @@
1
+ export const CurrencySymbols = {
2
+ BTC: '₿',
3
+ XBT: '₿',
4
+ ETH: 'Ξ',
5
+ USD: '$',
6
+ EUR: '€',
7
+ GBP: '£',
8
+ JPY: '¥',
9
+ CNY: '¥',
10
+ KRW: '₩',
11
+ INR: '₹',
12
+ RUB: '₽',
13
+ TRY: '₺',
14
+ AUD: 'A$',
15
+ CAD: 'C$',
16
+ CHF: 'Fr',
17
+ HKD: 'HK$',
18
+ SGD: 'S$',
19
+ NZD: 'NZ$',
20
+ SEK: 'kr',
21
+ NOK: 'kr',
22
+ DKK: 'kr',
23
+ PLN: 'zł',
24
+ THB: '฿',
25
+ USDT: '₮',
26
+ USDC: '$',
27
+ DAI: '$',
28
+ BUSD: '$',
29
+ };
30
+ export function getSymbol(code) {
31
+ return CurrencySymbols[code] || code;
32
+ }
33
+ export function getOptimalDecimals(value, currencyCode) {
34
+ if (value === 0) {
35
+ return isCrypto(currencyCode) ? 8 : 2;
36
+ }
37
+ const absValue = Math.abs(value);
38
+ switch (currencyCode) {
39
+ case 'BTC':
40
+ case 'XBT':
41
+ if (absValue < 0.00001)
42
+ return 10;
43
+ else if (absValue < 0.0001)
44
+ return 9;
45
+ else if (absValue < 0.001)
46
+ return 8;
47
+ else if (absValue < 0.01)
48
+ return 7;
49
+ else if (absValue < 0.1)
50
+ return 6;
51
+ else if (absValue < 1)
52
+ return 5;
53
+ else
54
+ return 4;
55
+ case 'ETH':
56
+ if (absValue < 0.001)
57
+ return 8;
58
+ else if (absValue < 0.01)
59
+ return 7;
60
+ else if (absValue < 0.1)
61
+ return 6;
62
+ else if (absValue < 1)
63
+ return 5;
64
+ else
65
+ return 4;
66
+ case 'USD':
67
+ case 'USDT':
68
+ case 'USDC':
69
+ case 'DAI':
70
+ case 'BUSD':
71
+ if (absValue < 0.01)
72
+ return 6;
73
+ else if (absValue < 0.1)
74
+ return 4;
75
+ else if (absValue < 1)
76
+ return 3;
77
+ else
78
+ return 2;
79
+ case 'EUR':
80
+ case 'GBP':
81
+ case 'CAD':
82
+ case 'AUD':
83
+ case 'CHF':
84
+ if (absValue < 0.01)
85
+ return 4;
86
+ else if (absValue < 1000)
87
+ return 2;
88
+ else
89
+ return 0;
90
+ case 'JPY':
91
+ case 'KRW':
92
+ if (absValue < 1)
93
+ return 2;
94
+ else
95
+ return 0;
96
+ }
97
+ if (isCrypto(currencyCode)) {
98
+ if (absValue < 0.00001)
99
+ return 8;
100
+ else if (absValue < 0.0001)
101
+ return 6;
102
+ else if (absValue < 0.001)
103
+ return 5;
104
+ else if (absValue < 0.01)
105
+ return 4;
106
+ else if (absValue < 0.1)
107
+ return 3;
108
+ else if (absValue < 1)
109
+ return 3;
110
+ else
111
+ return 2;
112
+ }
113
+ else {
114
+ if (absValue < 0.01)
115
+ return 4;
116
+ else if (absValue < 0.1)
117
+ return 3;
118
+ else if (absValue < 1000)
119
+ return 2;
120
+ else
121
+ return 0;
122
+ }
123
+ }
124
+ import { isCryptoSymbol } from './crypto-symbols.js';
125
+ // Alternative ticker mappings (some exchanges use different symbols)
126
+ const cryptoAlternatives = {
127
+ 'XBT': 'BTC', // BitMEX and some others use XBT for Bitcoin
128
+ 'IOTA': 'MIOTA', // IOTA vs MIOTA
129
+ 'STR': 'XLM', // Stellar old ticker
130
+ 'BCHABC': 'BCH', // Bitcoin Cash ABC
131
+ 'BCHSV': 'BSV', // Bitcoin SV
132
+ 'DRK': 'DASH', // Darkcoin old name
133
+ 'XRB': 'NANO', // RaiBlocks old name
134
+ 'ANT': 'ANT', // Could be Aragon
135
+ 'BCC': 'BCH', // Bittrex used BCC for Bitcoin Cash
136
+ 'MIOTA': 'IOTA', // Some use MIOTA
137
+ 'YOYOW': 'YOYOW', // Various formats
138
+ 'IOTX': 'IOTX', // IoTeX
139
+ 'QSH': 'QASH', // QASH variations
140
+ 'YOYO': 'YOYOW', // YOYOW variations
141
+ 'ETHOS': 'BQX', // Ethos old ticker
142
+ 'REP': 'REP', // Augur variations
143
+ 'REPV2': 'REP', // Augur v2
144
+ 'USDt': 'USDT', // Case variations
145
+ 'USDT.e': 'USDT', // Avalanche USDT
146
+ 'USDC.e': 'USDC', // Avalanche USDC
147
+ 'WBTC.e': 'WBTC', // Avalanche WBTC
148
+ 'DAI.e': 'DAI', // Avalanche DAI
149
+ 'BTC.b': 'BTC', // Avalanche BTC
150
+ 'BETH': 'WBETH', // Binance ETH
151
+ 'STETH': 'STETH', // Lido staked ETH
152
+ 'WSTETH': 'WSTETH', // Wrapped stETH
153
+ };
154
+ // Build reverse mapping for normalization (alternative -> normalized)
155
+ const symbolReverseMap = new Map();
156
+ for (const [alternative, normalized] of Object.entries(cryptoAlternatives)) {
157
+ // Only map if it's actually an alternative, not the same
158
+ if (alternative !== normalized) {
159
+ symbolReverseMap.set(alternative.toUpperCase(), normalized);
160
+ symbolReverseMap.set(alternative.toLowerCase(), normalized);
161
+ }
162
+ }
163
+ export function normalize(symbol) {
164
+ const upperSymbol = symbol.toUpperCase();
165
+ // Check if it's a known alternative
166
+ if (cryptoAlternatives[upperSymbol]) {
167
+ return cryptoAlternatives[upperSymbol];
168
+ }
169
+ // Check reverse mapping
170
+ const normalized = symbolReverseMap.get(upperSymbol) || symbolReverseMap.get(symbol.toLowerCase());
171
+ if (normalized) {
172
+ return normalized;
173
+ }
174
+ // Handle wrapped/bridged tokens
175
+ const unwrapped = upperSymbol
176
+ .replace(/^W/, '') // Remove W prefix (WBTC -> BTC)
177
+ .replace(/\.E$/, '') // Remove .e suffix (USDT.e -> USDT)
178
+ .replace(/\.B$/, ''); // Remove .b suffix (BTC.b -> BTC)
179
+ if (unwrapped !== upperSymbol && cryptoAlternatives[unwrapped]) {
180
+ return cryptoAlternatives[unwrapped];
181
+ }
182
+ return upperSymbol;
183
+ }
184
+ export function areEquivalent(symbol1, symbol2) {
185
+ return normalize(symbol1) === normalize(symbol2);
186
+ }
187
+ export function getVariations(symbol) {
188
+ const normalized = normalize(symbol);
189
+ const variations = new Set([normalized]);
190
+ // Add all known alternatives
191
+ for (const [key, value] of Object.entries(cryptoAlternatives)) {
192
+ if (value === normalized || key === normalized) {
193
+ variations.add(key);
194
+ variations.add(value);
195
+ }
196
+ }
197
+ return Array.from(variations);
198
+ }
199
+ export function isCrypto(code) {
200
+ const upperCode = code.toUpperCase();
201
+ // Check if it's a known alternative
202
+ if (cryptoAlternatives[upperCode]) {
203
+ return isCryptoSymbol(cryptoAlternatives[upperCode]);
204
+ }
205
+ // Check if it's a wrapped or bridged token (common patterns)
206
+ const unwrappedCode = upperCode
207
+ .replace(/^W/, '') // Remove W prefix (WBTC -> BTC)
208
+ .replace(/\.E$/, '') // Remove .e suffix (USDT.e -> USDT)
209
+ .replace(/\.B$/, ''); // Remove .b suffix (BTC.b -> BTC)
210
+ if (unwrappedCode !== upperCode) {
211
+ return isCryptoSymbol(unwrappedCode);
212
+ }
213
+ return isCryptoSymbol(upperCode);
214
+ }
215
+ export function isStablecoin(code) {
216
+ const stablecoins = new Set([
217
+ 'USDT', 'USDC', 'DAI', 'BUSD', 'UST', 'TUSD', 'USDP', 'GUSD', 'FRAX', 'LUSD'
218
+ ]);
219
+ return stablecoins.has(code);
220
+ }
221
+ export function isFiat(code) {
222
+ const fiats = new Set([
223
+ 'USD', 'EUR', 'GBP', 'JPY', 'CNY', 'CAD', 'AUD', 'CHF', 'HKD', 'SGD',
224
+ 'NZD', 'KRW', 'SEK', 'NOK', 'DKK', 'PLN', 'THB', 'INR', 'RUB', 'TRY',
225
+ 'BRL', 'MXN', 'ARS', 'CLP', 'COP', 'PEN', 'UYU', 'ZAR', 'NGN', 'KES'
226
+ ]);
227
+ return fiats.has(code);
228
+ }
229
+ export function percentageOf(value, total) {
230
+ if (total === 0)
231
+ return 0;
232
+ return (value / total) * 100;
233
+ }
234
+ export function percentageChange(oldValue, newValue) {
235
+ if (oldValue === 0) {
236
+ if (newValue === 0)
237
+ return 0;
238
+ return newValue > 0 ? 100 : -100;
239
+ }
240
+ return ((newValue - oldValue) / Math.abs(oldValue)) * 100;
241
+ }
242
+ export function percentageDiff(a, b) {
243
+ if (a === 0 && b === 0)
244
+ return 0;
245
+ const avg = (Math.abs(a) + Math.abs(b)) / 2;
246
+ if (avg === 0)
247
+ return 0;
248
+ return (Math.abs(a - b) / avg) * 100;
249
+ }
250
+ export function basisPointsToPercent(bps) {
251
+ return bps / 100.0;
252
+ }
253
+ export function percentToBasisPoints(percent) {
254
+ return Math.round(percent * 100);
255
+ }
256
+ export function formatBasisPoints(bps) {
257
+ return `${bps} bps`;
258
+ }
259
+ export const currency = {
260
+ getSymbol,
261
+ getOptimalDecimals,
262
+ normalize,
263
+ areEquivalent,
264
+ getVariations,
265
+ isCrypto,
266
+ isStablecoin,
267
+ isFiat,
268
+ percentageOf,
269
+ percentageChange,
270
+ percentageDiff,
271
+ basisPointsToPercent,
272
+ percentToBasisPoints,
273
+ formatBasisPoints,
274
+ symbols: CurrencySymbols,
275
+ };
276
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/universal/currency/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,GAAG;CACD,CAAA;AAIV,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,eAAe,CAAC,IAAoC,CAAC,IAAI,IAAI,CAAA;AACtE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAa,EAAE,YAAoB;IACpE,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAEhC,QAAQ,YAAY,EAAE,CAAC;QACrB,KAAK,KAAK,CAAC;QACX,KAAK,KAAK;YACR,IAAI,QAAQ,GAAG,OAAO;gBAAE,OAAO,EAAE,CAAA;iBAC5B,IAAI,QAAQ,GAAG,MAAM;gBAAE,OAAO,CAAC,CAAA;iBAC/B,IAAI,QAAQ,GAAG,KAAK;gBAAE,OAAO,CAAC,CAAA;iBAC9B,IAAI,QAAQ,GAAG,IAAI;gBAAE,OAAO,CAAC,CAAA;iBAC7B,IAAI,QAAQ,GAAG,GAAG;gBAAE,OAAO,CAAC,CAAA;iBAC5B,IAAI,QAAQ,GAAG,CAAC;gBAAE,OAAO,CAAC,CAAA;;gBAC1B,OAAO,CAAC,CAAA;QAEf,KAAK,KAAK;YACR,IAAI,QAAQ,GAAG,KAAK;gBAAE,OAAO,CAAC,CAAA;iBACzB,IAAI,QAAQ,GAAG,IAAI;gBAAE,OAAO,CAAC,CAAA;iBAC7B,IAAI,QAAQ,GAAG,GAAG;gBAAE,OAAO,CAAC,CAAA;iBAC5B,IAAI,QAAQ,GAAG,CAAC;gBAAE,OAAO,CAAC,CAAA;;gBAC1B,OAAO,CAAC,CAAA;QAEf,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,MAAM;YACT,IAAI,QAAQ,GAAG,IAAI;gBAAE,OAAO,CAAC,CAAA;iBACxB,IAAI,QAAQ,GAAG,GAAG;gBAAE,OAAO,CAAC,CAAA;iBAC5B,IAAI,QAAQ,GAAG,CAAC;gBAAE,OAAO,CAAC,CAAA;;gBAC1B,OAAO,CAAC,CAAA;QAEf,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,KAAK;YACR,IAAI,QAAQ,GAAG,IAAI;gBAAE,OAAO,CAAC,CAAA;iBACxB,IAAI,QAAQ,GAAG,IAAI;gBAAE,OAAO,CAAC,CAAA;;gBAC7B,OAAO,CAAC,CAAA;QAEf,KAAK,KAAK,CAAC;QACX,KAAK,KAAK;YACR,IAAI,QAAQ,GAAG,CAAC;gBAAE,OAAO,CAAC,CAAA;;gBACrB,OAAO,CAAC,CAAA;IACjB,CAAC;IAED,IAAI,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3B,IAAI,QAAQ,GAAG,OAAO;YAAE,OAAO,CAAC,CAAA;aAC3B,IAAI,QAAQ,GAAG,MAAM;YAAE,OAAO,CAAC,CAAA;aAC/B,IAAI,QAAQ,GAAG,KAAK;YAAE,OAAO,CAAC,CAAA;aAC9B,IAAI,QAAQ,GAAG,IAAI;YAAE,OAAO,CAAC,CAAA;aAC7B,IAAI,QAAQ,GAAG,GAAG;YAAE,OAAO,CAAC,CAAA;aAC5B,IAAI,QAAQ,GAAG,CAAC;YAAE,OAAO,CAAC,CAAA;;YAC1B,OAAO,CAAC,CAAA;IACf,CAAC;SAAM,CAAC;QACN,IAAI,QAAQ,GAAG,IAAI;YAAE,OAAO,CAAC,CAAA;aACxB,IAAI,QAAQ,GAAG,GAAG;YAAE,OAAO,CAAC,CAAA;aAC5B,IAAI,QAAQ,GAAG,IAAI;YAAE,OAAO,CAAC,CAAA;;YAC7B,OAAO,CAAC,CAAA;IACf,CAAC;AACH,CAAC;AAED,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,qEAAqE;AACrE,MAAM,kBAAkB,GAA2B;IACjD,KAAK,EAAE,KAAK,EAAG,6CAA6C;IAC5D,MAAM,EAAE,OAAO,EAAG,gBAAgB;IAClC,KAAK,EAAE,KAAK,EAAG,qBAAqB;IACpC,QAAQ,EAAE,KAAK,EAAG,mBAAmB;IACrC,OAAO,EAAE,KAAK,EAAG,aAAa;IAC9B,KAAK,EAAE,MAAM,EAAG,oBAAoB;IACpC,KAAK,EAAE,MAAM,EAAG,qBAAqB;IACrC,KAAK,EAAE,KAAK,EAAG,kBAAkB;IACjC,KAAK,EAAE,KAAK,EAAG,oCAAoC;IACnD,OAAO,EAAE,MAAM,EAAG,iBAAiB;IACnC,OAAO,EAAE,OAAO,EAAG,kBAAkB;IACrC,MAAM,EAAE,MAAM,EAAG,QAAQ;IACzB,KAAK,EAAE,MAAM,EAAG,kBAAkB;IAClC,MAAM,EAAE,OAAO,EAAG,mBAAmB;IACrC,OAAO,EAAE,KAAK,EAAG,mBAAmB;IACpC,KAAK,EAAE,KAAK,EAAG,mBAAmB;IAClC,OAAO,EAAE,KAAK,EAAG,WAAW;IAC5B,MAAM,EAAE,MAAM,EAAG,kBAAkB;IACnC,QAAQ,EAAE,MAAM,EAAG,iBAAiB;IACpC,QAAQ,EAAE,MAAM,EAAG,iBAAiB;IACpC,QAAQ,EAAE,MAAM,EAAG,iBAAiB;IACpC,OAAO,EAAE,KAAK,EAAG,gBAAgB;IACjC,OAAO,EAAE,KAAK,EAAG,gBAAgB;IACjC,MAAM,EAAE,OAAO,EAAG,cAAc;IAChC,OAAO,EAAE,OAAO,EAAG,kBAAkB;IACrC,QAAQ,EAAE,QAAQ,EAAG,gBAAgB;CACtC,CAAA;AAED,sEAAsE;AACtE,MAAM,gBAAgB,GAAwB,IAAI,GAAG,EAAE,CAAA;AACvD,KAAK,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;IAC3E,yDAAyD;IACzD,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;QAC/B,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,CAAA;QAC3D,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,CAAA;IAC7D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAA;IAExC,oCAAoC;IACpC,IAAI,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC;QACpC,OAAO,kBAAkB,CAAC,WAAW,CAAC,CAAA;IACxC,CAAC;IAED,wBAAwB;IACxB,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;IAClG,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,gCAAgC;IAChC,MAAM,SAAS,GAAG,WAAW;SAC1B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAE,gCAAgC;SACnD,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAE,oCAAoC;SACzD,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA,CAAE,kCAAkC;IAE1D,IAAI,SAAS,KAAK,WAAW,IAAI,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/D,OAAO,kBAAkB,CAAC,SAAS,CAAC,CAAA;IACtC,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAe,EAAE,OAAe;IAC5D,OAAO,SAAS,CAAC,OAAO,CAAC,KAAK,SAAS,CAAC,OAAO,CAAC,CAAA;AAClD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IACpC,MAAM,UAAU,GAAgB,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;IAErD,6BAA6B;IAC7B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC9D,IAAI,KAAK,KAAK,UAAU,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;YAC/C,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACnB,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACvB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AAC/B,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IAEpC,oCAAoC;IACpC,IAAI,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,OAAO,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAA;IACtD,CAAC;IAED,6DAA6D;IAC7D,MAAM,aAAa,GAAG,SAAS;SAC5B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAE,gCAAgC;SACnD,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAE,oCAAoC;SACzD,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA,CAAE,kCAAkC;IAE1D,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,cAAc,CAAC,aAAa,CAAC,CAAA;IACtC,CAAC;IAED,OAAO,cAAc,CAAC,SAAS,CAAC,CAAA;AAClC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;QAC1B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;KAC7E,CAAC,CAAA;IACF,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AAC9B,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,IAAY;IACjC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC;QACpB,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;QACpE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;QACpE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;KACrE,CAAC,CAAA;IACF,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAa,EAAE,KAAa;IACvD,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,CAAC,CAAA;IACzB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,GAAG,CAAA;AAC9B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,QAAgB;IACjE,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,IAAI,QAAQ,KAAK,CAAC;YAAE,OAAO,CAAC,CAAA;QAC5B,OAAO,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IAClC,CAAC;IACD,OAAO,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAA;AAC3D,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,CAAS;IACjD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAA;IAChC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IAC3C,IAAI,GAAG,KAAK,CAAC;QAAE,OAAO,CAAC,CAAA;IACvB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAA;AACtC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,OAAO,GAAG,GAAG,KAAK,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,CAAA;AAClC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,OAAO,GAAG,GAAG,MAAM,CAAA;AACrB,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,SAAS;IACT,kBAAkB;IAClB,SAAS;IACT,aAAa;IACb,aAAa;IACb,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,YAAY;IACZ,gBAAgB;IAChB,cAAc;IACd,oBAAoB;IACpB,oBAAoB;IACpB,iBAAiB;IACjB,OAAO,EAAE,eAAe;CACzB,CAAA"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Format utilities for numbers and currencies
3
+ */
4
+ declare class FormatOps {
5
+ /**
6
+ * Format a number with specified decimal places
7
+ */
8
+ number(value: number, decimals: number): string;
9
+ /**
10
+ * Format a value as USD with optimal decimals
11
+ */
12
+ usd(value: number): string;
13
+ /**
14
+ * Format a value as Bitcoin with optimal decimals
15
+ */
16
+ btc(value: number): string;
17
+ /**
18
+ * Format a value as Ethereum with optimal decimals
19
+ */
20
+ eth(value: number): string;
21
+ /**
22
+ * Auto format a value with the appropriate currency symbol and decimals
23
+ */
24
+ auto(value: number, currencyCode: string): string;
25
+ /**
26
+ * Format a percentage with smart decimal places
27
+ */
28
+ percentage(value: number): string;
29
+ /**
30
+ * Format a value with thousands separators
31
+ */
32
+ withCommas(value: number, decimals?: number): string;
33
+ /**
34
+ * Format a value in compact notation (1.2K, 3.4M, etc)
35
+ */
36
+ compact(value: number): string;
37
+ }
38
+ export declare const format: FormatOps;
39
+ export {};
40
+ //# sourceMappingURL=format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/universal/format.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,cAAM,SAAS;IACb;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAI/C;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAM1B;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAK1B;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAK1B;;OAEG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IAajD;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAUjC;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAOpD;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;CAO/B;AAED,eAAO,MAAM,MAAM,WAAkB,CAAA"}
@@ -0,0 +1,83 @@
1
+ import { getOptimalDecimals, getSymbol, isFiat, isStablecoin } from './currency/index.js';
2
+ /**
3
+ * Format utilities for numbers and currencies
4
+ */
5
+ class FormatOps {
6
+ /**
7
+ * Format a number with specified decimal places
8
+ */
9
+ number(value, decimals) {
10
+ return value.toFixed(decimals);
11
+ }
12
+ /**
13
+ * Format a value as USD with optimal decimals
14
+ */
15
+ usd(value) {
16
+ const decimals = getOptimalDecimals(value, 'USD');
17
+ const formatted = Math.abs(value).toFixed(decimals);
18
+ return value < 0 ? `-$${formatted}` : `$${formatted}`;
19
+ }
20
+ /**
21
+ * Format a value as Bitcoin with optimal decimals
22
+ */
23
+ btc(value) {
24
+ const decimals = getOptimalDecimals(value, 'BTC');
25
+ return `${value.toFixed(decimals)} ₿`;
26
+ }
27
+ /**
28
+ * Format a value as Ethereum with optimal decimals
29
+ */
30
+ eth(value) {
31
+ const decimals = getOptimalDecimals(value, 'ETH');
32
+ return `${value.toFixed(decimals)} Ξ`;
33
+ }
34
+ /**
35
+ * Auto format a value with the appropriate currency symbol and decimals
36
+ */
37
+ auto(value, currencyCode) {
38
+ const decimals = getOptimalDecimals(value, currencyCode);
39
+ const symbol = getSymbol(currencyCode);
40
+ const formatted = Math.abs(value).toFixed(decimals);
41
+ // Put symbol before for fiat/stablecoins, after for crypto
42
+ if (isFiat(currencyCode) || isStablecoin(currencyCode)) {
43
+ return value < 0 ? `-${symbol}${formatted}` : `${symbol}${formatted}`;
44
+ }
45
+ else {
46
+ return value < 0 ? `-${formatted} ${symbol}` : `${formatted} ${symbol}`;
47
+ }
48
+ }
49
+ /**
50
+ * Format a percentage with smart decimal places
51
+ */
52
+ percentage(value) {
53
+ let decimals = 1;
54
+ if (Math.abs(value) < 0.1) {
55
+ decimals = 2;
56
+ }
57
+ else if (Math.abs(value) >= 100) {
58
+ decimals = 0;
59
+ }
60
+ return `${value.toFixed(decimals)}%`;
61
+ }
62
+ /**
63
+ * Format a value with thousands separators
64
+ */
65
+ withCommas(value, decimals) {
66
+ const fixed = decimals !== undefined ? value.toFixed(decimals) : value.toString();
67
+ const parts = fixed.split('.');
68
+ parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ',');
69
+ return parts.join('.');
70
+ }
71
+ /**
72
+ * Format a value in compact notation (1.2K, 3.4M, etc)
73
+ */
74
+ compact(value) {
75
+ const formatter = new Intl.NumberFormat('en', {
76
+ notation: 'compact',
77
+ maximumFractionDigits: 1
78
+ });
79
+ return formatter.format(value);
80
+ }
81
+ }
82
+ export const format = new FormatOps();
83
+ //# sourceMappingURL=format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/universal/format.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * A Next.js-style logger for TypeScript applications
3
+ * Provides colored output with Unicode symbols for different log levels
4
+ */
5
+ export declare const bold: (str: string) => string;
6
+ export declare const dim: (str: string) => string;
7
+ export declare const red: (str: string) => string;
8
+ export declare const green: (str: string) => string;
9
+ export declare const yellow: (str: string) => string;
10
+ export declare const blue: (str: string) => string;
11
+ export declare const magenta: (str: string) => string;
12
+ export declare const cyan: (str: string) => string;
13
+ export declare const white: (str: string) => string;
14
+ export declare const gray: (str: string) => string;
15
+ export declare const purple: (str: string) => string;
16
+ export declare const bgRed: (str: string) => string;
17
+ export declare const bgGreen: (str: string) => string;
18
+ export declare const bgYellow: (str: string) => string;
19
+ export declare const bgBlue: (str: string) => string;
20
+ export declare const bgMagenta: (str: string) => string;
21
+ export declare const bgCyan: (str: string) => string;
22
+ export declare const bgWhite: (str: string) => string;
23
+ export declare function bootstrap(...messages: string[]): void;
24
+ export declare function wait(...messages: any[]): void;
25
+ export declare function error(...messages: any[]): void;
26
+ export declare function warn(...messages: any[]): void;
27
+ export declare function ready(...messages: any[]): void;
28
+ export declare function info(...messages: any[]): void;
29
+ export declare function success(...messages: any[]): void;
30
+ export declare function event(...messages: any[]): void;
31
+ export declare function trace(...messages: any[]): void;
32
+ export declare function warnOnce(...messages: any[]): void;
33
+ export declare function time(label: string): void;
34
+ export declare function timeEnd(label: string): void;
35
+ export declare function createLogger(prefix: string): {
36
+ wait: (...messages: any[]) => void;
37
+ error: (...messages: any[]) => void;
38
+ warn: (...messages: any[]) => void;
39
+ ready: (...messages: any[]) => void;
40
+ info: (...messages: any[]) => void;
41
+ success: (...messages: any[]) => void;
42
+ event: (...messages: any[]) => void;
43
+ trace: (...messages: any[]) => void;
44
+ warnOnce: (...messages: any[]) => void;
45
+ time: (label: string) => void;
46
+ timeEnd: (label: string) => void;
47
+ };
48
+ declare const log: {
49
+ wait: typeof wait;
50
+ error: typeof error;
51
+ warn: typeof warn;
52
+ ready: typeof ready;
53
+ info: typeof info;
54
+ success: typeof success;
55
+ event: typeof event;
56
+ trace: typeof trace;
57
+ warnOnce: typeof warnOnce;
58
+ time: typeof time;
59
+ timeEnd: typeof timeEnd;
60
+ bootstrap: typeof bootstrap;
61
+ createLogger: typeof createLogger;
62
+ colors: {
63
+ bold: (str: string) => string;
64
+ dim: (str: string) => string;
65
+ red: (str: string) => string;
66
+ green: (str: string) => string;
67
+ yellow: (str: string) => string;
68
+ blue: (str: string) => string;
69
+ magenta: (str: string) => string;
70
+ cyan: (str: string) => string;
71
+ white: (str: string) => string;
72
+ gray: (str: string) => string;
73
+ purple: (str: string) => string;
74
+ bgRed: (str: string) => string;
75
+ bgGreen: (str: string) => string;
76
+ bgYellow: (str: string) => string;
77
+ bgBlue: (str: string) => string;
78
+ bgMagenta: (str: string) => string;
79
+ bgCyan: (str: string) => string;
80
+ bgWhite: (str: string) => string;
81
+ };
82
+ };
83
+ export { log };
84
+ export declare function logAppStartup(options: {
85
+ name: string;
86
+ version: string;
87
+ port: number;
88
+ host?: string;
89
+ environment?: string;
90
+ }): void;
91
+ //# sourceMappingURL=log.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/universal/log.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAqDH,eAAO,MAAM,IAAI,QALiB,MAAM,WAKA,CAAA;AACxC,eAAO,MAAM,GAAG,QANkB,MAAM,WAMF,CAAA;AACtC,eAAO,MAAM,GAAG,QAPkB,MAAM,WAOF,CAAA;AACtC,eAAO,MAAM,KAAK,QARgB,MAAM,WAQE,CAAA;AAC1C,eAAO,MAAM,MAAM,QATe,MAAM,WASI,CAAA;AAC5C,eAAO,MAAM,IAAI,QAViB,MAAM,WAUA,CAAA;AACxC,eAAO,MAAM,OAAO,QAXc,MAAM,WAWM,CAAA;AAC9C,eAAO,MAAM,IAAI,QAZiB,MAAM,WAYA,CAAA;AACxC,eAAO,MAAM,KAAK,QAbgB,MAAM,WAaE,CAAA;AAC1C,eAAO,MAAM,IAAI,QAdiB,MAAM,WAcA,CAAA;AACxC,eAAO,MAAM,MAAM,QAfe,MAAM,WAeI,CAAA;AAG5C,eAAO,MAAM,KAAK,QAlBgB,MAAM,WAkBE,CAAA;AAC1C,eAAO,MAAM,OAAO,QAnBc,MAAM,WAmBM,CAAA;AAC9C,eAAO,MAAM,QAAQ,QApBa,MAAM,WAoBQ,CAAA;AAChD,eAAO,MAAM,MAAM,QArBe,MAAM,WAqBI,CAAA;AAC5C,eAAO,MAAM,SAAS,QAtBY,MAAM,WAsBU,CAAA;AAClD,eAAO,MAAM,MAAM,QAvBe,MAAM,WAuBI,CAAA;AAC5C,eAAO,MAAM,OAAO,QAxBc,MAAM,WAwBM,CAAA;AAsH9C,wBAAgB,SAAS,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAErD;AAGD,wBAAgB,IAAI,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAE7C;AAED,wBAAgB,KAAK,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAE9C;AAED,wBAAgB,IAAI,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAE7C;AAED,wBAAgB,KAAK,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAE9C;AAED,wBAAgB,IAAI,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAE7C;AAED,wBAAgB,OAAO,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAEhD;AAED,wBAAgB,KAAK,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAE9C;AAED,wBAAgB,KAAK,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAE9C;AAGD,wBAAgB,QAAQ,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAMjD;AAKD,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAExC;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAe3C;AAGD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM;wBAEnB,GAAG,EAAE;yBACJ,GAAG,EAAE;wBACN,GAAG,EAAE;yBACJ,GAAG,EAAE;wBACN,GAAG,EAAE;2BACF,GAAG,EAAE;yBACP,GAAG,EAAE;yBACL,GAAG,EAAE;4BACF,GAAG,EAAE;kBACf,MAAM;qBACH,MAAM;EAE1B;AAGD,QAAA,MAAM,GAAG;;;;;;;;;;;;;;;oBAtOyB,MAAM;mBAAN,MAAM;mBAAN,MAAM;qBAAN,MAAM;sBAAN,MAAM;oBAAN,MAAM;uBAAN,MAAM;oBAAN,MAAM;qBAAN,MAAM;oBAAN,MAAM;sBAAN,MAAM;qBAAN,MAAM;uBAAN,MAAM;wBAAN,MAAM;sBAAN,MAAM;yBAAN,MAAM;sBAAN,MAAM;uBAAN,MAAM;;CA0QvC,CAAA;AAED,OAAO,EAAE,GAAG,EAAE,CAAA;AAGd,wBAAgB,aAAa,CAAC,OAAO,EAAE;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,GAAG,IAAI,CAeP"}