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

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.
@@ -1,8 +1,8 @@
1
1
  import { CoingeckoCryptoMarketWitness } from './Witness.ts';
2
- export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import("@xylabs/object").BaseParamsFields & {
3
- account?: import("@xyo-network/account-model").AccountInstance | "random";
2
+ export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import(".store/@xylabs-object-npm-3.6.12-443b813787/package").BaseParamsFields & {
3
+ account?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance | "random";
4
4
  addToResolvers?: boolean;
5
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
5
+ additionalSigners?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance[];
6
6
  allowNameResolution?: boolean;
7
7
  config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
8
  schema: "network.xyo.crypto.market.coingecko.witness.config";
@@ -1,8 +1,8 @@
1
1
  import { CoingeckoCryptoMarketWitness } from './Witness.ts';
2
- export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import("@xylabs/object").BaseParamsFields & {
3
- account?: import("@xyo-network/account-model").AccountInstance | "random";
2
+ export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import(".store/@xylabs-object-npm-3.6.12-443b813787/package").BaseParamsFields & {
3
+ account?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance | "random";
4
4
  addToResolvers?: boolean;
5
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
5
+ additionalSigners?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance[];
6
6
  allowNameResolution?: boolean;
7
7
  config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
8
  schema: "network.xyo.crypto.market.coingecko.witness.config";
@@ -1,8 +1,8 @@
1
1
  import { CoingeckoCryptoMarketWitness } from './Witness.ts';
2
- export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import("@xylabs/object").BaseParamsFields & {
3
- account?: import("@xyo-network/account-model").AccountInstance | "random";
2
+ export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import(".store/@xylabs-object-npm-3.6.12-443b813787/package").BaseParamsFields & {
3
+ account?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance | "random";
4
4
  addToResolvers?: boolean;
5
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
5
+ additionalSigners?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance[];
6
6
  allowNameResolution?: boolean;
7
7
  config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
8
  schema: "network.xyo.crypto.market.coingecko.witness.config";
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
6
  var __export = (target, all) => {
8
7
  for (var name in all)
9
8
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -51,64 +50,25 @@ var coingeckoCoinToAssetMap = {
51
50
 
52
51
  // src/lib/defaults.ts
53
52
  var defaultCoins = [
54
- {
55
- name: "bitcoin"
56
- },
57
- {
58
- name: "binance-usd"
59
- },
60
- {
61
- name: "bnb"
62
- },
63
- {
64
- name: "cardano"
65
- },
66
- {
67
- name: "dogecoin"
68
- },
69
- {
70
- name: "ethereum"
71
- },
72
- {
73
- name: "polkadot"
74
- },
75
- {
76
- name: "solana"
77
- },
78
- {
79
- name: "tether"
80
- },
81
- {
82
- name: "usd-coin"
83
- },
84
- {
85
- name: "wrapped-bitcoin"
86
- },
87
- {
88
- name: "xrp"
89
- },
90
- {
91
- name: "xyo-network"
92
- }
93
- ];
94
- var defaultCurrencies = [
95
- {
96
- symbol: "usd"
97
- },
98
- {
99
- symbol: "eur"
100
- },
101
- {
102
- symbol: "btc"
103
- },
104
- {
105
- symbol: "eth"
106
- }
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" }
107
66
  ];
67
+ var defaultCurrencies = [{ symbol: "usd" }, { symbol: "eur" }, { symbol: "btc" }, { symbol: "eth" }];
108
68
 
109
69
  // src/lib/pricesFromCoingecko.ts
110
70
  var import_axios = require("@xylabs/axios");
111
- var pricesFromCoingecko = /* @__PURE__ */ __name(async (coins, currencies) => {
71
+ var pricesFromCoingecko = async (coins, currencies) => {
112
72
  const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(",")}&vs_currencies=${currencies.map(({ symbol }) => symbol).join(",")}`;
113
73
  const coinGeckoSimplePrices = (await import_axios.axios.get(url)).data;
114
74
  const assets = {};
@@ -116,7 +76,7 @@ var pricesFromCoingecko = /* @__PURE__ */ __name(async (coins, currencies) => {
116
76
  assets[coingeckoCoinToAssetMap[key]] = value;
117
77
  }
118
78
  return assets;
119
- }, "pricesFromCoingecko");
79
+ };
120
80
 
121
81
  // src/Plugin.ts
122
82
  var import_coingecko_crypto_market_payload_plugin2 = require("@xyo-network/coingecko-crypto-market-payload-plugin");
@@ -132,13 +92,7 @@ var CoingeckoCryptoMarketWitnessConfigSchema = "network.xyo.crypto.market.coinge
132
92
 
133
93
  // src/Witness.ts
134
94
  var CoingeckoCryptoMarketWitness = class extends import_abstract_witness.AbstractWitness {
135
- static {
136
- __name(this, "CoingeckoCryptoMarketWitness");
137
- }
138
- static configSchemas = [
139
- ...super.configSchemas,
140
- CoingeckoCryptoMarketWitnessConfigSchema
141
- ];
95
+ static configSchemas = [...super.configSchemas, CoingeckoCryptoMarketWitnessConfigSchema];
142
96
  static defaultConfigSchema = CoingeckoCryptoMarketWitnessConfigSchema;
143
97
  async observeHandler() {
144
98
  const assets = await pricesFromCoingecko(this.config?.coins ?? [], this.config?.currencies ?? []);
@@ -147,22 +101,18 @@ var CoingeckoCryptoMarketWitness = class extends import_abstract_witness.Abstrac
147
101
  schema: import_coingecko_crypto_market_payload_plugin.CoingeckoCryptoMarketSchema,
148
102
  timestamp: Date.now()
149
103
  };
150
- return [
151
- payload
152
- ];
104
+ return [payload];
153
105
  }
154
106
  };
155
107
 
156
108
  // src/Plugin.ts
157
- var CoingeckoCryptoMarketPlugin = /* @__PURE__ */ __name(() => (0, import_payloadset_plugin.createPayloadSetWitnessPlugin)({
158
- required: {
159
- [import_coingecko_crypto_market_payload_plugin2.CoingeckoCryptoMarketSchema]: 1
160
- },
161
- schema: import_payload_model.PayloadSetSchema
162
- }, {
163
- witness: /* @__PURE__ */ __name(async (params) => {
164
- const result = await CoingeckoCryptoMarketWitness.create(params);
165
- return result;
166
- }, "witness")
167
- }), "CoingeckoCryptoMarketPlugin");
109
+ var CoingeckoCryptoMarketPlugin = () => (0, import_payloadset_plugin.createPayloadSetWitnessPlugin)(
110
+ { required: { [import_coingecko_crypto_market_payload_plugin2.CoingeckoCryptoMarketSchema]: 1 }, schema: import_payload_model.PayloadSetSchema },
111
+ {
112
+ witness: async (params) => {
113
+ const result = await CoingeckoCryptoMarketWitness.create(params);
114
+ return result;
115
+ }
116
+ }
117
+ );
168
118
  //# sourceMappingURL=index.cjs.map
@@ -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.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,+BAAN,cAEGC,wCAAAA;EAdV,OAcUA;;;EACR,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,MAAyBE,iBAAqC;AAC5D,UAAMC,SAAiD,MAAMC,oBAAoB,KAAKC,QAAQC,SAAS,CAAA,GAAI,KAAKD,QAAQE,cAAc,CAAA,CAAE;AACxI,UAAMC,UAAwC;MAC5CL;MACAM,QAAQC;MACRC,WAAWC,KAAKC,IAAG;IACrB;AAEA,WAAO;MAACL;;EACV;AACF;;;ADtBO,IAAMM,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","configSchemas","CoingeckoCryptoMarketWitnessConfigSchema","defaultConfigSchema","observeHandler","assets","pricesFromCoingecko","config","coins","currencies","payload","schema","CoingeckoCryptoMarketSchema","timestamp","Date","now","CoingeckoCryptoMarketPlugin","createPayloadSetWitnessPlugin","required","CoingeckoCryptoMarketSchema","schema","PayloadSetSchema","witness","params","result","CoingeckoCryptoMarketWitness","create"]}
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;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEO,IAAM,0BAAuD;AAAA,EAClE,eAAe;AAAA,EACf,WAAW;AAAA,EACX,OAAO;AAAA,EACP,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,UAAU;AAAA,EACV,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,mBAAmB;AAAA,EACnB,OAAO;AAAA,EACP,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;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;;;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,6 +1,3 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
-
4
1
  // src/lib/coinGeckoCoinToAssetMap.ts
5
2
  var coingeckoCoinToAssetMap = {
6
3
  "binance-usd": "busd",
@@ -20,64 +17,25 @@ var coingeckoCoinToAssetMap = {
20
17
 
21
18
  // src/lib/defaults.ts
22
19
  var defaultCoins = [
23
- {
24
- name: "bitcoin"
25
- },
26
- {
27
- name: "binance-usd"
28
- },
29
- {
30
- name: "bnb"
31
- },
32
- {
33
- name: "cardano"
34
- },
35
- {
36
- name: "dogecoin"
37
- },
38
- {
39
- name: "ethereum"
40
- },
41
- {
42
- name: "polkadot"
43
- },
44
- {
45
- name: "solana"
46
- },
47
- {
48
- name: "tether"
49
- },
50
- {
51
- name: "usd-coin"
52
- },
53
- {
54
- name: "wrapped-bitcoin"
55
- },
56
- {
57
- name: "xrp"
58
- },
59
- {
60
- name: "xyo-network"
61
- }
62
- ];
63
- var defaultCurrencies = [
64
- {
65
- symbol: "usd"
66
- },
67
- {
68
- symbol: "eur"
69
- },
70
- {
71
- symbol: "btc"
72
- },
73
- {
74
- symbol: "eth"
75
- }
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" }
76
33
  ];
34
+ var defaultCurrencies = [{ symbol: "usd" }, { symbol: "eur" }, { symbol: "btc" }, { symbol: "eth" }];
77
35
 
78
36
  // src/lib/pricesFromCoingecko.ts
79
37
  import { axios } from "@xylabs/axios";
80
- var pricesFromCoingecko = /* @__PURE__ */ __name(async (coins, currencies) => {
38
+ var pricesFromCoingecko = async (coins, currencies) => {
81
39
  const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(",")}&vs_currencies=${currencies.map(({ symbol }) => symbol).join(",")}`;
82
40
  const coinGeckoSimplePrices = (await axios.get(url)).data;
83
41
  const assets = {};
@@ -85,7 +43,7 @@ var pricesFromCoingecko = /* @__PURE__ */ __name(async (coins, currencies) => {
85
43
  assets[coingeckoCoinToAssetMap[key]] = value;
86
44
  }
87
45
  return assets;
88
- }, "pricesFromCoingecko");
46
+ };
89
47
 
90
48
  // src/Plugin.ts
91
49
  import { CoingeckoCryptoMarketSchema as CoingeckoCryptoMarketSchema2 } from "@xyo-network/coingecko-crypto-market-payload-plugin";
@@ -101,13 +59,7 @@ var CoingeckoCryptoMarketWitnessConfigSchema = "network.xyo.crypto.market.coinge
101
59
 
102
60
  // src/Witness.ts
103
61
  var CoingeckoCryptoMarketWitness = class extends AbstractWitness {
104
- static {
105
- __name(this, "CoingeckoCryptoMarketWitness");
106
- }
107
- static configSchemas = [
108
- ...super.configSchemas,
109
- CoingeckoCryptoMarketWitnessConfigSchema
110
- ];
62
+ static configSchemas = [...super.configSchemas, CoingeckoCryptoMarketWitnessConfigSchema];
111
63
  static defaultConfigSchema = CoingeckoCryptoMarketWitnessConfigSchema;
112
64
  async observeHandler() {
113
65
  const assets = await pricesFromCoingecko(this.config?.coins ?? [], this.config?.currencies ?? []);
@@ -116,24 +68,20 @@ var CoingeckoCryptoMarketWitness = class extends AbstractWitness {
116
68
  schema: CoingeckoCryptoMarketSchema,
117
69
  timestamp: Date.now()
118
70
  };
119
- return [
120
- payload
121
- ];
71
+ return [payload];
122
72
  }
123
73
  };
124
74
 
125
75
  // src/Plugin.ts
126
- var CoingeckoCryptoMarketPlugin = /* @__PURE__ */ __name(() => createPayloadSetWitnessPlugin({
127
- required: {
128
- [CoingeckoCryptoMarketSchema2]: 1
129
- },
130
- schema: PayloadSetSchema
131
- }, {
132
- witness: /* @__PURE__ */ __name(async (params) => {
133
- const result = await CoingeckoCryptoMarketWitness.create(params);
134
- return result;
135
- }, "witness")
136
- }), "CoingeckoCryptoMarketPlugin");
76
+ var CoingeckoCryptoMarketPlugin = () => createPayloadSetWitnessPlugin(
77
+ { required: { [CoingeckoCryptoMarketSchema2]: 1 }, schema: PayloadSetSchema },
78
+ {
79
+ witness: async (params) => {
80
+ const result = await CoingeckoCryptoMarketWitness.create(params);
81
+ return result;
82
+ }
83
+ }
84
+ );
137
85
  export {
138
86
  CoingeckoCryptoMarketPlugin,
139
87
  CoingeckoCryptoMarketWitness,
@@ -1 +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,+BAAN,cAEGC,gBAAAA;EAdV,OAcUA;;;EACR,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,MAAyBE,iBAAqC;AAC5D,UAAMC,SAAiD,MAAMC,oBAAoB,KAAKC,QAAQC,SAAS,CAAA,GAAI,KAAKD,QAAQE,cAAc,CAAA,CAAE;AACxI,UAAMC,UAAwC;MAC5CL;MACAM,QAAQC;MACRC,WAAWC,KAAKC,IAAG;IACrB;AAEA,WAAO;MAACL;;EACV;AACF;;;ADtBO,IAAMM,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","configSchemas","CoingeckoCryptoMarketWitnessConfigSchema","defaultConfigSchema","observeHandler","assets","pricesFromCoingecko","config","coins","currencies","payload","schema","CoingeckoCryptoMarketSchema","timestamp","Date","now","CoingeckoCryptoMarketPlugin","createPayloadSetWitnessPlugin","required","CoingeckoCryptoMarketSchema","schema","PayloadSetSchema","witness","params","result","CoingeckoCryptoMarketWitness","create"]}
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,IAAM,0BAAuD;AAAA,EAClE,eAAe;AAAA,EACf,WAAW;AAAA,EACX,OAAO;AAAA,EACP,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,UAAU;AAAA,EACV,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,mBAAmB;AAAA,EACnB,OAAO;AAAA,EACP,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,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,qBAAqB,GAAG;AAChE,WAAO,wBAAwB,GAAG,CAAC,IAAI;AAAA,EACzC;AACA,SAAO;AACT;;;AClBA,SAAS,+BAAAA,oCAAmC;AAC5C,SAAS,wBAAwB;AACjC,SAAS,qCAAqC;;;ACF9C,SAAS,uBAAuB;AAChC,SAAuC,mCAAmC;;;ACAnE,IAAM,2CAAqF;;;ADW3F,IAAM,+BAAN,cAEG,gBAAyB;AAAA,EACjC,OAAyB,gBAA0B,CAAC,GAAG,MAAM,eAAe,wCAAwC;AAAA,EACpH,OAAyB,sBAA8B;AAAA,EAEvD,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;;;ADtBO,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;","names":["CoingeckoCryptoMarketSchema","CoingeckoCryptoMarketSchema"]}
@@ -1,8 +1,8 @@
1
1
  import { CoingeckoCryptoMarketWitness } from './Witness.ts';
2
- export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import("@xylabs/object").BaseParamsFields & {
3
- account?: import("@xyo-network/account-model").AccountInstance | "random";
2
+ export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import(".store/@xylabs-object-npm-3.6.12-443b813787/package").BaseParamsFields & {
3
+ account?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance | "random";
4
4
  addToResolvers?: boolean;
5
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
5
+ additionalSigners?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance[];
6
6
  allowNameResolution?: boolean;
7
7
  config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
8
  schema: "network.xyo.crypto.market.coingecko.witness.config";
@@ -1,8 +1,8 @@
1
1
  import { CoingeckoCryptoMarketWitness } from './Witness.ts';
2
- export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import("@xylabs/object").BaseParamsFields & {
3
- account?: import("@xyo-network/account-model").AccountInstance | "random";
2
+ export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import(".store/@xylabs-object-npm-3.6.12-443b813787/package").BaseParamsFields & {
3
+ account?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance | "random";
4
4
  addToResolvers?: boolean;
5
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
5
+ additionalSigners?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance[];
6
6
  allowNameResolution?: boolean;
7
7
  config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
8
  schema: "network.xyo.crypto.market.coingecko.witness.config";
@@ -1,8 +1,8 @@
1
1
  import { CoingeckoCryptoMarketWitness } from './Witness.ts';
2
- export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import("@xylabs/object").BaseParamsFields & {
3
- account?: import("@xyo-network/account-model").AccountInstance | "random";
2
+ export declare const CoingeckoCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CoingeckoCryptoMarketWitness<import(".store/@xylabs-object-npm-3.6.12-443b813787/package").BaseParamsFields & {
3
+ account?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance | "random";
4
4
  addToResolvers?: boolean;
5
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
5
+ additionalSigners?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance[];
6
6
  allowNameResolution?: boolean;
7
7
  config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
8
  schema: "network.xyo.crypto.market.coingecko.witness.config";
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
6
  var __export = (target, all) => {
8
7
  for (var name in all)
9
8
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -51,64 +50,25 @@ var coingeckoCoinToAssetMap = {
51
50
 
52
51
  // src/lib/defaults.ts
53
52
  var defaultCoins = [
54
- {
55
- name: "bitcoin"
56
- },
57
- {
58
- name: "binance-usd"
59
- },
60
- {
61
- name: "bnb"
62
- },
63
- {
64
- name: "cardano"
65
- },
66
- {
67
- name: "dogecoin"
68
- },
69
- {
70
- name: "ethereum"
71
- },
72
- {
73
- name: "polkadot"
74
- },
75
- {
76
- name: "solana"
77
- },
78
- {
79
- name: "tether"
80
- },
81
- {
82
- name: "usd-coin"
83
- },
84
- {
85
- name: "wrapped-bitcoin"
86
- },
87
- {
88
- name: "xrp"
89
- },
90
- {
91
- name: "xyo-network"
92
- }
93
- ];
94
- var defaultCurrencies = [
95
- {
96
- symbol: "usd"
97
- },
98
- {
99
- symbol: "eur"
100
- },
101
- {
102
- symbol: "btc"
103
- },
104
- {
105
- symbol: "eth"
106
- }
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" }
107
66
  ];
67
+ var defaultCurrencies = [{ symbol: "usd" }, { symbol: "eur" }, { symbol: "btc" }, { symbol: "eth" }];
108
68
 
109
69
  // src/lib/pricesFromCoingecko.ts
110
70
  var import_axios = require("@xylabs/axios");
111
- var pricesFromCoingecko = /* @__PURE__ */ __name(async (coins, currencies) => {
71
+ var pricesFromCoingecko = async (coins, currencies) => {
112
72
  const url = `https://api.coingecko.com/api/v3/simple/price?ids=${coins.map(({ name }) => name).join(",")}&vs_currencies=${currencies.map(({ symbol }) => symbol).join(",")}`;
113
73
  const coinGeckoSimplePrices = (await import_axios.axios.get(url)).data;
114
74
  const assets = {};
@@ -116,7 +76,7 @@ var pricesFromCoingecko = /* @__PURE__ */ __name(async (coins, currencies) => {
116
76
  assets[coingeckoCoinToAssetMap[key]] = value;
117
77
  }
118
78
  return assets;
119
- }, "pricesFromCoingecko");
79
+ };
120
80
 
121
81
  // src/Plugin.ts
122
82
  var import_coingecko_crypto_market_payload_plugin2 = require("@xyo-network/coingecko-crypto-market-payload-plugin");
@@ -132,13 +92,7 @@ var CoingeckoCryptoMarketWitnessConfigSchema = "network.xyo.crypto.market.coinge
132
92
 
133
93
  // src/Witness.ts
134
94
  var CoingeckoCryptoMarketWitness = class extends import_abstract_witness.AbstractWitness {
135
- static {
136
- __name(this, "CoingeckoCryptoMarketWitness");
137
- }
138
- static configSchemas = [
139
- ...super.configSchemas,
140
- CoingeckoCryptoMarketWitnessConfigSchema
141
- ];
95
+ static configSchemas = [...super.configSchemas, CoingeckoCryptoMarketWitnessConfigSchema];
142
96
  static defaultConfigSchema = CoingeckoCryptoMarketWitnessConfigSchema;
143
97
  async observeHandler() {
144
98
  const assets = await pricesFromCoingecko(this.config?.coins ?? [], this.config?.currencies ?? []);
@@ -147,22 +101,18 @@ var CoingeckoCryptoMarketWitness = class extends import_abstract_witness.Abstrac
147
101
  schema: import_coingecko_crypto_market_payload_plugin.CoingeckoCryptoMarketSchema,
148
102
  timestamp: Date.now()
149
103
  };
150
- return [
151
- payload
152
- ];
104
+ return [payload];
153
105
  }
154
106
  };
155
107
 
156
108
  // src/Plugin.ts
157
- var CoingeckoCryptoMarketPlugin = /* @__PURE__ */ __name(() => (0, import_payloadset_plugin.createPayloadSetWitnessPlugin)({
158
- required: {
159
- [import_coingecko_crypto_market_payload_plugin2.CoingeckoCryptoMarketSchema]: 1
160
- },
161
- schema: import_payload_model.PayloadSetSchema
162
- }, {
163
- witness: /* @__PURE__ */ __name(async (params) => {
164
- const result = await CoingeckoCryptoMarketWitness.create(params);
165
- return result;
166
- }, "witness")
167
- }), "CoingeckoCryptoMarketPlugin");
109
+ var CoingeckoCryptoMarketPlugin = () => (0, import_payloadset_plugin.createPayloadSetWitnessPlugin)(
110
+ { required: { [import_coingecko_crypto_market_payload_plugin2.CoingeckoCryptoMarketSchema]: 1 }, schema: import_payload_model.PayloadSetSchema },
111
+ {
112
+ witness: async (params) => {
113
+ const result = await CoingeckoCryptoMarketWitness.create(params);
114
+ return result;
115
+ }
116
+ }
117
+ );
168
118
  //# sourceMappingURL=index.cjs.map