@xyo-network/coingecko-crypto-market-plugin 2.74.5 → 2.75.2

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 (202) hide show
  1. package/dist/browser/Config.cjs +19 -0
  2. package/dist/browser/Config.cjs.map +1 -0
  3. package/dist/browser/Config.d.cts.map +1 -0
  4. package/dist/browser/Config.d.mts.map +1 -0
  5. package/dist/browser/Config.d.ts +9 -0
  6. package/dist/browser/Config.d.ts.map +1 -0
  7. package/dist/browser/Config.js +1 -0
  8. package/dist/browser/Config.js.map +1 -0
  9. package/dist/browser/Plugin.cjs +90 -0
  10. package/dist/browser/Plugin.cjs.map +1 -0
  11. package/dist/browser/Plugin.d.cts.map +1 -0
  12. package/dist/browser/Plugin.d.mts.map +1 -0
  13. package/dist/browser/Plugin.d.ts +56 -0
  14. package/dist/browser/Plugin.d.ts.map +1 -0
  15. package/dist/browser/Plugin.js +17 -0
  16. package/dist/browser/Plugin.js.map +1 -0
  17. package/dist/browser/Schema.cjs +27 -0
  18. package/dist/browser/Schema.cjs.map +1 -0
  19. package/dist/browser/Schema.d.cts.map +1 -0
  20. package/dist/browser/Schema.d.mts.map +1 -0
  21. package/dist/browser/Schema.d.ts +3 -0
  22. package/dist/browser/Schema.d.ts.map +1 -0
  23. package/dist/browser/Schema.js +5 -0
  24. package/dist/browser/Schema.js.map +1 -0
  25. package/dist/browser/Witness.cjs +74 -0
  26. package/dist/browser/Witness.cjs.map +1 -0
  27. package/dist/browser/Witness.d.cts.map +1 -0
  28. package/dist/browser/Witness.d.mts.map +1 -0
  29. package/dist/browser/Witness.d.ts +10 -0
  30. package/dist/browser/Witness.d.ts.map +1 -0
  31. package/dist/browser/Witness.js +20 -0
  32. package/dist/browser/Witness.js.map +1 -0
  33. package/dist/browser/index.cjs +120 -0
  34. package/dist/browser/index.cjs.map +1 -0
  35. package/dist/browser/index.d.cts.map +1 -0
  36. package/dist/browser/index.d.mts.map +1 -0
  37. package/dist/browser/index.d.ts +8 -0
  38. package/dist/browser/index.d.ts.map +1 -0
  39. package/dist/browser/index.js +11 -0
  40. package/dist/browser/index.js.map +1 -0
  41. package/dist/browser/lib/coinGeckoCoinToAssetMap.cjs +41 -0
  42. package/dist/browser/lib/coinGeckoCoinToAssetMap.cjs.map +1 -0
  43. package/dist/browser/lib/coinGeckoCoinToAssetMap.d.cts.map +1 -0
  44. package/dist/browser/lib/coinGeckoCoinToAssetMap.d.mts.map +1 -0
  45. package/dist/browser/lib/coinGeckoCoinToAssetMap.d.ts +3 -0
  46. package/dist/browser/lib/coinGeckoCoinToAssetMap.d.ts.map +1 -0
  47. package/dist/browser/lib/coinGeckoCoinToAssetMap.js +19 -0
  48. package/dist/browser/lib/coinGeckoCoinToAssetMap.js.map +1 -0
  49. package/dist/browser/lib/defaults.cjs +43 -0
  50. package/dist/browser/lib/defaults.cjs.map +1 -0
  51. package/dist/browser/lib/defaults.d.cts.map +1 -0
  52. package/dist/browser/lib/defaults.d.mts.map +1 -0
  53. package/dist/browser/lib/defaults.d.ts +4 -0
  54. package/dist/browser/lib/defaults.d.ts.map +1 -0
  55. package/dist/browser/lib/defaults.js +21 -0
  56. package/dist/browser/lib/defaults.js.map +1 -0
  57. package/dist/browser/lib/index.cjs +76 -0
  58. package/dist/browser/lib/index.cjs.map +1 -0
  59. package/dist/browser/lib/index.d.cts.map +1 -0
  60. package/dist/browser/lib/index.d.mts.map +1 -0
  61. package/dist/browser/lib/index.d.ts +4 -0
  62. package/dist/browser/lib/index.d.ts.map +1 -0
  63. package/dist/browser/lib/index.js +4 -0
  64. package/dist/browser/lib/index.js.map +1 -0
  65. package/dist/browser/lib/pricesFromCoingecko.cjs +55 -0
  66. package/dist/browser/lib/pricesFromCoingecko.cjs.map +1 -0
  67. package/dist/browser/lib/pricesFromCoingecko.d.cts.map +1 -0
  68. package/dist/browser/lib/pricesFromCoingecko.d.mts.map +1 -0
  69. package/dist/browser/lib/pricesFromCoingecko.d.ts +3 -0
  70. package/dist/browser/lib/pricesFromCoingecko.d.ts.map +1 -0
  71. package/dist/browser/lib/pricesFromCoingecko.js +15 -0
  72. package/dist/browser/lib/pricesFromCoingecko.js.map +1 -0
  73. package/dist/docs.json +560 -560
  74. package/dist/node/Config.d.cts +9 -0
  75. package/dist/node/Config.d.cts.map +1 -0
  76. package/dist/node/Config.d.mts +9 -0
  77. package/dist/node/Config.d.mts.map +1 -0
  78. package/dist/node/Config.d.ts +9 -0
  79. package/dist/node/Config.d.ts.map +1 -0
  80. package/dist/node/Config.js +19 -0
  81. package/dist/node/Config.js.map +1 -0
  82. package/dist/node/Config.mjs +1 -0
  83. package/dist/node/Config.mjs.map +1 -0
  84. package/dist/node/Plugin.d.cts +56 -0
  85. package/dist/node/Plugin.d.cts.map +1 -0
  86. package/dist/node/Plugin.d.mts +56 -0
  87. package/dist/node/Plugin.d.mts.map +1 -0
  88. package/dist/node/Plugin.d.ts +56 -0
  89. package/dist/node/Plugin.d.ts.map +1 -0
  90. package/dist/node/Plugin.js +95 -0
  91. package/dist/node/Plugin.js.map +1 -0
  92. package/dist/node/Plugin.mjs +70 -0
  93. package/dist/node/Plugin.mjs.map +1 -0
  94. package/dist/node/Schema.d.cts +3 -0
  95. package/dist/node/Schema.d.cts.map +1 -0
  96. package/dist/node/Schema.d.mts +3 -0
  97. package/dist/node/Schema.d.mts.map +1 -0
  98. package/dist/node/Schema.d.ts +3 -0
  99. package/dist/node/Schema.d.ts.map +1 -0
  100. package/dist/node/Schema.js +31 -0
  101. package/dist/node/Schema.js.map +1 -0
  102. package/dist/node/Schema.mjs +6 -0
  103. package/dist/node/Schema.mjs.map +1 -0
  104. package/dist/node/Witness.d.cts +10 -0
  105. package/dist/node/Witness.d.cts.map +1 -0
  106. package/dist/node/Witness.d.mts +10 -0
  107. package/dist/node/Witness.d.mts.map +1 -0
  108. package/dist/node/Witness.d.ts +10 -0
  109. package/dist/node/Witness.d.ts.map +1 -0
  110. package/dist/node/Witness.js +79 -0
  111. package/dist/node/Witness.js.map +1 -0
  112. package/dist/node/Witness.mjs +54 -0
  113. package/dist/node/Witness.mjs.map +1 -0
  114. package/dist/node/index.d.cts +8 -0
  115. package/dist/node/index.d.cts.map +1 -0
  116. package/dist/node/index.d.mts +8 -0
  117. package/dist/node/index.d.mts.map +1 -0
  118. package/dist/node/index.d.ts +8 -0
  119. package/dist/node/index.d.ts.map +1 -0
  120. package/dist/{index.js → node/index.js} +2 -1
  121. package/dist/node/index.js.map +1 -0
  122. package/dist/{index.mjs → node/index.mjs} +2 -1
  123. package/dist/node/index.mjs.map +1 -0
  124. package/dist/node/lib/coinGeckoCoinToAssetMap.d.cts +3 -0
  125. package/dist/node/lib/coinGeckoCoinToAssetMap.d.cts.map +1 -0
  126. package/dist/node/lib/coinGeckoCoinToAssetMap.d.mts +3 -0
  127. package/dist/node/lib/coinGeckoCoinToAssetMap.d.mts.map +1 -0
  128. package/dist/node/lib/coinGeckoCoinToAssetMap.d.ts +3 -0
  129. package/dist/node/lib/coinGeckoCoinToAssetMap.d.ts.map +1 -0
  130. package/dist/node/lib/coinGeckoCoinToAssetMap.js +45 -0
  131. package/dist/node/lib/coinGeckoCoinToAssetMap.js.map +1 -0
  132. package/dist/node/lib/coinGeckoCoinToAssetMap.mjs +20 -0
  133. package/dist/node/lib/coinGeckoCoinToAssetMap.mjs.map +1 -0
  134. package/dist/node/lib/defaults.d.cts +4 -0
  135. package/dist/node/lib/defaults.d.cts.map +1 -0
  136. package/dist/node/lib/defaults.d.mts +4 -0
  137. package/dist/node/lib/defaults.d.mts.map +1 -0
  138. package/dist/node/lib/defaults.d.ts +4 -0
  139. package/dist/node/lib/defaults.d.ts.map +1 -0
  140. package/dist/node/lib/defaults.js +48 -0
  141. package/dist/node/lib/defaults.js.map +1 -0
  142. package/dist/node/lib/defaults.mjs +22 -0
  143. package/dist/node/lib/defaults.mjs.map +1 -0
  144. package/dist/node/lib/index.d.cts +4 -0
  145. package/dist/node/lib/index.d.cts.map +1 -0
  146. package/dist/node/lib/index.d.mts +4 -0
  147. package/dist/node/lib/index.d.mts.map +1 -0
  148. package/dist/node/lib/index.d.ts +4 -0
  149. package/dist/node/lib/index.d.ts.map +1 -0
  150. package/dist/node/lib/index.js +83 -0
  151. package/dist/node/lib/index.js.map +1 -0
  152. package/dist/node/lib/index.mjs +53 -0
  153. package/dist/node/lib/index.mjs.map +1 -0
  154. package/dist/node/lib/pricesFromCoingecko.d.cts +3 -0
  155. package/dist/node/lib/pricesFromCoingecko.d.cts.map +1 -0
  156. package/dist/node/lib/pricesFromCoingecko.d.mts +3 -0
  157. package/dist/node/lib/pricesFromCoingecko.d.mts.map +1 -0
  158. package/dist/node/lib/pricesFromCoingecko.d.ts +3 -0
  159. package/dist/node/lib/pricesFromCoingecko.d.ts.map +1 -0
  160. package/dist/node/lib/pricesFromCoingecko.js +59 -0
  161. package/dist/node/lib/pricesFromCoingecko.js.map +1 -0
  162. package/dist/node/lib/pricesFromCoingecko.mjs +34 -0
  163. package/dist/node/lib/pricesFromCoingecko.mjs.map +1 -0
  164. package/package.json +30 -27
  165. package/dist/Config.d.mts.map +0 -1
  166. package/dist/Config.d.ts.map +0 -1
  167. package/dist/Plugin.d.mts.map +0 -1
  168. package/dist/Plugin.d.ts.map +0 -1
  169. package/dist/Schema.d.mts.map +0 -1
  170. package/dist/Schema.d.ts.map +0 -1
  171. package/dist/Witness.d.mts.map +0 -1
  172. package/dist/Witness.d.ts.map +0 -1
  173. package/dist/index.d.mts.map +0 -1
  174. package/dist/index.d.ts.map +0 -1
  175. package/dist/index.js.map +0 -1
  176. package/dist/index.mjs.map +0 -1
  177. package/dist/lib/coinGeckoCoinToAssetMap.d.mts.map +0 -1
  178. package/dist/lib/coinGeckoCoinToAssetMap.d.ts.map +0 -1
  179. package/dist/lib/defaults.d.mts.map +0 -1
  180. package/dist/lib/defaults.d.ts.map +0 -1
  181. package/dist/lib/index.d.mts.map +0 -1
  182. package/dist/lib/index.d.ts.map +0 -1
  183. package/dist/lib/pricesFromCoingecko.d.mts.map +0 -1
  184. package/dist/lib/pricesFromCoingecko.d.ts.map +0 -1
  185. /package/dist/{Config.d.mts → browser/Config.d.cts} +0 -0
  186. /package/dist/{Config.d.ts → browser/Config.d.mts} +0 -0
  187. /package/dist/{Plugin.d.mts → browser/Plugin.d.cts} +0 -0
  188. /package/dist/{Plugin.d.ts → browser/Plugin.d.mts} +0 -0
  189. /package/dist/{Schema.d.mts → browser/Schema.d.cts} +0 -0
  190. /package/dist/{Schema.d.ts → browser/Schema.d.mts} +0 -0
  191. /package/dist/{Witness.d.mts → browser/Witness.d.cts} +0 -0
  192. /package/dist/{Witness.d.ts → browser/Witness.d.mts} +0 -0
  193. /package/dist/{index.d.mts → browser/index.d.cts} +0 -0
  194. /package/dist/{index.d.ts → browser/index.d.mts} +0 -0
  195. /package/dist/{lib/coinGeckoCoinToAssetMap.d.mts → browser/lib/coinGeckoCoinToAssetMap.d.cts} +0 -0
  196. /package/dist/{lib/coinGeckoCoinToAssetMap.d.ts → browser/lib/coinGeckoCoinToAssetMap.d.mts} +0 -0
  197. /package/dist/{lib/defaults.d.mts → browser/lib/defaults.d.cts} +0 -0
  198. /package/dist/{lib/defaults.d.ts → browser/lib/defaults.d.mts} +0 -0
  199. /package/dist/{lib/index.d.mts → browser/lib/index.d.cts} +0 -0
  200. /package/dist/{lib/index.d.ts → browser/lib/index.d.mts} +0 -0
  201. /package/dist/{lib/pricesFromCoingecko.d.mts → browser/lib/pricesFromCoingecko.d.cts} +0 -0
  202. /package/dist/{lib/pricesFromCoingecko.d.ts → browser/lib/pricesFromCoingecko.d.mts} +0 -0
@@ -0,0 +1,53 @@
1
+ // src/lib/coinGeckoCoinToAssetMap.ts
2
+ var coingeckoCoinToAssetMap = {
3
+ "binance-usd": "busd",
4
+ bitcoin: "btc",
5
+ bnb: "bnb",
6
+ cardano: "ada",
7
+ dogecoin: "doge",
8
+ ethereum: "eth",
9
+ polkadot: "dot",
10
+ solana: "sol",
11
+ tether: "usdt",
12
+ "usd-coin": "usdc",
13
+ "wrapped-bitcoin": "wbtc",
14
+ xrp: "xrp",
15
+ "xyo-network": "xyo"
16
+ };
17
+
18
+ // src/lib/defaults.ts
19
+ var defaultCoins = [
20
+ { name: "bitcoin" },
21
+ { name: "binance-usd" },
22
+ { name: "bnb" },
23
+ { name: "cardano" },
24
+ { name: "dogecoin" },
25
+ { name: "ethereum" },
26
+ { name: "polkadot" },
27
+ { name: "solana" },
28
+ { name: "tether" },
29
+ { name: "usd-coin" },
30
+ { name: "wrapped-bitcoin" },
31
+ { name: "xrp" },
32
+ { name: "xyo-network" }
33
+ ];
34
+ var defaultCurrencies = [{ symbol: "usd" }, { symbol: "eur" }, { symbol: "btc" }, { symbol: "eth" }];
35
+
36
+ // src/lib/pricesFromCoingecko.ts
37
+ import { axios } from "@xyo-network/axios";
38
+ var pricesFromCoingecko = async (coins, currencies) => {
39
+ const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(",")}&vs_currencies=${currencies.map(({ symbol }) => symbol).join(",")}`;
40
+ const coinGeckoSimplePrices = (await axios.get(url)).data;
41
+ const assets = {};
42
+ Object.entries(coinGeckoSimplePrices).forEach(([key, value]) => {
43
+ assets[coingeckoCoinToAssetMap[key]] = value;
44
+ });
45
+ return assets;
46
+ };
47
+ export {
48
+ coingeckoCoinToAssetMap,
49
+ defaultCoins,
50
+ defaultCurrencies,
51
+ pricesFromCoingecko
52
+ };
53
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/lib/coinGeckoCoinToAssetMap.ts","../../../src/lib/defaults.ts","../../../src/lib/pricesFromCoingecko.ts"],"sourcesContent":["import { AssetSymbol } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nexport const coingeckoCoinToAssetMap: Record<string, AssetSymbol> = {\n 'binance-usd': 'busd',\n bitcoin: 'btc',\n bnb: 'bnb',\n cardano: 'ada',\n dogecoin: 'doge',\n ethereum: 'eth',\n polkadot: 'dot',\n solana: 'sol',\n tether: 'usdt',\n 'usd-coin': 'usdc',\n 'wrapped-bitcoin': 'wbtc',\n xrp: 'xrp',\n 'xyo-network': 'xyo',\n}\n","import { CryptoAsset } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nexport const defaultCoins: CryptoAsset[] = [\n { name: 'bitcoin' },\n { name: 'binance-usd' },\n { name: 'bnb' },\n { name: 'cardano' },\n { name: 'dogecoin' },\n { name: 'ethereum' },\n { name: 'polkadot' },\n { name: 'solana' },\n { name: 'tether' },\n { name: 'usd-coin' },\n { name: 'wrapped-bitcoin' },\n { name: 'xrp' },\n { name: 'xyo-network' },\n]\n\nexport const defaultCurrencies: CryptoAsset[] = [{ symbol: 'usd' }, { symbol: 'eur' }, { symbol: 'btc' }, { symbol: 'eth' }]\n","import { axios } from '@xyo-network/axios'\nimport { AssetSymbol, CryptoAsset, CryptoAssetPrices } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nimport { coingeckoCoinToAssetMap } from './coinGeckoCoinToAssetMap'\n\ntype CoinGeckoSimplePrice = Partial<Record<AssetSymbol, number>>\ntype CoinGeckoSimplePrices = Record<string, CoinGeckoSimplePrice>\n\nexport const pricesFromCoingecko = async (coins: CryptoAsset[], currencies: CryptoAsset[]) => {\n const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(',')}&vs_currencies=${currencies\n .map(({ symbol }) => symbol)\n .join(',')}`\n const coinGeckoSimplePrices = (await axios.get<CoinGeckoSimplePrices>(url)).data\n const assets: CryptoAssetPrices = {}\n Object.entries(coinGeckoSimplePrices).forEach(([key, value]) => {\n assets[coingeckoCoinToAssetMap[key]] = value\n })\n return assets\n}\n"],"mappings":";AAEO,IAAM,0BAAuD;AAAA,EAClE,eAAe;AAAA,EACf,SAAS;AAAA,EACT,KAAK;AAAA,EACL,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,mBAAmB;AAAA,EACnB,KAAK;AAAA,EACL,eAAe;AACjB;;;ACdO,IAAM,eAA8B;AAAA,EACzC,EAAE,MAAM,UAAU;AAAA,EAClB,EAAE,MAAM,cAAc;AAAA,EACtB,EAAE,MAAM,MAAM;AAAA,EACd,EAAE,MAAM,UAAU;AAAA,EAClB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,SAAS;AAAA,EACjB,EAAE,MAAM,SAAS;AAAA,EACjB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,kBAAkB;AAAA,EAC1B,EAAE,MAAM,MAAM;AAAA,EACd,EAAE,MAAM,cAAc;AACxB;AAEO,IAAM,oBAAmC,CAAC,EAAE,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,CAAC;;;AClB3H,SAAS,aAAa;AAQf,IAAM,sBAAsB,OAAO,OAAsB,eAA8B;AAC5F,QAAM,MAAM,qDAAqD,MAAM,IAAI,CAAC,EAAE,KAAK,MAAM,IAAI,EAAE,KAAK,GAAG,CAAC,kBAAkB,WACvH,IAAI,CAAC,EAAE,OAAO,MAAM,MAAM,EAC1B,KAAK,GAAG,CAAC;AACZ,QAAM,yBAAyB,MAAM,MAAM,IAA2B,GAAG,GAAG;AAC5E,QAAM,SAA4B,CAAC;AACnC,SAAO,QAAQ,qBAAqB,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAC9D,WAAO,wBAAwB,GAAG,CAAC,IAAI;AAAA,EACzC,CAAC;AACD,SAAO;AACT;","names":[]}
@@ -0,0 +1,3 @@
1
+ import { CryptoAsset } from '@xyo-network/coingecko-crypto-market-payload-plugin';
2
+ export declare const pricesFromCoingecko: (coins: CryptoAsset[], currencies: CryptoAsset[]) => Promise<Partial<Record<string, Partial<Record<string, number> | undefined>>>>;
3
+ //# sourceMappingURL=pricesFromCoingecko.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pricesFromCoingecko.d.ts","sourceRoot":"","sources":["../../../src/lib/pricesFromCoingecko.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,WAAW,EAAqB,MAAM,qDAAqD,CAAA;AAOjH,eAAO,MAAM,mBAAmB,UAAiB,WAAW,EAAE,cAAc,WAAW,EAAE,kFAUxF,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { CryptoAsset } from '@xyo-network/coingecko-crypto-market-payload-plugin';
2
+ export declare const pricesFromCoingecko: (coins: CryptoAsset[], currencies: CryptoAsset[]) => Promise<Partial<Record<string, Partial<Record<string, number> | undefined>>>>;
3
+ //# sourceMappingURL=pricesFromCoingecko.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pricesFromCoingecko.d.ts","sourceRoot":"","sources":["../../../src/lib/pricesFromCoingecko.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,WAAW,EAAqB,MAAM,qDAAqD,CAAA;AAOjH,eAAO,MAAM,mBAAmB,UAAiB,WAAW,EAAE,cAAc,WAAW,EAAE,kFAUxF,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { CryptoAsset } from '@xyo-network/coingecko-crypto-market-payload-plugin';
2
+ export declare const pricesFromCoingecko: (coins: CryptoAsset[], currencies: CryptoAsset[]) => Promise<Partial<Record<string, Partial<Record<string, number> | undefined>>>>;
3
+ //# sourceMappingURL=pricesFromCoingecko.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pricesFromCoingecko.d.ts","sourceRoot":"","sources":["../../../src/lib/pricesFromCoingecko.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,WAAW,EAAqB,MAAM,qDAAqD,CAAA;AAOjH,eAAO,MAAM,mBAAmB,UAAiB,WAAW,EAAE,cAAc,WAAW,EAAE,kFAUxF,CAAA"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/pricesFromCoingecko.ts
21
+ var pricesFromCoingecko_exports = {};
22
+ __export(pricesFromCoingecko_exports, {
23
+ pricesFromCoingecko: () => pricesFromCoingecko
24
+ });
25
+ module.exports = __toCommonJS(pricesFromCoingecko_exports);
26
+ var import_axios = require("@xyo-network/axios");
27
+
28
+ // src/lib/coinGeckoCoinToAssetMap.ts
29
+ var coingeckoCoinToAssetMap = {
30
+ "binance-usd": "busd",
31
+ bitcoin: "btc",
32
+ bnb: "bnb",
33
+ cardano: "ada",
34
+ dogecoin: "doge",
35
+ ethereum: "eth",
36
+ polkadot: "dot",
37
+ solana: "sol",
38
+ tether: "usdt",
39
+ "usd-coin": "usdc",
40
+ "wrapped-bitcoin": "wbtc",
41
+ xrp: "xrp",
42
+ "xyo-network": "xyo"
43
+ };
44
+
45
+ // src/lib/pricesFromCoingecko.ts
46
+ var pricesFromCoingecko = async (coins, currencies) => {
47
+ const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(",")}&vs_currencies=${currencies.map(({ symbol }) => symbol).join(",")}`;
48
+ const coinGeckoSimplePrices = (await import_axios.axios.get(url)).data;
49
+ const assets = {};
50
+ Object.entries(coinGeckoSimplePrices).forEach(([key, value]) => {
51
+ assets[coingeckoCoinToAssetMap[key]] = value;
52
+ });
53
+ return assets;
54
+ };
55
+ // Annotate the CommonJS export names for ESM import in node:
56
+ 0 && (module.exports = {
57
+ pricesFromCoingecko
58
+ });
59
+ //# sourceMappingURL=pricesFromCoingecko.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/lib/pricesFromCoingecko.ts","../../../src/lib/coinGeckoCoinToAssetMap.ts"],"sourcesContent":["import { axios } from '@xyo-network/axios'\nimport { AssetSymbol, CryptoAsset, CryptoAssetPrices } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nimport { coingeckoCoinToAssetMap } from './coinGeckoCoinToAssetMap'\n\ntype CoinGeckoSimplePrice = Partial<Record<AssetSymbol, number>>\ntype CoinGeckoSimplePrices = Record<string, CoinGeckoSimplePrice>\n\nexport const pricesFromCoingecko = async (coins: CryptoAsset[], currencies: CryptoAsset[]) => {\n const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(',')}&vs_currencies=${currencies\n .map(({ symbol }) => symbol)\n .join(',')}`\n const coinGeckoSimplePrices = (await axios.get<CoinGeckoSimplePrices>(url)).data\n const assets: CryptoAssetPrices = {}\n Object.entries(coinGeckoSimplePrices).forEach(([key, value]) => {\n assets[coingeckoCoinToAssetMap[key]] = value\n })\n return assets\n}\n","import { AssetSymbol } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nexport const coingeckoCoinToAssetMap: Record<string, AssetSymbol> = {\n 'binance-usd': 'busd',\n bitcoin: 'btc',\n bnb: 'bnb',\n cardano: 'ada',\n dogecoin: 'doge',\n ethereum: 'eth',\n polkadot: 'dot',\n solana: 'sol',\n tether: 'usdt',\n 'usd-coin': 'usdc',\n 'wrapped-bitcoin': 'wbtc',\n xrp: 'xrp',\n 'xyo-network': 'xyo',\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAsB;;;ACEf,IAAM,0BAAuD;AAAA,EAClE,eAAe;AAAA,EACf,SAAS;AAAA,EACT,KAAK;AAAA,EACL,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,mBAAmB;AAAA,EACnB,KAAK;AAAA,EACL,eAAe;AACjB;;;ADRO,IAAM,sBAAsB,OAAO,OAAsB,eAA8B;AAC5F,QAAM,MAAM,qDAAqD,MAAM,IAAI,CAAC,EAAE,KAAK,MAAM,IAAI,EAAE,KAAK,GAAG,CAAC,kBAAkB,WACvH,IAAI,CAAC,EAAE,OAAO,MAAM,MAAM,EAC1B,KAAK,GAAG,CAAC;AACZ,QAAM,yBAAyB,MAAM,mBAAM,IAA2B,GAAG,GAAG;AAC5E,QAAM,SAA4B,CAAC;AACnC,SAAO,QAAQ,qBAAqB,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAC9D,WAAO,wBAAwB,GAAG,CAAC,IAAI;AAAA,EACzC,CAAC;AACD,SAAO;AACT;","names":[]}
@@ -0,0 +1,34 @@
1
+ // src/lib/pricesFromCoingecko.ts
2
+ import { axios } from "@xyo-network/axios";
3
+
4
+ // src/lib/coinGeckoCoinToAssetMap.ts
5
+ var coingeckoCoinToAssetMap = {
6
+ "binance-usd": "busd",
7
+ bitcoin: "btc",
8
+ bnb: "bnb",
9
+ cardano: "ada",
10
+ dogecoin: "doge",
11
+ ethereum: "eth",
12
+ polkadot: "dot",
13
+ solana: "sol",
14
+ tether: "usdt",
15
+ "usd-coin": "usdc",
16
+ "wrapped-bitcoin": "wbtc",
17
+ xrp: "xrp",
18
+ "xyo-network": "xyo"
19
+ };
20
+
21
+ // src/lib/pricesFromCoingecko.ts
22
+ var pricesFromCoingecko = async (coins, currencies) => {
23
+ const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(",")}&vs_currencies=${currencies.map(({ symbol }) => symbol).join(",")}`;
24
+ const coinGeckoSimplePrices = (await axios.get(url)).data;
25
+ const assets = {};
26
+ Object.entries(coinGeckoSimplePrices).forEach(([key, value]) => {
27
+ assets[coingeckoCoinToAssetMap[key]] = value;
28
+ });
29
+ return assets;
30
+ };
31
+ export {
32
+ pricesFromCoingecko
33
+ };
34
+ //# sourceMappingURL=pricesFromCoingecko.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/lib/pricesFromCoingecko.ts","../../../src/lib/coinGeckoCoinToAssetMap.ts"],"sourcesContent":["import { axios } from '@xyo-network/axios'\nimport { AssetSymbol, CryptoAsset, CryptoAssetPrices } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nimport { coingeckoCoinToAssetMap } from './coinGeckoCoinToAssetMap'\n\ntype CoinGeckoSimplePrice = Partial<Record<AssetSymbol, number>>\ntype CoinGeckoSimplePrices = Record<string, CoinGeckoSimplePrice>\n\nexport const pricesFromCoingecko = async (coins: CryptoAsset[], currencies: CryptoAsset[]) => {\n const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(',')}&vs_currencies=${currencies\n .map(({ symbol }) => symbol)\n .join(',')}`\n const coinGeckoSimplePrices = (await axios.get<CoinGeckoSimplePrices>(url)).data\n const assets: CryptoAssetPrices = {}\n Object.entries(coinGeckoSimplePrices).forEach(([key, value]) => {\n assets[coingeckoCoinToAssetMap[key]] = value\n })\n return assets\n}\n","import { AssetSymbol } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nexport const coingeckoCoinToAssetMap: Record<string, AssetSymbol> = {\n 'binance-usd': 'busd',\n bitcoin: 'btc',\n bnb: 'bnb',\n cardano: 'ada',\n dogecoin: 'doge',\n ethereum: 'eth',\n polkadot: 'dot',\n solana: 'sol',\n tether: 'usdt',\n 'usd-coin': 'usdc',\n 'wrapped-bitcoin': 'wbtc',\n xrp: 'xrp',\n 'xyo-network': 'xyo',\n}\n"],"mappings":";AAAA,SAAS,aAAa;;;ACEf,IAAM,0BAAuD;AAAA,EAClE,eAAe;AAAA,EACf,SAAS;AAAA,EACT,KAAK;AAAA,EACL,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,mBAAmB;AAAA,EACnB,KAAK;AAAA,EACL,eAAe;AACjB;;;ADRO,IAAM,sBAAsB,OAAO,OAAsB,eAA8B;AAC5F,QAAM,MAAM,qDAAqD,MAAM,IAAI,CAAC,EAAE,KAAK,MAAM,IAAI,EAAE,KAAK,GAAG,CAAC,kBAAkB,WACvH,IAAI,CAAC,EAAE,OAAO,MAAM,MAAM,EAC1B,KAAK,GAAG,CAAC;AACZ,QAAM,yBAAyB,MAAM,MAAM,IAA2B,GAAG,GAAG;AAC5E,QAAM,SAA4B,CAAC;AACnC,SAAO,QAAQ,qBAAqB,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAC9D,WAAO,wBAAwB,GAAG,CAAC,IAAI;AAAA,EACzC,CAAC;AACD,SAAO;AACT;","names":[]}
package/package.json CHANGED
@@ -10,48 +10,51 @@
10
10
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
11
11
  },
12
12
  "dependencies": {
13
- "@xyo-network/axios": "~2.74.5",
14
- "@xyo-network/coingecko-crypto-market-payload-plugin": "~2.74.5",
15
- "@xyo-network/module": "~2.74.5",
16
- "@xyo-network/payload-model": "~2.74.5",
17
- "@xyo-network/payloadset-plugin": "~2.74.5",
18
- "@xyo-network/witness": "~2.74.5"
13
+ "@xyo-network/axios": "~2.75.2",
14
+ "@xyo-network/coingecko-crypto-market-payload-plugin": "~2.75.2",
15
+ "@xyo-network/module": "~2.75.2",
16
+ "@xyo-network/payload-model": "~2.75.2",
17
+ "@xyo-network/payloadset-plugin": "~2.75.2",
18
+ "@xyo-network/witness": "~2.75.2"
19
19
  },
20
20
  "devDependencies": {
21
- "@xylabs/ts-scripts-yarn3": "^3.0.28",
22
- "@xylabs/tsconfig": "^3.0.28",
21
+ "@xylabs/ts-scripts-yarn3": "^3.0.77",
22
+ "@xylabs/tsconfig": "^3.0.77",
23
23
  "typescript": "^5.2.2"
24
24
  },
25
25
  "description": "Primary SDK for using XYO Protocol 2.0",
26
26
  "docs": "dist/docs.json",
27
- "types": "dist/index.d.ts",
27
+ "types": "dist/node/index.d.ts",
28
28
  "exports": {
29
29
  ".": {
30
- "require": {
31
- "types": "./dist/index.d.ts",
32
- "default": "./dist/index.js"
30
+ "browser": {
31
+ "require": {
32
+ "types": "./dist/browser/index.d.cts",
33
+ "default": "./dist/browser/index.cjs"
34
+ },
35
+ "import": {
36
+ "types": "./dist/browser/index.d.mts",
37
+ "default": "./dist/browser/index.js"
38
+ }
33
39
  },
34
- "import": {
35
- "types": "./dist/index.d.mts",
36
- "default": "./dist/index.mjs"
40
+ "node": {
41
+ "require": {
42
+ "types": "./dist/node/index.d.ts",
43
+ "default": "./dist/node/index.js"
44
+ },
45
+ "import": {
46
+ "types": "./dist/node/index.d.mts",
47
+ "default": "./dist/node/index.mjs"
48
+ }
37
49
  }
38
50
  },
39
- "./dist/docs.json": {
40
- "default": "./dist/docs.json"
41
- },
42
- "./cjs": {
43
- "default": "./dist/index.js"
44
- },
45
51
  "./docs": {
46
52
  "default": "./dist/docs.json"
47
53
  },
48
- "./esm": {
49
- "default": "./dist/index.mjs"
50
- },
51
54
  "./package.json": "./package.json"
52
55
  },
53
- "main": "dist/index.js",
54
- "module": "dist/index.mjs",
56
+ "main": "dist/node/index.js",
57
+ "module": "dist/node/index.mjs",
55
58
  "homepage": "https://xyo.network",
56
59
  "license": "LGPL-3.0",
57
60
  "publishConfig": {
@@ -62,5 +65,5 @@
62
65
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
63
66
  },
64
67
  "sideEffects": false,
65
- "version": "2.74.5"
68
+ "version": "2.75.2"
66
69
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qDAAqD,CAAA;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,OAAO,EAAE,wCAAwC,EAAE,MAAM,UAAU,CAAA;AAEnE,MAAM,MAAM,kCAAkC,GAAG,aAAa,CAAC;IAC7D,KAAK,CAAC,EAAE,WAAW,EAAE,CAAA;IACrB,UAAU,CAAC,EAAE,WAAW,EAAE,CAAA;IAC1B,MAAM,EAAE,wCAAwC,CAAA;CACjD,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qDAAqD,CAAA;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,OAAO,EAAE,wCAAwC,EAAE,MAAM,UAAU,CAAA;AAEnE,MAAM,MAAM,kCAAkC,GAAG,aAAa,CAAC;IAC7D,KAAK,CAAC,EAAE,WAAW,EAAE,CAAA;IACrB,UAAU,CAAC,EAAE,WAAW,EAAE,CAAA;IAC1B,MAAM,EAAE,wCAAwC,CAAA;CACjD,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,4BAA4B,EAAE,MAAM,WAAW,CAAA;AAExD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GASrC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,4BAA4B,EAAE,MAAM,WAAW,CAAA;AAExD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GASrC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,wCAAwC,GAAG,oDAAoD,CAAA;AAC3G,eAAO,MAAM,wCAAwC,EAAE,wCAA+F,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,wCAAwC,GAAG,oDAAoD,CAAA;AAC3G,eAAO,MAAM,wCAAwC,EAAE,wCAA+F,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Witness.d.ts","sourceRoot":"","sources":["../src/Witness.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAErE,OAAO,EAAE,kCAAkC,EAAE,MAAM,UAAU,CAAA;AAI7D,MAAM,MAAM,kCAAkC,GAAG,aAAa,CAAC,eAAe,CAAC,kCAAkC,CAAC,CAAC,CAAA;AAEnH,qBAAa,4BAA4B,CACvC,OAAO,SAAS,kCAAkC,GAAG,kCAAkC,CACvF,SAAQ,eAAe,CAAC,OAAO,CAAC;IAChC,OAAgB,aAAa,yDAA6C;cAEjD,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;CAU9D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Witness.d.ts","sourceRoot":"","sources":["../src/Witness.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAErE,OAAO,EAAE,kCAAkC,EAAE,MAAM,UAAU,CAAA;AAI7D,MAAM,MAAM,kCAAkC,GAAG,aAAa,CAAC,eAAe,CAAC,kCAAkC,CAAC,CAAC,CAAA;AAEnH,qBAAa,4BAA4B,CACvC,OAAO,SAAS,kCAAkC,GAAG,kCAAkC,CACvF,SAAQ,eAAe,CAAC,OAAO,CAAC;IAChC,OAAgB,aAAa,yDAA6C;cAEjD,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;CAU9D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AAEtD,cAAc,UAAU,CAAA;AACxB,cAAc,OAAO,CAAA;AACrB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,2BAA2B,EAAE,CAAA;AAGtC,eAAe,2BAA2B,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AAEtD,cAAc,UAAU,CAAA;AACxB,cAAc,OAAO,CAAA;AACrB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,2BAA2B,EAAE,CAAA;AAGtC,eAAe,2BAA2B,CAAA"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/index.ts","../src/Plugin.ts","../src/Witness.ts","../src/lib/coinGeckoCoinToAssetMap.ts","../src/lib/defaults.ts","../src/lib/pricesFromCoingecko.ts","../src/Schema.ts"],"sourcesContent":["import { CoingeckoCryptoMarketPlugin } from './Plugin'\n\nexport * from './Config'\nexport * from './lib'\nexport * from './Schema'\nexport * from './Witness'\n\nexport { CoingeckoCryptoMarketPlugin }\n\n// eslint-disable-next-line import/no-default-export\nexport default CoingeckoCryptoMarketPlugin\n","import { CoingeckoCryptoMarketSchema } from '@xyo-network/coingecko-crypto-market-payload-plugin'\nimport { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\n\nimport { CoingeckoCryptoMarketWitness } from './Witness'\n\nexport const CoingeckoCryptoMarketPlugin = () =>\n createPayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness>(\n { required: { [CoingeckoCryptoMarketSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await CoingeckoCryptoMarketWitness.create(params)\n return result\n },\n },\n )\n","import { CoingeckoCryptoMarketPayload, CoingeckoCryptoMarketSchema } from '@xyo-network/coingecko-crypto-market-payload-plugin'\nimport { AnyConfigSchema } from '@xyo-network/module'\nimport { Payload } from '@xyo-network/payload-model'\nimport { AbstractWitness, WitnessParams } from '@xyo-network/witness'\n\nimport { CoingeckoCryptoMarketWitnessConfig } from './Config'\nimport { pricesFromCoingecko } from './lib'\nimport { CoingeckoCryptoMarketWitnessConfigSchema } from './Schema'\n\nexport type CoingeckoCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<CoingeckoCryptoMarketWitnessConfig>>\n\nexport class CoingeckoCryptoMarketWitness<\n TParams extends CoingeckoCryptoMarketWitnessParams = CoingeckoCryptoMarketWitnessParams,\n> extends AbstractWitness<TParams> {\n static override configSchemas = [CoingeckoCryptoMarketWitnessConfigSchema]\n\n protected override async observeHandler(): Promise<Payload[]> {\n const assets: CoingeckoCryptoMarketPayload['assets'] = await pricesFromCoingecko(this.config?.coins ?? [], this.config?.currencies ?? [])\n const payload: CoingeckoCryptoMarketPayload = {\n assets,\n schema: CoingeckoCryptoMarketSchema,\n timestamp: Date.now(),\n }\n\n return [payload]\n }\n}\n","import { AssetSymbol } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nexport const coingeckoCoinToAssetMap: Record<string, AssetSymbol> = {\n 'binance-usd': 'busd',\n bitcoin: 'btc',\n bnb: 'bnb',\n cardano: 'ada',\n dogecoin: 'doge',\n ethereum: 'eth',\n polkadot: 'dot',\n solana: 'sol',\n tether: 'usdt',\n 'usd-coin': 'usdc',\n 'wrapped-bitcoin': 'wbtc',\n xrp: 'xrp',\n 'xyo-network': 'xyo',\n}\n","import { CryptoAsset } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nexport const defaultCoins: CryptoAsset[] = [\n { name: 'bitcoin' },\n { name: 'binance-usd' },\n { name: 'bnb' },\n { name: 'cardano' },\n { name: 'dogecoin' },\n { name: 'ethereum' },\n { name: 'polkadot' },\n { name: 'solana' },\n { name: 'tether' },\n { name: 'usd-coin' },\n { name: 'wrapped-bitcoin' },\n { name: 'xrp' },\n { name: 'xyo-network' },\n]\n\nexport const defaultCurrencies: CryptoAsset[] = [{ symbol: 'usd' }, { symbol: 'eur' }, { symbol: 'btc' }, { symbol: 'eth' }]\n","import { axios } from '@xyo-network/axios'\nimport { AssetSymbol, CryptoAsset, CryptoAssetPrices } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nimport { coingeckoCoinToAssetMap } from './coinGeckoCoinToAssetMap'\n\ntype CoinGeckoSimplePrice = Partial<Record<AssetSymbol, number>>\ntype CoinGeckoSimplePrices = Record<string, CoinGeckoSimplePrice>\n\nexport const pricesFromCoingecko = async (coins: CryptoAsset[], currencies: CryptoAsset[]) => {\n const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(',')}&vs_currencies=${currencies\n .map(({ symbol }) => symbol)\n .join(',')}`\n const coinGeckoSimplePrices = (await axios.get<CoinGeckoSimplePrices>(url)).data\n const assets: CryptoAssetPrices = {}\n Object.entries(coinGeckoSimplePrices).forEach(([key, value]) => {\n assets[coingeckoCoinToAssetMap[key]] = value\n })\n return assets\n}\n","export type CoingeckoCryptoMarketWitnessConfigSchema = 'network.xyo.crypto.market.coingecko.witness.config'\nexport const CoingeckoCryptoMarketWitnessConfigSchema: CoingeckoCryptoMarketWitnessConfigSchema = 'network.xyo.crypto.market.coingecko.witness.config'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,IAAAA,iDAA4C;AAC5C,2BAAiC;AACjC,+BAA8C;;;ACF9C,oDAA0E;AAG1E,qBAA+C;;;ACDxC,IAAM,0BAAuD;AAAA,EAClE,eAAe;AAAA,EACf,SAAS;AAAA,EACT,KAAK;AAAA,EACL,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,mBAAmB;AAAA,EACnB,KAAK;AAAA,EACL,eAAe;AACjB;;;ACdO,IAAM,eAA8B;AAAA,EACzC,EAAE,MAAM,UAAU;AAAA,EAClB,EAAE,MAAM,cAAc;AAAA,EACtB,EAAE,MAAM,MAAM;AAAA,EACd,EAAE,MAAM,UAAU;AAAA,EAClB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,SAAS;AAAA,EACjB,EAAE,MAAM,SAAS;AAAA,EACjB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,kBAAkB;AAAA,EAC1B,EAAE,MAAM,MAAM;AAAA,EACd,EAAE,MAAM,cAAc;AACxB;AAEO,IAAM,oBAAmC,CAAC,EAAE,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,CAAC;;;AClB3H,mBAAsB;AAQf,IAAM,sBAAsB,OAAO,OAAsB,eAA8B;AAC5F,QAAM,MAAM,qDAAqD,MAAM,IAAI,CAAC,EAAE,KAAK,MAAM,IAAI,EAAE,KAAK,GAAG,CAAC,kBAAkB,WACvH,IAAI,CAAC,EAAE,OAAO,MAAM,MAAM,EAC1B,KAAK,GAAG,CAAC;AACZ,QAAM,yBAAyB,MAAM,mBAAM,IAA2B,GAAG,GAAG;AAC5E,QAAM,SAA4B,CAAC;AACnC,SAAO,QAAQ,qBAAqB,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAC9D,WAAO,wBAAwB,GAAG,CAAC,IAAI;AAAA,EACzC,CAAC;AACD,SAAO;AACT;;;ACjBO,IAAM,2CAAqF;;;AJU3F,IAAM,+BAAN,cAEG,+BAAyB;AAAA,EACjC,OAAgB,gBAAgB,CAAC,wCAAwC;AAAA,EAEzE,MAAyB,iBAAqC;AAC5D,UAAM,SAAiD,MAAM,oBAAoB,KAAK,QAAQ,SAAS,CAAC,GAAG,KAAK,QAAQ,cAAc,CAAC,CAAC;AACxI,UAAM,UAAwC;AAAA,MAC5C;AAAA,MACA,QAAQ;AAAA,MACR,WAAW,KAAK,IAAI;AAAA,IACtB;AAEA,WAAO,CAAC,OAAO;AAAA,EACjB;AACF;;;ADpBO,IAAM,8BAA8B,UACzC;AAAA,EACE,EAAE,UAAU,EAAE,CAAC,0EAA2B,GAAG,EAAE,GAAG,QAAQ,sCAAiB;AAAA,EAC3E;AAAA,IACE,SAAS,OAAO,WAAW;AACzB,YAAM,SAAS,MAAM,6BAA6B,OAAO,MAAM;AAC/D,aAAO;AAAA,IACT;AAAA,EACF;AACF;;;ADLF,IAAO,cAAQ;","names":["import_coingecko_crypto_market_payload_plugin"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/Plugin.ts","../src/Witness.ts","../src/lib/coinGeckoCoinToAssetMap.ts","../src/lib/defaults.ts","../src/lib/pricesFromCoingecko.ts","../src/Schema.ts","../src/index.ts"],"sourcesContent":["import { CoingeckoCryptoMarketSchema } from '@xyo-network/coingecko-crypto-market-payload-plugin'\nimport { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\n\nimport { CoingeckoCryptoMarketWitness } from './Witness'\n\nexport const CoingeckoCryptoMarketPlugin = () =>\n createPayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness>(\n { required: { [CoingeckoCryptoMarketSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await CoingeckoCryptoMarketWitness.create(params)\n return result\n },\n },\n )\n","import { CoingeckoCryptoMarketPayload, CoingeckoCryptoMarketSchema } from '@xyo-network/coingecko-crypto-market-payload-plugin'\nimport { AnyConfigSchema } from '@xyo-network/module'\nimport { Payload } from '@xyo-network/payload-model'\nimport { AbstractWitness, WitnessParams } from '@xyo-network/witness'\n\nimport { CoingeckoCryptoMarketWitnessConfig } from './Config'\nimport { pricesFromCoingecko } from './lib'\nimport { CoingeckoCryptoMarketWitnessConfigSchema } from './Schema'\n\nexport type CoingeckoCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<CoingeckoCryptoMarketWitnessConfig>>\n\nexport class CoingeckoCryptoMarketWitness<\n TParams extends CoingeckoCryptoMarketWitnessParams = CoingeckoCryptoMarketWitnessParams,\n> extends AbstractWitness<TParams> {\n static override configSchemas = [CoingeckoCryptoMarketWitnessConfigSchema]\n\n protected override async observeHandler(): Promise<Payload[]> {\n const assets: CoingeckoCryptoMarketPayload['assets'] = await pricesFromCoingecko(this.config?.coins ?? [], this.config?.currencies ?? [])\n const payload: CoingeckoCryptoMarketPayload = {\n assets,\n schema: CoingeckoCryptoMarketSchema,\n timestamp: Date.now(),\n }\n\n return [payload]\n }\n}\n","import { AssetSymbol } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nexport const coingeckoCoinToAssetMap: Record<string, AssetSymbol> = {\n 'binance-usd': 'busd',\n bitcoin: 'btc',\n bnb: 'bnb',\n cardano: 'ada',\n dogecoin: 'doge',\n ethereum: 'eth',\n polkadot: 'dot',\n solana: 'sol',\n tether: 'usdt',\n 'usd-coin': 'usdc',\n 'wrapped-bitcoin': 'wbtc',\n xrp: 'xrp',\n 'xyo-network': 'xyo',\n}\n","import { CryptoAsset } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nexport const defaultCoins: CryptoAsset[] = [\n { name: 'bitcoin' },\n { name: 'binance-usd' },\n { name: 'bnb' },\n { name: 'cardano' },\n { name: 'dogecoin' },\n { name: 'ethereum' },\n { name: 'polkadot' },\n { name: 'solana' },\n { name: 'tether' },\n { name: 'usd-coin' },\n { name: 'wrapped-bitcoin' },\n { name: 'xrp' },\n { name: 'xyo-network' },\n]\n\nexport const defaultCurrencies: CryptoAsset[] = [{ symbol: 'usd' }, { symbol: 'eur' }, { symbol: 'btc' }, { symbol: 'eth' }]\n","import { axios } from '@xyo-network/axios'\nimport { AssetSymbol, CryptoAsset, CryptoAssetPrices } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nimport { coingeckoCoinToAssetMap } from './coinGeckoCoinToAssetMap'\n\ntype CoinGeckoSimplePrice = Partial<Record<AssetSymbol, number>>\ntype CoinGeckoSimplePrices = Record<string, CoinGeckoSimplePrice>\n\nexport const pricesFromCoingecko = async (coins: CryptoAsset[], currencies: CryptoAsset[]) => {\n const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(',')}&vs_currencies=${currencies\n .map(({ symbol }) => symbol)\n .join(',')}`\n const coinGeckoSimplePrices = (await axios.get<CoinGeckoSimplePrices>(url)).data\n const assets: CryptoAssetPrices = {}\n Object.entries(coinGeckoSimplePrices).forEach(([key, value]) => {\n assets[coingeckoCoinToAssetMap[key]] = value\n })\n return assets\n}\n","export type CoingeckoCryptoMarketWitnessConfigSchema = 'network.xyo.crypto.market.coingecko.witness.config'\nexport const CoingeckoCryptoMarketWitnessConfigSchema: CoingeckoCryptoMarketWitnessConfigSchema = 'network.xyo.crypto.market.coingecko.witness.config'\n","import { CoingeckoCryptoMarketPlugin } from './Plugin'\n\nexport * from './Config'\nexport * from './lib'\nexport * from './Schema'\nexport * from './Witness'\n\nexport { CoingeckoCryptoMarketPlugin }\n\n// eslint-disable-next-line import/no-default-export\nexport default CoingeckoCryptoMarketPlugin\n"],"mappings":";AAAA,SAAS,+BAAAA,oCAAmC;AAC5C,SAAS,wBAAwB;AACjC,SAAS,qCAAqC;;;ACF9C,SAAuC,mCAAmC;AAG1E,SAAS,uBAAsC;;;ACDxC,IAAM,0BAAuD;AAAA,EAClE,eAAe;AAAA,EACf,SAAS;AAAA,EACT,KAAK;AAAA,EACL,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,mBAAmB;AAAA,EACnB,KAAK;AAAA,EACL,eAAe;AACjB;;;ACdO,IAAM,eAA8B;AAAA,EACzC,EAAE,MAAM,UAAU;AAAA,EAClB,EAAE,MAAM,cAAc;AAAA,EACtB,EAAE,MAAM,MAAM;AAAA,EACd,EAAE,MAAM,UAAU;AAAA,EAClB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,SAAS;AAAA,EACjB,EAAE,MAAM,SAAS;AAAA,EACjB,EAAE,MAAM,WAAW;AAAA,EACnB,EAAE,MAAM,kBAAkB;AAAA,EAC1B,EAAE,MAAM,MAAM;AAAA,EACd,EAAE,MAAM,cAAc;AACxB;AAEO,IAAM,oBAAmC,CAAC,EAAE,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,CAAC;;;AClB3H,SAAS,aAAa;AAQf,IAAM,sBAAsB,OAAO,OAAsB,eAA8B;AAC5F,QAAM,MAAM,qDAAqD,MAAM,IAAI,CAAC,EAAE,KAAK,MAAM,IAAI,EAAE,KAAK,GAAG,CAAC,kBAAkB,WACvH,IAAI,CAAC,EAAE,OAAO,MAAM,MAAM,EAC1B,KAAK,GAAG,CAAC;AACZ,QAAM,yBAAyB,MAAM,MAAM,IAA2B,GAAG,GAAG;AAC5E,QAAM,SAA4B,CAAC;AACnC,SAAO,QAAQ,qBAAqB,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAC9D,WAAO,wBAAwB,GAAG,CAAC,IAAI;AAAA,EACzC,CAAC;AACD,SAAO;AACT;;;ACjBO,IAAM,2CAAqF;;;AJU3F,IAAM,+BAAN,cAEG,gBAAyB;AAAA,EACjC,OAAgB,gBAAgB,CAAC,wCAAwC;AAAA,EAEzE,MAAyB,iBAAqC;AAC5D,UAAM,SAAiD,MAAM,oBAAoB,KAAK,QAAQ,SAAS,CAAC,GAAG,KAAK,QAAQ,cAAc,CAAC,CAAC;AACxI,UAAM,UAAwC;AAAA,MAC5C;AAAA,MACA,QAAQ;AAAA,MACR,WAAW,KAAK,IAAI;AAAA,IACtB;AAEA,WAAO,CAAC,OAAO;AAAA,EACjB;AACF;;;ADpBO,IAAM,8BAA8B,MACzC;AAAA,EACE,EAAE,UAAU,EAAE,CAACC,4BAA2B,GAAG,EAAE,GAAG,QAAQ,iBAAiB;AAAA,EAC3E;AAAA,IACE,SAAS,OAAO,WAAW;AACzB,YAAM,SAAS,MAAM,6BAA6B,OAAO,MAAM;AAC/D,aAAO;AAAA,IACT;AAAA,EACF;AACF;;;AMLF,IAAO,cAAQ;","names":["CoingeckoCryptoMarketSchema","CoingeckoCryptoMarketSchema"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"coinGeckoCoinToAssetMap.d.ts","sourceRoot":"","sources":["../../src/lib/coinGeckoCoinToAssetMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qDAAqD,CAAA;AAEjF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAc/D,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"coinGeckoCoinToAssetMap.d.ts","sourceRoot":"","sources":["../../src/lib/coinGeckoCoinToAssetMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qDAAqD,CAAA;AAEjF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAc/D,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/lib/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qDAAqD,CAAA;AAEjF,eAAO,MAAM,YAAY,EAAE,WAAW,EAcrC,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,WAAW,EAAiF,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/lib/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qDAAqD,CAAA;AAEjF,eAAO,MAAM,YAAY,EAAE,WAAW,EAcrC,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,WAAW,EAAiF,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,YAAY,CAAA;AAC1B,cAAc,uBAAuB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,YAAY,CAAA;AAC1B,cAAc,uBAAuB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pricesFromCoingecko.d.ts","sourceRoot":"","sources":["../../src/lib/pricesFromCoingecko.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,WAAW,EAAqB,MAAM,qDAAqD,CAAA;AAOjH,eAAO,MAAM,mBAAmB,UAAiB,WAAW,EAAE,cAAc,WAAW,EAAE,kFAUxF,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pricesFromCoingecko.d.ts","sourceRoot":"","sources":["../../src/lib/pricesFromCoingecko.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,WAAW,EAAqB,MAAM,qDAAqD,CAAA;AAOjH,eAAO,MAAM,mBAAmB,UAAiB,WAAW,EAAE,cAAc,WAAW,EAAE,kFAUxF,CAAA"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes