@xyo-network/uniswap-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 (107) hide show
  1. package/dist/browser/Plugin.d.cts +1 -1
  2. package/dist/browser/Plugin.d.mts +1 -1
  3. package/dist/browser/Plugin.d.ts +1 -1
  4. package/dist/browser/Witness.d.cts +2 -2
  5. package/dist/browser/Witness.d.mts +2 -2
  6. package/dist/browser/Witness.d.ts +2 -2
  7. package/dist/browser/index.cjs +80 -70
  8. package/dist/browser/index.cjs.map +1 -1
  9. package/dist/browser/index.d.cts +4 -4
  10. package/dist/browser/index.d.mts +4 -4
  11. package/dist/browser/index.d.ts +4 -4
  12. package/dist/browser/{index.js → index.mjs} +84 -75
  13. package/dist/browser/index.mjs.map +1 -0
  14. package/dist/browser/lib/Ethers/UniSwap3Pair.d.cts +1 -1
  15. package/dist/browser/lib/Ethers/UniSwap3Pair.d.mts +1 -1
  16. package/dist/browser/lib/Ethers/UniSwap3Pair.d.ts +1 -1
  17. package/dist/browser/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.cts +1 -1
  18. package/dist/browser/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.mts +1 -1
  19. package/dist/browser/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.ts +1 -1
  20. package/dist/browser/lib/Ethers/createUniswapPoolContracts.d.cts +1 -1
  21. package/dist/browser/lib/Ethers/createUniswapPoolContracts.d.mts +1 -1
  22. package/dist/browser/lib/Ethers/createUniswapPoolContracts.d.ts +1 -1
  23. package/dist/browser/lib/Ethers/index.d.cts +4 -4
  24. package/dist/browser/lib/Ethers/index.d.mts +4 -4
  25. package/dist/browser/lib/Ethers/index.d.ts +4 -4
  26. package/dist/browser/lib/index.d.cts +3 -3
  27. package/dist/browser/lib/index.d.mts +3 -3
  28. package/dist/browser/lib/index.d.ts +3 -3
  29. package/dist/browser/lib/pricesFromUniswap3.d.cts +1 -1
  30. package/dist/browser/lib/pricesFromUniswap3.d.mts +1 -1
  31. package/dist/browser/lib/pricesFromUniswap3.d.ts +1 -1
  32. package/dist/neutral/Plugin.d.cts +1 -1
  33. package/dist/neutral/Plugin.d.mts +1 -1
  34. package/dist/neutral/Plugin.d.ts +1 -1
  35. package/dist/neutral/Witness.d.cts +2 -2
  36. package/dist/neutral/Witness.d.mts +2 -2
  37. package/dist/neutral/Witness.d.ts +2 -2
  38. package/dist/neutral/index.cjs +80 -70
  39. package/dist/neutral/index.cjs.map +1 -1
  40. package/dist/neutral/index.d.cts +4 -4
  41. package/dist/neutral/index.d.mts +4 -4
  42. package/dist/neutral/index.d.ts +4 -4
  43. package/dist/{node/index.js → neutral/index.mjs} +84 -76
  44. package/dist/neutral/index.mjs.map +1 -0
  45. package/dist/neutral/lib/Ethers/UniSwap3Pair.d.cts +1 -1
  46. package/dist/neutral/lib/Ethers/UniSwap3Pair.d.mts +1 -1
  47. package/dist/neutral/lib/Ethers/UniSwap3Pair.d.ts +1 -1
  48. package/dist/neutral/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.cts +1 -1
  49. package/dist/neutral/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.mts +1 -1
  50. package/dist/neutral/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.ts +1 -1
  51. package/dist/neutral/lib/Ethers/createUniswapPoolContracts.d.cts +1 -1
  52. package/dist/neutral/lib/Ethers/createUniswapPoolContracts.d.mts +1 -1
  53. package/dist/neutral/lib/Ethers/createUniswapPoolContracts.d.ts +1 -1
  54. package/dist/neutral/lib/Ethers/index.d.cts +4 -4
  55. package/dist/neutral/lib/Ethers/index.d.mts +4 -4
  56. package/dist/neutral/lib/Ethers/index.d.ts +4 -4
  57. package/dist/neutral/lib/index.d.cts +3 -3
  58. package/dist/neutral/lib/index.d.mts +3 -3
  59. package/dist/neutral/lib/index.d.ts +3 -3
  60. package/dist/neutral/lib/pricesFromUniswap3.d.cts +1 -1
  61. package/dist/neutral/lib/pricesFromUniswap3.d.mts +1 -1
  62. package/dist/neutral/lib/pricesFromUniswap3.d.ts +1 -1
  63. package/dist/node/Plugin.d.cts +1 -1
  64. package/dist/node/Plugin.d.mts +1 -1
  65. package/dist/node/Plugin.d.ts +1 -1
  66. package/dist/node/Witness.d.cts +2 -2
  67. package/dist/node/Witness.d.mts +2 -2
  68. package/dist/node/Witness.d.ts +2 -2
  69. package/dist/node/index.cjs +86 -74
  70. package/dist/node/index.cjs.map +1 -1
  71. package/dist/node/index.d.cts +4 -4
  72. package/dist/node/index.d.mts +4 -4
  73. package/dist/node/index.d.ts +4 -4
  74. package/dist/{neutral/index.js → node/index.mjs} +91 -79
  75. package/dist/node/index.mjs.map +1 -0
  76. package/dist/node/lib/Ethers/UniSwap3Pair.d.cts +1 -1
  77. package/dist/node/lib/Ethers/UniSwap3Pair.d.mts +1 -1
  78. package/dist/node/lib/Ethers/UniSwap3Pair.d.ts +1 -1
  79. package/dist/node/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.cts +1 -1
  80. package/dist/node/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.mts +1 -1
  81. package/dist/node/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.ts +1 -1
  82. package/dist/node/lib/Ethers/createUniswapPoolContracts.d.cts +1 -1
  83. package/dist/node/lib/Ethers/createUniswapPoolContracts.d.mts +1 -1
  84. package/dist/node/lib/Ethers/createUniswapPoolContracts.d.ts +1 -1
  85. package/dist/node/lib/Ethers/index.d.cts +4 -4
  86. package/dist/node/lib/Ethers/index.d.mts +4 -4
  87. package/dist/node/lib/Ethers/index.d.ts +4 -4
  88. package/dist/node/lib/index.d.cts +3 -3
  89. package/dist/node/lib/index.d.mts +3 -3
  90. package/dist/node/lib/index.d.ts +3 -3
  91. package/dist/node/lib/pricesFromUniswap3.d.cts +1 -1
  92. package/dist/node/lib/pricesFromUniswap3.d.mts +1 -1
  93. package/dist/node/lib/pricesFromUniswap3.d.ts +1 -1
  94. package/package.json +20 -20
  95. package/src/Plugin.ts +1 -1
  96. package/src/Witness.ts +2 -2
  97. package/src/index.ts +4 -4
  98. package/src/lib/Ethers/UniSwap3Pair.ts +16 -16
  99. package/src/lib/Ethers/Uniswap3PoolSlot0Wrapper.ts +1 -1
  100. package/src/lib/Ethers/createUniswapPoolContracts.ts +3 -3
  101. package/src/lib/Ethers/index.ts +4 -4
  102. package/src/lib/UniswapPoolContracts.ts +13 -13
  103. package/src/lib/index.ts +3 -3
  104. package/src/lib/pricesFromUniswap3.ts +3 -3
  105. package/dist/browser/index.js.map +0 -1
  106. package/dist/neutral/index.js.map +0 -1
  107. package/dist/node/index.js.map +0 -1
@@ -1,20 +1,28 @@
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
+
1
9
  // src/lib/logErrors.ts
2
- var logErrors = (func) => {
10
+ var logErrors = /* @__PURE__ */ __name((func) => {
3
11
  try {
4
12
  return func();
5
13
  } catch (ex) {
6
14
  console.error(ex);
7
15
  throw ex;
8
16
  }
9
- };
10
- var logErrorsAsync = async (func) => {
17
+ }, "logErrors");
18
+ var logErrorsAsync = /* @__PURE__ */ __name(async (func) => {
11
19
  try {
12
20
  return await func();
13
21
  } catch (ex) {
14
22
  console.error(ex);
15
23
  throw ex;
16
24
  }
17
- };
25
+ }, "logErrorsAsync");
18
26
 
19
27
  // src/lib/Ethers/UniSwap3Pair.ts
20
28
  import { assertEx } from "@xylabs/assert";
@@ -25,7 +33,7 @@ import { IUniswapV3Pool__factory } from "@xyo-network/uniswap-typechain";
25
33
  import { Pool } from "@xyo-network/uniswap-v3-sdk";
26
34
 
27
35
  // src/lib/Ethers/Uniswap3PoolSlot0Wrapper.ts
28
- var EthersUniswap3PoolSlot0Wrapper = class {
36
+ var _EthersUniswap3PoolSlot0Wrapper = class _EthersUniswap3PoolSlot0Wrapper {
29
37
  values;
30
38
  constructor(values) {
31
39
  this.values = values;
@@ -52,27 +60,35 @@ var EthersUniswap3PoolSlot0Wrapper = class {
52
60
  return this.values[6];
53
61
  }
54
62
  };
63
+ __name(_EthersUniswap3PoolSlot0Wrapper, "EthersUniswap3PoolSlot0Wrapper");
64
+ var EthersUniswap3PoolSlot0Wrapper = _EthersUniswap3PoolSlot0Wrapper;
55
65
 
56
66
  // src/lib/Ethers/UniSwap3Pair.ts
57
- var ChainId = /* @__PURE__ */ ((ChainId2) => {
67
+ var ChainId;
68
+ (function(ChainId2) {
58
69
  ChainId2[ChainId2["MAINNET"] = 1] = "MAINNET";
59
70
  ChainId2[ChainId2["ROPSTEN"] = 3] = "ROPSTEN";
60
71
  ChainId2[ChainId2["RINKEBY"] = 4] = "RINKEBY";
61
72
  ChainId2[ChainId2["G\xD6RLI"] = 5] = "G\xD6RLI";
62
73
  ChainId2[ChainId2["KOVAN"] = 42] = "KOVAN";
63
- return ChainId2;
64
- })(ChainId || {});
65
- var waitNotNull = async (closure) => {
74
+ })(ChainId || (ChainId = {}));
75
+ var waitNotNull = /* @__PURE__ */ __name(async (closure) => {
66
76
  while (closure() === null) await delay(10);
67
- };
68
- var EthersUniSwap3Pair = class {
77
+ }, "waitNotNull");
78
+ var _EthersUniSwap3Pair = class _EthersUniSwap3Pair {
69
79
  address;
70
80
  provider;
71
81
  _pool;
72
82
  _poolContract;
73
83
  _slot0;
74
- _tokenContracts = [void 0, void 0];
75
- _tokens = [void 0, void 0];
84
+ _tokenContracts = [
85
+ void 0,
86
+ void 0
87
+ ];
88
+ _tokens = [
89
+ void 0,
90
+ void 0
91
+ ];
76
92
  constructor(address, provider) {
77
93
  this.address = address;
78
94
  this.provider = provider;
@@ -82,14 +98,7 @@ var EthersUniSwap3Pair = class {
82
98
  await waitNotNull(() => this._pool);
83
99
  this._pool = this._pool || null;
84
100
  const slot0 = await this.slot0();
85
- this._pool = this._pool === null ? new Pool(
86
- await this.token(0),
87
- await this.token(1),
88
- Number(slot0.feeProtocol),
89
- `0x${slot0.sqrtPriceX96.toString(16)}`,
90
- `0x${(await this.poolContract().liquidity()).toString(16)}`,
91
- Number(slot0.tick)
92
- ) : this._pool;
101
+ this._pool = this._pool === null ? new Pool(await this.token(0), await this.token(1), Number(slot0.feeProtocol), `0x${slot0.sqrtPriceX96.toString(16)}`, `0x${(await this.poolContract().liquidity()).toString(16)}`, Number(slot0.tick)) : this._pool;
93
102
  return assertEx(this._pool);
94
103
  });
95
104
  }
@@ -101,18 +110,23 @@ var EthersUniSwap3Pair = class {
101
110
  }
102
111
  async price() {
103
112
  return await logErrorsAsync(async () => {
104
- const tokenIndexes = [0, 1];
113
+ const tokenIndexes = [
114
+ 0,
115
+ 1
116
+ ];
105
117
  const pool = await this.pool();
106
118
  const tokens = await Promise.all(tokenIndexes.map((value) => this.token(value)));
107
119
  const tokenContracts = await Promise.all(tokenIndexes.map((value) => this.tokenContract(value)));
108
120
  const tokenPrices = tokens.map((token) => Number.parseFloat(pool.priceOf(token).toSignificant()));
109
121
  const tokenSymbols = tokens.map((token, index) => assertEx(token.symbol, () => `Token[${index}] Missing Symbols`).toLowerCase());
110
122
  const result = {
111
- tokens: await Promise.all(
112
- tokenIndexes.map(async (value) => {
113
- return { address: await tokenContracts[value].getAddress(), symbol: tokenSymbols[value], value: tokenPrices[value] };
114
- })
115
- )
123
+ tokens: await Promise.all(tokenIndexes.map(async (value) => {
124
+ return {
125
+ address: await tokenContracts[value].getAddress(),
126
+ symbol: tokenSymbols[value],
127
+ value: tokenPrices[value]
128
+ };
129
+ }))
116
130
  };
117
131
  return result;
118
132
  });
@@ -134,13 +148,7 @@ var EthersUniSwap3Pair = class {
134
148
  await waitNotNull(() => this._tokens[index]);
135
149
  this._tokens[index] = this._tokens[index] || null;
136
150
  const tokenContract = await this.tokenContract(index);
137
- this._tokens[index] = this._tokens[index] ?? new Token(
138
- 1 /* MAINNET */,
139
- await tokenContract.getAddress(),
140
- Number(await tokenContract.decimals()),
141
- await tokenContract.symbol(),
142
- await tokenContract.name()
143
- );
151
+ this._tokens[index] = this._tokens[index] ?? new Token(1, await tokenContract.getAddress(), Number(await tokenContract.decimals()), await tokenContract.symbol(), await tokenContract.name());
144
152
  return assertEx(this._tokens[index]);
145
153
  });
146
154
  }
@@ -153,55 +161,55 @@ var EthersUniSwap3Pair = class {
153
161
  });
154
162
  }
155
163
  };
164
+ __name(_EthersUniSwap3Pair, "EthersUniSwap3Pair");
165
+ var EthersUniSwap3Pair = _EthersUniSwap3Pair;
156
166
 
157
167
  // src/lib/Ethers/createUniswapPoolContracts.ts
158
- var createUniswapPoolContracts = (provider, contracts) => {
168
+ var createUniswapPoolContracts = /* @__PURE__ */ __name((provider, contracts) => {
159
169
  return logErrors(() => {
160
170
  return contracts.map((contract) => new EthersUniSwap3Pair(contract, provider));
161
171
  });
162
- };
172
+ }, "createUniswapPoolContracts");
163
173
 
164
174
  // src/lib/pricesFromUniswap3.ts
165
175
  import { fulfilled } from "@xylabs/promise";
166
- var pricesFromUniswap3 = async (pools) => {
176
+ var pricesFromUniswap3 = /* @__PURE__ */ __name(async (pools) => {
167
177
  return await logErrorsAsync(async () => {
168
- const promiseResults = await Promise.allSettled(
169
- pools.map(async (pool) => {
170
- const result = await pool.price();
171
- return result;
172
- })
173
- );
178
+ const promiseResults = await Promise.allSettled(pools.map(async (pool) => {
179
+ const result = await pool.price();
180
+ return result;
181
+ }));
174
182
  return promiseResults.filter(fulfilled).map((result) => result.value);
175
183
  });
176
- };
184
+ }, "pricesFromUniswap3");
177
185
 
178
186
  // src/lib/UniswapPoolContracts.ts
179
187
  var UniswapPoolContracts = [
180
- /*xyo/weth*/
188
+ /* xyo/weth */
181
189
  "0xE331DE28cd81B768C19A366b0e4e4675c45eC2dA",
182
- /*xyo/usdt*/
190
+ /* xyo/usdt */
183
191
  "0xd0AF1981f52146a6939385451dAeA0726e13a484",
184
- /*xyo/dai*/
192
+ /* xyo/dai */
185
193
  "0x9D7e5647CE3c7C2d835F2F5e82C8fDb36B0BB0fe",
186
- /*wbtc/xyo*/
194
+ /* wbtc/xyo */
187
195
  "0x0cF7494c9dE661467403aBeE8454b3BBf0179a84",
188
- /*link/xyo*/
196
+ /* link/xyo */
189
197
  "0x4693456599a8a4975862A0E720C5de7E1D09A1e4",
190
- /*wbtc/weth*/
198
+ /* wbtc/weth */
191
199
  "0xCBCdF9626bC03E24f779434178A73a0B4bad62eD",
192
- /*dai/usdc*/
200
+ /* dai/usdc */
193
201
  "0x5777d92f208679DB4b9778590Fa3CAB3aC9e2168",
194
- /*usdc/weth*/
202
+ /* usdc/weth */
195
203
  "0x8ad599c3A0ff1De082011EFDDc58f1908eb6e6D8",
196
- /*usdc/weth*/
204
+ /* usdc/weth */
197
205
  "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640",
198
- /*dai/usdc*/
206
+ /* dai/usdc */
199
207
  "0x6c6Bc977E13Df9b0de53b251522280BB72383700",
200
- /*frax/usdc*/
208
+ /* frax/usdc */
201
209
  "0xc63B0708E2F7e69CB8A1df0e1389A98C35A76D52",
202
- /*wbtc/usdc*/
210
+ /* wbtc/usdc */
203
211
  "0x99ac8cA7087fA4A2A1FB6357269965A2014ABc35",
204
- /*usdc/usdt*/
212
+ /* usdc/usdt */
205
213
  "0x3416cF6C708Da44DB2624D63ea0AAef7113527C6"
206
214
  ];
207
215
 
@@ -213,13 +221,8 @@ import { UniswapCryptoMarketSchema as UniswapCryptoMarketSchema2 } from "@xyo-ne
213
221
  // src/Witness.ts
214
222
  import { assertEx as assertEx2 } from "@xylabs/assert";
215
223
  import { AbstractWitness } from "@xyo-network/abstract-witness";
216
- import {
217
- UniswapCryptoMarketSchema,
218
- UniswapCryptoMarketWitnessConfigSchema
219
- } from "@xyo-network/uniswap-crypto-market-payload-plugin";
220
- var UniswapCryptoMarketWitness = class extends AbstractWitness {
221
- static configSchemas = [...super.configSchemas, UniswapCryptoMarketWitnessConfigSchema];
222
- static defaultConfigSchema = UniswapCryptoMarketWitnessConfigSchema;
224
+ import { UniswapCryptoMarketSchema, UniswapCryptoMarketWitnessConfigSchema } from "@xyo-network/uniswap-crypto-market-payload-plugin";
225
+ var _UniswapCryptoMarketWitness = class _UniswapCryptoMarketWitness extends AbstractWitness {
223
226
  pairs;
224
227
  get provider() {
225
228
  return this.params.provider;
@@ -233,28 +236,37 @@ var UniswapCryptoMarketWitness = class extends AbstractWitness {
233
236
  schema: UniswapCryptoMarketSchema,
234
237
  timestamp
235
238
  };
236
- return [payload];
239
+ return [
240
+ payload
241
+ ];
237
242
  }
238
243
  async startHandler() {
244
+ var _a;
239
245
  await super.startHandler();
240
- this.pairs = createUniswapPoolContracts(
241
- assertEx2(this.provider, () => "Provider Required"),
242
- this.config?.pools ?? UniswapPoolContracts
243
- );
246
+ this.pairs = createUniswapPoolContracts(assertEx2(this.provider, () => "Provider Required"), ((_a = this.config) == null ? void 0 : _a.pools) ?? UniswapPoolContracts);
244
247
  return true;
245
248
  }
246
249
  };
250
+ __name(_UniswapCryptoMarketWitness, "UniswapCryptoMarketWitness");
251
+ __publicField(_UniswapCryptoMarketWitness, "configSchemas", [
252
+ ...__superGet(_UniswapCryptoMarketWitness, _UniswapCryptoMarketWitness, "configSchemas"),
253
+ UniswapCryptoMarketWitnessConfigSchema
254
+ ]);
255
+ __publicField(_UniswapCryptoMarketWitness, "defaultConfigSchema", UniswapCryptoMarketWitnessConfigSchema);
256
+ var UniswapCryptoMarketWitness = _UniswapCryptoMarketWitness;
247
257
 
248
258
  // src/Plugin.ts
249
- var UniswapCryptoMarketPlugin = () => createPayloadSetWitnessPlugin(
250
- { required: { [UniswapCryptoMarketSchema2]: 1 }, schema: PayloadSetSchema },
251
- {
252
- witness: async (params) => {
253
- const result = await UniswapCryptoMarketWitness.create(params);
254
- return result;
255
- }
256
- }
257
- );
259
+ var UniswapCryptoMarketPlugin = /* @__PURE__ */ __name(() => createPayloadSetWitnessPlugin({
260
+ required: {
261
+ [UniswapCryptoMarketSchema2]: 1
262
+ },
263
+ schema: PayloadSetSchema
264
+ }, {
265
+ witness: /* @__PURE__ */ __name(async (params) => {
266
+ const result = await UniswapCryptoMarketWitness.create(params);
267
+ return result;
268
+ }, "witness")
269
+ }), "UniswapCryptoMarketPlugin");
258
270
  export {
259
271
  ChainId,
260
272
  EthersUniSwap3Pair,
@@ -266,4 +278,4 @@ export {
266
278
  UniswapCryptoMarketPlugin as default,
267
279
  pricesFromUniswap3
268
280
  };
269
- //# sourceMappingURL=index.js.map
281
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/logErrors.ts","../../src/lib/Ethers/UniSwap3Pair.ts","../../src/lib/Ethers/Uniswap3PoolSlot0Wrapper.ts","../../src/lib/Ethers/createUniswapPoolContracts.ts","../../src/lib/pricesFromUniswap3.ts","../../src/lib/UniswapPoolContracts.ts","../../src/Plugin.ts","../../src/Witness.ts"],"sourcesContent":["export const logErrors = <T>(func: () => T) => {\n try {\n return func()\n } catch (ex) {\n console.error(ex)\n throw ex\n }\n}\n\nexport const logErrorsAsync = async <T>(func: () => Promise<T>) => {\n try {\n return await func()\n } catch (ex) {\n console.error(ex)\n throw ex\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport { delay } from '@xylabs/delay'\nimport { IERC20Metadata, IERC20Metadata__factory } from '@xyo-network/typechain'\nimport { Token } from '@xyo-network/uniswap-sdk-core'\nimport { IUniswapV3Pool, IUniswapV3Pool__factory } from '@xyo-network/uniswap-typechain'\nimport { Pool } from '@xyo-network/uniswap-v3-sdk'\nimport { Provider } from 'ethers'\n\nimport { logErrors, logErrorsAsync } from '../logErrors.ts'\nimport { EthersUniswap3PoolSlot0Wrapper } from './Uniswap3PoolSlot0Wrapper.ts'\n\nexport enum ChainId {\n MAINNET = 1,\n ROPSTEN = 3,\n RINKEBY = 4,\n GÖRLI = 5,\n KOVAN = 42,\n}\n\n// null is used as 'in-progress'\nconst waitNotNull = async (closure: () => unknown) => {\n while (closure() === null) await delay(10)\n}\n\nexport class EthersUniSwap3Pair {\n protected address: string\n protected provider: Provider\n\n private _pool?: Pool | null\n private _poolContract?: IUniswapV3Pool\n private _slot0?: EthersUniswap3PoolSlot0Wrapper | null\n private _tokenContracts: (IERC20Metadata | null | undefined)[] = [undefined, undefined]\n private _tokens: (Token | null | undefined)[] = [undefined, undefined]\n\n constructor(address: string, provider: Provider) {\n this.address = address\n this.provider = provider\n }\n\n async pool(): Promise<Pool> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._pool)\n this._pool = this._pool || null\n const slot0 = await this.slot0()\n this._pool\n = this._pool === null\n ? new Pool(\n await this.token(0),\n await this.token(1),\n Number(slot0.feeProtocol),\n `0x${slot0.sqrtPriceX96.toString(16)}`,\n `0x${(await this.poolContract().liquidity()).toString(16)}`,\n Number(slot0.tick),\n )\n : this._pool\n return assertEx(this._pool)\n })\n }\n\n poolContract() {\n return logErrors(() => {\n this._poolContract = this._poolContract ?? IUniswapV3Pool__factory.connect(this.address, this.provider)\n return assertEx(this._poolContract)\n })\n }\n\n async price() {\n return await logErrorsAsync(async () => {\n const tokenIndexes: (0 | 1)[] = [0, 1]\n const pool = await this.pool()\n const tokens = await Promise.all(tokenIndexes.map(value => this.token(value)))\n const tokenContracts = await Promise.all(tokenIndexes.map(value => this.tokenContract(value)))\n const tokenPrices = tokens.map(token => Number.parseFloat(pool.priceOf(token).toSignificant()))\n const tokenSymbols = tokens.map((token, index) => assertEx(token.symbol, () => `Token[${index}] Missing Symbols`).toLowerCase())\n const result = {\n tokens: await Promise.all(\n tokenIndexes.map(async (value) => {\n return { address: await tokenContracts[value].getAddress(), symbol: tokenSymbols[value], value: tokenPrices[value] }\n }),\n ),\n }\n return result\n })\n }\n\n async slot0(): Promise<EthersUniswap3PoolSlot0Wrapper> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._slot0)\n this._slot0 = this._slot0 || null\n if (this._slot0 === null) {\n const poolContract = this.poolContract()\n const slot = await poolContract.slot0()\n this._slot0 = this._slot0 ?? new EthersUniswap3PoolSlot0Wrapper(slot)\n }\n return assertEx(this._slot0)\n })\n }\n\n async token(index: 0 | 1): Promise<Token> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._tokens[index])\n this._tokens[index] = this._tokens[index] || null\n const tokenContract = await this.tokenContract(index)\n this._tokens[index]\n = this._tokens[index]\n ?? new Token(\n ChainId.MAINNET,\n await tokenContract.getAddress(),\n Number(await tokenContract.decimals()),\n await tokenContract.symbol(),\n await tokenContract.name(),\n )\n return assertEx(this._tokens[index])\n })\n }\n\n async tokenContract(index: 0 | 1): Promise<IERC20Metadata> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._tokenContracts[index])\n this._tokenContracts[index] = this._tokenContracts[index] || null\n this._tokenContracts[index]\n = this._tokenContracts[index]\n ?? IERC20Metadata__factory.connect(await (index === 0 ? this.poolContract().token0() : this.poolContract().token1()), this.provider)\n return assertEx(this._tokenContracts[index])\n })\n }\n}\n","import { EthersUniswapV3Slot0Fields } from './UniswapV3Slot0Fields.ts'\n\nexport class EthersUniswap3PoolSlot0Wrapper {\n protected values: EthersUniswapV3Slot0Fields\n constructor(values: EthersUniswapV3Slot0Fields) {\n this.values = values\n }\n\n get feeProtocol() {\n return this.values[5]\n }\n\n get observationCardinality() {\n return this.values[3]\n }\n\n get observationCardinalityNext() {\n return this.values[4]\n }\n\n get observationIndex() {\n return this.values[2]\n }\n\n get sqrtPriceX96() {\n return this.values[0]\n }\n\n get tick() {\n return this.values[1]\n }\n\n get unlocked() {\n return this.values[6]\n }\n}\n","import { Provider } from 'ethers'\n\nimport { logErrors } from '../logErrors.ts'\nimport { EthersUniSwap3Pair } from './UniSwap3Pair.ts'\n\nexport const createUniswapPoolContracts = (provider: Provider, contracts: string[]) => {\n return logErrors(() => {\n return contracts.map(contract => new EthersUniSwap3Pair(contract, provider))\n })\n}\n","import { fulfilled } from '@xylabs/promise'\nimport { UniswapCryptoPair } from '@xyo-network/uniswap-crypto-market-payload-plugin'\n\nimport { EthersUniSwap3Pair } from './Ethers/index.ts'\nimport { logErrorsAsync } from './logErrors.ts'\n\nexport const pricesFromUniswap3 = async (pools: EthersUniSwap3Pair[]): Promise<UniswapCryptoPair[]> => {\n return await logErrorsAsync(async () => {\n const promiseResults = await Promise.allSettled(\n pools.map(async (pool): Promise<UniswapCryptoPair> => {\n const result = await pool.price()\n return result\n }),\n )\n return promiseResults.filter(fulfilled).map(result => result.value)\n })\n}\n","export const UniswapPoolContracts = [\n /* xyo/weth */ '0xE331DE28cd81B768C19A366b0e4e4675c45eC2dA',\n /* xyo/usdt */ '0xd0AF1981f52146a6939385451dAeA0726e13a484',\n /* xyo/dai */ '0x9D7e5647CE3c7C2d835F2F5e82C8fDb36B0BB0fe',\n /* wbtc/xyo */ '0x0cF7494c9dE661467403aBeE8454b3BBf0179a84',\n /* link/xyo */ '0x4693456599a8a4975862A0E720C5de7E1D09A1e4',\n /* wbtc/weth */ '0xCBCdF9626bC03E24f779434178A73a0B4bad62eD',\n /* dai/usdc */ '0x5777d92f208679DB4b9778590Fa3CAB3aC9e2168',\n /* usdc/weth */ '0x8ad599c3A0ff1De082011EFDDc58f1908eb6e6D8',\n /* usdc/weth */ '0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640',\n /* dai/usdc */ '0x6c6Bc977E13Df9b0de53b251522280BB72383700',\n /* frax/usdc */ '0xc63B0708E2F7e69CB8A1df0e1389A98C35A76D52',\n /* wbtc/usdc */ '0x99ac8cA7087fA4A2A1FB6357269965A2014ABc35',\n /* usdc/usdt */ '0x3416cF6C708Da44DB2624D63ea0AAef7113527C6',\n]\n","import { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\nimport { UniswapCryptoMarketSchema } from '@xyo-network/uniswap-crypto-market-payload-plugin'\n\nimport { UniswapCryptoMarketWitness } from './Witness.ts'\n\nexport const UniswapCryptoMarketPlugin = () =>\n createPayloadSetWitnessPlugin<UniswapCryptoMarketWitness>(\n { required: { [UniswapCryptoMarketSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await UniswapCryptoMarketWitness.create(params)\n return result\n },\n },\n )\n","import { assertEx } from '@xylabs/assert'\nimport { AbstractWitness } from '@xyo-network/abstract-witness'\nimport { AnyConfigSchema } from '@xyo-network/module-model'\nimport { Payload, Schema } from '@xyo-network/payload-model'\nimport {\n UniswapCryptoMarketPayload,\n UniswapCryptoMarketSchema,\n UniswapCryptoMarketWitnessConfigSchema,\n} from '@xyo-network/uniswap-crypto-market-payload-plugin'\nimport { WitnessParams } from '@xyo-network/witness-model'\nimport { Provider } from 'ethers'\n\nimport { UniswapCryptoMarketWitnessConfig } from './Config.ts'\nimport { createUniswapPoolContracts, EthersUniSwap3Pair, pricesFromUniswap3, UniswapPoolContracts } from './lib/index.ts'\n\nexport type UniswapCryptoMarketWitnessParams = WitnessParams<\n AnyConfigSchema<UniswapCryptoMarketWitnessConfig>,\n {\n provider?: Provider\n }\n>\n\nexport class UniswapCryptoMarketWitness<\n TParams extends UniswapCryptoMarketWitnessParams = UniswapCryptoMarketWitnessParams,\n> extends AbstractWitness<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, UniswapCryptoMarketWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = UniswapCryptoMarketWitnessConfigSchema\n\n protected pairs?: EthersUniSwap3Pair[]\n protected get provider() {\n return this.params.provider\n }\n\n protected override async observeHandler(): Promise<Payload[]> {\n await this.started('throw')\n const pairs = await pricesFromUniswap3(assertEx(this.pairs))\n const timestamp = Date.now()\n\n const payload: UniswapCryptoMarketPayload = {\n pairs,\n schema: UniswapCryptoMarketSchema,\n timestamp,\n }\n\n return [payload]\n }\n\n protected override async startHandler() {\n await super.startHandler()\n this.pairs = createUniswapPoolContracts(\n assertEx(this.provider, () => 'Provider Required'),\n this.config?.pools ?? UniswapPoolContracts,\n )\n return true\n }\n}\n"],"mappings":"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","names":["logErrors","func","ex","console","error","logErrorsAsync","assertEx","delay","IERC20Metadata__factory","Token","IUniswapV3Pool__factory","Pool","EthersUniswap3PoolSlot0Wrapper","values","constructor","feeProtocol","observationCardinality","observationCardinalityNext","observationIndex","sqrtPriceX96","tick","unlocked","ChainId","waitNotNull","closure","delay","EthersUniSwap3Pair","address","provider","_pool","_poolContract","_slot0","_tokenContracts","undefined","_tokens","constructor","pool","logErrorsAsync","slot0","Pool","token","Number","feeProtocol","sqrtPriceX96","toString","poolContract","liquidity","tick","assertEx","logErrors","IUniswapV3Pool__factory","connect","price","tokenIndexes","tokens","Promise","all","map","value","tokenContracts","tokenContract","tokenPrices","parseFloat","priceOf","toSignificant","tokenSymbols","index","symbol","toLowerCase","result","getAddress","slot","EthersUniswap3PoolSlot0Wrapper","Token","decimals","name","IERC20Metadata__factory","token0","token1","createUniswapPoolContracts","provider","contracts","logErrors","map","contract","EthersUniSwap3Pair","fulfilled","pricesFromUniswap3","pools","logErrorsAsync","promiseResults","Promise","allSettled","map","pool","result","price","filter","fulfilled","value","UniswapPoolContracts","PayloadSetSchema","createPayloadSetWitnessPlugin","UniswapCryptoMarketSchema","assertEx","AbstractWitness","UniswapCryptoMarketSchema","UniswapCryptoMarketWitnessConfigSchema","UniswapCryptoMarketWitness","AbstractWitness","pairs","provider","params","observeHandler","started","pricesFromUniswap3","assertEx","timestamp","Date","now","payload","schema","UniswapCryptoMarketSchema","startHandler","createUniswapPoolContracts","config","pools","UniswapPoolContracts","configSchemas","UniswapCryptoMarketWitnessConfigSchema","defaultConfigSchema","UniswapCryptoMarketPlugin","createPayloadSetWitnessPlugin","required","UniswapCryptoMarketSchema","schema","PayloadSetSchema","witness","params","result","UniswapCryptoMarketWitness","create"]}
@@ -2,7 +2,7 @@ import { IERC20Metadata } from '@xyo-network/typechain';
2
2
  import { Token } from '@xyo-network/uniswap-sdk-core';
3
3
  import { Pool } from '@xyo-network/uniswap-v3-sdk';
4
4
  import { Provider } from 'ethers';
5
- import { EthersUniswap3PoolSlot0Wrapper } from './Uniswap3PoolSlot0Wrapper.js';
5
+ import { EthersUniswap3PoolSlot0Wrapper } from './Uniswap3PoolSlot0Wrapper.ts';
6
6
  export declare enum ChainId {
7
7
  MAINNET = 1,
8
8
  ROPSTEN = 3,
@@ -2,7 +2,7 @@ import { IERC20Metadata } from '@xyo-network/typechain';
2
2
  import { Token } from '@xyo-network/uniswap-sdk-core';
3
3
  import { Pool } from '@xyo-network/uniswap-v3-sdk';
4
4
  import { Provider } from 'ethers';
5
- import { EthersUniswap3PoolSlot0Wrapper } from './Uniswap3PoolSlot0Wrapper.js';
5
+ import { EthersUniswap3PoolSlot0Wrapper } from './Uniswap3PoolSlot0Wrapper.ts';
6
6
  export declare enum ChainId {
7
7
  MAINNET = 1,
8
8
  ROPSTEN = 3,
@@ -2,7 +2,7 @@ import { IERC20Metadata } from '@xyo-network/typechain';
2
2
  import { Token } from '@xyo-network/uniswap-sdk-core';
3
3
  import { Pool } from '@xyo-network/uniswap-v3-sdk';
4
4
  import { Provider } from 'ethers';
5
- import { EthersUniswap3PoolSlot0Wrapper } from './Uniswap3PoolSlot0Wrapper.js';
5
+ import { EthersUniswap3PoolSlot0Wrapper } from './Uniswap3PoolSlot0Wrapper.ts';
6
6
  export declare enum ChainId {
7
7
  MAINNET = 1,
8
8
  ROPSTEN = 3,
@@ -1,4 +1,4 @@
1
- import { EthersUniswapV3Slot0Fields } from './UniswapV3Slot0Fields.js';
1
+ import { EthersUniswapV3Slot0Fields } from './UniswapV3Slot0Fields.ts';
2
2
  export declare class EthersUniswap3PoolSlot0Wrapper {
3
3
  protected values: EthersUniswapV3Slot0Fields;
4
4
  constructor(values: EthersUniswapV3Slot0Fields);
@@ -1,4 +1,4 @@
1
- import { EthersUniswapV3Slot0Fields } from './UniswapV3Slot0Fields.js';
1
+ import { EthersUniswapV3Slot0Fields } from './UniswapV3Slot0Fields.ts';
2
2
  export declare class EthersUniswap3PoolSlot0Wrapper {
3
3
  protected values: EthersUniswapV3Slot0Fields;
4
4
  constructor(values: EthersUniswapV3Slot0Fields);
@@ -1,4 +1,4 @@
1
- import { EthersUniswapV3Slot0Fields } from './UniswapV3Slot0Fields.js';
1
+ import { EthersUniswapV3Slot0Fields } from './UniswapV3Slot0Fields.ts';
2
2
  export declare class EthersUniswap3PoolSlot0Wrapper {
3
3
  protected values: EthersUniswapV3Slot0Fields;
4
4
  constructor(values: EthersUniswapV3Slot0Fields);
@@ -1,4 +1,4 @@
1
1
  import { Provider } from 'ethers';
2
- import { EthersUniSwap3Pair } from './UniSwap3Pair.js';
2
+ import { EthersUniSwap3Pair } from './UniSwap3Pair.ts';
3
3
  export declare const createUniswapPoolContracts: (provider: Provider, contracts: string[]) => EthersUniSwap3Pair[];
4
4
  //# sourceMappingURL=createUniswapPoolContracts.d.ts.map
@@ -1,4 +1,4 @@
1
1
  import { Provider } from 'ethers';
2
- import { EthersUniSwap3Pair } from './UniSwap3Pair.js';
2
+ import { EthersUniSwap3Pair } from './UniSwap3Pair.ts';
3
3
  export declare const createUniswapPoolContracts: (provider: Provider, contracts: string[]) => EthersUniSwap3Pair[];
4
4
  //# sourceMappingURL=createUniswapPoolContracts.d.ts.map
@@ -1,4 +1,4 @@
1
1
  import { Provider } from 'ethers';
2
- import { EthersUniSwap3Pair } from './UniSwap3Pair.js';
2
+ import { EthersUniSwap3Pair } from './UniSwap3Pair.ts';
3
3
  export declare const createUniswapPoolContracts: (provider: Provider, contracts: string[]) => EthersUniSwap3Pair[];
4
4
  //# sourceMappingURL=createUniswapPoolContracts.d.ts.map
@@ -1,5 +1,5 @@
1
- export * from './createUniswapPoolContracts.js';
2
- export * from './UniSwap3Pair.js';
3
- export * from './Uniswap3PoolSlot0Wrapper.js';
4
- export * from './UniswapV3Slot0Fields.js';
1
+ export * from './createUniswapPoolContracts.ts';
2
+ export * from './UniSwap3Pair.ts';
3
+ export * from './Uniswap3PoolSlot0Wrapper.ts';
4
+ export * from './UniswapV3Slot0Fields.ts';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1,5 +1,5 @@
1
- export * from './createUniswapPoolContracts.js';
2
- export * from './UniSwap3Pair.js';
3
- export * from './Uniswap3PoolSlot0Wrapper.js';
4
- export * from './UniswapV3Slot0Fields.js';
1
+ export * from './createUniswapPoolContracts.ts';
2
+ export * from './UniSwap3Pair.ts';
3
+ export * from './Uniswap3PoolSlot0Wrapper.ts';
4
+ export * from './UniswapV3Slot0Fields.ts';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1,5 +1,5 @@
1
- export * from './createUniswapPoolContracts.js';
2
- export * from './UniSwap3Pair.js';
3
- export * from './Uniswap3PoolSlot0Wrapper.js';
4
- export * from './UniswapV3Slot0Fields.js';
1
+ export * from './createUniswapPoolContracts.ts';
2
+ export * from './UniSwap3Pair.ts';
3
+ export * from './Uniswap3PoolSlot0Wrapper.ts';
4
+ export * from './UniswapV3Slot0Fields.ts';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,4 @@
1
- export * from './Ethers/index.js';
2
- export * from './pricesFromUniswap3.js';
3
- export * from './UniswapPoolContracts.js';
1
+ export * from './Ethers/index.ts';
2
+ export * from './pricesFromUniswap3.ts';
3
+ export * from './UniswapPoolContracts.ts';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,4 @@
1
- export * from './Ethers/index.js';
2
- export * from './pricesFromUniswap3.js';
3
- export * from './UniswapPoolContracts.js';
1
+ export * from './Ethers/index.ts';
2
+ export * from './pricesFromUniswap3.ts';
3
+ export * from './UniswapPoolContracts.ts';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,4 @@
1
- export * from './Ethers/index.js';
2
- export * from './pricesFromUniswap3.js';
3
- export * from './UniswapPoolContracts.js';
1
+ export * from './Ethers/index.ts';
2
+ export * from './pricesFromUniswap3.ts';
3
+ export * from './UniswapPoolContracts.ts';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,4 @@
1
1
  import { UniswapCryptoPair } from '@xyo-network/uniswap-crypto-market-payload-plugin';
2
- import { EthersUniSwap3Pair } from './Ethers/index.js';
2
+ import { EthersUniSwap3Pair } from './Ethers/index.ts';
3
3
  export declare const pricesFromUniswap3: (pools: EthersUniSwap3Pair[]) => Promise<UniswapCryptoPair[]>;
4
4
  //# sourceMappingURL=pricesFromUniswap3.d.ts.map
@@ -1,4 +1,4 @@
1
1
  import { UniswapCryptoPair } from '@xyo-network/uniswap-crypto-market-payload-plugin';
2
- import { EthersUniSwap3Pair } from './Ethers/index.js';
2
+ import { EthersUniSwap3Pair } from './Ethers/index.ts';
3
3
  export declare const pricesFromUniswap3: (pools: EthersUniSwap3Pair[]) => Promise<UniswapCryptoPair[]>;
4
4
  //# sourceMappingURL=pricesFromUniswap3.d.ts.map
@@ -1,4 +1,4 @@
1
1
  import { UniswapCryptoPair } from '@xyo-network/uniswap-crypto-market-payload-plugin';
2
- import { EthersUniSwap3Pair } from './Ethers/index.js';
2
+ import { EthersUniSwap3Pair } from './Ethers/index.ts';
3
3
  export declare const pricesFromUniswap3: (pools: EthersUniSwap3Pair[]) => Promise<UniswapCryptoPair[]>;
4
4
  //# sourceMappingURL=pricesFromUniswap3.d.ts.map
package/package.json CHANGED
@@ -12,29 +12,29 @@
12
12
  "dependencies": {
13
13
  "@uniswap/swap-router-contracts": "^1.3.1",
14
14
  "@uniswap/v3-periphery": "^1.4.4",
15
- "@xylabs/assert": "^3.6.1",
16
- "@xylabs/delay": "^3.6.1",
17
- "@xylabs/promise": "^3.6.1",
18
- "@xyo-network/abstract-witness": "^2.110.6",
19
- "@xyo-network/module-model": "^2.110.6",
20
- "@xyo-network/payload-model": "^2.110.6",
21
- "@xyo-network/payloadset-plugin": "^2.110.6",
15
+ "@xylabs/assert": "^3.6.8",
16
+ "@xylabs/delay": "^3.6.8",
17
+ "@xylabs/promise": "^3.6.8",
18
+ "@xyo-network/abstract-witness": "^2.111.2",
19
+ "@xyo-network/module-model": "^2.111.2",
20
+ "@xyo-network/payload-model": "^2.111.2",
21
+ "@xyo-network/payloadset-plugin": "^2.111.2",
22
22
  "@xyo-network/typechain": "^3.0.5",
23
- "@xyo-network/uniswap-crypto-market-payload-plugin": "^2.99.4",
23
+ "@xyo-network/uniswap-crypto-market-payload-plugin": "^2.99.5",
24
24
  "@xyo-network/uniswap-sdk-core": "^4.1.2",
25
25
  "@xyo-network/uniswap-typechain": "^3.0.5",
26
26
  "@xyo-network/uniswap-v3-sdk": "^3.12.3",
27
- "@xyo-network/witness-model": "^2.110.6",
28
- "ethers": "^6.13.1"
27
+ "@xyo-network/witness-model": "^2.111.2",
28
+ "ethers": "^6.13.2"
29
29
  },
30
30
  "devDependencies": {
31
- "@xylabs/jest-helpers": "^3.6.1",
32
- "@xylabs/ts-scripts-yarn3": "^3.12.2",
33
- "@xylabs/tsconfig": "^3.12.2",
34
- "@xyo-network/payload-wrapper": "^2.110.6",
35
- "@xyo-network/witness-blockchain-abstract": "^2.110.6",
31
+ "@xylabs/jest-helpers": "^3.6.8",
32
+ "@xylabs/ts-scripts-yarn3": "^3.15.13",
33
+ "@xylabs/tsconfig": "^3.15.13",
34
+ "@xyo-network/payload-wrapper": "^2.111.2",
35
+ "@xyo-network/witness-blockchain-abstract": "^2.111.2",
36
36
  "jest": "^29.7.0",
37
- "typescript": "^5.5.3"
37
+ "typescript": "^5.5.4"
38
38
  },
39
39
  "description": "Typescript/Javascript Plugins for XYO Platform",
40
40
  "exports": {
@@ -46,7 +46,7 @@
46
46
  },
47
47
  "import": {
48
48
  "types": "./dist/browser/index.d.mts",
49
- "default": "./dist/browser/index.js"
49
+ "default": "./dist/browser/index.mjs"
50
50
  }
51
51
  },
52
52
  "node": {
@@ -56,14 +56,14 @@
56
56
  },
57
57
  "import": {
58
58
  "types": "./dist/node/index.d.mts",
59
- "default": "./dist/node/index.js"
59
+ "default": "./dist/node/index.mjs"
60
60
  }
61
61
  }
62
62
  },
63
63
  "./package.json": "./package.json"
64
64
  },
65
65
  "main": "dist/node/index.cjs",
66
- "module": "dist/node/index.js",
66
+ "module": "dist/node/index.mjs",
67
67
  "types": "dist/node/index.d.ts",
68
68
  "homepage": "https://xyo.network",
69
69
  "license": "LGPL-3.0-only",
@@ -75,6 +75,6 @@
75
75
  "url": "https://github.com/XYOracleNetwork/plugins.git"
76
76
  },
77
77
  "sideEffects": false,
78
- "version": "2.99.4",
78
+ "version": "2.99.5",
79
79
  "type": "module"
80
80
  }
package/src/Plugin.ts CHANGED
@@ -2,7 +2,7 @@ import { PayloadSetSchema } from '@xyo-network/payload-model'
2
2
  import { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'
3
3
  import { UniswapCryptoMarketSchema } from '@xyo-network/uniswap-crypto-market-payload-plugin'
4
4
 
5
- import { UniswapCryptoMarketWitness } from './Witness.js'
5
+ import { UniswapCryptoMarketWitness } from './Witness.ts'
6
6
 
7
7
  export const UniswapCryptoMarketPlugin = () =>
8
8
  createPayloadSetWitnessPlugin<UniswapCryptoMarketWitness>(
package/src/Witness.ts CHANGED
@@ -10,8 +10,8 @@ import {
10
10
  import { WitnessParams } from '@xyo-network/witness-model'
11
11
  import { Provider } from 'ethers'
12
12
 
13
- import { UniswapCryptoMarketWitnessConfig } from './Config.js'
14
- import { createUniswapPoolContracts, EthersUniSwap3Pair, pricesFromUniswap3, UniswapPoolContracts } from './lib/index.js'
13
+ import { UniswapCryptoMarketWitnessConfig } from './Config.ts'
14
+ import { createUniswapPoolContracts, EthersUniSwap3Pair, pricesFromUniswap3, UniswapPoolContracts } from './lib/index.ts'
15
15
 
16
16
  export type UniswapCryptoMarketWitnessParams = WitnessParams<
17
17
  AnyConfigSchema<UniswapCryptoMarketWitnessConfig>,
package/src/index.ts CHANGED
@@ -1,5 +1,5 @@
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 { UniswapCryptoMarketPlugin as default, UniswapCryptoMarketPlugin } from './Plugin.js'
5
- export * from './Witness.js'
4
+ export { UniswapCryptoMarketPlugin as default, UniswapCryptoMarketPlugin } from './Plugin.ts'
5
+ export * from './Witness.ts'