@xyo-network/coingecko-crypto-market-plugin 2.99.4 → 2.99.5

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 (69) hide show
  1. package/dist/browser/Config.d.cts +1 -1
  2. package/dist/browser/Config.d.mts +1 -1
  3. package/dist/browser/Config.d.ts +1 -1
  4. package/dist/browser/Plugin.d.cts +2 -2
  5. package/dist/browser/Plugin.d.mts +2 -2
  6. package/dist/browser/Plugin.d.ts +2 -2
  7. package/dist/browser/Witness.d.cts +1 -1
  8. package/dist/browser/Witness.d.mts +1 -1
  9. package/dist/browser/Witness.d.ts +1 -1
  10. package/dist/browser/index.cjs +86 -36
  11. package/dist/browser/index.cjs.map +1 -1
  12. package/dist/browser/index.d.cts +5 -5
  13. package/dist/browser/index.d.mts +5 -5
  14. package/dist/browser/index.d.ts +5 -5
  15. package/dist/browser/{index.js → index.mjs} +89 -37
  16. package/dist/browser/index.mjs.map +1 -0
  17. package/dist/browser/lib/index.d.cts +3 -3
  18. package/dist/browser/lib/index.d.mts +3 -3
  19. package/dist/browser/lib/index.d.ts +3 -3
  20. package/dist/neutral/Config.d.cts +1 -1
  21. package/dist/neutral/Config.d.mts +1 -1
  22. package/dist/neutral/Config.d.ts +1 -1
  23. package/dist/neutral/Plugin.d.cts +2 -2
  24. package/dist/neutral/Plugin.d.mts +2 -2
  25. package/dist/neutral/Plugin.d.ts +2 -2
  26. package/dist/neutral/Witness.d.cts +1 -1
  27. package/dist/neutral/Witness.d.mts +1 -1
  28. package/dist/neutral/Witness.d.ts +1 -1
  29. package/dist/neutral/index.cjs +86 -36
  30. package/dist/neutral/index.cjs.map +1 -1
  31. package/dist/neutral/index.d.cts +5 -5
  32. package/dist/neutral/index.d.mts +5 -5
  33. package/dist/neutral/index.d.ts +5 -5
  34. package/dist/neutral/{index.js → index.mjs} +89 -37
  35. package/dist/neutral/index.mjs.map +1 -0
  36. package/dist/neutral/lib/index.d.cts +3 -3
  37. package/dist/neutral/lib/index.d.mts +3 -3
  38. package/dist/neutral/lib/index.d.ts +3 -3
  39. package/dist/node/Config.d.cts +1 -1
  40. package/dist/node/Config.d.mts +1 -1
  41. package/dist/node/Config.d.ts +1 -1
  42. package/dist/node/Plugin.d.cts +2 -2
  43. package/dist/node/Plugin.d.mts +2 -2
  44. package/dist/node/Plugin.d.ts +2 -2
  45. package/dist/node/Witness.d.cts +1 -1
  46. package/dist/node/Witness.d.mts +1 -1
  47. package/dist/node/Witness.d.ts +1 -1
  48. package/dist/node/index.cjs +92 -38
  49. package/dist/node/index.cjs.map +1 -1
  50. package/dist/node/index.d.cts +5 -5
  51. package/dist/node/index.d.mts +5 -5
  52. package/dist/node/index.d.ts +5 -5
  53. package/dist/node/index.mjs +152 -0
  54. package/dist/node/index.mjs.map +1 -0
  55. package/dist/node/lib/index.d.cts +3 -3
  56. package/dist/node/lib/index.d.mts +3 -3
  57. package/dist/node/lib/index.d.ts +3 -3
  58. package/package.json +15 -15
  59. package/src/Config.ts +1 -1
  60. package/src/Plugin.ts +1 -1
  61. package/src/Witness.ts +3 -3
  62. package/src/index.ts +5 -5
  63. package/src/lib/coinGeckoCoinToAssetMap.ts +9 -9
  64. package/src/lib/index.ts +3 -3
  65. package/src/lib/pricesFromCoingecko.ts +1 -1
  66. package/dist/browser/index.js.map +0 -1
  67. package/dist/neutral/index.js.map +0 -1
  68. package/dist/node/index.js +0 -96
  69. package/dist/node/index.js.map +0 -1
@@ -2,7 +2,7 @@ import { AbstractWitness } from '@xyo-network/abstract-witness';
2
2
  import { AnyConfigSchema } from '@xyo-network/module-model';
3
3
  import { Payload, Schema } from '@xyo-network/payload-model';
4
4
  import { WitnessParams } from '@xyo-network/witness-model';
5
- import { CoingeckoCryptoMarketWitnessConfig } from './Config.js';
5
+ import { CoingeckoCryptoMarketWitnessConfig } from './Config.ts';
6
6
  export type CoingeckoCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<CoingeckoCryptoMarketWitnessConfig>>;
7
7
  export declare class CoingeckoCryptoMarketWitness<TParams extends CoingeckoCryptoMarketWitnessParams = CoingeckoCryptoMarketWitnessParams> extends AbstractWitness<TParams> {
8
8
  static readonly configSchemas: Schema[];
@@ -2,7 +2,11 @@
2
2
  var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
5
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __reflectGet = Reflect.get;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
10
  var __export = (target, all) => {
7
11
  for (var name in all)
8
12
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -16,6 +20,8 @@ var __copyProps = (to, from, except, desc) => {
16
20
  return to;
17
21
  };
18
22
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
23
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
24
+ var __superGet = (cls, obj, key) => __reflectGet(__getProtoOf(cls), key, obj);
19
25
 
20
26
  // src/index.ts
21
27
  var src_exports = {};
@@ -34,41 +40,80 @@ module.exports = __toCommonJS(src_exports);
34
40
  // src/lib/coinGeckoCoinToAssetMap.ts
35
41
  var coingeckoCoinToAssetMap = {
36
42
  "binance-usd": "busd",
37
- bitcoin: "btc",
38
- bnb: "bnb",
39
- cardano: "ada",
40
- dogecoin: "doge",
41
- ethereum: "eth",
42
- polkadot: "dot",
43
- solana: "sol",
44
- tether: "usdt",
43
+ "bitcoin": "btc",
44
+ "bnb": "bnb",
45
+ "cardano": "ada",
46
+ "dogecoin": "doge",
47
+ "ethereum": "eth",
48
+ "polkadot": "dot",
49
+ "solana": "sol",
50
+ "tether": "usdt",
45
51
  "usd-coin": "usdc",
46
52
  "wrapped-bitcoin": "wbtc",
47
- xrp: "xrp",
53
+ "xrp": "xrp",
48
54
  "xyo-network": "xyo"
49
55
  };
50
56
 
51
57
  // src/lib/defaults.ts
52
58
  var defaultCoins = [
53
- { name: "bitcoin" },
54
- { name: "binance-usd" },
55
- { name: "bnb" },
56
- { name: "cardano" },
57
- { name: "dogecoin" },
58
- { name: "ethereum" },
59
- { name: "polkadot" },
60
- { name: "solana" },
61
- { name: "tether" },
62
- { name: "usd-coin" },
63
- { name: "wrapped-bitcoin" },
64
- { name: "xrp" },
65
- { name: "xyo-network" }
59
+ {
60
+ name: "bitcoin"
61
+ },
62
+ {
63
+ name: "binance-usd"
64
+ },
65
+ {
66
+ name: "bnb"
67
+ },
68
+ {
69
+ name: "cardano"
70
+ },
71
+ {
72
+ name: "dogecoin"
73
+ },
74
+ {
75
+ name: "ethereum"
76
+ },
77
+ {
78
+ name: "polkadot"
79
+ },
80
+ {
81
+ name: "solana"
82
+ },
83
+ {
84
+ name: "tether"
85
+ },
86
+ {
87
+ name: "usd-coin"
88
+ },
89
+ {
90
+ name: "wrapped-bitcoin"
91
+ },
92
+ {
93
+ name: "xrp"
94
+ },
95
+ {
96
+ name: "xyo-network"
97
+ }
98
+ ];
99
+ var defaultCurrencies = [
100
+ {
101
+ symbol: "usd"
102
+ },
103
+ {
104
+ symbol: "eur"
105
+ },
106
+ {
107
+ symbol: "btc"
108
+ },
109
+ {
110
+ symbol: "eth"
111
+ }
66
112
  ];
67
- var defaultCurrencies = [{ symbol: "usd" }, { symbol: "eur" }, { symbol: "btc" }, { symbol: "eth" }];
68
113
 
69
114
  // src/lib/pricesFromCoingecko.ts
70
115
  var import_axios = require("@xylabs/axios");
71
- var pricesFromCoingecko = async (coins, currencies) => {
116
+ var pricesFromCoingecko = /* @__PURE__ */ __name(async (coins, currencies) => {
72
117
  const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(",")}&vs_currencies=${currencies.map(({ symbol }) => symbol).join(",")}`;
73
118
  const coinGeckoSimplePrices = (await import_axios.axios.get(url)).data;
74
119
  const assets = {};
@@ -76,7 +121,7 @@ var pricesFromCoingecko = async (coins, currencies) => {
76
121
  assets[coingeckoCoinToAssetMap[key]] = value;
77
122
  }
78
123
  return assets;
79
- };
124
+ }, "pricesFromCoingecko");
80
125
 
81
126
  // src/Plugin.ts
82
127
  var import_coingecko_crypto_market_payload_plugin2 = require("@xyo-network/coingecko-crypto-market-payload-plugin");
@@ -91,9 +136,7 @@ var import_coingecko_crypto_market_payload_plugin = require("@xyo-network/coinge
91
136
  var CoingeckoCryptoMarketWitnessConfigSchema = "network.xyo.crypto.market.coingecko.witness.config";
92
137
 
93
138
  // src/Witness.ts
94
- var CoingeckoCryptoMarketWitness = class extends import_abstract_witness.AbstractWitness {
95
- static configSchemas = [...super.configSchemas, CoingeckoCryptoMarketWitnessConfigSchema];
96
- static defaultConfigSchema = CoingeckoCryptoMarketWitnessConfigSchema;
139
+ var _CoingeckoCryptoMarketWitness = class _CoingeckoCryptoMarketWitness extends import_abstract_witness.AbstractWitness {
97
140
  async observeHandler() {
98
141
  var _a, _b;
99
142
  const assets = await pricesFromCoingecko(((_a = this.config) == null ? void 0 : _a.coins) ?? [], ((_b = this.config) == null ? void 0 : _b.currencies) ?? []);
@@ -102,20 +145,31 @@ var CoingeckoCryptoMarketWitness = class extends import_abstract_witness.Abstrac
102
145
  schema: import_coingecko_crypto_market_payload_plugin.CoingeckoCryptoMarketSchema,
103
146
  timestamp: Date.now()
104
147
  };
105
- return [payload];
148
+ return [
149
+ payload
150
+ ];
106
151
  }
107
152
  };
153
+ __name(_CoingeckoCryptoMarketWitness, "CoingeckoCryptoMarketWitness");
154
+ __publicField(_CoingeckoCryptoMarketWitness, "configSchemas", [
155
+ ...__superGet(_CoingeckoCryptoMarketWitness, _CoingeckoCryptoMarketWitness, "configSchemas"),
156
+ CoingeckoCryptoMarketWitnessConfigSchema
157
+ ]);
158
+ __publicField(_CoingeckoCryptoMarketWitness, "defaultConfigSchema", CoingeckoCryptoMarketWitnessConfigSchema);
159
+ var CoingeckoCryptoMarketWitness = _CoingeckoCryptoMarketWitness;
108
160
 
109
161
  // src/Plugin.ts
110
- var CoingeckoCryptoMarketPlugin = () => (0, import_payloadset_plugin.createPayloadSetWitnessPlugin)(
111
- { required: { [import_coingecko_crypto_market_payload_plugin2.CoingeckoCryptoMarketSchema]: 1 }, schema: import_payload_model.PayloadSetSchema },
112
- {
113
- witness: async (params) => {
114
- const result = await CoingeckoCryptoMarketWitness.create(params);
115
- return result;
116
- }
117
- }
118
- );
162
+ var CoingeckoCryptoMarketPlugin = /* @__PURE__ */ __name(() => (0, import_payloadset_plugin.createPayloadSetWitnessPlugin)({
163
+ required: {
164
+ [import_coingecko_crypto_market_payload_plugin2.CoingeckoCryptoMarketSchema]: 1
165
+ },
166
+ schema: import_payload_model.PayloadSetSchema
167
+ }, {
168
+ witness: /* @__PURE__ */ __name(async (params) => {
169
+ const result = await CoingeckoCryptoMarketWitness.create(params);
170
+ return result;
171
+ }, "witness")
172
+ }), "CoingeckoCryptoMarketPlugin");
119
173
  // Annotate the CommonJS export names for ESM import in node:
120
174
  0 && (module.exports = {
121
175
  CoingeckoCryptoMarketPlugin,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/lib/coinGeckoCoinToAssetMap.ts","../../src/lib/defaults.ts","../../src/lib/pricesFromCoingecko.ts","../../src/Plugin.ts","../../src/Witness.ts","../../src/Schema.ts"],"sourcesContent":["export * from './Config.js'\nexport * from './lib/index.js'\n// eslint-disable-next-line import/no-default-export\nexport { CoingeckoCryptoMarketPlugin, CoingeckoCryptoMarketPlugin as default } from './Plugin.js'\nexport * from './Schema.js'\nexport * from './Witness.js'\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 '@xylabs/axios'\nimport { AssetSymbol, CryptoAsset, CryptoAssetPrices } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nimport { coingeckoCoinToAssetMap } from './coinGeckoCoinToAssetMap.js'\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 for (const [key, value] of Object.entries(coinGeckoSimplePrices)) {\n assets[coingeckoCoinToAssetMap[key]] = value\n }\n return assets\n}\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.js'\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 { AbstractWitness } from '@xyo-network/abstract-witness'\nimport { CoingeckoCryptoMarketPayload, CoingeckoCryptoMarketSchema } from '@xyo-network/coingecko-crypto-market-payload-plugin'\nimport { AnyConfigSchema } from '@xyo-network/module-model'\nimport { Payload, Schema } from '@xyo-network/payload-model'\nimport { WitnessParams } from '@xyo-network/witness-model'\n\nimport { CoingeckoCryptoMarketWitnessConfig } from './Config.js'\nimport { pricesFromCoingecko } from './lib/index.js'\nimport { CoingeckoCryptoMarketWitnessConfigSchema } from './Schema.js'\n\nexport type CoingeckoCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<CoingeckoCryptoMarketWitnessConfig>>\n\nexport class CoingeckoCryptoMarketWitness<\n TParams extends CoingeckoCryptoMarketWitnessParams = CoingeckoCryptoMarketWitnessParams,\n> extends AbstractWitness<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, CoingeckoCryptoMarketWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = 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","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;;;ACEO,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,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,qBAAqB,GAAG;AAChE,WAAO,wBAAwB,GAAG,CAAC,IAAI;AAAA,EACzC;AACA,SAAO;AACT;;;AClBA,IAAAA,iDAA4C;AAC5C,2BAAiC;AACjC,+BAA8C;;;ACF9C,8BAAgC;AAChC,oDAA0E;;;ACAnE,IAAM,2CAAqF;;;ADW3F,IAAM,+BAAN,cAEG,wCAAyB;AAAA,EACjC,OAAyB,gBAA0B,CAAC,GAAG,MAAM,eAAe,wCAAwC;AAAA,EACpH,OAAyB,sBAA8B;AAAA,EAEvD,MAAyB,iBAAqC;AAlBhE;AAmBI,UAAM,SAAiD,MAAM,sBAAoB,UAAK,WAAL,mBAAa,UAAS,CAAC,KAAG,UAAK,WAAL,mBAAa,eAAc,CAAC,CAAC;AACxI,UAAM,UAAwC;AAAA,MAC5C;AAAA,MACA,QAAQ;AAAA,MACR,WAAW,KAAK,IAAI;AAAA,IACtB;AAEA,WAAO,CAAC,OAAO;AAAA,EACjB;AACF;;;ADtBO,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;","names":["import_coingecko_crypto_market_payload_plugin"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/lib/coinGeckoCoinToAssetMap.ts","../../src/lib/defaults.ts","../../src/lib/pricesFromCoingecko.ts","../../src/Plugin.ts","../../src/Witness.ts","../../src/Schema.ts"],"sourcesContent":["export * from './Config.ts'\nexport * from './lib/index.ts'\n// eslint-disable-next-line import/no-default-export\nexport { CoingeckoCryptoMarketPlugin, CoingeckoCryptoMarketPlugin as default } from './Plugin.ts'\nexport * from './Schema.ts'\nexport * from './Witness.ts'\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 '@xylabs/axios'\nimport { AssetSymbol, CryptoAsset, CryptoAssetPrices } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nimport { coingeckoCoinToAssetMap } from './coinGeckoCoinToAssetMap.ts'\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 for (const [key, value] of Object.entries(coinGeckoSimplePrices)) {\n assets[coingeckoCoinToAssetMap[key]] = value\n }\n return assets\n}\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.ts'\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 { AbstractWitness } from '@xyo-network/abstract-witness'\nimport { CoingeckoCryptoMarketPayload, CoingeckoCryptoMarketSchema } from '@xyo-network/coingecko-crypto-market-payload-plugin'\nimport { AnyConfigSchema } from '@xyo-network/module-model'\nimport { Payload, Schema } from '@xyo-network/payload-model'\nimport { WitnessParams } from '@xyo-network/witness-model'\n\nimport { CoingeckoCryptoMarketWitnessConfig } from './Config.ts'\nimport { pricesFromCoingecko } from './lib/index.ts'\nimport { CoingeckoCryptoMarketWitnessConfigSchema } from './Schema.ts'\n\nexport type CoingeckoCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<CoingeckoCryptoMarketWitnessConfig>>\n\nexport class CoingeckoCryptoMarketWitness<\n TParams extends CoingeckoCryptoMarketWitnessParams = CoingeckoCryptoMarketWitnessParams,\n> extends AbstractWitness<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, CoingeckoCryptoMarketWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = 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","export type CoingeckoCryptoMarketWitnessConfigSchema = 'network.xyo.crypto.market.coingecko.witness.config'\nexport const CoingeckoCryptoMarketWitnessConfigSchema: CoingeckoCryptoMarketWitnessConfigSchema = 'network.xyo.crypto.market.coingecko.witness.config'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;ACEO,IAAMA,0BAAuD;EAClE,eAAe;EACf,WAAW;EACX,OAAO;EACP,WAAW;EACX,YAAY;EACZ,YAAY;EACZ,YAAY;EACZ,UAAU;EACV,UAAU;EACV,YAAY;EACZ,mBAAmB;EACnB,OAAO;EACP,eAAe;AACjB;;;ACdO,IAAMC,eAA8B;EACzC;IAAEC,MAAM;EAAU;EAClB;IAAEA,MAAM;EAAc;EACtB;IAAEA,MAAM;EAAM;EACd;IAAEA,MAAM;EAAU;EAClB;IAAEA,MAAM;EAAW;EACnB;IAAEA,MAAM;EAAW;EACnB;IAAEA,MAAM;EAAW;EACnB;IAAEA,MAAM;EAAS;EACjB;IAAEA,MAAM;EAAS;EACjB;IAAEA,MAAM;EAAW;EACnB;IAAEA,MAAM;EAAkB;EAC1B;IAAEA,MAAM;EAAM;EACd;IAAEA,MAAM;EAAc;;AAGjB,IAAMC,oBAAmC;EAAC;IAAEC,QAAQ;EAAM;EAAG;IAAEA,QAAQ;EAAM;EAAG;IAAEA,QAAQ;EAAM;EAAG;IAAEA,QAAQ;EAAM;;;;AClB1H,mBAAsB;AAQf,IAAMC,sBAAsB,8BAAOC,OAAsBC,eAAAA;AAC9D,QAAMC,MAAM,qDAAqDF,MAAMG,IAAI,CAAC,EAAEC,KAAI,MAAOA,IAAAA,EAAMC,KAAK,GAAA,CAAA,kBAAsBJ,WACvHE,IAAI,CAAC,EAAEG,OAAM,MAAOA,MAAAA,EACpBD,KAAK,GAAA,CAAA;AACR,QAAME,yBAAyB,MAAMC,mBAAMC,IAA2BP,GAAAA,GAAMQ;AAC5E,QAAMC,SAA4B,CAAC;AACnC,aAAW,CAACC,KAAKC,KAAAA,KAAUC,OAAOC,QAAQR,qBAAAA,GAAwB;AAChEI,WAAOK,wBAAwBJ,GAAAA,CAAI,IAAIC;EACzC;AACA,SAAOF;AACT,GAVmC;;;ACRnC,IAAAM,iDAA4C;AAC5C,2BAAiC;AACjC,+BAA8C;;;ACF9C,8BAAgC;AAChC,oDAA0E;;;ACAnE,IAAMC,2CAAqF;;;ADW3F,IAAMC,gCAAN,MAAMA,sCAEHC,wCAAAA;EAIR,MAAyBC,iBAAqC;AAlBhE;AAmBI,UAAMC,SAAiD,MAAMC,sBAAoB,UAAKC,WAAL,mBAAaC,UAAS,CAAA,KAAI,UAAKD,WAAL,mBAAaE,eAAc,CAAA,CAAE;AACxI,UAAMC,UAAwC;MAC5CL;MACAM,QAAQC;MACRC,WAAWC,KAAKC,IAAG;IACrB;AAEA,WAAO;MAACL;;EACV;AACF;AAdUP;AACR,cAHWD,+BAGcc,iBAA0B;KAAI,yEAAMA;EAAeC;;AAC5E,cAJWf,+BAIcgB,uBAA8BD;AAJlD,IAAMf,+BAAN;;;ADNA,IAAMiB,8BAA8B,iCACzCC,wDACE;EAAEC,UAAU;IAAE,CAACC,0EAAAA,GAA8B;EAAE;EAAGC,QAAQC;AAAiB,GAC3E;EACEC,SAAS,8BAAOC,WAAAA;AACd,UAAMC,SAAS,MAAMC,6BAA6BC,OAAOH,MAAAA;AACzD,WAAOC;EACT,GAHS;AAIX,CAAA,GARuC;","names":["coingeckoCoinToAssetMap","defaultCoins","name","defaultCurrencies","symbol","pricesFromCoingecko","coins","currencies","url","map","name","join","symbol","coinGeckoSimplePrices","axios","get","data","assets","key","value","Object","entries","coingeckoCoinToAssetMap","import_coingecko_crypto_market_payload_plugin","CoingeckoCryptoMarketWitnessConfigSchema","CoingeckoCryptoMarketWitness","AbstractWitness","observeHandler","assets","pricesFromCoingecko","config","coins","currencies","payload","schema","CoingeckoCryptoMarketSchema","timestamp","Date","now","configSchemas","CoingeckoCryptoMarketWitnessConfigSchema","defaultConfigSchema","CoingeckoCryptoMarketPlugin","createPayloadSetWitnessPlugin","required","CoingeckoCryptoMarketSchema","schema","PayloadSetSchema","witness","params","result","CoingeckoCryptoMarketWitness","create"]}
@@ -1,6 +1,6 @@
1
- export * from './Config.js';
2
- export * from './lib/index.js';
3
- export { CoingeckoCryptoMarketPlugin, CoingeckoCryptoMarketPlugin as default } from './Plugin.js';
4
- export * from './Schema.js';
5
- export * from './Witness.js';
1
+ export * from './Config.ts';
2
+ export * from './lib/index.ts';
3
+ export { CoingeckoCryptoMarketPlugin, CoingeckoCryptoMarketPlugin as default } from './Plugin.ts';
4
+ export * from './Schema.ts';
5
+ export * from './Witness.ts';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1,6 +1,6 @@
1
- export * from './Config.js';
2
- export * from './lib/index.js';
3
- export { CoingeckoCryptoMarketPlugin, CoingeckoCryptoMarketPlugin as default } from './Plugin.js';
4
- export * from './Schema.js';
5
- export * from './Witness.js';
1
+ export * from './Config.ts';
2
+ export * from './lib/index.ts';
3
+ export { CoingeckoCryptoMarketPlugin, CoingeckoCryptoMarketPlugin as default } from './Plugin.ts';
4
+ export * from './Schema.ts';
5
+ export * from './Witness.ts';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1,6 +1,6 @@
1
- export * from './Config.js';
2
- export * from './lib/index.js';
3
- export { CoingeckoCryptoMarketPlugin, CoingeckoCryptoMarketPlugin as default } from './Plugin.js';
4
- export * from './Schema.js';
5
- export * from './Witness.js';
1
+ export * from './Config.ts';
2
+ export * from './lib/index.ts';
3
+ export { CoingeckoCryptoMarketPlugin, CoingeckoCryptoMarketPlugin as default } from './Plugin.ts';
4
+ export * from './Schema.ts';
5
+ export * from './Witness.ts';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,152 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getProtoOf = Object.getPrototypeOf;
3
+ var __reflectGet = Reflect.get;
4
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
7
+ var __superGet = (cls, obj, key) => __reflectGet(__getProtoOf(cls), key, obj);
8
+
9
+ // src/lib/coinGeckoCoinToAssetMap.ts
10
+ var coingeckoCoinToAssetMap = {
11
+ "binance-usd": "busd",
12
+ "bitcoin": "btc",
13
+ "bnb": "bnb",
14
+ "cardano": "ada",
15
+ "dogecoin": "doge",
16
+ "ethereum": "eth",
17
+ "polkadot": "dot",
18
+ "solana": "sol",
19
+ "tether": "usdt",
20
+ "usd-coin": "usdc",
21
+ "wrapped-bitcoin": "wbtc",
22
+ "xrp": "xrp",
23
+ "xyo-network": "xyo"
24
+ };
25
+
26
+ // src/lib/defaults.ts
27
+ var defaultCoins = [
28
+ {
29
+ name: "bitcoin"
30
+ },
31
+ {
32
+ name: "binance-usd"
33
+ },
34
+ {
35
+ name: "bnb"
36
+ },
37
+ {
38
+ name: "cardano"
39
+ },
40
+ {
41
+ name: "dogecoin"
42
+ },
43
+ {
44
+ name: "ethereum"
45
+ },
46
+ {
47
+ name: "polkadot"
48
+ },
49
+ {
50
+ name: "solana"
51
+ },
52
+ {
53
+ name: "tether"
54
+ },
55
+ {
56
+ name: "usd-coin"
57
+ },
58
+ {
59
+ name: "wrapped-bitcoin"
60
+ },
61
+ {
62
+ name: "xrp"
63
+ },
64
+ {
65
+ name: "xyo-network"
66
+ }
67
+ ];
68
+ var defaultCurrencies = [
69
+ {
70
+ symbol: "usd"
71
+ },
72
+ {
73
+ symbol: "eur"
74
+ },
75
+ {
76
+ symbol: "btc"
77
+ },
78
+ {
79
+ symbol: "eth"
80
+ }
81
+ ];
82
+
83
+ // src/lib/pricesFromCoingecko.ts
84
+ import { axios } from "@xylabs/axios";
85
+ var pricesFromCoingecko = /* @__PURE__ */ __name(async (coins, currencies) => {
86
+ const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(",")}&vs_currencies=${currencies.map(({ symbol }) => symbol).join(",")}`;
87
+ const coinGeckoSimplePrices = (await axios.get(url)).data;
88
+ const assets = {};
89
+ for (const [key, value] of Object.entries(coinGeckoSimplePrices)) {
90
+ assets[coingeckoCoinToAssetMap[key]] = value;
91
+ }
92
+ return assets;
93
+ }, "pricesFromCoingecko");
94
+
95
+ // src/Plugin.ts
96
+ import { CoingeckoCryptoMarketSchema as CoingeckoCryptoMarketSchema2 } from "@xyo-network/coingecko-crypto-market-payload-plugin";
97
+ import { PayloadSetSchema } from "@xyo-network/payload-model";
98
+ import { createPayloadSetWitnessPlugin } from "@xyo-network/payloadset-plugin";
99
+
100
+ // src/Witness.ts
101
+ import { AbstractWitness } from "@xyo-network/abstract-witness";
102
+ import { CoingeckoCryptoMarketSchema } from "@xyo-network/coingecko-crypto-market-payload-plugin";
103
+
104
+ // src/Schema.ts
105
+ var CoingeckoCryptoMarketWitnessConfigSchema = "network.xyo.crypto.market.coingecko.witness.config";
106
+
107
+ // src/Witness.ts
108
+ var _CoingeckoCryptoMarketWitness = class _CoingeckoCryptoMarketWitness extends AbstractWitness {
109
+ async observeHandler() {
110
+ var _a, _b;
111
+ const assets = await pricesFromCoingecko(((_a = this.config) == null ? void 0 : _a.coins) ?? [], ((_b = this.config) == null ? void 0 : _b.currencies) ?? []);
112
+ const payload = {
113
+ assets,
114
+ schema: CoingeckoCryptoMarketSchema,
115
+ timestamp: Date.now()
116
+ };
117
+ return [
118
+ payload
119
+ ];
120
+ }
121
+ };
122
+ __name(_CoingeckoCryptoMarketWitness, "CoingeckoCryptoMarketWitness");
123
+ __publicField(_CoingeckoCryptoMarketWitness, "configSchemas", [
124
+ ...__superGet(_CoingeckoCryptoMarketWitness, _CoingeckoCryptoMarketWitness, "configSchemas"),
125
+ CoingeckoCryptoMarketWitnessConfigSchema
126
+ ]);
127
+ __publicField(_CoingeckoCryptoMarketWitness, "defaultConfigSchema", CoingeckoCryptoMarketWitnessConfigSchema);
128
+ var CoingeckoCryptoMarketWitness = _CoingeckoCryptoMarketWitness;
129
+
130
+ // src/Plugin.ts
131
+ var CoingeckoCryptoMarketPlugin = /* @__PURE__ */ __name(() => createPayloadSetWitnessPlugin({
132
+ required: {
133
+ [CoingeckoCryptoMarketSchema2]: 1
134
+ },
135
+ schema: PayloadSetSchema
136
+ }, {
137
+ witness: /* @__PURE__ */ __name(async (params) => {
138
+ const result = await CoingeckoCryptoMarketWitness.create(params);
139
+ return result;
140
+ }, "witness")
141
+ }), "CoingeckoCryptoMarketPlugin");
142
+ export {
143
+ CoingeckoCryptoMarketPlugin,
144
+ CoingeckoCryptoMarketWitness,
145
+ CoingeckoCryptoMarketWitnessConfigSchema,
146
+ coingeckoCoinToAssetMap,
147
+ CoingeckoCryptoMarketPlugin as default,
148
+ defaultCoins,
149
+ defaultCurrencies,
150
+ pricesFromCoingecko
151
+ };
152
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/coinGeckoCoinToAssetMap.ts","../../src/lib/defaults.ts","../../src/lib/pricesFromCoingecko.ts","../../src/Plugin.ts","../../src/Witness.ts","../../src/Schema.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 '@xylabs/axios'\nimport { AssetSymbol, CryptoAsset, CryptoAssetPrices } from '@xyo-network/coingecko-crypto-market-payload-plugin'\n\nimport { coingeckoCoinToAssetMap } from './coinGeckoCoinToAssetMap.ts'\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 for (const [key, value] of Object.entries(coinGeckoSimplePrices)) {\n assets[coingeckoCoinToAssetMap[key]] = value\n }\n return assets\n}\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.ts'\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 { AbstractWitness } from '@xyo-network/abstract-witness'\nimport { CoingeckoCryptoMarketPayload, CoingeckoCryptoMarketSchema } from '@xyo-network/coingecko-crypto-market-payload-plugin'\nimport { AnyConfigSchema } from '@xyo-network/module-model'\nimport { Payload, Schema } from '@xyo-network/payload-model'\nimport { WitnessParams } from '@xyo-network/witness-model'\n\nimport { CoingeckoCryptoMarketWitnessConfig } from './Config.ts'\nimport { pricesFromCoingecko } from './lib/index.ts'\nimport { CoingeckoCryptoMarketWitnessConfigSchema } from './Schema.ts'\n\nexport type CoingeckoCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<CoingeckoCryptoMarketWitnessConfig>>\n\nexport class CoingeckoCryptoMarketWitness<\n TParams extends CoingeckoCryptoMarketWitnessParams = CoingeckoCryptoMarketWitnessParams,\n> extends AbstractWitness<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, CoingeckoCryptoMarketWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = 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","export type CoingeckoCryptoMarketWitnessConfigSchema = 'network.xyo.crypto.market.coingecko.witness.config'\nexport const CoingeckoCryptoMarketWitnessConfigSchema: CoingeckoCryptoMarketWitnessConfigSchema = 'network.xyo.crypto.market.coingecko.witness.config'\n"],"mappings":";;;;;;;;;AAEO,IAAMA,0BAAuD;EAClE,eAAe;EACf,WAAW;EACX,OAAO;EACP,WAAW;EACX,YAAY;EACZ,YAAY;EACZ,YAAY;EACZ,UAAU;EACV,UAAU;EACV,YAAY;EACZ,mBAAmB;EACnB,OAAO;EACP,eAAe;AACjB;;;ACdO,IAAMC,eAA8B;EACzC;IAAEC,MAAM;EAAU;EAClB;IAAEA,MAAM;EAAc;EACtB;IAAEA,MAAM;EAAM;EACd;IAAEA,MAAM;EAAU;EAClB;IAAEA,MAAM;EAAW;EACnB;IAAEA,MAAM;EAAW;EACnB;IAAEA,MAAM;EAAW;EACnB;IAAEA,MAAM;EAAS;EACjB;IAAEA,MAAM;EAAS;EACjB;IAAEA,MAAM;EAAW;EACnB;IAAEA,MAAM;EAAkB;EAC1B;IAAEA,MAAM;EAAM;EACd;IAAEA,MAAM;EAAc;;AAGjB,IAAMC,oBAAmC;EAAC;IAAEC,QAAQ;EAAM;EAAG;IAAEA,QAAQ;EAAM;EAAG;IAAEA,QAAQ;EAAM;EAAG;IAAEA,QAAQ;EAAM;;;;AClB1H,SAASC,aAAa;AAQf,IAAMC,sBAAsB,8BAAOC,OAAsBC,eAAAA;AAC9D,QAAMC,MAAM,qDAAqDF,MAAMG,IAAI,CAAC,EAAEC,KAAI,MAAOA,IAAAA,EAAMC,KAAK,GAAA,CAAA,kBAAsBJ,WACvHE,IAAI,CAAC,EAAEG,OAAM,MAAOA,MAAAA,EACpBD,KAAK,GAAA,CAAA;AACR,QAAME,yBAAyB,MAAMC,MAAMC,IAA2BP,GAAAA,GAAMQ;AAC5E,QAAMC,SAA4B,CAAC;AACnC,aAAW,CAACC,KAAKC,KAAAA,KAAUC,OAAOC,QAAQR,qBAAAA,GAAwB;AAChEI,WAAOK,wBAAwBJ,GAAAA,CAAI,IAAIC;EACzC;AACA,SAAOF;AACT,GAVmC;;;ACRnC,SAASM,+BAAAA,oCAAmC;AAC5C,SAASC,wBAAwB;AACjC,SAASC,qCAAqC;;;ACF9C,SAASC,uBAAuB;AAChC,SAAuCC,mCAAmC;;;ACAnE,IAAMC,2CAAqF;;;ADW3F,IAAMC,gCAAN,MAAMA,sCAEHC,gBAAAA;EAIR,MAAyBC,iBAAqC;AAlBhE;AAmBI,UAAMC,SAAiD,MAAMC,sBAAoB,UAAKC,WAAL,mBAAaC,UAAS,CAAA,KAAI,UAAKD,WAAL,mBAAaE,eAAc,CAAA,CAAE;AACxI,UAAMC,UAAwC;MAC5CL;MACAM,QAAQC;MACRC,WAAWC,KAAKC,IAAG;IACrB;AAEA,WAAO;MAACL;;EACV;AACF;AAdUP;AACR,cAHWD,+BAGcc,iBAA0B;KAAI,yEAAMA;EAAeC;;AAC5E,cAJWf,+BAIcgB,uBAA8BD;AAJlD,IAAMf,+BAAN;;;ADNA,IAAMiB,8BAA8B,6BACzCC,8BACE;EAAEC,UAAU;IAAE,CAACC,4BAAAA,GAA8B;EAAE;EAAGC,QAAQC;AAAiB,GAC3E;EACEC,SAAS,8BAAOC,WAAAA;AACd,UAAMC,SAAS,MAAMC,6BAA6BC,OAAOH,MAAAA;AACzD,WAAOC;EACT,GAHS;AAIX,CAAA,GARuC;","names":["coingeckoCoinToAssetMap","defaultCoins","name","defaultCurrencies","symbol","axios","pricesFromCoingecko","coins","currencies","url","map","name","join","symbol","coinGeckoSimplePrices","axios","get","data","assets","key","value","Object","entries","coingeckoCoinToAssetMap","CoingeckoCryptoMarketSchema","PayloadSetSchema","createPayloadSetWitnessPlugin","AbstractWitness","CoingeckoCryptoMarketSchema","CoingeckoCryptoMarketWitnessConfigSchema","CoingeckoCryptoMarketWitness","AbstractWitness","observeHandler","assets","pricesFromCoingecko","config","coins","currencies","payload","schema","CoingeckoCryptoMarketSchema","timestamp","Date","now","configSchemas","CoingeckoCryptoMarketWitnessConfigSchema","defaultConfigSchema","CoingeckoCryptoMarketPlugin","createPayloadSetWitnessPlugin","required","CoingeckoCryptoMarketSchema","schema","PayloadSetSchema","witness","params","result","CoingeckoCryptoMarketWitness","create"]}
@@ -1,4 +1,4 @@
1
- export * from './coinGeckoCoinToAssetMap.js';
2
- export * from './defaults.js';
3
- export * from './pricesFromCoingecko.js';
1
+ export * from './coinGeckoCoinToAssetMap.ts';
2
+ export * from './defaults.ts';
3
+ export * from './pricesFromCoingecko.ts';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,4 @@
1
- export * from './coinGeckoCoinToAssetMap.js';
2
- export * from './defaults.js';
3
- export * from './pricesFromCoingecko.js';
1
+ export * from './coinGeckoCoinToAssetMap.ts';
2
+ export * from './defaults.ts';
3
+ export * from './pricesFromCoingecko.ts';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,4 @@
1
- export * from './coinGeckoCoinToAssetMap.js';
2
- export * from './defaults.js';
3
- export * from './pricesFromCoingecko.js';
1
+ export * from './coinGeckoCoinToAssetMap.ts';
2
+ export * from './defaults.ts';
3
+ export * from './pricesFromCoingecko.ts';
4
4
  //# sourceMappingURL=index.d.ts.map
package/package.json CHANGED
@@ -10,19 +10,19 @@
10
10
  "url": "https://github.com/XYOracleNetwork/plugins/issues"
11
11
  },
12
12
  "dependencies": {
13
- "@xylabs/axios": "^3.6.1",
14
- "@xyo-network/abstract-witness": "^2.110.6",
15
- "@xyo-network/coingecko-crypto-market-payload-plugin": "^2.99.4",
16
- "@xyo-network/module-model": "^2.110.6",
17
- "@xyo-network/payload-model": "^2.110.6",
18
- "@xyo-network/payloadset-plugin": "^2.110.6",
19
- "@xyo-network/witness-model": "^2.110.6"
13
+ "@xylabs/axios": "^3.6.8",
14
+ "@xyo-network/abstract-witness": "^2.111.2",
15
+ "@xyo-network/coingecko-crypto-market-payload-plugin": "^2.99.5",
16
+ "@xyo-network/module-model": "^2.111.2",
17
+ "@xyo-network/payload-model": "^2.111.2",
18
+ "@xyo-network/payloadset-plugin": "^2.111.2",
19
+ "@xyo-network/witness-model": "^2.111.2"
20
20
  },
21
21
  "devDependencies": {
22
- "@xylabs/ts-scripts-yarn3": "^3.12.2",
23
- "@xylabs/tsconfig": "^3.12.2",
24
- "@xyo-network/payload-wrapper": "^2.110.6",
25
- "typescript": "^5.5.3"
22
+ "@xylabs/ts-scripts-yarn3": "^3.15.13",
23
+ "@xylabs/tsconfig": "^3.15.13",
24
+ "@xyo-network/payload-wrapper": "^2.111.2",
25
+ "typescript": "^5.5.4"
26
26
  },
27
27
  "description": "Typescript/Javascript Plugins for XYO Platform",
28
28
  "types": "dist/node/index.d.ts",
@@ -35,7 +35,7 @@
35
35
  },
36
36
  "import": {
37
37
  "types": "./dist/browser/index.d.mts",
38
- "default": "./dist/browser/index.js"
38
+ "default": "./dist/browser/index.mjs"
39
39
  }
40
40
  },
41
41
  "node": {
@@ -45,14 +45,14 @@
45
45
  },
46
46
  "import": {
47
47
  "types": "./dist/node/index.d.mts",
48
- "default": "./dist/node/index.js"
48
+ "default": "./dist/node/index.mjs"
49
49
  }
50
50
  }
51
51
  },
52
52
  "./package.json": "./package.json"
53
53
  },
54
54
  "main": "dist/node/index.cjs",
55
- "module": "dist/node/index.js",
55
+ "module": "dist/node/index.mjs",
56
56
  "homepage": "https://xyo.network",
57
57
  "license": "LGPL-3.0-only",
58
58
  "publishConfig": {
@@ -63,6 +63,6 @@
63
63
  "url": "https://github.com/XYOracleNetwork/plugins.git"
64
64
  },
65
65
  "sideEffects": false,
66
- "version": "2.99.4",
66
+ "version": "2.99.5",
67
67
  "type": "module"
68
68
  }
package/src/Config.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { CryptoAsset } from '@xyo-network/coingecko-crypto-market-payload-plugin'
2
2
  import { WitnessConfig } from '@xyo-network/witness-model'
3
3
 
4
- import { CoingeckoCryptoMarketWitnessConfigSchema } from './Schema.js'
4
+ import { CoingeckoCryptoMarketWitnessConfigSchema } from './Schema.ts'
5
5
 
6
6
  export type CoingeckoCryptoMarketWitnessConfig = WitnessConfig<{
7
7
  coins?: CryptoAsset[]
package/src/Plugin.ts CHANGED
@@ -2,7 +2,7 @@ import { CoingeckoCryptoMarketSchema } from '@xyo-network/coingecko-crypto-marke
2
2
  import { PayloadSetSchema } from '@xyo-network/payload-model'
3
3
  import { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'
4
4
 
5
- import { CoingeckoCryptoMarketWitness } from './Witness.js'
5
+ import { CoingeckoCryptoMarketWitness } from './Witness.ts'
6
6
 
7
7
  export const CoingeckoCryptoMarketPlugin = () =>
8
8
  createPayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness>(
package/src/Witness.ts CHANGED
@@ -4,9 +4,9 @@ import { AnyConfigSchema } from '@xyo-network/module-model'
4
4
  import { Payload, Schema } from '@xyo-network/payload-model'
5
5
  import { WitnessParams } from '@xyo-network/witness-model'
6
6
 
7
- import { CoingeckoCryptoMarketWitnessConfig } from './Config.js'
8
- import { pricesFromCoingecko } from './lib/index.js'
9
- import { CoingeckoCryptoMarketWitnessConfigSchema } from './Schema.js'
7
+ import { CoingeckoCryptoMarketWitnessConfig } from './Config.ts'
8
+ import { pricesFromCoingecko } from './lib/index.ts'
9
+ import { CoingeckoCryptoMarketWitnessConfigSchema } from './Schema.ts'
10
10
 
11
11
  export type CoingeckoCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<CoingeckoCryptoMarketWitnessConfig>>
12
12
 
package/src/index.ts CHANGED
@@ -1,6 +1,6 @@
1
- export * from './Config.js'
2
- export * from './lib/index.js'
1
+ export * from './Config.ts'
2
+ export * from './lib/index.ts'
3
3
  // eslint-disable-next-line import/no-default-export
4
- export { CoingeckoCryptoMarketPlugin, CoingeckoCryptoMarketPlugin as default } from './Plugin.js'
5
- export * from './Schema.js'
6
- export * from './Witness.js'
4
+ export { CoingeckoCryptoMarketPlugin, CoingeckoCryptoMarketPlugin as default } from './Plugin.ts'
5
+ export * from './Schema.ts'
6
+ export * from './Witness.ts'
@@ -2,16 +2,16 @@ import { AssetSymbol } from '@xyo-network/coingecko-crypto-market-payload-plugin
2
2
 
3
3
  export const coingeckoCoinToAssetMap: Record<string, AssetSymbol> = {
4
4
  'binance-usd': 'busd',
5
- bitcoin: 'btc',
6
- bnb: 'bnb',
7
- cardano: 'ada',
8
- dogecoin: 'doge',
9
- ethereum: 'eth',
10
- polkadot: 'dot',
11
- solana: 'sol',
12
- tether: 'usdt',
5
+ 'bitcoin': 'btc',
6
+ 'bnb': 'bnb',
7
+ 'cardano': 'ada',
8
+ 'dogecoin': 'doge',
9
+ 'ethereum': 'eth',
10
+ 'polkadot': 'dot',
11
+ 'solana': 'sol',
12
+ 'tether': 'usdt',
13
13
  'usd-coin': 'usdc',
14
14
  'wrapped-bitcoin': 'wbtc',
15
- xrp: 'xrp',
15
+ 'xrp': 'xrp',
16
16
  'xyo-network': 'xyo',
17
17
  }
package/src/lib/index.ts CHANGED
@@ -1,3 +1,3 @@
1
- export * from './coinGeckoCoinToAssetMap.js'
2
- export * from './defaults.js'
3
- export * from './pricesFromCoingecko.js'
1
+ export * from './coinGeckoCoinToAssetMap.ts'
2
+ export * from './defaults.ts'
3
+ export * from './pricesFromCoingecko.ts'
@@ -1,7 +1,7 @@
1
1
  import { axios } from '@xylabs/axios'
2
2
  import { AssetSymbol, CryptoAsset, CryptoAssetPrices } from '@xyo-network/coingecko-crypto-market-payload-plugin'
3
3
 
4
- import { coingeckoCoinToAssetMap } from './coinGeckoCoinToAssetMap.js'
4
+ import { coingeckoCoinToAssetMap } from './coinGeckoCoinToAssetMap.ts'
5
5
 
6
6
  type CoinGeckoSimplePrice = Partial<Record<AssetSymbol, number>>
7
7
  type CoinGeckoSimplePrices = Record<string, CoinGeckoSimplePrice>