@varla/sdk 2.7.2 → 2.8.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.
package/AGENTS.md CHANGED
@@ -112,12 +112,12 @@ if (decoded) console.log(formatVarlaError(decoded));
112
112
  <!-- BEGIN GENERATED:EXPORTS -->
113
113
  <!--
114
114
  Auto-generated by scripts/sdk/generate-docs.ts — DO NOT EDIT MANUALLY.
115
- 354 functions, 171 types across 10 subpaths.
115
+ 358 functions, 171 types across 10 subpaths.
116
116
  -->
117
117
 
118
- ### `@varla/sdk` (175 functions, 87 types, 8 constants)
118
+ ### `@varla/sdk` (177 functions, 87 types, 8 constants)
119
119
 
120
- **Functions:** `prepareCoreSetDefaultLtvConfig`, `prepareCoreSetLiquidationConfig`, `prepareCoreSetTierLiquidationConfig`, `prepareCoreSetMaxPositions`, `prepareCoreSetMaxPositionsBounds`, `prepareCoreSetOracle`, `prepareCoreSetPositionLtvOverride`, `prepareCoreClearPositionLtvOverride`, `prepareCoreSetPositionLiquidationConfigOverride`, `prepareCoreClearPositionLiquidationConfigOverride`, `preparePoolSetDepositCap`, `preparePoolSetBorrowCap`, `preparePoolWithdrawReserve`, `preparePoolSetInterestRateStrategy`, `prepareOracleSetMaxStaleness`, `prepareOracleSetLiquidationGracePeriod`, `prepareOracleSetDefaultEarlyClosureWindow`, `prepareStrategySetPool`, `prepareStrategySetRateParams`, `prepareOracleUpdaterRouterSetPublisher`, `prepareCoreDeposit`, `prepareCoreWithdraw`, `prepareCoreBorrow`, `prepareCoreRepay`, `prepareErc20Approve`, `prepareErc1155SetApprovalForAll`, `prepareLiquidatorLiquidate`, `prepareLiquidatorLiquidateMulti`, `prepareLiquidatorLiquidateBadDebt`, `prepareLiquidatorResolveBadDebtWithReserve`, `prepareOracleConfigurePositionsBatch`, `prepareOracleConfigurePosition`, `prepareOracleSetUpdater`, `prepareOracleSetPositionEarlyClosureWindowOverride`, `prepareOracleClearPositionEarlyClosureWindowOverride`, `prepareOracleInvalidatePosition`, `prepareOracleValidatePosition`, `prepareOracleRegisterNegRiskMarketPositions`, `prepareOracleOverrideNegRiskMarketPositions`, `prepareOracleConfigureOppositePositions`, `prepareOracleConfigureOppositePositionsBatch`, `prepareOracleConfigureNegRiskPositionsBatch`, `prepareOracleUpdatePrices`, `prepareOracleUpdatePrice`, `prepareOracleFinalizePosition`, `prepareOracleUnfinalizePosition`, `prepareOracleResolvePositionEarly`, `prepareOracleBatchFinalizePositions`, `prepareOracleBatchResolvePositionsEarly`, `prepareOracleSetResolutionPrice`, `planOracleSeed`, `seedOracleFromJson`, `seedOracleFromJsonFiles`, `prepareOracleSeedPlan`, `executeOracleSeedPlan`, `buildNonce`, `splitNonce`, `toOracleUpdaterRouterTypedMessage`, `computeOracleUpdaterDigest`, `signOracleUpdaterRouterUpdate`, `prepareOracleUpdaterRouterUpdatePricesWithSig`, `preparePoolDeposit`, `preparePoolMint`, `preparePoolWithdraw`, `preparePoolRedeem`, `readCanCall`, `assertCanCallImmediate`, `sendTx`, `selectorFromSignature`, `chunk`, `multicallChunks`, `getAddressBook`, `getVarlaContracts`, `getRequiredVarlaContracts`, `getErc20`, `getErc1155`, `getErc4626`, `decodeEventLogs`, `getEventLogsChunked`, `syncOracleRegistryViaEvents`, `getRecentEvents`, `formatWad`, `formatBps`, `formatPriceE8`, `parseUnits`, `parseWad`, `isSupportedChain`, `assertSupportedChain`, `getChainMeta`, `readAccessManagerBasics`, `readRoleSummary`, `readTargetConfig`, `readHasRole`, `readManyHasRole`, `readManyTargetFunctionRoles`, `readManyTargetConfigs`, `readAdapterInfo`, `readInterestRateStrategyBasics`, `getInterestRateStrategyFromPool`, `readProxyAdminPaused`, `readRepayTiming`, `readPositionCount`, `readOracleGuardsStatus`, `readAccountSnapshot`, `readCoreAddresses`, `readMaxPositionsConfig`, `readAccountPositionsFull`, `readPositionBalances`, `readBorrowerState`, `readPortfolioValue`, `readBorrowers`, `readCoreGlobalDebt`, `readPositionLiquidationConfigOverride`, `readPositionBalance`, `readAccountPositions`, `readBorrowersPage`, `readManyAccountSnapshots`, `readHealthFactor`, `readLiquidationConfig`, `readDefaultLtvConfig`, `readTieredLtvConfig`, `readTierLiquidationConfig`, `readLiquidationParamsForPosition`, `readPositionLtvOverride`, `readLtvForPosition`, `readLiquidationBonusBps`, `readManyLiquidationBonusBps`, `readWalletPositionIds`, `previewBorrow`, `previewRepay`, `readBorrowLimits`, `readManyBorrowLimits`, `readHypotheticalBorrowCapacity`, `readLenderSnapshot`, `readMaxWithdraw`, `readMaxRedeem`, `readLiquidatorBasics`, `readCanLiquidate`, `readPreviewLiquidation`, `readCalculateLiquidationBonus`, `readBadDebtStatus`, `readMergeLiquidatorBasics`, `readConvertLiquidatorBasics`, `rankPositionsForLiquidation`, `readLiquidationCandidates`, `readOracleRegistry`, `readOracleRegistryPage`, `readOracleFinalizationStatus`, `readOracleConfig`, `readOracleCollateralStatus`, `readTryGetPrice`, `readOraclePriceData`, `readOracleBasics`, `readOracleTiming`, `readConfiguredPositionIds`, `readNegRiskMarketPositionIds`, `readRiskTier`, `readSpotPrice`, `readTwap`, `readPrice`, `readLiquidity`, `readPositionSnapshot`, `readManyPositionSnapshots`, `readOraclePositionMeta`, `readManyOraclePositionMeta`, `hydrateOraclePositionIds`, `readPoolSnapshot`, `readPoolCaps`, `readPoolAccounting`, `readPoolRates`, `readPoolSharePrice`, `readPoolHealthScore`, `readPoolDebtState`, `readPoolCoreAddress`, `readSystemSnapshot`
120
+ **Functions:** `prepareCoreSetDefaultLtvConfig`, `prepareCoreSetLiquidationConfig`, `prepareCoreSetTierLiquidationConfig`, `prepareCoreSetMaxPositions`, `prepareCoreSetMaxPositionsBounds`, `prepareCoreSetOracle`, `prepareCoreSetPositionLtvOverride`, `prepareCoreClearPositionLtvOverride`, `prepareCoreSetPositionLiquidationConfigOverride`, `prepareCoreClearPositionLiquidationConfigOverride`, `preparePoolSetDepositCap`, `preparePoolSetBorrowCap`, `preparePoolWithdrawReserve`, `preparePoolSetInterestRateStrategy`, `prepareOracleSetMaxStaleness`, `prepareOracleSetLiquidationGracePeriod`, `prepareOracleSetDefaultEarlyClosureWindow`, `prepareStrategySetPool`, `prepareStrategySetRateParams`, `prepareOracleUpdaterRouterSetPublisher`, `prepareCoreDeposit`, `prepareCoreWithdraw`, `prepareCoreBorrow`, `prepareCoreRepay`, `prepareErc20Approve`, `prepareErc1155SetApprovalForAll`, `prepareLiquidatorLiquidate`, `prepareLiquidatorLiquidateMulti`, `prepareLiquidatorLiquidateBadDebt`, `prepareLiquidatorResolveBadDebtWithReserve`, `prepareOracleConfigurePositionsBatch`, `prepareOracleConfigurePosition`, `prepareOracleSetUpdater`, `prepareOracleSetPositionEarlyClosureWindowOverride`, `prepareOracleClearPositionEarlyClosureWindowOverride`, `prepareOracleInvalidatePosition`, `prepareOracleValidatePosition`, `prepareOracleRegisterNegRiskMarketPositions`, `prepareOracleOverrideNegRiskMarketPositions`, `prepareOracleConfigureOppositePositions`, `prepareOracleConfigureOppositePositionsBatch`, `prepareOracleConfigureNegRiskPositionsBatch`, `prepareOracleUpdatePrices`, `prepareOracleUpdatePrice`, `prepareOracleFinalizePosition`, `prepareOracleUnfinalizePosition`, `prepareOracleResolvePositionEarly`, `prepareOracleBatchFinalizePositions`, `prepareOracleBatchResolvePositionsEarly`, `prepareOracleSetResolutionPrice`, `planOracleSeed`, `seedOracleFromJson`, `seedOracleFromJsonFiles`, `prepareOracleSeedPlan`, `executeOracleSeedPlan`, `buildNonce`, `splitNonce`, `readOracleUpdaterRouterLaneSeq`, `readOracleUpdaterRouterNonce`, `toOracleUpdaterRouterTypedMessage`, `computeOracleUpdaterDigest`, `signOracleUpdaterRouterUpdate`, `prepareOracleUpdaterRouterUpdatePricesWithSig`, `preparePoolDeposit`, `preparePoolMint`, `preparePoolWithdraw`, `preparePoolRedeem`, `readCanCall`, `assertCanCallImmediate`, `sendTx`, `selectorFromSignature`, `chunk`, `multicallChunks`, `getAddressBook`, `getVarlaContracts`, `getRequiredVarlaContracts`, `getErc20`, `getErc1155`, `getErc4626`, `decodeEventLogs`, `getEventLogsChunked`, `syncOracleRegistryViaEvents`, `getRecentEvents`, `formatWad`, `formatBps`, `formatPriceE8`, `parseUnits`, `parseWad`, `isSupportedChain`, `assertSupportedChain`, `getChainMeta`, `readAccessManagerBasics`, `readRoleSummary`, `readTargetConfig`, `readHasRole`, `readManyHasRole`, `readManyTargetFunctionRoles`, `readManyTargetConfigs`, `readAdapterInfo`, `readInterestRateStrategyBasics`, `getInterestRateStrategyFromPool`, `readProxyAdminPaused`, `readRepayTiming`, `readPositionCount`, `readOracleGuardsStatus`, `readAccountSnapshot`, `readCoreAddresses`, `readMaxPositionsConfig`, `readAccountPositionsFull`, `readPositionBalances`, `readBorrowerState`, `readPortfolioValue`, `readBorrowers`, `readCoreGlobalDebt`, `readPositionLiquidationConfigOverride`, `readPositionBalance`, `readAccountPositions`, `readBorrowersPage`, `readManyAccountSnapshots`, `readHealthFactor`, `readLiquidationConfig`, `readDefaultLtvConfig`, `readTieredLtvConfig`, `readTierLiquidationConfig`, `readLiquidationParamsForPosition`, `readPositionLtvOverride`, `readLtvForPosition`, `readLiquidationBonusBps`, `readManyLiquidationBonusBps`, `readWalletPositionIds`, `previewBorrow`, `previewRepay`, `readBorrowLimits`, `readManyBorrowLimits`, `readHypotheticalBorrowCapacity`, `readLenderSnapshot`, `readMaxWithdraw`, `readMaxRedeem`, `readLiquidatorBasics`, `readCanLiquidate`, `readPreviewLiquidation`, `readCalculateLiquidationBonus`, `readBadDebtStatus`, `readMergeLiquidatorBasics`, `readConvertLiquidatorBasics`, `rankPositionsForLiquidation`, `readLiquidationCandidates`, `readOracleRegistry`, `readOracleRegistryPage`, `readOracleFinalizationStatus`, `readOracleConfig`, `readOracleCollateralStatus`, `readTryGetPrice`, `readOraclePriceData`, `readOracleBasics`, `readOracleTiming`, `readConfiguredPositionIds`, `readNegRiskMarketPositionIds`, `readRiskTier`, `readSpotPrice`, `readTwap`, `readPrice`, `readLiquidity`, `readPositionSnapshot`, `readManyPositionSnapshots`, `readOraclePositionMeta`, `readManyOraclePositionMeta`, `hydrateOraclePositionIds`, `readPoolSnapshot`, `readPoolCaps`, `readPoolAccounting`, `readPoolRates`, `readPoolSharePrice`, `readPoolHealthScore`, `readPoolDebtState`, `readPoolCoreAddress`, `readSystemSnapshot`
121
121
 
122
122
  **Types:** `StrategyRateParams`, `SimulatedTx`, `MarketConfigItem`, `OraclePriceUpdateItem`, `OracleLikeForSeeding`, `OracleSeedPlan`, `OracleSeedExecResult`, `MarketConfigItemJson`, `OppositePairItemJson`, `NegRiskMarketItemJson`, `SeedOracleFromJsonResult`, `OracleUpdaterRouterUpdate`, `AccessManagerCanCallLike`, `CanCallResult`, `MulticallChunkOptions`, `ReadonlyContract`, `VarlaContracts`, `GetVarlaContractsParams`, `DecodedEvent`, `GetEventLogsChunkedParams`, `OracleRegistryEntry`, `SyncOracleRegistryViaEventsParams`, `GetRecentEventsParams`, `VarlaChainKey`, `StablecoinKind`, `CollateralMeta`, `ChainMeta`, `ChainKey`, `AddressBook`, `ReadAccessManagerBasics`, `ReadManyHasRoleResult`, `ReadManyTargetFunctionRolesResult`, `ReadManyTargetConfigsResult`, `ReadAdapterInfo`, `InterestRateParams`, `ReadAccountSnapshot`, `ReadRepayTiming`, `ReadPositionCount`, `ReadOracleGuardsStatus`, `ReadCoreAddresses`, `ReadMaxPositionsConfig`, `ReadAccountPositionsFull`, `ReadPositionBalances`, `ReadBorrowerState`, `ReadPortfolioValue`, `ReadCoreGlobalDebt`, `ReadPositionLiquidationConfigOverride`, `ReadBorrowersPage`, `ReadHealthFactor`, `ReadLiquidationConfig`, `ReadDefaultLtvConfig`, `ReadTieredLtvConfig`, `ReadTierLiquidationConfig`, `ReadLiquidationParamsForPosition`, `ReadPositionLtvOverride`, `ReadManyLiquidationBonusBpsRow`, `ReadBorrowLimits`, `ReadWalletPositionIds`, `ReadHypotheticalBorrowCapacity`, `PreviewBorrow`, `PreviewRepay`, `ReadLenderSnapshot`, `ReadLiquidatorBasics`, `ReadCanLiquidate`, `ReadPreviewLiquidation`, `ReadBadDebtStatus`, `LiquidationCandidate`, `ReadLiquidationCandidates`, `ReadOracleRegistryParams`, `ReadOracleRegistryPage`, `ReadOracleConfig`, `ReadOracleFinalizationStatus`, `ReadOracleCollateralStatus`, `ReadTryGetPrice`, `ReadOraclePriceData`, `ReadOracleBasics`, `ReadOracleTiming`, `ReadPositionSnapshot`, `ReadOraclePositionMeta`, `ReadPoolSnapshot`, `ReadPoolDebtState`, `ReadPoolCaps`, `ReadPoolAccounting`, `ReadPoolRates`, `ReadPoolSharePrice`, `ReadPoolHealthScore`, `ReadSystemSnapshot`
123
123
 
@@ -135,9 +135,9 @@ if (decoded) console.log(formatVarlaError(decoded));
135
135
 
136
136
  **Types:** `ReadAccessManagerBasics`, `ReadManyHasRoleResult`, `ReadManyTargetFunctionRolesResult`, `ReadManyTargetConfigsResult`, `ReadAdapterInfo`, `InterestRateParams`, `ReadAccountSnapshot`, `ReadRepayTiming`, `ReadPositionCount`, `ReadOracleGuardsStatus`, `ReadCoreAddresses`, `ReadMaxPositionsConfig`, `ReadAccountPositionsFull`, `ReadPositionBalances`, `ReadBorrowerState`, `ReadPortfolioValue`, `ReadCoreGlobalDebt`, `ReadPositionLiquidationConfigOverride`, `ReadBorrowersPage`, `ReadHealthFactor`, `ReadLiquidationConfig`, `ReadDefaultLtvConfig`, `ReadTieredLtvConfig`, `ReadTierLiquidationConfig`, `ReadLiquidationParamsForPosition`, `ReadPositionLtvOverride`, `ReadManyLiquidationBonusBpsRow`, `ReadBorrowLimits`, `ReadWalletPositionIds`, `ReadHypotheticalBorrowCapacity`, `PreviewBorrow`, `PreviewRepay`, `ReadLenderSnapshot`, `ReadLiquidatorBasics`, `ReadCanLiquidate`, `ReadPreviewLiquidation`, `ReadBadDebtStatus`, `LiquidationCandidate`, `ReadLiquidationCandidates`, `ReadOracleRegistryParams`, `ReadOracleRegistryPage`, `ReadOracleConfig`, `ReadOracleFinalizationStatus`, `ReadOracleCollateralStatus`, `ReadTryGetPrice`, `ReadOraclePriceData`, `ReadOracleBasics`, `ReadOracleTiming`, `ReadPositionSnapshot`, `ReadOraclePositionMeta`, `ReadPoolSnapshot`, `ReadPoolDebtState`, `ReadPoolCaps`, `ReadPoolAccounting`, `ReadPoolRates`, `ReadPoolSharePrice`, `ReadPoolHealthScore`, `ReadSystemSnapshot`
137
137
 
138
- ### `@varla/sdk/actions` (69 functions, 14 types, 4 constants)
138
+ ### `@varla/sdk/actions` (71 functions, 14 types, 4 constants)
139
139
 
140
- **Functions:** `prepareCoreSetDefaultLtvConfig`, `prepareCoreSetLiquidationConfig`, `prepareCoreSetTierLiquidationConfig`, `prepareCoreSetMaxPositions`, `prepareCoreSetMaxPositionsBounds`, `prepareCoreSetOracle`, `prepareCoreSetPositionLtvOverride`, `prepareCoreClearPositionLtvOverride`, `prepareCoreSetPositionLiquidationConfigOverride`, `prepareCoreClearPositionLiquidationConfigOverride`, `preparePoolSetDepositCap`, `preparePoolSetBorrowCap`, `preparePoolWithdrawReserve`, `preparePoolSetInterestRateStrategy`, `prepareOracleSetMaxStaleness`, `prepareOracleSetLiquidationGracePeriod`, `prepareOracleSetDefaultEarlyClosureWindow`, `prepareStrategySetPool`, `prepareStrategySetRateParams`, `prepareOracleUpdaterRouterSetPublisher`, `prepareCoreDeposit`, `prepareCoreWithdraw`, `prepareCoreBorrow`, `prepareCoreRepay`, `prepareErc20Approve`, `prepareErc1155SetApprovalForAll`, `prepareLiquidatorLiquidate`, `prepareLiquidatorLiquidateMulti`, `prepareLiquidatorLiquidateBadDebt`, `prepareLiquidatorResolveBadDebtWithReserve`, `prepareOracleConfigurePositionsBatch`, `prepareOracleConfigurePosition`, `prepareOracleSetUpdater`, `prepareOracleSetPositionEarlyClosureWindowOverride`, `prepareOracleClearPositionEarlyClosureWindowOverride`, `prepareOracleInvalidatePosition`, `prepareOracleValidatePosition`, `prepareOracleRegisterNegRiskMarketPositions`, `prepareOracleOverrideNegRiskMarketPositions`, `prepareOracleConfigureOppositePositions`, `prepareOracleConfigureOppositePositionsBatch`, `prepareOracleConfigureNegRiskPositionsBatch`, `prepareOracleUpdatePrices`, `prepareOracleUpdatePrice`, `prepareOracleFinalizePosition`, `prepareOracleUnfinalizePosition`, `prepareOracleResolvePositionEarly`, `prepareOracleBatchFinalizePositions`, `prepareOracleBatchResolvePositionsEarly`, `prepareOracleSetResolutionPrice`, `planOracleSeed`, `seedOracleFromJson`, `seedOracleFromJsonFiles`, `prepareOracleSeedPlan`, `executeOracleSeedPlan`, `buildNonce`, `splitNonce`, `toOracleUpdaterRouterTypedMessage`, `computeOracleUpdaterDigest`, `signOracleUpdaterRouterUpdate`, `prepareOracleUpdaterRouterUpdatePricesWithSig`, `preparePoolDeposit`, `preparePoolMint`, `preparePoolWithdraw`, `preparePoolRedeem`, `readCanCall`, `assertCanCallImmediate`, `sendTx`, `selectorFromSignature`
140
+ **Functions:** `prepareCoreSetDefaultLtvConfig`, `prepareCoreSetLiquidationConfig`, `prepareCoreSetTierLiquidationConfig`, `prepareCoreSetMaxPositions`, `prepareCoreSetMaxPositionsBounds`, `prepareCoreSetOracle`, `prepareCoreSetPositionLtvOverride`, `prepareCoreClearPositionLtvOverride`, `prepareCoreSetPositionLiquidationConfigOverride`, `prepareCoreClearPositionLiquidationConfigOverride`, `preparePoolSetDepositCap`, `preparePoolSetBorrowCap`, `preparePoolWithdrawReserve`, `preparePoolSetInterestRateStrategy`, `prepareOracleSetMaxStaleness`, `prepareOracleSetLiquidationGracePeriod`, `prepareOracleSetDefaultEarlyClosureWindow`, `prepareStrategySetPool`, `prepareStrategySetRateParams`, `prepareOracleUpdaterRouterSetPublisher`, `prepareCoreDeposit`, `prepareCoreWithdraw`, `prepareCoreBorrow`, `prepareCoreRepay`, `prepareErc20Approve`, `prepareErc1155SetApprovalForAll`, `prepareLiquidatorLiquidate`, `prepareLiquidatorLiquidateMulti`, `prepareLiquidatorLiquidateBadDebt`, `prepareLiquidatorResolveBadDebtWithReserve`, `prepareOracleConfigurePositionsBatch`, `prepareOracleConfigurePosition`, `prepareOracleSetUpdater`, `prepareOracleSetPositionEarlyClosureWindowOverride`, `prepareOracleClearPositionEarlyClosureWindowOverride`, `prepareOracleInvalidatePosition`, `prepareOracleValidatePosition`, `prepareOracleRegisterNegRiskMarketPositions`, `prepareOracleOverrideNegRiskMarketPositions`, `prepareOracleConfigureOppositePositions`, `prepareOracleConfigureOppositePositionsBatch`, `prepareOracleConfigureNegRiskPositionsBatch`, `prepareOracleUpdatePrices`, `prepareOracleUpdatePrice`, `prepareOracleFinalizePosition`, `prepareOracleUnfinalizePosition`, `prepareOracleResolvePositionEarly`, `prepareOracleBatchFinalizePositions`, `prepareOracleBatchResolvePositionsEarly`, `prepareOracleSetResolutionPrice`, `planOracleSeed`, `seedOracleFromJson`, `seedOracleFromJsonFiles`, `prepareOracleSeedPlan`, `executeOracleSeedPlan`, `buildNonce`, `splitNonce`, `readOracleUpdaterRouterLaneSeq`, `readOracleUpdaterRouterNonce`, `toOracleUpdaterRouterTypedMessage`, `computeOracleUpdaterDigest`, `signOracleUpdaterRouterUpdate`, `prepareOracleUpdaterRouterUpdatePricesWithSig`, `preparePoolDeposit`, `preparePoolMint`, `preparePoolWithdraw`, `preparePoolRedeem`, `readCanCall`, `assertCanCallImmediate`, `sendTx`, `selectorFromSignature`
141
141
 
142
142
  **Types:** `StrategyRateParams`, `SimulatedTx`, `MarketConfigItem`, `OraclePriceUpdateItem`, `OracleLikeForSeeding`, `OracleSeedPlan`, `OracleSeedExecResult`, `MarketConfigItemJson`, `OppositePairItemJson`, `NegRiskMarketItemJson`, `SeedOracleFromJsonResult`, `OracleUpdaterRouterUpdate`, `AccessManagerCanCallLike`, `CanCallResult`
143
143
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # @varla-xyz/protocol
2
2
 
3
+ ## 2.8.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 524080f: Added helper functions to read oracle updater router lane sequences and packed nonces.
8
+
9
+ - add readOracleUpdaterRouterLaneSeq to fetch the current sequence for a publisher/lane
10
+ - add readOracleUpdaterRouterNonce to fetch the packed nonce for a publisher/lane
11
+
3
12
  ## 2.7.2
4
13
 
5
14
  ### Patch Changes
@@ -1,10 +1,10 @@
1
- import type { Address, Hash, Hex } from "viem";
1
+ import type { Address, Hash, Hex, PublicClient } from "viem";
2
2
  /**
3
3
  * EIP-712 payload builder for OracleUpdaterRouter.
4
4
  *
5
5
  * Router contract name/version are fixed by the solidity constructor:
6
6
  * - name: VarlaOracleUpdaterRouter
7
- * - version: 1
7
+ * - version: 2
8
8
  */
9
9
  export declare const ORACLE_UPDATER_ROUTER_EIP712: {
10
10
  readonly name: "VarlaOracleUpdaterRouter";
@@ -17,6 +17,31 @@ export declare function splitNonce(nonce: bigint): {
17
17
  laneKey: bigint;
18
18
  seq: bigint;
19
19
  };
20
+ /**
21
+ * Read the current sequence for a (publisher, laneKey) pair.
22
+ *
23
+ * Router V2 exposes:
24
+ * nonces(address publisher, uint192 laneKey) -> uint64
25
+ */
26
+ export declare function readOracleUpdaterRouterLaneSeq(params: {
27
+ publicClient: Pick<PublicClient, "readContract">;
28
+ routerAddress: Address;
29
+ publisher: Address;
30
+ laneKey?: bigint;
31
+ }): Promise<bigint>;
32
+ /**
33
+ * Read the current packed nonce for a (publisher, laneKey) pair.
34
+ *
35
+ * Packed nonce format:
36
+ * upper 192 bits = lane key
37
+ * lower 64 bits = sequence
38
+ */
39
+ export declare function readOracleUpdaterRouterNonce(params: {
40
+ publicClient: Pick<PublicClient, "readContract">;
41
+ routerAddress: Address;
42
+ publisher: Address;
43
+ laneKey?: bigint;
44
+ }): Promise<bigint>;
20
45
  export type OracleUpdaterRouterUpdate = {
21
46
  oracle: Address;
22
47
  chainId: bigint;
@@ -1 +1 @@
1
- {"version":3,"file":"oracleUpdaterRouter.d.ts","sourceRoot":"","sources":["../../src/actions/oracleUpdaterRouter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAK/C;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B;;;CAG/B,CAAC;AAIX,qEAAqE;AACrE,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,oDAAoD;AACpD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAK1E;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAY9B,CAAC;AAEX;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,EAAE,IACwC,CAAC;AAuBvE;;GAEG;AACH,wBAAgB,iCAAiC,CAAC,CAAC,EAAE,yBAAyB;;;;;;;;;;EAY7E;AA+DD;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE;IACjD,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,yBAAyB,CAAC;CACnC,GAAG,IAAI,CAMP;AAED,wBAAsB,6BAA6B,CAAC,MAAM,EAAE;IAC1D,YAAY,EAAE;QACZ,IAAI,EAAE,CAAC,IAAI,EAAE;YAAE,IAAI,EAAE,IAAI,CAAA;SAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;KAC9C,CAAC;IACF,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,yBAAyB,CAAC;CACnC,GAAG,OAAO,CAAC,GAAG,CAAC,CAWf;AAED,wBAAsB,6CAA6C,CAAC,MAAM,EAAE;IAC1E,YAAY,EAAE;QAAE,gBAAgB,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;KAAE,CAAC;IAChE,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,yBAAyB,CAAC;IAClC,SAAS,EAAE,IAAI,CAAC;CACjB,GAAG,OAAO,CAAC,GAAG,CAAC,CAqBf"}
1
+ {"version":3,"file":"oracleUpdaterRouter.d.ts","sourceRoot":"","sources":["../../src/actions/oracleUpdaterRouter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAK7D;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B;;;CAG/B,CAAC;AAIX,qEAAqE;AACrE,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,oDAAoD;AACpD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAK1E;AAED;;;;;GAKG;AACH,wBAAsB,8BAA8B,CAAC,MAAM,EAAE;IAC3D,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IACjD,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,MAAM,CAAC,CASlB;AAED;;;;;;GAMG;AACH,wBAAsB,4BAA4B,CAAC,MAAM,EAAE;IACzD,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IACjD,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,MAAM,CAAC,CASlB;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAY9B,CAAC;AAEX;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,EAAE,IACwC,CAAC;AAuBvE;;GAEG;AACH,wBAAgB,iCAAiC,CAAC,CAAC,EAAE,yBAAyB;;;;;;;;;;EAY7E;AA+DD;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE;IACjD,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,yBAAyB,CAAC;CACnC,GAAG,IAAI,CAMP;AAED,wBAAsB,6BAA6B,CAAC,MAAM,EAAE;IAC1D,YAAY,EAAE;QACZ,IAAI,EAAE,CAAC,IAAI,EAAE;YAAE,IAAI,EAAE,IAAI,CAAA;SAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;KAC9C,CAAC;IACF,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,yBAAyB,CAAC;CACnC,GAAG,OAAO,CAAC,GAAG,CAAC,CAWf;AAED,wBAAsB,6CAA6C,CAAC,MAAM,EAAE;IAC1E,YAAY,EAAE;QAAE,gBAAgB,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;KAAE,CAAC;IAChE,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,yBAAyB,CAAC;IAClC,SAAS,EAAE,IAAI,CAAC;CACjB,GAAG,OAAO,CAAC,GAAG,CAAC,CAqBf"}
@@ -6,7 +6,7 @@ import { abis } from "../generated.js";
6
6
  *
7
7
  * Router contract name/version are fixed by the solidity constructor:
8
8
  * - name: VarlaOracleUpdaterRouter
9
- * - version: 1
9
+ * - version: 2
10
10
  */
11
11
  export const ORACLE_UPDATER_ROUTER_EIP712 = {
12
12
  name: "VarlaOracleUpdaterRouter",
@@ -24,6 +24,39 @@ export function splitNonce(nonce) {
24
24
  seq: nonce & 0xffffffffffffffffn,
25
25
  };
26
26
  }
27
+ /**
28
+ * Read the current sequence for a (publisher, laneKey) pair.
29
+ *
30
+ * Router V2 exposes:
31
+ * nonces(address publisher, uint192 laneKey) -> uint64
32
+ */
33
+ export async function readOracleUpdaterRouterLaneSeq(params) {
34
+ const laneKey = params.laneKey ?? 0n;
35
+ const seq = await params.publicClient.readContract({
36
+ address: params.routerAddress,
37
+ abi: abis.ORACLEUPDATERROUTER_ABI,
38
+ functionName: "nonces",
39
+ args: [params.publisher, laneKey],
40
+ });
41
+ return BigInt(seq);
42
+ }
43
+ /**
44
+ * Read the current packed nonce for a (publisher, laneKey) pair.
45
+ *
46
+ * Packed nonce format:
47
+ * upper 192 bits = lane key
48
+ * lower 64 bits = sequence
49
+ */
50
+ export async function readOracleUpdaterRouterNonce(params) {
51
+ const laneKey = params.laneKey ?? 0n;
52
+ const seq = await readOracleUpdaterRouterLaneSeq({
53
+ publicClient: params.publicClient,
54
+ routerAddress: params.routerAddress,
55
+ publisher: params.publisher,
56
+ laneKey,
57
+ });
58
+ return buildNonce(laneKey, seq);
59
+ }
27
60
  export const ORACLE_UPDATER_ROUTER_TYPES = {
28
61
  Update: [
29
62
  { name: "oracle", type: "address" },
@@ -1 +1 @@
1
- {"version":3,"file":"oracleUpdaterRouter.js","sourceRoot":"","sources":["../../src/actions/oracleUpdaterRouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oracleUpdaterRouter.js","sourceRoot":"","sources":["../../src/actions/oracleUpdaterRouter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@varla/sdk",
3
- "version": "2.7.2",
3
+ "version": "2.8.0",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -1,6 +1,6 @@
1
1
  // Note: explicit .js extension is required for Node ESM resolution.
2
2
 
3
- import type { Address, Hash, Hex } from "viem";
3
+ import type { Address, Hash, Hex, PublicClient } from "viem";
4
4
  import { concat, encodeAbiParameters, encodePacked, keccak256, toHex } from "viem";
5
5
 
6
6
  import { abis } from "../generated.js";
@@ -10,7 +10,7 @@ import { abis } from "../generated.js";
10
10
  *
11
11
  * Router contract name/version are fixed by the solidity constructor:
12
12
  * - name: VarlaOracleUpdaterRouter
13
- * - version: 1
13
+ * - version: 2
14
14
  */
15
15
  export const ORACLE_UPDATER_ROUTER_EIP712 = {
16
16
  name: "VarlaOracleUpdaterRouter",
@@ -32,6 +32,51 @@ export function splitNonce(nonce: bigint): { laneKey: bigint; seq: bigint } {
32
32
  };
33
33
  }
34
34
 
35
+ /**
36
+ * Read the current sequence for a (publisher, laneKey) pair.
37
+ *
38
+ * Router V2 exposes:
39
+ * nonces(address publisher, uint192 laneKey) -> uint64
40
+ */
41
+ export async function readOracleUpdaterRouterLaneSeq(params: {
42
+ publicClient: Pick<PublicClient, "readContract">;
43
+ routerAddress: Address;
44
+ publisher: Address;
45
+ laneKey?: bigint;
46
+ }): Promise<bigint> {
47
+ const laneKey = params.laneKey ?? 0n;
48
+ const seq = await params.publicClient.readContract({
49
+ address: params.routerAddress,
50
+ abi: abis.ORACLEUPDATERROUTER_ABI,
51
+ functionName: "nonces",
52
+ args: [params.publisher, laneKey] as const,
53
+ });
54
+ return BigInt(seq as bigint);
55
+ }
56
+
57
+ /**
58
+ * Read the current packed nonce for a (publisher, laneKey) pair.
59
+ *
60
+ * Packed nonce format:
61
+ * upper 192 bits = lane key
62
+ * lower 64 bits = sequence
63
+ */
64
+ export async function readOracleUpdaterRouterNonce(params: {
65
+ publicClient: Pick<PublicClient, "readContract">;
66
+ routerAddress: Address;
67
+ publisher: Address;
68
+ laneKey?: bigint;
69
+ }): Promise<bigint> {
70
+ const laneKey = params.laneKey ?? 0n;
71
+ const seq = await readOracleUpdaterRouterLaneSeq({
72
+ publicClient: params.publicClient,
73
+ routerAddress: params.routerAddress,
74
+ publisher: params.publisher,
75
+ laneKey,
76
+ });
77
+ return buildNonce(laneKey, seq);
78
+ }
79
+
35
80
  export type OracleUpdaterRouterUpdate = {
36
81
  oracle: Address;
37
82
  chainId: bigint;