@varla/sdk 2.17.0 → 2.19.0

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,4 +1,6 @@
1
1
  // Note: explicit .js extension is required for Node ESM resolution.
2
+ import { multicallChunks } from "../batch.js";
3
+ import { abis } from "../generated.js";
2
4
  import { readAccountPositionsFull } from "./core.js";
3
5
  import { readManyPositionSnapshots } from "./oracle.js";
4
6
  // wraps: VarlaLiquidator.core,VarlaLiquidator.treasury,VarlaLiquidator.collateralToken,VarlaLiquidator.positionsToken
@@ -11,12 +13,7 @@ export async function readLiquidatorBasics(params) {
11
13
  ]);
12
14
  return { core, treasury, collateralToken, positionsToken };
13
15
  }
14
- /**
15
- * Normalized wrapper over `*.canLiquidate(user)`.
16
- */
17
- // wraps: VarlaLiquidator.canLiquidate,VarlaMergeLiquidator.canLiquidate,VarlaConvertLiquidator.canLiquidate
18
- export async function readCanLiquidate(params) {
19
- const raw = await params.liquidator.read.canLiquidate([params.user]);
16
+ function normalizeCanLiquidate(raw, user) {
20
17
  const r = raw;
21
18
  const canLiquidate = r.canLiquidate_ ?? r.canLiquidate ?? r[0];
22
19
  const healthFactor = r.healthFactor ?? r[1];
@@ -26,7 +23,44 @@ export async function readCanLiquidate(params) {
26
23
  typeof currentBonus !== "bigint") {
27
24
  throw new Error("Unexpected canLiquidate() return shape");
28
25
  }
29
- return { user: params.user, canLiquidate, healthFactor, currentBonus };
26
+ return { user, canLiquidate, healthFactor, currentBonus };
27
+ }
28
+ /**
29
+ * Normalized wrapper over `*.canLiquidate(user)`.
30
+ */
31
+ // wraps: VarlaLiquidator.canLiquidate,VarlaMergeLiquidator.canLiquidate,VarlaConvertLiquidator.canLiquidate
32
+ export async function readCanLiquidate(params) {
33
+ const raw = await params.liquidator.read.canLiquidate([params.user]);
34
+ return normalizeCanLiquidate(raw, params.user);
35
+ }
36
+ /**
37
+ * Multicall-chunked version of `readCanLiquidate`.
38
+ */
39
+ // wraps: VarlaLiquidator.canLiquidate,VarlaMergeLiquidator.canLiquidate,VarlaConvertLiquidator.canLiquidate
40
+ export async function readManyCanLiquidate(params) {
41
+ const chunkSize = params.chunkSize ?? 256;
42
+ if (params.users.length === 0)
43
+ return [];
44
+ const calls = params.users.map((user) => ({
45
+ address: params.liquidator.address,
46
+ abi: abis.VARLALIQUIDATOR_ABI,
47
+ functionName: "canLiquidate",
48
+ args: [user],
49
+ }));
50
+ const res = await multicallChunks({
51
+ client: params.client,
52
+ contracts: calls,
53
+ chunkSize,
54
+ });
55
+ const out = [];
56
+ for (let i = 0; i < res.length; i++) {
57
+ const r = res[i];
58
+ if (r.status !== "success") {
59
+ throw new Error(`Liquidator canLiquidate multicall failed: ${String(r.error ?? "unknown")}`);
60
+ }
61
+ out.push(normalizeCanLiquidate(r.result, params.users[i]));
62
+ }
63
+ return out;
30
64
  }
31
65
  /**
32
66
  * Normalized wrapper over `*.previewLiquidation(user, positionId, debtToCover)`.
@@ -70,12 +104,7 @@ export async function readCalculateLiquidationBonus(params) {
70
104
  const bonusBps = await params.liquidator.read.calculateLiquidationBonus([params.healthFactor]);
71
105
  return { healthFactor: params.healthFactor, bonusBps };
72
106
  }
73
- /**
74
- * Normalized wrapper over `VarlaLiquidator.checkBadDebt(user)`.
75
- */
76
- // wraps: VarlaLiquidator.checkBadDebt
77
- export async function readBadDebtStatus(params) {
78
- const raw = await params.liquidator.read.checkBadDebt([params.user]);
107
+ function normalizeBadDebtStatus(raw, user) {
79
108
  const r = raw;
80
109
  const hasBadDebt = r.hasBadDebt ?? r[0];
81
110
  const collateralValue = r.collateralValue ?? r[1];
@@ -87,7 +116,44 @@ export async function readBadDebtStatus(params) {
87
116
  typeof shortfall !== "bigint") {
88
117
  throw new Error("Unexpected checkBadDebt() return shape");
89
118
  }
90
- return { user: params.user, hasBadDebt, collateralValue, debtValue, shortfall };
119
+ return { user, hasBadDebt, collateralValue, debtValue, shortfall };
120
+ }
121
+ /**
122
+ * Normalized wrapper over `VarlaLiquidator.checkBadDebt(user)`.
123
+ */
124
+ // wraps: VarlaLiquidator.checkBadDebt
125
+ export async function readBadDebtStatus(params) {
126
+ const raw = await params.liquidator.read.checkBadDebt([params.user]);
127
+ return normalizeBadDebtStatus(raw, params.user);
128
+ }
129
+ /**
130
+ * Multicall-chunked version of `readBadDebtStatus`.
131
+ */
132
+ // wraps: VarlaLiquidator.checkBadDebt
133
+ export async function readManyBadDebtStatus(params) {
134
+ const chunkSize = params.chunkSize ?? 256;
135
+ if (params.users.length === 0)
136
+ return [];
137
+ const calls = params.users.map((user) => ({
138
+ address: params.liquidator.address,
139
+ abi: abis.VARLALIQUIDATOR_ABI,
140
+ functionName: "checkBadDebt",
141
+ args: [user],
142
+ }));
143
+ const res = await multicallChunks({
144
+ client: params.client,
145
+ contracts: calls,
146
+ chunkSize,
147
+ });
148
+ const out = [];
149
+ for (let i = 0; i < res.length; i++) {
150
+ const r = res[i];
151
+ if (r.status !== "success") {
152
+ throw new Error(`Liquidator checkBadDebt multicall failed: ${String(r.error ?? "unknown")}`);
153
+ }
154
+ out.push(normalizeBadDebtStatus(r.result, params.users[i]));
155
+ }
156
+ return out;
91
157
  }
92
158
  // wraps: VarlaMergeLiquidator.core,VarlaMergeLiquidator.treasury,VarlaMergeLiquidator.collateralToken,VarlaMergeLiquidator.positionsToken,VarlaMergeLiquidator.marketAdapter
93
159
  export async function readMergeLiquidatorBasics(params) {
@@ -1 +1 @@
1
- {"version":3,"file":"liquidators.js","sourceRoot":"","sources":["../../src/views/liquidators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"liquidators.js","sourceRoot":"","sources":["../../src/views/liquidators.ts"],"names":[],"mappings":"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"}
@@ -132,6 +132,26 @@ export type ReadOracleTiming = {
132
132
  lastRecoveryFromStale: bigint;
133
133
  lastUpdated: bigint;
134
134
  };
135
+ export type ReadOracleDashboardRow = {
136
+ positionId: bigint;
137
+ snapshot: ReadPositionSnapshot;
138
+ meta: ReadOraclePositionMeta;
139
+ resolvedStatus: {
140
+ positionId: bigint;
141
+ isResolved: boolean;
142
+ };
143
+ staleStatus: {
144
+ positionId: bigint;
145
+ isPriceStale: boolean;
146
+ };
147
+ priceData: ReadOraclePriceData;
148
+ };
149
+ export type ReadOracleDashboard = {
150
+ config: ReadOracleConfig;
151
+ basics: ReadOracleBasics;
152
+ positionIds: bigint[];
153
+ rows: ReadOracleDashboardRow[];
154
+ };
135
155
  export declare function readOraclePriceData(params: {
136
156
  oracle: {
137
157
  read: {
@@ -159,6 +179,72 @@ export declare function readOracleTiming(params: {
159
179
  };
160
180
  positionId: bigint;
161
181
  }): Promise<ReadOracleTiming>;
182
+ /**
183
+ * Multicall-chunked collateral status hydration for many positions.
184
+ */
185
+ export declare function readManyOracleCollateralStatus(params: {
186
+ oracle: {
187
+ address: Address;
188
+ };
189
+ client: {
190
+ multicall: (args: any) => Promise<any>;
191
+ };
192
+ positionIds: readonly bigint[];
193
+ chunkSize?: number;
194
+ }): Promise<ReadOracleCollateralStatus[]>;
195
+ export declare function readManyOracleStatusFlags(params: {
196
+ oracle: {
197
+ address: Address;
198
+ };
199
+ client: {
200
+ multicall: (args: any) => Promise<any>;
201
+ };
202
+ positionIds: readonly bigint[];
203
+ chunkSize?: number;
204
+ }): Promise<Array<{
205
+ positionId: bigint;
206
+ isResolved: boolean;
207
+ isPriceStale: boolean;
208
+ }>>;
209
+ /**
210
+ * Multicall-chunked timing hydration for many positions.
211
+ */
212
+ export declare function readManyOracleTiming(params: {
213
+ oracle: {
214
+ address: Address;
215
+ };
216
+ client: {
217
+ multicall: (args: any) => Promise<any>;
218
+ };
219
+ positionIds: readonly bigint[];
220
+ chunkSize?: number;
221
+ }): Promise<ReadOracleTiming[]>;
222
+ /**
223
+ * Multicall-chunked tryGetPrice hydration for many positions.
224
+ */
225
+ export declare function readManyTryGetPrice(params: {
226
+ oracle: {
227
+ address: Address;
228
+ };
229
+ client: {
230
+ multicall: (args: any) => Promise<any>;
231
+ };
232
+ positionIds: readonly bigint[];
233
+ chunkSize?: number;
234
+ }): Promise<ReadTryGetPrice[]>;
235
+ /**
236
+ * Multicall-chunked price data hydration for many positions.
237
+ */
238
+ export declare function readManyOraclePriceData(params: {
239
+ oracle: {
240
+ address: Address;
241
+ };
242
+ client: {
243
+ multicall: (args: any) => Promise<any>;
244
+ };
245
+ positionIds: readonly bigint[];
246
+ chunkSize?: number;
247
+ }): Promise<ReadOraclePriceData[]>;
162
248
  export declare function readConfiguredPositionIds(params: {
163
249
  oracle: {
164
250
  read: {
@@ -323,4 +409,24 @@ export declare function hydrateOraclePositionIds(params: {
323
409
  snapshots: ReadPositionSnapshot[];
324
410
  meta: ReadOraclePositionMeta[];
325
411
  }>;
412
+ /**
413
+ * Aggregate reader for the admin Oracle page.
414
+ */
415
+ export declare function readOracleDashboard(params: {
416
+ oracle: {
417
+ address: Address;
418
+ read: {
419
+ maxStaleness: () => Promise<bigint>;
420
+ liquidationGracePeriod: () => Promise<bigint>;
421
+ defaultEarlyClosureWindow: () => Promise<bigint>;
422
+ updater: () => Promise<Address>;
423
+ collateralDecimals: () => Promise<number | bigint>;
424
+ getConfiguredPositions: () => Promise<readonly bigint[]>;
425
+ };
426
+ };
427
+ client: {
428
+ multicall: (args: any) => Promise<any>;
429
+ };
430
+ chunkSize?: number;
431
+ }): Promise<ReadOracleDashboard>;
326
432
  //# sourceMappingURL=oracle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../src/views/oracle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../src/views/oracle.ts"],"names":[],"mappings":"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"}
@@ -198,6 +198,254 @@ export async function readOracleTiming(params) {
198
198
  lastUpdated,
199
199
  };
200
200
  }
201
+ /**
202
+ * Multicall-chunked collateral status hydration for many positions.
203
+ */
204
+ // wraps: VarlaOracle.isConfigured,VarlaOracle.isResolved,VarlaOracle.isDepositAllowed,VarlaOracle.isValidCollateral,VarlaOracle.isPriceStale
205
+ export async function readManyOracleCollateralStatus(params) {
206
+ const chunkSize = params.chunkSize ?? 256;
207
+ if (params.positionIds.length === 0)
208
+ return [];
209
+ const calls = params.positionIds.flatMap((pid) => [
210
+ {
211
+ address: params.oracle.address,
212
+ abi: abis.VARLAORACLE_ABI,
213
+ functionName: "isConfigured",
214
+ args: [pid],
215
+ },
216
+ {
217
+ address: params.oracle.address,
218
+ abi: abis.VARLAORACLE_ABI,
219
+ functionName: "isResolved",
220
+ args: [pid],
221
+ },
222
+ {
223
+ address: params.oracle.address,
224
+ abi: abis.VARLAORACLE_ABI,
225
+ functionName: "isDepositAllowed",
226
+ args: [pid],
227
+ },
228
+ {
229
+ address: params.oracle.address,
230
+ abi: abis.VARLAORACLE_ABI,
231
+ functionName: "isValidCollateral",
232
+ args: [pid],
233
+ },
234
+ {
235
+ address: params.oracle.address,
236
+ abi: abis.VARLAORACLE_ABI,
237
+ functionName: "isPriceStale",
238
+ args: [pid],
239
+ },
240
+ ]);
241
+ const res = await multicallChunks({
242
+ client: params.client,
243
+ contracts: calls,
244
+ chunkSize,
245
+ });
246
+ const out = [];
247
+ const stride = 5;
248
+ for (let i = 0; i < params.positionIds.length; i++) {
249
+ const base = i * stride;
250
+ const r0 = res[base + 0];
251
+ const r1 = res[base + 1];
252
+ const r2 = res[base + 2];
253
+ const r3 = res[base + 3];
254
+ const r4 = res[base + 4];
255
+ if (r0.status !== "success" ||
256
+ r1.status !== "success" ||
257
+ r2.status !== "success" ||
258
+ r3.status !== "success" ||
259
+ r4.status !== "success") {
260
+ throw new Error("Oracle collateral status multicall failed");
261
+ }
262
+ out.push({
263
+ positionId: params.positionIds[i],
264
+ isConfigured: r0.result,
265
+ isResolved: r1.result,
266
+ isDepositAllowed: r2.result,
267
+ isValidCollateral: r3.result,
268
+ isPriceStale: r4.result,
269
+ });
270
+ }
271
+ return out;
272
+ }
273
+ // wraps: VarlaOracle.isResolved,VarlaOracle.isPriceStale
274
+ export async function readManyOracleStatusFlags(params) {
275
+ const chunkSize = params.chunkSize ?? 256;
276
+ if (params.positionIds.length === 0)
277
+ return [];
278
+ const calls = params.positionIds.flatMap((pid) => [
279
+ {
280
+ address: params.oracle.address,
281
+ abi: abis.VARLAORACLE_ABI,
282
+ functionName: "isResolved",
283
+ args: [pid],
284
+ },
285
+ {
286
+ address: params.oracle.address,
287
+ abi: abis.VARLAORACLE_ABI,
288
+ functionName: "isPriceStale",
289
+ args: [pid],
290
+ },
291
+ ]);
292
+ const res = await multicallChunks({
293
+ client: params.client,
294
+ contracts: calls,
295
+ chunkSize,
296
+ });
297
+ const out = [];
298
+ const stride = 2;
299
+ for (let i = 0; i < params.positionIds.length; i++) {
300
+ const base = i * stride;
301
+ const r0 = res[base + 0];
302
+ const r1 = res[base + 1];
303
+ if (r0.status !== "success" || r1.status !== "success") {
304
+ throw new Error("Oracle status flags multicall failed");
305
+ }
306
+ out.push({
307
+ positionId: params.positionIds[i],
308
+ isResolved: r0.result,
309
+ isPriceStale: r1.result,
310
+ });
311
+ }
312
+ return out;
313
+ }
314
+ /**
315
+ * Multicall-chunked timing hydration for many positions.
316
+ */
317
+ // wraps: VarlaOracle.getEarlyClosureWindow,VarlaOracle.getEarlyClosureFactor,VarlaOracle.lastRecoveryFromStale,VarlaOracle.getLastUpdated
318
+ export async function readManyOracleTiming(params) {
319
+ const chunkSize = params.chunkSize ?? 256;
320
+ if (params.positionIds.length === 0)
321
+ return [];
322
+ const calls = params.positionIds.flatMap((pid) => [
323
+ {
324
+ address: params.oracle.address,
325
+ abi: abis.VARLAORACLE_ABI,
326
+ functionName: "getEarlyClosureWindow",
327
+ args: [pid],
328
+ },
329
+ {
330
+ address: params.oracle.address,
331
+ abi: abis.VARLAORACLE_ABI,
332
+ functionName: "getEarlyClosureFactor",
333
+ args: [pid],
334
+ },
335
+ {
336
+ address: params.oracle.address,
337
+ abi: abis.VARLAORACLE_ABI,
338
+ functionName: "lastRecoveryFromStale",
339
+ args: [pid],
340
+ },
341
+ {
342
+ address: params.oracle.address,
343
+ abi: abis.VARLAORACLE_ABI,
344
+ functionName: "getLastUpdated",
345
+ args: [pid],
346
+ },
347
+ ]);
348
+ const res = await multicallChunks({
349
+ client: params.client,
350
+ contracts: calls,
351
+ chunkSize,
352
+ });
353
+ const out = [];
354
+ const stride = 4;
355
+ for (let i = 0; i < params.positionIds.length; i++) {
356
+ const base = i * stride;
357
+ const r0 = res[base + 0];
358
+ const r1 = res[base + 1];
359
+ const r2 = res[base + 2];
360
+ const r3 = res[base + 3];
361
+ if (r0.status !== "success" ||
362
+ r1.status !== "success" ||
363
+ r2.status !== "success" ||
364
+ r3.status !== "success") {
365
+ throw new Error("Oracle timing multicall failed");
366
+ }
367
+ out.push({
368
+ positionId: params.positionIds[i],
369
+ earlyClosureWindow: r0.result,
370
+ earlyClosureFactorWad: r1.result,
371
+ lastRecoveryFromStale: r2.result,
372
+ lastUpdated: r3.result,
373
+ });
374
+ }
375
+ return out;
376
+ }
377
+ /**
378
+ * Multicall-chunked tryGetPrice hydration for many positions.
379
+ */
380
+ // wraps: VarlaOracle.tryGetPrice
381
+ export async function readManyTryGetPrice(params) {
382
+ const chunkSize = params.chunkSize ?? 256;
383
+ if (params.positionIds.length === 0)
384
+ return [];
385
+ const calls = params.positionIds.map((pid) => ({
386
+ address: params.oracle.address,
387
+ abi: abis.VARLAORACLE_ABI,
388
+ functionName: "tryGetPrice",
389
+ args: [pid],
390
+ }));
391
+ const res = await multicallChunks({
392
+ client: params.client,
393
+ contracts: calls,
394
+ chunkSize,
395
+ });
396
+ const out = [];
397
+ for (let i = 0; i < res.length; i++) {
398
+ const r = res[i];
399
+ if (r.status !== "success") {
400
+ throw new Error(`Oracle tryGetPrice multicall failed: ${String(r.error ?? "unknown")}`);
401
+ }
402
+ out.push(await readTryGetPrice({
403
+ oracle: {
404
+ read: {
405
+ tryGetPrice: async () => r.result,
406
+ },
407
+ },
408
+ positionId: params.positionIds[i],
409
+ }));
410
+ }
411
+ return out;
412
+ }
413
+ /**
414
+ * Multicall-chunked price data hydration for many positions.
415
+ */
416
+ // wraps: VarlaOracle.getPriceData
417
+ export async function readManyOraclePriceData(params) {
418
+ const chunkSize = params.chunkSize ?? 256;
419
+ if (params.positionIds.length === 0)
420
+ return [];
421
+ const calls = params.positionIds.map((pid) => ({
422
+ address: params.oracle.address,
423
+ abi: abis.VARLAORACLE_ABI,
424
+ functionName: "getPriceData",
425
+ args: [pid],
426
+ }));
427
+ const res = await multicallChunks({
428
+ client: params.client,
429
+ contracts: calls,
430
+ chunkSize,
431
+ });
432
+ const out = [];
433
+ for (let i = 0; i < res.length; i++) {
434
+ const r = res[i];
435
+ if (r.status !== "success") {
436
+ throw new Error(`Oracle getPriceData multicall failed: ${String(r.error ?? "unknown")}`);
437
+ }
438
+ out.push(await readOraclePriceData({
439
+ oracle: {
440
+ read: {
441
+ getPriceData: async () => r.result,
442
+ },
443
+ },
444
+ positionId: params.positionIds[i],
445
+ }));
446
+ }
447
+ return out;
448
+ }
201
449
  // wraps: VarlaOracle.getConfiguredPositions
202
450
  export async function readConfiguredPositionIds(params) {
203
451
  const ids = await params.oracle.read.getConfiguredPositions();
@@ -240,7 +488,7 @@ function normalizePositionSnapshot(raw, positionId) {
240
488
  const priceE8 = r.priceE8 ?? r[1];
241
489
  const manuallyInvalidated = r.manuallyInvalidated ?? r[2];
242
490
  const riskTier = r.riskTier ?? r[3];
243
- const earlyClosureFactorWad = r.earlyClosureFactorWad ?? r[4];
491
+ const earlyClosureFactorWad = r.earlyClosureFactorWad ?? r.ltvAdjustmentFactorWad ?? r[4];
244
492
  const lastRecoveryFromStale = r.lastRecoveryFromStale_ ?? r.lastRecoveryFromStale ?? r[5];
245
493
  const isFinalized = r.isFinalized_ ?? r.isFinalized ?? r[6];
246
494
  if (typeof priceOk !== "boolean" ||
@@ -442,4 +690,60 @@ export async function hydrateOraclePositionIds(params) {
442
690
  ]);
443
691
  return { positionIds: [...params.positionIds], snapshots, meta };
444
692
  }
693
+ /**
694
+ * Aggregate reader for the admin Oracle page.
695
+ */
696
+ // wraps: VarlaOracle.maxStaleness,VarlaOracle.liquidationGracePeriod,VarlaOracle.defaultEarlyClosureWindow,VarlaOracle.updater,VarlaOracle.collateralDecimals,VarlaOracle.getConfiguredPositions,VarlaOracle.getPositionSnapshot,VarlaOracle.getConditionId,VarlaOracle.getResolutionTime,VarlaOracle.getOppositePositionId,VarlaOracle.isNegRisk,VarlaOracle.getNegRiskMarketId,VarlaOracle.isManuallyInvalidated,VarlaOracle.isConfigured,VarlaOracle.isResolved,VarlaOracle.isDepositAllowed,VarlaOracle.isValidCollateral,VarlaOracle.isPriceStale,VarlaOracle.getEarlyClosureWindow,VarlaOracle.getEarlyClosureFactor,VarlaOracle.lastRecoveryFromStale,VarlaOracle.getLastUpdated,VarlaOracle.tryGetPrice,VarlaOracle.getPriceData
697
+ export async function readOracleDashboard(params) {
698
+ const chunkSize = params.chunkSize ?? 256;
699
+ const [config, basics, positionIds] = await Promise.all([
700
+ readOracleConfig({ oracle: params.oracle }),
701
+ readOracleBasics({ oracle: params.oracle }),
702
+ readConfiguredPositionIds({ oracle: params.oracle }),
703
+ ]);
704
+ if (positionIds.length === 0) {
705
+ return { config, basics, positionIds: [], rows: [] };
706
+ }
707
+ const [snapshots, meta, statusFlags, priceData] = await Promise.all([
708
+ readManyPositionSnapshots({
709
+ oracle: { address: params.oracle.address },
710
+ client: params.client,
711
+ positionIds,
712
+ chunkSize,
713
+ }),
714
+ readManyOraclePositionMeta({
715
+ oracle: { address: params.oracle.address },
716
+ client: params.client,
717
+ positionIds,
718
+ chunkSize,
719
+ }),
720
+ readManyOracleStatusFlags({
721
+ oracle: { address: params.oracle.address },
722
+ client: params.client,
723
+ positionIds,
724
+ chunkSize,
725
+ }),
726
+ readManyOraclePriceData({
727
+ oracle: { address: params.oracle.address },
728
+ client: params.client,
729
+ positionIds,
730
+ chunkSize,
731
+ }),
732
+ ]);
733
+ const rows = positionIds.map((positionId, i) => ({
734
+ positionId,
735
+ snapshot: snapshots[i],
736
+ meta: meta[i],
737
+ resolvedStatus: {
738
+ positionId,
739
+ isResolved: statusFlags[i].isResolved,
740
+ },
741
+ staleStatus: {
742
+ positionId,
743
+ isPriceStale: statusFlags[i].isPriceStale,
744
+ },
745
+ priceData: priceData[i],
746
+ }));
747
+ return { config, basics, positionIds, rows };
748
+ }
445
749
  //# sourceMappingURL=oracle.js.map