├── .circleci └── config.yml ├── .eslintignore ├── .eslintrc.js ├── .github └── README.md ├── .gitignore ├── .nvmrc ├── .prettierignore ├── .prettierrc ├── .yarn └── releases │ └── yarn-4.6.0.cjs ├── .yarnrc.yml ├── CHANGELOG.md ├── DECISIONS.md ├── README.md ├── babel.config.js ├── codecov.yml ├── docs ├── move-to-monorepo-merge.png └── move-to-monorepo.png ├── jest.config.js ├── jest.global.js ├── package.json ├── packages ├── contracts-interface │ ├── README.md │ ├── babel.config.json │ ├── examples │ │ ├── browser-example.html │ │ └── index.js │ ├── package.json │ ├── src │ │ ├── constants.ts │ │ ├── index.test.ts │ │ ├── index.ts │ │ ├── synthetix.d.ts │ │ └── types.ts │ ├── tsconfig.json │ └── webpack.config.js ├── optimism-networks │ ├── babel.config.json │ ├── package.json │ ├── src │ │ ├── constants.ts │ │ ├── index.ts │ │ ├── optimism-networks.test.ts │ │ ├── switch-to-l1.test.ts │ │ ├── switch-to-l2.test.ts │ │ └── types.ts │ └── tsconfig.json ├── providers │ ├── README.md │ ├── babel.config.json │ ├── package.json │ ├── src │ │ ├── constants.test.ts │ │ ├── constants.ts │ │ ├── index.ts │ │ └── types.ts │ └── tsconfig.json └── queries │ ├── README.md │ ├── __mocks__ │ ├── @snapshot-labs │ │ └── snapshot.js.ts │ └── graphql-request.ts │ ├── babel.config.js │ ├── codegen.js │ ├── package.json │ ├── pull-subgraphs.sh │ ├── src │ ├── abis │ │ ├── ERC20.json │ │ ├── ERC20.ts │ │ ├── ElectionModule.json │ │ └── ElectionModule.ts │ ├── constants.ts │ ├── context.ts │ ├── contracts │ │ ├── Ambassador.ts │ │ ├── CouncilDilution.ts │ │ ├── Grants.ts │ │ ├── OptimismGasPriceOracle.ts │ │ ├── Spartan.ts │ │ ├── Treasury.ts │ │ └── index.ts │ ├── currency.ts │ ├── index.ts │ ├── mutations │ │ ├── errorToErrorMessage.test.ts │ │ ├── errorToErrorMessage.ts │ │ ├── useContractTxn.ts │ │ ├── useEVMTxn.test.ts │ │ ├── useEVMTxn.ts │ │ └── useSynthetixTxn.ts │ ├── queries │ │ ├── debt │ │ │ ├── useGetDebtDataQuery.ts │ │ │ ├── useGetDebtL1.ts │ │ │ ├── useGetDebtL2.ts │ │ │ └── useGetDebtTimeseries.ts │ │ ├── delegate │ │ │ ├── useGetAuthoriserWallets.ts │ │ │ └── useGetDelegateWallets.ts │ │ ├── escrow │ │ │ ├── useEscrowDataQuery.ts │ │ │ └── useTokenSaleEscrowQuery.ts │ │ ├── gov │ │ │ ├── constants.ts │ │ │ ├── useActiveProposalsQuery.ts │ │ │ ├── useGetElectionsPeriodStatus.ts │ │ │ ├── useGetSpartanCouncil.ts │ │ │ ├── useHasVotedForElectionsQuery.ts │ │ │ ├── useProposalQuery.ts │ │ │ ├── useProposalsQuery.ts │ │ │ ├── useSnapshotSpaceQuery.ts │ │ │ ├── useVotingWeightQuery.ts │ │ │ └── utils.ts │ │ ├── liquidations │ │ │ └── useGetLiquidationDataQuery.ts │ │ ├── misc │ │ │ └── useTokenListQuery.ts │ │ ├── network │ │ │ ├── useEthGasPriceQuery.test.ts │ │ │ └── useEthGasPriceQuery.ts │ │ ├── ovm-bridge │ │ │ └── useIsBridgeActiveQuery.ts │ │ ├── rates │ │ │ ├── useCandlesticksQuery.ts │ │ │ ├── useExchangeRatesQuery.test.ts │ │ │ ├── useExchangeRatesQuery.ts │ │ │ ├── useSynthMarketCapQuery.ts │ │ │ └── utils.ts │ │ ├── shorts │ │ │ └── useShortsQuery.ts │ │ ├── staking │ │ │ ├── useClaimableRewardsQuery.ts │ │ │ ├── useGetFeePoolDataQuery.ts │ │ │ ├── useGlobalStakingInfoQuery.ts │ │ │ └── useSNXData.ts │ │ ├── synths │ │ │ ├── useExchangeFeeRateQuery.ts │ │ │ ├── useFeeReclaimPeriodQuery.ts │ │ │ ├── useFeeReclaimPeriodsQuery.ts │ │ │ ├── useGetSynthsByName.ts │ │ │ ├── useRedeemableDeprecatedSynthsQuery.ts │ │ │ ├── useSynthSuspensionQuery.ts │ │ │ ├── useSynthsTotalSupplyQuery.ts │ │ │ └── useTotalIssuedSynthsExcludeOtherCollateralQuery.ts │ │ ├── systemStatus │ │ │ └── useIsSystemOnMaintenance.ts │ │ └── walletBalances │ │ │ ├── useETHBalanceQuery.ts │ │ │ ├── useSynthsBalancesQuery.test.ts │ │ │ ├── useSynthsBalancesQuery.ts │ │ │ └── useTokensBalancesQuery.ts │ ├── subgraph │ │ ├── exchangerSubgraphFunctions.ts │ │ ├── exchangerSubgraphQueries.ts │ │ ├── exchangesSubgraphFunctions.ts │ │ ├── exchangesSubgraphQueries.ts │ │ ├── issuanceSubgraphFunctions.ts │ │ ├── issuanceSubgraphQueries.ts │ │ ├── mainSubgraphFunctions.ts │ │ ├── mainSubgraphQueries.ts │ │ └── queryFuncs.ts │ ├── testUtils.ts │ ├── types.ts │ ├── utils.test.ts │ └── utils.ts │ ├── subgraphs │ ├── exchanger.json │ ├── exchanges.json │ ├── issuance.json │ └── main.json │ └── tsconfig.json ├── svgo.json ├── tools ├── codegen-graph-ts │ ├── .eslintrc │ ├── .gitignore │ ├── README.md │ ├── babel.config.json │ ├── modules.d.ts │ ├── package.json │ ├── src │ │ ├── gen │ │ │ ├── constants.ts │ │ │ ├── exchanges.test.ts │ │ │ ├── index.ts │ │ │ ├── methods │ │ │ │ ├── index.ts │ │ │ │ ├── plain.ts │ │ │ │ └── react-query.ts │ │ │ ├── segments │ │ │ │ └── body.ts │ │ │ ├── types.ts │ │ │ ├── util.test.ts │ │ │ └── util.ts │ │ └── index.ts │ ├── tests │ │ ├── exchanges.json │ │ └── exchanges.ts │ └── tsconfig.json ├── deps │ ├── .eslintrc │ ├── circular.js │ ├── deps.js │ ├── lib │ │ ├── colors.js │ │ ├── exec.js │ │ └── workspaces.js │ ├── mismatched.js │ ├── package.json │ └── version.js ├── generate-subgraph-query │ ├── babel.config.json │ ├── package.json │ ├── src │ │ ├── gql.test.ts │ │ ├── gql.ts │ │ └── index.ts │ └── tsconfig.json └── safe-import │ ├── index.js │ ├── package.json │ ├── safeImport.js │ └── safeLazy.js ├── tsconfig.base.module.json ├── tsconfig.base.references.json ├── v1 ├── components │ └── Card │ │ ├── Card.tsx │ │ ├── CardBody.tsx │ │ ├── CardHeader.tsx │ │ ├── index.ts │ │ └── package.json └── lib │ ├── constantsUi │ ├── constantsUi.ts │ ├── index.ts │ └── package.json │ ├── media │ ├── index.ts │ ├── media.ts │ └── package.json │ └── styles │ ├── index.ts │ ├── package.json │ └── styles.tsx ├── v2 ├── components │ ├── BalanceBox │ │ ├── BalanceBox.tsx │ │ ├── index.ts │ │ └── package.json │ ├── BoxLink │ │ ├── BoxLink.tsx │ │ ├── index.ts │ │ └── package.json │ ├── Burn │ │ ├── Burn.tsx │ │ ├── BurnHeader.tsx │ │ ├── BurnLinks.tsx │ │ ├── BurnTransactionModal.tsx │ │ ├── index.tsx │ │ ├── layout.ts │ │ └── package.json │ ├── BurnStats │ │ ├── BurnStats.tsx │ │ ├── index.tsx │ │ └── package.json │ ├── CRatioBanner │ │ ├── CRatioBanner.cy.tsx │ │ ├── CRatioBanner.tsx │ │ ├── index.ts │ │ └── package.json │ ├── CRatioBox │ │ ├── CRatioBox.cy.tsx │ │ ├── CRatioBox.tsx │ │ ├── index.ts │ │ └── package.json │ ├── CRatioHealthCard │ │ ├── CRatioHealthCard.cy.tsx │ │ ├── CRatioHealthCard.tsx │ │ ├── index.ts │ │ └── package.json │ ├── CRatioHealthPercentage │ │ ├── CRatioHealthPercentage.tsx │ │ ├── index.ts │ │ └── package.json │ ├── CRatioProgressBar │ │ ├── CRatioProgressBar.cy.tsx │ │ ├── CRatioProgressBar.tsx │ │ ├── index.ts │ │ └── package.json │ ├── CountDown │ │ ├── CountDown.cy.tsx │ │ ├── CountDown.tsx │ │ ├── index.ts │ │ └── package.json │ ├── DeprecationBanner │ │ └── DeprecationBanner.tsx │ ├── EarnStats │ │ ├── EarnStats.tsx │ │ ├── index.ts │ │ └── package.json │ ├── EpochPrice │ │ ├── EpochPrice.tsx │ │ ├── index.ts │ │ └── package.json │ ├── EthGasPriceEstimator │ │ ├── EthGasPriceEstimator.cy.tsx │ │ ├── EthGasPriceEstimator.tsx │ │ ├── index.ts │ │ └── package.json │ ├── ExternalLink │ │ ├── ExternalLink.tsx │ │ ├── index.ts │ │ └── package.json │ ├── HomeButton │ │ ├── HomeButton.tsx │ │ ├── index.ts │ │ └── package.json │ ├── MainActionCards │ │ ├── MainActionCards.cy.tsx │ │ ├── MainActionCards.tsx │ │ ├── MainActionCardsList.tsx │ │ ├── index.ts │ │ └── package.json │ ├── Mint │ │ ├── Mint.tsx │ │ ├── MintHeader.tsx │ │ ├── MintLinks.tsx │ │ ├── MintTransactionModal.tsx │ │ ├── PercentBadges.tsx │ │ ├── index.tsx │ │ ├── layout.ts │ │ └── package.json │ ├── MintOrBurnChanges │ │ ├── MintOrBurnChanges.tsx │ │ ├── index.ts │ │ └── package.json │ ├── Navigation │ │ ├── Navigation.tsx │ │ ├── index.ts │ │ └── package.json │ ├── Notifi │ │ ├── NotifiCard.tsx │ │ ├── index.ts │ │ ├── notifi.css │ │ └── package.json │ ├── NotifiButton │ │ ├── NotifiButton.tsx │ │ ├── NotifiContextWrapper.tsx │ │ ├── index.ts │ │ ├── notifibutton.css │ │ └── package.json │ ├── RewardsItem │ │ ├── ClaimLiquidationBtn.tsx │ │ ├── ClaimRewardsBtn.cy.tsx │ │ ├── ClaimRewardsBtn.tsx │ │ ├── Fees.tsx │ │ ├── RewardsItem.tsx │ │ ├── RewardsTransactionModal.tsx │ │ ├── TradingFeesModal.tsx │ │ ├── index.ts │ │ └── package.json │ ├── SelfLiquidation │ │ ├── SelfLiquidation.cy.tsx │ │ ├── SelfLiquidation.tsx │ │ ├── SelfLiquidationTransactionModal.tsx │ │ ├── index.ts │ │ └── package.json │ ├── Settings │ │ ├── Settings.tsx │ │ ├── index.tsx │ │ └── package.json │ ├── StatBox │ │ ├── StatBox.tsx │ │ ├── index.ts │ │ └── package.json │ ├── SwapLinks │ │ ├── SwapLinks.cy.tsx │ │ ├── SwapLinks.tsx │ │ ├── index.ts │ │ └── package.json │ ├── TableComponents │ │ ├── TableComponents.tsx │ │ ├── index.ts │ │ └── package.json │ ├── TermsModal │ │ ├── TermsModal.tsx │ │ ├── index.ts │ │ └── package.json │ ├── TransactionModal │ │ ├── TransactionModal.tsx │ │ ├── index.ts │ │ └── package.json │ ├── UnflagOptions │ │ ├── UnflagOptions.cy.tsx │ │ ├── UnflagOptions.tsx │ │ ├── index.ts │ │ └── package.json │ ├── UserBalances │ │ ├── UserBalances.tsx │ │ ├── index.ts │ │ └── package.json │ ├── UtilityCard │ │ ├── UtilityCard.tsx │ │ ├── index.ts │ │ └── package.json │ ├── WalletBalances │ │ ├── TableComponents.tsx │ │ ├── WalletBalances.tsx │ │ ├── index.ts │ │ └── package.json │ ├── WalletLayout │ │ ├── WalletLayout.tsx │ │ ├── index.tsx │ │ └── package.json │ ├── WalletModal │ │ ├── AuthorisedWallets.tsx │ │ ├── Balances.tsx │ │ ├── WalletModal.tsx │ │ ├── index.ts │ │ └── package.json │ ├── Welcome │ │ ├── Welcome.tsx │ │ ├── index.ts │ │ └── package.json │ └── icons │ │ ├── ArrowLeft │ │ ├── ArrowLeft.tsx │ │ └── index.ts │ │ ├── ArrowRight │ │ ├── ArrowRight.tsx │ │ └── index.ts │ │ ├── ArrowTopRight │ │ ├── ArrowTopRight.tsx │ │ └── index.ts │ │ ├── AvatarIcon │ │ ├── AvatarIcon.tsx │ │ └── index.tsx │ │ ├── BridgeIcon │ │ ├── BridgeIcon.tsx │ │ └── index.ts │ │ ├── ChevronDown │ │ ├── ChevronDown.tsx │ │ └── index.tsx │ │ ├── ChevronUp │ │ ├── ChevronUp.tsx │ │ └── index.tsx │ │ ├── ClockIcon │ │ ├── ClockIcon.tsx │ │ └── index.tsx │ │ ├── CloseIcon │ │ ├── CloseIcon.tsx │ │ └── index.tsx │ │ ├── CollectIcon │ │ ├── CollectIcon.tsx │ │ └── index.ts │ │ ├── CopyIcon │ │ ├── CopyIcon.tsx │ │ └── index.tsx │ │ ├── CowSwapIcon │ │ ├── CowSwapIcon.tsx │ │ └── index.tsx │ │ ├── CurveIcon │ │ ├── Curve.png │ │ ├── CurveIcon.tsx │ │ └── index.ts │ │ ├── DebtPoolIcon │ │ ├── DebtPoolIcon.tsx │ │ └── index.ts │ │ ├── DollarIcon │ │ ├── DollarIcon.tsx │ │ └── index.tsx │ │ ├── EthereumIcon │ │ ├── EthereumIcon.tsx │ │ └── index.tsx │ │ ├── FailedIcon │ │ ├── FailedIcon.tsx │ │ └── index.tsx │ │ ├── GovIcon │ │ ├── GovIcon.tsx │ │ └── index.tsx │ │ ├── GuideIcon │ │ ├── GuideIcon.tsx │ │ └── index.tsx │ │ ├── InfoIcon │ │ ├── InfoIcon.tsx │ │ └── index.tsx │ │ ├── InfoOutline │ │ ├── InfoOutline.tsx │ │ └── index.tsx │ │ ├── KebabMenu │ │ ├── KebabMenu.tsx │ │ └── index.tsx │ │ ├── KebabMenuVertical │ │ ├── KebabMenuVertical.tsx │ │ └── index.tsx │ │ ├── KwentaIcon │ │ ├── KwentaIcon.tsx │ │ └── index.ts │ │ ├── LoansIcon │ │ ├── LoansIcon.tsx │ │ └── index.tsx │ │ ├── LyraIcon │ │ ├── LyraIcon.tsx │ │ └── index.ts │ │ ├── MaintainIcon │ │ ├── MaintainIcon.tsx │ │ └── index.ts │ │ ├── NineDots │ │ ├── NineDots.tsx │ │ └── index.ts │ │ ├── NotificationsIcon │ │ ├── NotificationsIcon.tsx │ │ └── index.tsx │ │ ├── OneInchIcon │ │ ├── OneInchIcon.tsx │ │ └── index.tsx │ │ ├── OpenInNew │ │ ├── OpenInNew.tsx │ │ └── index.ts │ │ ├── OptimismIcon │ │ ├── OptimismIcon.tsx │ │ └── index.tsx │ │ ├── OvertimeIcon │ │ ├── OvertimeIcon.tsx │ │ └── index.tsx │ │ ├── PolynomialIcon │ │ ├── PolynomialIcon.tsx │ │ └── index.tsx │ │ ├── SBTCIcon │ │ ├── SBTCIcon.tsx │ │ └── index.tsx │ │ ├── SLINKIcon │ │ ├── SLINKIcon.tsx │ │ └── index.tsx │ │ ├── SNXIcon │ │ ├── SNXIcon.tsx │ │ └── index.tsx │ │ ├── SUSDIcon │ │ ├── SUSDIcon.tsx │ │ └── index.tsx │ │ ├── SettingsIcon │ │ ├── SettingsIcon.tsx │ │ └── index.tsx │ │ ├── StakeIcon │ │ ├── StakeIcon.tsx │ │ └── index.ts │ │ ├── StakingIcon │ │ ├── StakingIcon.tsx │ │ └── index.tsx │ │ ├── StakingLogo │ │ ├── StakingLogo.tsx │ │ └── index.ts │ │ ├── StakingRewardsIcon │ │ ├── StakingRewardsIcon.tsx │ │ └── index.tsx │ │ ├── SushiSwapLogo │ │ ├── SushiSwapLogo.tsx │ │ └── index.tsx │ │ ├── SwitchIcon │ │ ├── SwitchIcon.tsx │ │ └── index.tsx │ │ ├── ThalesIcon │ │ ├── ThalesIcon.tsx │ │ └── index.ts │ │ ├── TickIcon │ │ ├── TickIcon.tsx │ │ └── index.tsx │ │ ├── TokensIcon │ │ ├── TokensIcon.tsx │ │ └── index.tsx │ │ ├── TradingFeesIcon │ │ ├── TradingFeesIcon.tsx │ │ └── index.tsx │ │ ├── TransactionCompleted │ │ ├── TransactionCompleted.tsx │ │ └── index.tsx │ │ ├── TransactionPending │ │ ├── TransactionPending.tsx │ │ └── index.tsx │ │ ├── TriangleDownIcon │ │ ├── TriangleDownIcon.tsx │ │ └── index.tsx │ │ ├── TriangleUpIcon │ │ ├── TriangleUpIcon.tsx │ │ └── index.tsx │ │ ├── WalletIcon │ │ ├── WalletIcon.tsx │ │ └── index.tsx │ │ ├── WreckedIcon │ │ ├── WreckedIcon.tsx │ │ └── index.tsx │ │ ├── index.tsx │ │ └── package.json ├── contracts │ ├── codegen.js │ ├── index.js │ ├── package.json │ ├── src │ │ ├── local-ovm │ │ │ └── synths.ts │ │ ├── mainnet-ovm │ │ │ ├── deployment │ │ │ │ ├── AddressResolver.ts │ │ │ │ ├── CircuitBreaker.ts │ │ │ │ ├── CollateralEth.ts │ │ │ │ ├── CollateralManager.ts │ │ │ │ ├── CollateralManagerState.ts │ │ │ │ ├── CollateralShort.ts │ │ │ │ ├── CollateralUtil.ts │ │ │ │ ├── DappMaintenance.ts │ │ │ │ ├── DebtCache.ts │ │ │ │ ├── DebtMigratorOnOptimism.ts │ │ │ │ ├── DelegateApprovals.ts │ │ │ │ ├── DelegateApprovalsEternalStorage.ts │ │ │ │ ├── DirectIntegrationManager.ts │ │ │ │ ├── DynamicSynthRedeemer.ts │ │ │ │ ├── EscrowChecker.ts │ │ │ │ ├── EtherCollateral.ts │ │ │ │ ├── EtherCollateralsUSD.ts │ │ │ │ ├── EtherWrapper.ts │ │ │ │ ├── ExchangeCircuitBreaker.ts │ │ │ │ ├── ExchangeRates.ts │ │ │ │ ├── ExchangeSettlementLib.ts │ │ │ │ ├── ExchangeState.ts │ │ │ │ ├── Exchanger.ts │ │ │ │ ├── FeePool.ts │ │ │ │ ├── FeePoolEternalStorage.ts │ │ │ │ ├── FeePoolState.ts │ │ │ │ ├── FlexibleStorage.ts │ │ │ │ ├── FuturesMarketAAVE.ts │ │ │ │ ├── FuturesMarketAPE.ts │ │ │ │ ├── FuturesMarketAVAX.ts │ │ │ │ ├── FuturesMarketBNB.ts │ │ │ │ ├── FuturesMarketBTC.ts │ │ │ │ ├── FuturesMarketDOGE.ts │ │ │ │ ├── FuturesMarketDYDX.ts │ │ │ │ ├── FuturesMarketData.ts │ │ │ │ ├── FuturesMarketDebtRatio.ts │ │ │ │ ├── FuturesMarketETH.ts │ │ │ │ ├── FuturesMarketEUR.ts │ │ │ │ ├── FuturesMarketLINK.ts │ │ │ │ ├── FuturesMarketMATIC.ts │ │ │ │ ├── FuturesMarketManager.ts │ │ │ │ ├── FuturesMarketOP.ts │ │ │ │ ├── FuturesMarketSOL.ts │ │ │ │ ├── FuturesMarketSettings.ts │ │ │ │ ├── FuturesMarketUNI.ts │ │ │ │ ├── FuturesMarketXAG.ts │ │ │ │ ├── FuturesMarketXAU.ts │ │ │ │ ├── FuturesMarketXMR.ts │ │ │ │ ├── Issuer.ts │ │ │ │ ├── Liquidator.ts │ │ │ │ ├── LiquidatorRewards.ts │ │ │ │ ├── Math.ts │ │ │ │ ├── OneNetAggregatorDebtRatio.ts │ │ │ │ ├── OneNetAggregatorIssuedSynths.ts │ │ │ │ ├── OwnerRelayOnOptimism.ts │ │ │ │ ├── PerpsV2DelayedExecution1INCHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAAVEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionADAPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionALGOPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionANKRPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAPEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAPTPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionARBPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionATOMPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAUDPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAVAXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAXSPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBALPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBCHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBLURPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBNBPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBONKPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBTCPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionCELOPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionCOMPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionCRVPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionCVXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionDOGEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionDOTPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionDYDXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionENJPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionEOSPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionETCPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionETHBTCPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionETHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionEURPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFETPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFILPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFLOKIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFLOWPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFTMPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFXSPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionGBPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionGMXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionGRTPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionICPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionIMXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionINJPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionJTOPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionJUPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionKNCPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionLDOPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionLINKPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionLTCPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionMATICPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionMAVPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionMEMEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionMKRPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionNEARPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionONEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionOPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionORDIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionPENDLEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionPEPEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionPERPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionPYTHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionRNDRPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionRPLPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionRUNEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSEIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSHIBPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSOLPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSTETHETHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSTETHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSTRKPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSUIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSUSHIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionTIAPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionTRBPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionTRXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionUMAPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionUNIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionUSDTPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionWLDPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXAGPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXAUPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXLMPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXMRPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXRPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXTZPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionYFIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionZECPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionZILPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionZRXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntent1INCHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAAVEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentADAPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentALGOPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentANKRPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAPEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAPTPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentARBPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentATOMPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAUDPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAVAXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAXSPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBALPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBCHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBLURPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBNBPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBONKPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBTCPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentCELOPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentCOMPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentCRVPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentCVXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentDOGEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentDOTPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentDYDXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentENJPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentEOSPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentETCPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentETHBTCPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentETHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentEURPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFETPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFILPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFLOKIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFLOWPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFTMPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFXSPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentGBPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentGMXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentGRTPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentICPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentIMXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentINJPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentJTOPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentJUPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentKNCPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentLDOPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentLINKPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentLTCPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentMATICPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentMAVPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentMEMEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentMKRPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentNEARPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentONEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentOPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentORDIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentPENDLEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentPEPEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentPERPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentPYTHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentRNDRPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentRPLPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentRUNEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSEIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSHIBPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSOLPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSTETHETHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSTETHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSTRKPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSUIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSUSHIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentTIAPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentTRBPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentTRXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentUMAPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentUNIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentUSDTPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentWLDPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXAGPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXAUPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXLMPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXMRPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXRPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXTZPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentYFIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentZECPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentZILPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentZRXPERP.ts │ │ │ │ ├── PerpsV2ExchangeRate.ts │ │ │ │ ├── PerpsV2Market1INCHPERP.ts │ │ │ │ ├── PerpsV2MarketAAVEPERP.ts │ │ │ │ ├── PerpsV2MarketADAPERP.ts │ │ │ │ ├── PerpsV2MarketALGOPERP.ts │ │ │ │ ├── PerpsV2MarketANKRPERP.ts │ │ │ │ ├── PerpsV2MarketAPEPERP.ts │ │ │ │ ├── PerpsV2MarketAPTPERP.ts │ │ │ │ ├── PerpsV2MarketARBPERP.ts │ │ │ │ ├── PerpsV2MarketATOMPERP.ts │ │ │ │ ├── PerpsV2MarketAUDPERP.ts │ │ │ │ ├── PerpsV2MarketAVAXPERP.ts │ │ │ │ ├── PerpsV2MarketAXSPERP.ts │ │ │ │ ├── PerpsV2MarketBALPERP.ts │ │ │ │ ├── PerpsV2MarketBCHPERP.ts │ │ │ │ ├── PerpsV2MarketBLURPERP.ts │ │ │ │ ├── PerpsV2MarketBNBPERP.ts │ │ │ │ ├── PerpsV2MarketBONKPERP.ts │ │ │ │ ├── PerpsV2MarketBTCPERP.ts │ │ │ │ ├── PerpsV2MarketCELOPERP.ts │ │ │ │ ├── PerpsV2MarketCOMPPERP.ts │ │ │ │ ├── PerpsV2MarketCRVPERP.ts │ │ │ │ ├── PerpsV2MarketCVXPERP.ts │ │ │ │ ├── PerpsV2MarketDOGEPERP.ts │ │ │ │ ├── PerpsV2MarketDOTPERP.ts │ │ │ │ ├── PerpsV2MarketDYDXPERP.ts │ │ │ │ ├── PerpsV2MarketData.ts │ │ │ │ ├── PerpsV2MarketENJPERP.ts │ │ │ │ ├── PerpsV2MarketEOSPERP.ts │ │ │ │ ├── PerpsV2MarketETCPERP.ts │ │ │ │ ├── PerpsV2MarketETHBTCPERP.ts │ │ │ │ ├── PerpsV2MarketETHPERP.ts │ │ │ │ ├── PerpsV2MarketEURPERP.ts │ │ │ │ ├── PerpsV2MarketFETPERP.ts │ │ │ │ ├── PerpsV2MarketFILPERP.ts │ │ │ │ ├── PerpsV2MarketFLOKIPERP.ts │ │ │ │ ├── PerpsV2MarketFLOWPERP.ts │ │ │ │ ├── PerpsV2MarketFTMPERP.ts │ │ │ │ ├── PerpsV2MarketFXSPERP.ts │ │ │ │ ├── PerpsV2MarketGBPPERP.ts │ │ │ │ ├── PerpsV2MarketGMXPERP.ts │ │ │ │ ├── PerpsV2MarketGRTPERP.ts │ │ │ │ ├── PerpsV2MarketICPPERP.ts │ │ │ │ ├── PerpsV2MarketIMXPERP.ts │ │ │ │ ├── PerpsV2MarketINJPERP.ts │ │ │ │ ├── PerpsV2MarketJTOPERP.ts │ │ │ │ ├── PerpsV2MarketJUPPERP.ts │ │ │ │ ├── PerpsV2MarketKNCPERP.ts │ │ │ │ ├── PerpsV2MarketLDOPERP.ts │ │ │ │ ├── PerpsV2MarketLINKPERP.ts │ │ │ │ ├── PerpsV2MarketLTCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidate1INCHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAAVEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateADAPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateALGOPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateANKRPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAPEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAPTPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateARBPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateATOMPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAUDPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAVAXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAXSPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBALPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBCHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBLURPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBNBPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBONKPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBTCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateCELOPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateCOMPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateCRVPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateCVXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateDOGEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateDOTPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateDYDXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateENJPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateEOSPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateETCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateETHBTCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateETHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateEURPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFETPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFILPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFLOKIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFLOWPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFTMPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFXSPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateGBPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateGMXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateGRTPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateICPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateIMXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateINJPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateJTOPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateJUPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateKNCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateLDOPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateLINKPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateLTCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateMATICPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateMAVPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateMEMEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateMKRPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateNEARPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateONEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateOPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateORDIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidatePENDLEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidatePEPEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidatePERPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidatePYTHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateRNDRPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateRPLPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateRUNEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSEIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSHIBPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSOLPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSTETHETHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSTETHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSTRKPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSUIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSUSHIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateTIAPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateTRBPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateTRXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateUMAPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateUNIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateUSDTPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateWLDPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXAGPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXAUPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXLMPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXMRPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXRPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXTZPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateYFIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateZECPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateZILPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateZRXPERP.ts │ │ │ │ ├── PerpsV2MarketMATICPERP.ts │ │ │ │ ├── PerpsV2MarketMAVPERP.ts │ │ │ │ ├── PerpsV2MarketMEMEPERP.ts │ │ │ │ ├── PerpsV2MarketMKRPERP.ts │ │ │ │ ├── PerpsV2MarketNEARPERP.ts │ │ │ │ ├── PerpsV2MarketONEPERP.ts │ │ │ │ ├── PerpsV2MarketOPPERP.ts │ │ │ │ ├── PerpsV2MarketORDIPERP.ts │ │ │ │ ├── PerpsV2MarketPENDLEPERP.ts │ │ │ │ ├── PerpsV2MarketPEPEPERP.ts │ │ │ │ ├── PerpsV2MarketPERPPERP.ts │ │ │ │ ├── PerpsV2MarketPYTHPERP.ts │ │ │ │ ├── PerpsV2MarketRNDRPERP.ts │ │ │ │ ├── PerpsV2MarketRPLPERP.ts │ │ │ │ ├── PerpsV2MarketRUNEPERP.ts │ │ │ │ ├── PerpsV2MarketSEIPERP.ts │ │ │ │ ├── PerpsV2MarketSHIBPERP.ts │ │ │ │ ├── PerpsV2MarketSOLPERP.ts │ │ │ │ ├── PerpsV2MarketSTETHETHPERP.ts │ │ │ │ ├── PerpsV2MarketSTETHPERP.ts │ │ │ │ ├── PerpsV2MarketSTRKPERP.ts │ │ │ │ ├── PerpsV2MarketSUIPERP.ts │ │ │ │ ├── PerpsV2MarketSUSHIPERP.ts │ │ │ │ ├── PerpsV2MarketSettings.ts │ │ │ │ ├── PerpsV2MarketState1INCHPERP.ts │ │ │ │ ├── PerpsV2MarketStateAAVEPERP.ts │ │ │ │ ├── PerpsV2MarketStateADAPERP.ts │ │ │ │ ├── PerpsV2MarketStateALGOPERP.ts │ │ │ │ ├── PerpsV2MarketStateANKRPERP.ts │ │ │ │ ├── PerpsV2MarketStateAPEPERP.ts │ │ │ │ ├── PerpsV2MarketStateAPTPERP.ts │ │ │ │ ├── PerpsV2MarketStateARBPERP.ts │ │ │ │ ├── PerpsV2MarketStateATOMPERP.ts │ │ │ │ ├── PerpsV2MarketStateAUDPERP.ts │ │ │ │ ├── PerpsV2MarketStateAVAXPERP.ts │ │ │ │ ├── PerpsV2MarketStateAXSPERP.ts │ │ │ │ ├── PerpsV2MarketStateBALPERP.ts │ │ │ │ ├── PerpsV2MarketStateBCHPERP.ts │ │ │ │ ├── PerpsV2MarketStateBLURPERP.ts │ │ │ │ ├── PerpsV2MarketStateBNBPERP.ts │ │ │ │ ├── PerpsV2MarketStateBONKPERP.ts │ │ │ │ ├── PerpsV2MarketStateBTCPERP.ts │ │ │ │ ├── PerpsV2MarketStateCELOPERP.ts │ │ │ │ ├── PerpsV2MarketStateCOMPPERP.ts │ │ │ │ ├── PerpsV2MarketStateCRVPERP.ts │ │ │ │ ├── PerpsV2MarketStateCVXPERP.ts │ │ │ │ ├── PerpsV2MarketStateDOGEPERP.ts │ │ │ │ ├── PerpsV2MarketStateDOTPERP.ts │ │ │ │ ├── PerpsV2MarketStateDYDXPERP.ts │ │ │ │ ├── PerpsV2MarketStateENJPERP.ts │ │ │ │ ├── PerpsV2MarketStateEOSPERP.ts │ │ │ │ ├── PerpsV2MarketStateETCPERP.ts │ │ │ │ ├── PerpsV2MarketStateETHBTCPERP.ts │ │ │ │ ├── PerpsV2MarketStateETHPERP.ts │ │ │ │ ├── PerpsV2MarketStateEURPERP.ts │ │ │ │ ├── PerpsV2MarketStateFETPERP.ts │ │ │ │ ├── PerpsV2MarketStateFILPERP.ts │ │ │ │ ├── PerpsV2MarketStateFLOKIPERP.ts │ │ │ │ ├── PerpsV2MarketStateFLOWPERP.ts │ │ │ │ ├── PerpsV2MarketStateFTMPERP.ts │ │ │ │ ├── PerpsV2MarketStateFXSPERP.ts │ │ │ │ ├── PerpsV2MarketStateGBPPERP.ts │ │ │ │ ├── PerpsV2MarketStateGMXPERP.ts │ │ │ │ ├── PerpsV2MarketStateGRTPERP.ts │ │ │ │ ├── PerpsV2MarketStateICPPERP.ts │ │ │ │ ├── PerpsV2MarketStateIMXPERP.ts │ │ │ │ ├── PerpsV2MarketStateINJPERP.ts │ │ │ │ ├── PerpsV2MarketStateJTOPERP.ts │ │ │ │ ├── PerpsV2MarketStateJUPPERP.ts │ │ │ │ ├── PerpsV2MarketStateKNCPERP.ts │ │ │ │ ├── PerpsV2MarketStateLDOPERP.ts │ │ │ │ ├── PerpsV2MarketStateLINKPERP.ts │ │ │ │ ├── PerpsV2MarketStateLTCPERP.ts │ │ │ │ ├── PerpsV2MarketStateMATICPERP.ts │ │ │ │ ├── PerpsV2MarketStateMAVPERP.ts │ │ │ │ ├── PerpsV2MarketStateMEMEPERP.ts │ │ │ │ ├── PerpsV2MarketStateMKRPERP.ts │ │ │ │ ├── PerpsV2MarketStateNEARPERP.ts │ │ │ │ ├── PerpsV2MarketStateONEPERP.ts │ │ │ │ ├── PerpsV2MarketStateOPPERP.ts │ │ │ │ ├── PerpsV2MarketStateORDIPERP.ts │ │ │ │ ├── PerpsV2MarketStatePENDLEPERP.ts │ │ │ │ ├── PerpsV2MarketStatePEPEPERP.ts │ │ │ │ ├── PerpsV2MarketStatePERPPERP.ts │ │ │ │ ├── PerpsV2MarketStatePYTHPERP.ts │ │ │ │ ├── PerpsV2MarketStateRNDRPERP.ts │ │ │ │ ├── PerpsV2MarketStateRPLPERP.ts │ │ │ │ ├── PerpsV2MarketStateRUNEPERP.ts │ │ │ │ ├── PerpsV2MarketStateSEIPERP.ts │ │ │ │ ├── PerpsV2MarketStateSHIBPERP.ts │ │ │ │ ├── PerpsV2MarketStateSOLPERP.ts │ │ │ │ ├── PerpsV2MarketStateSTETHETHPERP.ts │ │ │ │ ├── PerpsV2MarketStateSTETHPERP.ts │ │ │ │ ├── PerpsV2MarketStateSTRKPERP.ts │ │ │ │ ├── PerpsV2MarketStateSUIPERP.ts │ │ │ │ ├── PerpsV2MarketStateSUSHIPERP.ts │ │ │ │ ├── PerpsV2MarketStateTIAPERP.ts │ │ │ │ ├── PerpsV2MarketStateTRBPERP.ts │ │ │ │ ├── PerpsV2MarketStateTRXPERP.ts │ │ │ │ ├── PerpsV2MarketStateUMAPERP.ts │ │ │ │ ├── PerpsV2MarketStateUNIPERP.ts │ │ │ │ ├── PerpsV2MarketStateUSDTPERP.ts │ │ │ │ ├── PerpsV2MarketStateWLDPERP.ts │ │ │ │ ├── PerpsV2MarketStateXAGPERP.ts │ │ │ │ ├── PerpsV2MarketStateXAUPERP.ts │ │ │ │ ├── PerpsV2MarketStateXLMPERP.ts │ │ │ │ ├── PerpsV2MarketStateXMRPERP.ts │ │ │ │ ├── PerpsV2MarketStateXRPPERP.ts │ │ │ │ ├── PerpsV2MarketStateXTZPERP.ts │ │ │ │ ├── PerpsV2MarketStateYFIPERP.ts │ │ │ │ ├── PerpsV2MarketStateZECPERP.ts │ │ │ │ ├── PerpsV2MarketStateZILPERP.ts │ │ │ │ ├── PerpsV2MarketStateZRXPERP.ts │ │ │ │ ├── PerpsV2MarketTIAPERP.ts │ │ │ │ ├── PerpsV2MarketTRBPERP.ts │ │ │ │ ├── PerpsV2MarketTRXPERP.ts │ │ │ │ ├── PerpsV2MarketUMAPERP.ts │ │ │ │ ├── PerpsV2MarketUNIPERP.ts │ │ │ │ ├── PerpsV2MarketUSDTPERP.ts │ │ │ │ ├── PerpsV2MarketViews1INCHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAAVEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsADAPERP.ts │ │ │ │ ├── PerpsV2MarketViewsALGOPERP.ts │ │ │ │ ├── PerpsV2MarketViewsANKRPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAPEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAPTPERP.ts │ │ │ │ ├── PerpsV2MarketViewsARBPERP.ts │ │ │ │ ├── PerpsV2MarketViewsATOMPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAUDPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAVAXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAXSPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBALPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBCHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBLURPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBNBPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBONKPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBTCPERP.ts │ │ │ │ ├── PerpsV2MarketViewsCELOPERP.ts │ │ │ │ ├── PerpsV2MarketViewsCOMPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsCRVPERP.ts │ │ │ │ ├── PerpsV2MarketViewsCVXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsDOGEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsDOTPERP.ts │ │ │ │ ├── PerpsV2MarketViewsDYDXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsENJPERP.ts │ │ │ │ ├── PerpsV2MarketViewsEOSPERP.ts │ │ │ │ ├── PerpsV2MarketViewsETCPERP.ts │ │ │ │ ├── PerpsV2MarketViewsETHBTCPERP.ts │ │ │ │ ├── PerpsV2MarketViewsETHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsEURPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFETPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFILPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFLOKIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFLOWPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFTMPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFXSPERP.ts │ │ │ │ ├── PerpsV2MarketViewsGBPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsGMXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsGRTPERP.ts │ │ │ │ ├── PerpsV2MarketViewsICPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsIMXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsINJPERP.ts │ │ │ │ ├── PerpsV2MarketViewsJTOPERP.ts │ │ │ │ ├── PerpsV2MarketViewsJUPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsKNCPERP.ts │ │ │ │ ├── PerpsV2MarketViewsLDOPERP.ts │ │ │ │ ├── PerpsV2MarketViewsLINKPERP.ts │ │ │ │ ├── PerpsV2MarketViewsLTCPERP.ts │ │ │ │ ├── PerpsV2MarketViewsMATICPERP.ts │ │ │ │ ├── PerpsV2MarketViewsMAVPERP.ts │ │ │ │ ├── PerpsV2MarketViewsMEMEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsMKRPERP.ts │ │ │ │ ├── PerpsV2MarketViewsNEARPERP.ts │ │ │ │ ├── PerpsV2MarketViewsONEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsOPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsORDIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsPENDLEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsPEPEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsPERPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsPYTHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsRNDRPERP.ts │ │ │ │ ├── PerpsV2MarketViewsRPLPERP.ts │ │ │ │ ├── PerpsV2MarketViewsRUNEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSEIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSHIBPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSOLPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSTETHETHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSTETHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSTRKPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSUIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSUSHIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsTIAPERP.ts │ │ │ │ ├── PerpsV2MarketViewsTRBPERP.ts │ │ │ │ ├── PerpsV2MarketViewsTRXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsUMAPERP.ts │ │ │ │ ├── PerpsV2MarketViewsUNIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsUSDTPERP.ts │ │ │ │ ├── PerpsV2MarketViewsWLDPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXAGPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXAUPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXLMPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXMRPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXRPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXTZPERP.ts │ │ │ │ ├── PerpsV2MarketViewsYFIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsZECPERP.ts │ │ │ │ ├── PerpsV2MarketViewsZILPERP.ts │ │ │ │ ├── PerpsV2MarketViewsZRXPERP.ts │ │ │ │ ├── PerpsV2MarketWLDPERP.ts │ │ │ │ ├── PerpsV2MarketXAGPERP.ts │ │ │ │ ├── PerpsV2MarketXAUPERP.ts │ │ │ │ ├── PerpsV2MarketXLMPERP.ts │ │ │ │ ├── PerpsV2MarketXMRPERP.ts │ │ │ │ ├── PerpsV2MarketXRPPERP.ts │ │ │ │ ├── PerpsV2MarketXTZPERP.ts │ │ │ │ ├── PerpsV2MarketYFIPERP.ts │ │ │ │ ├── PerpsV2MarketZECPERP.ts │ │ │ │ ├── PerpsV2MarketZILPERP.ts │ │ │ │ ├── PerpsV2MarketZRXPERP.ts │ │ │ │ ├── PerpsV2Proxy1INCHPERP.ts │ │ │ │ ├── PerpsV2ProxyAAVEPERP.ts │ │ │ │ ├── PerpsV2ProxyADAPERP.ts │ │ │ │ ├── PerpsV2ProxyALGOPERP.ts │ │ │ │ ├── PerpsV2ProxyANKRPERP.ts │ │ │ │ ├── PerpsV2ProxyAPEPERP.ts │ │ │ │ ├── PerpsV2ProxyAPTPERP.ts │ │ │ │ ├── PerpsV2ProxyARBPERP.ts │ │ │ │ ├── PerpsV2ProxyATOMPERP.ts │ │ │ │ ├── PerpsV2ProxyAUDPERP.ts │ │ │ │ ├── PerpsV2ProxyAVAXPERP.ts │ │ │ │ ├── PerpsV2ProxyAXSPERP.ts │ │ │ │ ├── PerpsV2ProxyBALPERP.ts │ │ │ │ ├── PerpsV2ProxyBCHPERP.ts │ │ │ │ ├── PerpsV2ProxyBLURPERP.ts │ │ │ │ ├── PerpsV2ProxyBNBPERP.ts │ │ │ │ ├── PerpsV2ProxyBONKPERP.ts │ │ │ │ ├── PerpsV2ProxyBTCPERP.ts │ │ │ │ ├── PerpsV2ProxyCELOPERP.ts │ │ │ │ ├── PerpsV2ProxyCOMPPERP.ts │ │ │ │ ├── PerpsV2ProxyCRVPERP.ts │ │ │ │ ├── PerpsV2ProxyCVXPERP.ts │ │ │ │ ├── PerpsV2ProxyDOGEPERP.ts │ │ │ │ ├── PerpsV2ProxyDOTPERP.ts │ │ │ │ ├── PerpsV2ProxyDYDXPERP.ts │ │ │ │ ├── PerpsV2ProxyENJPERP.ts │ │ │ │ ├── PerpsV2ProxyEOSPERP.ts │ │ │ │ ├── PerpsV2ProxyETCPERP.ts │ │ │ │ ├── PerpsV2ProxyETHBTCPERP.ts │ │ │ │ ├── PerpsV2ProxyETHPERP.ts │ │ │ │ ├── PerpsV2ProxyEURPERP.ts │ │ │ │ ├── PerpsV2ProxyFETPERP.ts │ │ │ │ ├── PerpsV2ProxyFILPERP.ts │ │ │ │ ├── PerpsV2ProxyFLOKIPERP.ts │ │ │ │ ├── PerpsV2ProxyFLOWPERP.ts │ │ │ │ ├── PerpsV2ProxyFTMPERP.ts │ │ │ │ ├── PerpsV2ProxyFXSPERP.ts │ │ │ │ ├── PerpsV2ProxyGBPPERP.ts │ │ │ │ ├── PerpsV2ProxyGMXPERP.ts │ │ │ │ ├── PerpsV2ProxyGRTPERP.ts │ │ │ │ ├── PerpsV2ProxyICPPERP.ts │ │ │ │ ├── PerpsV2ProxyIMXPERP.ts │ │ │ │ ├── PerpsV2ProxyINJPERP.ts │ │ │ │ ├── PerpsV2ProxyJTOPERP.ts │ │ │ │ ├── PerpsV2ProxyJUPPERP.ts │ │ │ │ ├── PerpsV2ProxyKNCPERP.ts │ │ │ │ ├── PerpsV2ProxyLDOPERP.ts │ │ │ │ ├── PerpsV2ProxyLINKPERP.ts │ │ │ │ ├── PerpsV2ProxyLTCPERP.ts │ │ │ │ ├── PerpsV2ProxyMATICPERP.ts │ │ │ │ ├── PerpsV2ProxyMAVPERP.ts │ │ │ │ ├── PerpsV2ProxyMEMEPERP.ts │ │ │ │ ├── PerpsV2ProxyMKRPERP.ts │ │ │ │ ├── PerpsV2ProxyNEARPERP.ts │ │ │ │ ├── PerpsV2ProxyONEPERP.ts │ │ │ │ ├── PerpsV2ProxyOPPERP.ts │ │ │ │ ├── PerpsV2ProxyORDIPERP.ts │ │ │ │ ├── PerpsV2ProxyPENDLEPERP.ts │ │ │ │ ├── PerpsV2ProxyPEPEPERP.ts │ │ │ │ ├── PerpsV2ProxyPERPPERP.ts │ │ │ │ ├── PerpsV2ProxyPYTHPERP.ts │ │ │ │ ├── PerpsV2ProxyRNDRPERP.ts │ │ │ │ ├── PerpsV2ProxyRPLPERP.ts │ │ │ │ ├── PerpsV2ProxyRUNEPERP.ts │ │ │ │ ├── PerpsV2ProxySEIPERP.ts │ │ │ │ ├── PerpsV2ProxySHIBPERP.ts │ │ │ │ ├── PerpsV2ProxySOLPERP.ts │ │ │ │ ├── PerpsV2ProxySTETHETHPERP.ts │ │ │ │ ├── PerpsV2ProxySTETHPERP.ts │ │ │ │ ├── PerpsV2ProxySTRKPERP.ts │ │ │ │ ├── PerpsV2ProxySUIPERP.ts │ │ │ │ ├── PerpsV2ProxySUSHIPERP.ts │ │ │ │ ├── PerpsV2ProxyTIAPERP.ts │ │ │ │ ├── PerpsV2ProxyTRBPERP.ts │ │ │ │ ├── PerpsV2ProxyTRXPERP.ts │ │ │ │ ├── PerpsV2ProxyUMAPERP.ts │ │ │ │ ├── PerpsV2ProxyUNIPERP.ts │ │ │ │ ├── PerpsV2ProxyUSDTPERP.ts │ │ │ │ ├── PerpsV2ProxyWLDPERP.ts │ │ │ │ ├── PerpsV2ProxyXAGPERP.ts │ │ │ │ ├── PerpsV2ProxyXAUPERP.ts │ │ │ │ ├── PerpsV2ProxyXLMPERP.ts │ │ │ │ ├── PerpsV2ProxyXMRPERP.ts │ │ │ │ ├── PerpsV2ProxyXRPPERP.ts │ │ │ │ ├── PerpsV2ProxyXTZPERP.ts │ │ │ │ ├── PerpsV2ProxyYFIPERP.ts │ │ │ │ ├── PerpsV2ProxyZECPERP.ts │ │ │ │ ├── PerpsV2ProxyZILPERP.ts │ │ │ │ ├── PerpsV2ProxyZRXPERP.ts │ │ │ │ ├── ProxyERC20.ts │ │ │ │ ├── ProxyERC20sUSD.ts │ │ │ │ ├── ProxyFeePool.ts │ │ │ │ ├── ProxySynthetix.ts │ │ │ │ ├── ProxysAAVE.ts │ │ │ │ ├── ProxysAVAX.ts │ │ │ │ ├── ProxysBTC.ts │ │ │ │ ├── ProxysETH.ts │ │ │ │ ├── ProxysEUR.ts │ │ │ │ ├── ProxysLINK.ts │ │ │ │ ├── ProxysMATIC.ts │ │ │ │ ├── ProxysSOL.ts │ │ │ │ ├── ProxysUNI.ts │ │ │ │ ├── ProxysUSD.ts │ │ │ │ ├── ReadProxyAddressResolver.ts │ │ │ │ ├── RewardEscrowV2.ts │ │ │ │ ├── RewardEscrowV2Storage.ts │ │ │ │ ├── RewardsDistribution.ts │ │ │ │ ├── SafeDecimalMath.ts │ │ │ │ ├── SignedSafeDecimalMath.ts │ │ │ │ ├── StakingRewardsSNXWETHUniswapV3.ts │ │ │ │ ├── StakingRewardssUSDDAIUniswapV3.ts │ │ │ │ ├── SynthRedeemer.ts │ │ │ │ ├── SynthUtil.ts │ │ │ │ ├── Synthetix.ts │ │ │ │ ├── SynthetixBridgeToBase.ts │ │ │ │ ├── SynthetixDebtShare.ts │ │ │ │ ├── SynthetixEscrow.ts │ │ │ │ ├── SynthetixState.ts │ │ │ │ ├── SynthsAAVE.ts │ │ │ │ ├── SynthsAVAX.ts │ │ │ │ ├── SynthsBTC.ts │ │ │ │ ├── SynthsETH.ts │ │ │ │ ├── SynthsEUR.ts │ │ │ │ ├── SynthsLINK.ts │ │ │ │ ├── SynthsMATIC.ts │ │ │ │ ├── SynthsSOL.ts │ │ │ │ ├── SynthsUNI.ts │ │ │ │ ├── SynthsUSD.ts │ │ │ │ ├── SystemSettings.ts │ │ │ │ ├── SystemSettingsLib.ts │ │ │ │ ├── SystemStatus.ts │ │ │ │ ├── TokenStateSynthetix.ts │ │ │ │ ├── TokenStatesAAVE.ts │ │ │ │ ├── TokenStatesAVAX.ts │ │ │ │ ├── TokenStatesBTC.ts │ │ │ │ ├── TokenStatesETH.ts │ │ │ │ ├── TokenStatesEUR.ts │ │ │ │ ├── TokenStatesLINK.ts │ │ │ │ ├── TokenStatesMATIC.ts │ │ │ │ ├── TokenStatesSOL.ts │ │ │ │ ├── TokenStatesUNI.ts │ │ │ │ ├── TokenStatesUSD.ts │ │ │ │ ├── TradingRewards.ts │ │ │ │ ├── WrapperFactory.ts │ │ │ │ └── json │ │ │ │ │ ├── AddressResolver.json │ │ │ │ │ ├── CircuitBreaker.json │ │ │ │ │ ├── CollateralEth.json │ │ │ │ │ ├── CollateralManager.json │ │ │ │ │ ├── CollateralManagerState.json │ │ │ │ │ ├── CollateralShort.json │ │ │ │ │ ├── CollateralUtil.json │ │ │ │ │ ├── DappMaintenance.json │ │ │ │ │ ├── DebtCache.json │ │ │ │ │ ├── DebtMigratorOnOptimism.json │ │ │ │ │ ├── DelegateApprovals.json │ │ │ │ │ ├── DelegateApprovalsEternalStorage.json │ │ │ │ │ ├── DirectIntegrationManager.json │ │ │ │ │ ├── DynamicSynthRedeemer.json │ │ │ │ │ ├── EscrowChecker.json │ │ │ │ │ ├── EtherCollateral.json │ │ │ │ │ ├── EtherCollateralsUSD.json │ │ │ │ │ ├── EtherWrapper.json │ │ │ │ │ ├── ExchangeCircuitBreaker.json │ │ │ │ │ ├── ExchangeRates.json │ │ │ │ │ ├── ExchangeSettlementLib.json │ │ │ │ │ ├── ExchangeState.json │ │ │ │ │ ├── Exchanger.json │ │ │ │ │ ├── FeePool.json │ │ │ │ │ ├── FeePoolEternalStorage.json │ │ │ │ │ ├── FeePoolState.json │ │ │ │ │ ├── FlexibleStorage.json │ │ │ │ │ ├── FuturesMarketAAVE.json │ │ │ │ │ ├── FuturesMarketAPE.json │ │ │ │ │ ├── FuturesMarketAVAX.json │ │ │ │ │ ├── FuturesMarketBNB.json │ │ │ │ │ ├── FuturesMarketBTC.json │ │ │ │ │ ├── FuturesMarketDOGE.json │ │ │ │ │ ├── FuturesMarketDYDX.json │ │ │ │ │ ├── FuturesMarketData.json │ │ │ │ │ ├── FuturesMarketDebtRatio.json │ │ │ │ │ ├── FuturesMarketETH.json │ │ │ │ │ ├── FuturesMarketEUR.json │ │ │ │ │ ├── FuturesMarketLINK.json │ │ │ │ │ ├── FuturesMarketMATIC.json │ │ │ │ │ ├── FuturesMarketManager.json │ │ │ │ │ ├── FuturesMarketOP.json │ │ │ │ │ ├── FuturesMarketSOL.json │ │ │ │ │ ├── FuturesMarketSettings.json │ │ │ │ │ ├── FuturesMarketUNI.json │ │ │ │ │ ├── FuturesMarketXAG.json │ │ │ │ │ ├── FuturesMarketXAU.json │ │ │ │ │ ├── FuturesMarketXMR.json │ │ │ │ │ ├── Issuer.json │ │ │ │ │ ├── Liquidator.json │ │ │ │ │ ├── LiquidatorRewards.json │ │ │ │ │ ├── Math.json │ │ │ │ │ ├── OneNetAggregatorDebtRatio.json │ │ │ │ │ ├── OneNetAggregatorIssuedSynths.json │ │ │ │ │ ├── OwnerRelayOnOptimism.json │ │ │ │ │ ├── PerpsV2DelayedExecution1INCHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAAVEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionADAPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionALGOPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionANKRPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAPEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAPTPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionARBPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionATOMPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAUDPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAVAXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAXSPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBALPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBCHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBLURPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBNBPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBONKPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionCELOPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionCOMPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionCRVPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionCVXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionDOGEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionDOTPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionDYDXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionENJPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionEOSPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionETCPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionETHBTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionEURPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFETPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFILPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFLOKIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFLOWPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFTMPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFXSPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionGBPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionGMXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionGRTPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionICPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionIMXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionINJPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionJTOPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionJUPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionKNCPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionLDOPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionLINKPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionLTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionMATICPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionMAVPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionMEMEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionMKRPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionNEARPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionONEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionOPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionORDIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionPENDLEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionPEPEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionPERPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionPYTHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionRNDRPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionRPLPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionRUNEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSEIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSHIBPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSOLPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSTETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSTRKPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSUIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSUSHIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionTIAPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionTRBPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionTRXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionUMAPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionUNIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionUSDTPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionWLDPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXAGPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXAUPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXLMPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXMRPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXRPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXTZPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionYFIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionZECPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionZILPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionZRXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntent1INCHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAAVEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentADAPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentALGOPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentANKRPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAPEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAPTPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentARBPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentATOMPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAUDPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAVAXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAXSPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBALPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBCHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBLURPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBNBPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBONKPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentCELOPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentCOMPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentCRVPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentCVXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentDOGEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentDOTPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentDYDXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentENJPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentEOSPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentETCPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentETHBTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentEURPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFETPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFILPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFLOKIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFLOWPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFTMPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFXSPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentGBPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentGMXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentGRTPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentICPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentIMXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentINJPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentJTOPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentJUPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentKNCPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentLDOPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentLINKPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentLTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentMATICPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentMAVPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentMEMEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentMKRPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentNEARPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentONEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentOPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentORDIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentPENDLEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentPEPEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentPERPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentPYTHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentRNDRPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentRPLPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentRUNEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSEIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSHIBPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSOLPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSTETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSTRKPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSUIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSUSHIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentTIAPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentTRBPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentTRXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentUMAPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentUNIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentUSDTPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentWLDPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXAGPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXAUPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXLMPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXMRPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXRPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXTZPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentYFIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentZECPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentZILPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentZRXPERP.json │ │ │ │ │ ├── PerpsV2ExchangeRate.json │ │ │ │ │ ├── PerpsV2Market1INCHPERP.json │ │ │ │ │ ├── PerpsV2MarketAAVEPERP.json │ │ │ │ │ ├── PerpsV2MarketADAPERP.json │ │ │ │ │ ├── PerpsV2MarketALGOPERP.json │ │ │ │ │ ├── PerpsV2MarketANKRPERP.json │ │ │ │ │ ├── PerpsV2MarketAPEPERP.json │ │ │ │ │ ├── PerpsV2MarketAPTPERP.json │ │ │ │ │ ├── PerpsV2MarketARBPERP.json │ │ │ │ │ ├── PerpsV2MarketATOMPERP.json │ │ │ │ │ ├── PerpsV2MarketAUDPERP.json │ │ │ │ │ ├── PerpsV2MarketAVAXPERP.json │ │ │ │ │ ├── PerpsV2MarketAXSPERP.json │ │ │ │ │ ├── PerpsV2MarketBALPERP.json │ │ │ │ │ ├── PerpsV2MarketBCHPERP.json │ │ │ │ │ ├── PerpsV2MarketBLURPERP.json │ │ │ │ │ ├── PerpsV2MarketBNBPERP.json │ │ │ │ │ ├── PerpsV2MarketBONKPERP.json │ │ │ │ │ ├── PerpsV2MarketBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketCELOPERP.json │ │ │ │ │ ├── PerpsV2MarketCOMPPERP.json │ │ │ │ │ ├── PerpsV2MarketCRVPERP.json │ │ │ │ │ ├── PerpsV2MarketCVXPERP.json │ │ │ │ │ ├── PerpsV2MarketDOGEPERP.json │ │ │ │ │ ├── PerpsV2MarketDOTPERP.json │ │ │ │ │ ├── PerpsV2MarketDYDXPERP.json │ │ │ │ │ ├── PerpsV2MarketData.json │ │ │ │ │ ├── PerpsV2MarketENJPERP.json │ │ │ │ │ ├── PerpsV2MarketEOSPERP.json │ │ │ │ │ ├── PerpsV2MarketETCPERP.json │ │ │ │ │ ├── PerpsV2MarketETHBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketETHPERP.json │ │ │ │ │ ├── PerpsV2MarketEURPERP.json │ │ │ │ │ ├── PerpsV2MarketFETPERP.json │ │ │ │ │ ├── PerpsV2MarketFILPERP.json │ │ │ │ │ ├── PerpsV2MarketFLOKIPERP.json │ │ │ │ │ ├── PerpsV2MarketFLOWPERP.json │ │ │ │ │ ├── PerpsV2MarketFTMPERP.json │ │ │ │ │ ├── PerpsV2MarketFXSPERP.json │ │ │ │ │ ├── PerpsV2MarketGBPPERP.json │ │ │ │ │ ├── PerpsV2MarketGMXPERP.json │ │ │ │ │ ├── PerpsV2MarketGRTPERP.json │ │ │ │ │ ├── PerpsV2MarketICPPERP.json │ │ │ │ │ ├── PerpsV2MarketIMXPERP.json │ │ │ │ │ ├── PerpsV2MarketINJPERP.json │ │ │ │ │ ├── PerpsV2MarketJTOPERP.json │ │ │ │ │ ├── PerpsV2MarketJUPPERP.json │ │ │ │ │ ├── PerpsV2MarketKNCPERP.json │ │ │ │ │ ├── PerpsV2MarketLDOPERP.json │ │ │ │ │ ├── PerpsV2MarketLINKPERP.json │ │ │ │ │ ├── PerpsV2MarketLTCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidate1INCHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAAVEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateADAPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateALGOPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateANKRPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAPEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAPTPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateARBPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateATOMPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAUDPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAVAXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAXSPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBALPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBCHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBLURPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBNBPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBONKPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateCELOPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateCOMPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateCRVPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateCVXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateDOGEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateDOTPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateDYDXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateENJPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateEOSPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateETCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateETHBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateETHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateEURPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFETPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFILPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFLOKIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFLOWPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFTMPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFXSPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateGBPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateGMXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateGRTPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateICPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateIMXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateINJPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateJTOPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateJUPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateKNCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateLDOPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateLINKPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateLTCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateMATICPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateMAVPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateMEMEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateMKRPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateNEARPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateONEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateOPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateORDIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidatePENDLEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidatePEPEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidatePERPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidatePYTHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateRNDRPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateRPLPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateRUNEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSEIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSHIBPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSOLPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSTETHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSTRKPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSUIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSUSHIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateTIAPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateTRBPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateTRXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateUMAPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateUNIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateUSDTPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateWLDPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXAGPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXAUPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXLMPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXMRPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXRPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXTZPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateYFIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateZECPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateZILPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateZRXPERP.json │ │ │ │ │ ├── PerpsV2MarketMATICPERP.json │ │ │ │ │ ├── PerpsV2MarketMAVPERP.json │ │ │ │ │ ├── PerpsV2MarketMEMEPERP.json │ │ │ │ │ ├── PerpsV2MarketMKRPERP.json │ │ │ │ │ ├── PerpsV2MarketNEARPERP.json │ │ │ │ │ ├── PerpsV2MarketONEPERP.json │ │ │ │ │ ├── PerpsV2MarketOPPERP.json │ │ │ │ │ ├── PerpsV2MarketORDIPERP.json │ │ │ │ │ ├── PerpsV2MarketPENDLEPERP.json │ │ │ │ │ ├── PerpsV2MarketPEPEPERP.json │ │ │ │ │ ├── PerpsV2MarketPERPPERP.json │ │ │ │ │ ├── PerpsV2MarketPYTHPERP.json │ │ │ │ │ ├── PerpsV2MarketRNDRPERP.json │ │ │ │ │ ├── PerpsV2MarketRPLPERP.json │ │ │ │ │ ├── PerpsV2MarketRUNEPERP.json │ │ │ │ │ ├── PerpsV2MarketSEIPERP.json │ │ │ │ │ ├── PerpsV2MarketSHIBPERP.json │ │ │ │ │ ├── PerpsV2MarketSOLPERP.json │ │ │ │ │ ├── PerpsV2MarketSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2MarketSTETHPERP.json │ │ │ │ │ ├── PerpsV2MarketSTRKPERP.json │ │ │ │ │ ├── PerpsV2MarketSUIPERP.json │ │ │ │ │ ├── PerpsV2MarketSUSHIPERP.json │ │ │ │ │ ├── PerpsV2MarketSettings.json │ │ │ │ │ ├── PerpsV2MarketState1INCHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAAVEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateADAPERP.json │ │ │ │ │ ├── PerpsV2MarketStateALGOPERP.json │ │ │ │ │ ├── PerpsV2MarketStateANKRPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAPEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAPTPERP.json │ │ │ │ │ ├── PerpsV2MarketStateARBPERP.json │ │ │ │ │ ├── PerpsV2MarketStateATOMPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAUDPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAVAXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAXSPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBALPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBCHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBLURPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBNBPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBONKPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketStateCELOPERP.json │ │ │ │ │ ├── PerpsV2MarketStateCOMPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateCRVPERP.json │ │ │ │ │ ├── PerpsV2MarketStateCVXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateDOGEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateDOTPERP.json │ │ │ │ │ ├── PerpsV2MarketStateDYDXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateENJPERP.json │ │ │ │ │ ├── PerpsV2MarketStateEOSPERP.json │ │ │ │ │ ├── PerpsV2MarketStateETCPERP.json │ │ │ │ │ ├── PerpsV2MarketStateETHBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketStateETHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateEURPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFETPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFILPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFLOKIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFLOWPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFTMPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFXSPERP.json │ │ │ │ │ ├── PerpsV2MarketStateGBPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateGMXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateGRTPERP.json │ │ │ │ │ ├── PerpsV2MarketStateICPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateIMXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateINJPERP.json │ │ │ │ │ ├── PerpsV2MarketStateJTOPERP.json │ │ │ │ │ ├── PerpsV2MarketStateJUPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateKNCPERP.json │ │ │ │ │ ├── PerpsV2MarketStateLDOPERP.json │ │ │ │ │ ├── PerpsV2MarketStateLINKPERP.json │ │ │ │ │ ├── PerpsV2MarketStateLTCPERP.json │ │ │ │ │ ├── PerpsV2MarketStateMATICPERP.json │ │ │ │ │ ├── PerpsV2MarketStateMAVPERP.json │ │ │ │ │ ├── PerpsV2MarketStateMEMEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateMKRPERP.json │ │ │ │ │ ├── PerpsV2MarketStateNEARPERP.json │ │ │ │ │ ├── PerpsV2MarketStateONEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateOPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateORDIPERP.json │ │ │ │ │ ├── PerpsV2MarketStatePENDLEPERP.json │ │ │ │ │ ├── PerpsV2MarketStatePEPEPERP.json │ │ │ │ │ ├── PerpsV2MarketStatePERPPERP.json │ │ │ │ │ ├── PerpsV2MarketStatePYTHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateRNDRPERP.json │ │ │ │ │ ├── PerpsV2MarketStateRPLPERP.json │ │ │ │ │ ├── PerpsV2MarketStateRUNEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSEIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSHIBPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSOLPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSTETHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSTRKPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSUIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSUSHIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateTIAPERP.json │ │ │ │ │ ├── PerpsV2MarketStateTRBPERP.json │ │ │ │ │ ├── PerpsV2MarketStateTRXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateUMAPERP.json │ │ │ │ │ ├── PerpsV2MarketStateUNIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateUSDTPERP.json │ │ │ │ │ ├── PerpsV2MarketStateWLDPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXAGPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXAUPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXLMPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXMRPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXRPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXTZPERP.json │ │ │ │ │ ├── PerpsV2MarketStateYFIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateZECPERP.json │ │ │ │ │ ├── PerpsV2MarketStateZILPERP.json │ │ │ │ │ ├── PerpsV2MarketStateZRXPERP.json │ │ │ │ │ ├── PerpsV2MarketTIAPERP.json │ │ │ │ │ ├── PerpsV2MarketTRBPERP.json │ │ │ │ │ ├── PerpsV2MarketTRXPERP.json │ │ │ │ │ ├── PerpsV2MarketUMAPERP.json │ │ │ │ │ ├── PerpsV2MarketUNIPERP.json │ │ │ │ │ ├── PerpsV2MarketUSDTPERP.json │ │ │ │ │ ├── PerpsV2MarketViews1INCHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAAVEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsADAPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsALGOPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsANKRPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAPEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAPTPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsARBPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsATOMPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAUDPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAVAXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAXSPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBALPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBCHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBLURPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBNBPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBONKPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsCELOPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsCOMPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsCRVPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsCVXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsDOGEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsDOTPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsDYDXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsENJPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsEOSPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsETCPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsETHBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsETHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsEURPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFETPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFILPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFLOKIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFLOWPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFTMPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFXSPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsGBPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsGMXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsGRTPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsICPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsIMXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsINJPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsJTOPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsJUPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsKNCPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsLDOPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsLINKPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsLTCPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsMATICPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsMAVPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsMEMEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsMKRPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsNEARPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsONEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsOPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsORDIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsPENDLEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsPEPEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsPERPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsPYTHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsRNDRPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsRPLPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsRUNEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSEIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSHIBPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSOLPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSTETHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSTRKPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSUIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSUSHIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsTIAPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsTRBPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsTRXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsUMAPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsUNIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsUSDTPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsWLDPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXAGPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXAUPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXLMPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXMRPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXRPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXTZPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsYFIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsZECPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsZILPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsZRXPERP.json │ │ │ │ │ ├── PerpsV2MarketWLDPERP.json │ │ │ │ │ ├── PerpsV2MarketXAGPERP.json │ │ │ │ │ ├── PerpsV2MarketXAUPERP.json │ │ │ │ │ ├── PerpsV2MarketXLMPERP.json │ │ │ │ │ ├── PerpsV2MarketXMRPERP.json │ │ │ │ │ ├── PerpsV2MarketXRPPERP.json │ │ │ │ │ ├── PerpsV2MarketXTZPERP.json │ │ │ │ │ ├── PerpsV2MarketYFIPERP.json │ │ │ │ │ ├── PerpsV2MarketZECPERP.json │ │ │ │ │ ├── PerpsV2MarketZILPERP.json │ │ │ │ │ ├── PerpsV2MarketZRXPERP.json │ │ │ │ │ ├── PerpsV2Proxy1INCHPERP.json │ │ │ │ │ ├── PerpsV2ProxyAAVEPERP.json │ │ │ │ │ ├── PerpsV2ProxyADAPERP.json │ │ │ │ │ ├── PerpsV2ProxyALGOPERP.json │ │ │ │ │ ├── PerpsV2ProxyANKRPERP.json │ │ │ │ │ ├── PerpsV2ProxyAPEPERP.json │ │ │ │ │ ├── PerpsV2ProxyAPTPERP.json │ │ │ │ │ ├── PerpsV2ProxyARBPERP.json │ │ │ │ │ ├── PerpsV2ProxyATOMPERP.json │ │ │ │ │ ├── PerpsV2ProxyAUDPERP.json │ │ │ │ │ ├── PerpsV2ProxyAVAXPERP.json │ │ │ │ │ ├── PerpsV2ProxyAXSPERP.json │ │ │ │ │ ├── PerpsV2ProxyBALPERP.json │ │ │ │ │ ├── PerpsV2ProxyBCHPERP.json │ │ │ │ │ ├── PerpsV2ProxyBLURPERP.json │ │ │ │ │ ├── PerpsV2ProxyBNBPERP.json │ │ │ │ │ ├── PerpsV2ProxyBONKPERP.json │ │ │ │ │ ├── PerpsV2ProxyBTCPERP.json │ │ │ │ │ ├── PerpsV2ProxyCELOPERP.json │ │ │ │ │ ├── PerpsV2ProxyCOMPPERP.json │ │ │ │ │ ├── PerpsV2ProxyCRVPERP.json │ │ │ │ │ ├── PerpsV2ProxyCVXPERP.json │ │ │ │ │ ├── PerpsV2ProxyDOGEPERP.json │ │ │ │ │ ├── PerpsV2ProxyDOTPERP.json │ │ │ │ │ ├── PerpsV2ProxyDYDXPERP.json │ │ │ │ │ ├── PerpsV2ProxyENJPERP.json │ │ │ │ │ ├── PerpsV2ProxyEOSPERP.json │ │ │ │ │ ├── PerpsV2ProxyETCPERP.json │ │ │ │ │ ├── PerpsV2ProxyETHBTCPERP.json │ │ │ │ │ ├── PerpsV2ProxyETHPERP.json │ │ │ │ │ ├── PerpsV2ProxyEURPERP.json │ │ │ │ │ ├── PerpsV2ProxyFETPERP.json │ │ │ │ │ ├── PerpsV2ProxyFILPERP.json │ │ │ │ │ ├── PerpsV2ProxyFLOKIPERP.json │ │ │ │ │ ├── PerpsV2ProxyFLOWPERP.json │ │ │ │ │ ├── PerpsV2ProxyFTMPERP.json │ │ │ │ │ ├── PerpsV2ProxyFXSPERP.json │ │ │ │ │ ├── PerpsV2ProxyGBPPERP.json │ │ │ │ │ ├── PerpsV2ProxyGMXPERP.json │ │ │ │ │ ├── PerpsV2ProxyGRTPERP.json │ │ │ │ │ ├── PerpsV2ProxyICPPERP.json │ │ │ │ │ ├── PerpsV2ProxyIMXPERP.json │ │ │ │ │ ├── PerpsV2ProxyINJPERP.json │ │ │ │ │ ├── PerpsV2ProxyJTOPERP.json │ │ │ │ │ ├── PerpsV2ProxyJUPPERP.json │ │ │ │ │ ├── PerpsV2ProxyKNCPERP.json │ │ │ │ │ ├── PerpsV2ProxyLDOPERP.json │ │ │ │ │ ├── PerpsV2ProxyLINKPERP.json │ │ │ │ │ ├── PerpsV2ProxyLTCPERP.json │ │ │ │ │ ├── PerpsV2ProxyMATICPERP.json │ │ │ │ │ ├── PerpsV2ProxyMAVPERP.json │ │ │ │ │ ├── PerpsV2ProxyMEMEPERP.json │ │ │ │ │ ├── PerpsV2ProxyMKRPERP.json │ │ │ │ │ ├── PerpsV2ProxyNEARPERP.json │ │ │ │ │ ├── PerpsV2ProxyONEPERP.json │ │ │ │ │ ├── PerpsV2ProxyOPPERP.json │ │ │ │ │ ├── PerpsV2ProxyORDIPERP.json │ │ │ │ │ ├── PerpsV2ProxyPENDLEPERP.json │ │ │ │ │ ├── PerpsV2ProxyPEPEPERP.json │ │ │ │ │ ├── PerpsV2ProxyPERPPERP.json │ │ │ │ │ ├── PerpsV2ProxyPYTHPERP.json │ │ │ │ │ ├── PerpsV2ProxyRNDRPERP.json │ │ │ │ │ ├── PerpsV2ProxyRPLPERP.json │ │ │ │ │ ├── PerpsV2ProxyRUNEPERP.json │ │ │ │ │ ├── PerpsV2ProxySEIPERP.json │ │ │ │ │ ├── PerpsV2ProxySHIBPERP.json │ │ │ │ │ ├── PerpsV2ProxySOLPERP.json │ │ │ │ │ ├── PerpsV2ProxySTETHETHPERP.json │ │ │ │ │ ├── PerpsV2ProxySTETHPERP.json │ │ │ │ │ ├── PerpsV2ProxySTRKPERP.json │ │ │ │ │ ├── PerpsV2ProxySUIPERP.json │ │ │ │ │ ├── PerpsV2ProxySUSHIPERP.json │ │ │ │ │ ├── PerpsV2ProxyTIAPERP.json │ │ │ │ │ ├── PerpsV2ProxyTRBPERP.json │ │ │ │ │ ├── PerpsV2ProxyTRXPERP.json │ │ │ │ │ ├── PerpsV2ProxyUMAPERP.json │ │ │ │ │ ├── PerpsV2ProxyUNIPERP.json │ │ │ │ │ ├── PerpsV2ProxyUSDTPERP.json │ │ │ │ │ ├── PerpsV2ProxyWLDPERP.json │ │ │ │ │ ├── PerpsV2ProxyXAGPERP.json │ │ │ │ │ ├── PerpsV2ProxyXAUPERP.json │ │ │ │ │ ├── PerpsV2ProxyXLMPERP.json │ │ │ │ │ ├── PerpsV2ProxyXMRPERP.json │ │ │ │ │ ├── PerpsV2ProxyXRPPERP.json │ │ │ │ │ ├── PerpsV2ProxyXTZPERP.json │ │ │ │ │ ├── PerpsV2ProxyYFIPERP.json │ │ │ │ │ ├── PerpsV2ProxyZECPERP.json │ │ │ │ │ ├── PerpsV2ProxyZILPERP.json │ │ │ │ │ ├── PerpsV2ProxyZRXPERP.json │ │ │ │ │ ├── ProxyERC20.json │ │ │ │ │ ├── ProxyERC20sUSD.json │ │ │ │ │ ├── ProxyFeePool.json │ │ │ │ │ ├── ProxySynthetix.json │ │ │ │ │ ├── ProxysAAVE.json │ │ │ │ │ ├── ProxysAVAX.json │ │ │ │ │ ├── ProxysBTC.json │ │ │ │ │ ├── ProxysETH.json │ │ │ │ │ ├── ProxysEUR.json │ │ │ │ │ ├── ProxysLINK.json │ │ │ │ │ ├── ProxysMATIC.json │ │ │ │ │ ├── ProxysSOL.json │ │ │ │ │ ├── ProxysUNI.json │ │ │ │ │ ├── ProxysUSD.json │ │ │ │ │ ├── ReadProxyAddressResolver.json │ │ │ │ │ ├── RewardEscrowV2.json │ │ │ │ │ ├── RewardEscrowV2Storage.json │ │ │ │ │ ├── RewardsDistribution.json │ │ │ │ │ ├── SafeDecimalMath.json │ │ │ │ │ ├── SignedSafeDecimalMath.json │ │ │ │ │ ├── StakingRewardsSNXWETHUniswapV3.json │ │ │ │ │ ├── StakingRewardssUSDDAIUniswapV3.json │ │ │ │ │ ├── SynthRedeemer.json │ │ │ │ │ ├── SynthUtil.json │ │ │ │ │ ├── Synthetix.json │ │ │ │ │ ├── SynthetixBridgeToBase.json │ │ │ │ │ ├── SynthetixDebtShare.json │ │ │ │ │ ├── SynthetixEscrow.json │ │ │ │ │ ├── SynthetixState.json │ │ │ │ │ ├── SynthsAAVE.json │ │ │ │ │ ├── SynthsAVAX.json │ │ │ │ │ ├── SynthsBTC.json │ │ │ │ │ ├── SynthsETH.json │ │ │ │ │ ├── SynthsEUR.json │ │ │ │ │ ├── SynthsLINK.json │ │ │ │ │ ├── SynthsMATIC.json │ │ │ │ │ ├── SynthsSOL.json │ │ │ │ │ ├── SynthsUNI.json │ │ │ │ │ ├── SynthsUSD.json │ │ │ │ │ ├── SystemSettings.json │ │ │ │ │ ├── SystemSettingsLib.json │ │ │ │ │ ├── SystemStatus.json │ │ │ │ │ ├── TokenStateSynthetix.json │ │ │ │ │ ├── TokenStatesAAVE.json │ │ │ │ │ ├── TokenStatesAVAX.json │ │ │ │ │ ├── TokenStatesBTC.json │ │ │ │ │ ├── TokenStatesETH.json │ │ │ │ │ ├── TokenStatesEUR.json │ │ │ │ │ ├── TokenStatesLINK.json │ │ │ │ │ ├── TokenStatesMATIC.json │ │ │ │ │ ├── TokenStatesSOL.json │ │ │ │ │ ├── TokenStatesUNI.json │ │ │ │ │ ├── TokenStatesUSD.json │ │ │ │ │ ├── TradingRewards.json │ │ │ │ │ └── WrapperFactory.json │ │ │ └── synths.ts │ │ ├── mainnet │ │ │ ├── deployment │ │ │ │ ├── AddressResolver.ts │ │ │ │ ├── CircuitBreaker.ts │ │ │ │ ├── CollateralErc20.ts │ │ │ │ ├── CollateralEth.ts │ │ │ │ ├── CollateralManager.ts │ │ │ │ ├── CollateralManagerState.ts │ │ │ │ ├── CollateralShort.ts │ │ │ │ ├── CollateralStateErc20.ts │ │ │ │ ├── CollateralStateEth.ts │ │ │ │ ├── CollateralStateShort.ts │ │ │ │ ├── DappMaintenance.ts │ │ │ │ ├── DebtCache.ts │ │ │ │ ├── DebtMigratorOnEthereum.ts │ │ │ │ ├── DelegateApprovals.ts │ │ │ │ ├── DelegateApprovalsEternalStorage.ts │ │ │ │ ├── Depot.ts │ │ │ │ ├── DirectIntegrationManager.ts │ │ │ │ ├── DynamicSynthRedeemer.ts │ │ │ │ ├── EscrowChecker.ts │ │ │ │ ├── EtherWrapper.ts │ │ │ │ ├── ExchangeCircuitBreaker.ts │ │ │ │ ├── ExchangeRates.ts │ │ │ │ ├── ExchangeSettlementLib.ts │ │ │ │ ├── ExchangeState.ts │ │ │ │ ├── Exchanger.ts │ │ │ │ ├── FeePool.ts │ │ │ │ ├── FeePoolEternalStorage.ts │ │ │ │ ├── FeePoolState.ts │ │ │ │ ├── FlexibleStorage.ts │ │ │ │ ├── FuturesMarketManager.ts │ │ │ │ ├── IssuanceEternalStorage.ts │ │ │ │ ├── Issuer.ts │ │ │ │ ├── Liquidator.ts │ │ │ │ ├── LiquidatorRewards.ts │ │ │ │ ├── Math.ts │ │ │ │ ├── NativeEtherWrapper.ts │ │ │ │ ├── OneNetAggregatorDebtRatio.ts │ │ │ │ ├── OneNetAggregatorIssuedSynths.ts │ │ │ │ ├── OneNetAggregatorsDEFI.ts │ │ │ │ ├── OwnerRelayOnEthereum.ts │ │ │ │ ├── ProxyERC20.ts │ │ │ │ ├── ProxyERC20sUSD.ts │ │ │ │ ├── ProxyFeePool.ts │ │ │ │ ├── ProxySynthetix.ts │ │ │ │ ├── ProxysAAVE.ts │ │ │ │ ├── ProxysADA.ts │ │ │ │ ├── ProxysAUD.ts │ │ │ │ ├── ProxysBTC.ts │ │ │ │ ├── ProxysCHF.ts │ │ │ │ ├── ProxysDOT.ts │ │ │ │ ├── ProxysETH.ts │ │ │ │ ├── ProxysETHBTC.ts │ │ │ │ ├── ProxysEUR.ts │ │ │ │ ├── ProxysGBP.ts │ │ │ │ ├── ProxysJPY.ts │ │ │ │ ├── ProxysKRW.ts │ │ │ │ ├── ProxysLINK.ts │ │ │ │ ├── ProxysUSD.ts │ │ │ │ ├── ReadProxyAddressResolver.ts │ │ │ │ ├── RewardEscrow.ts │ │ │ │ ├── RewardEscrowV2.ts │ │ │ │ ├── RewardEscrowV2Storage.ts │ │ │ │ ├── RewardsDistribution.ts │ │ │ │ ├── SafeDecimalMath.ts │ │ │ │ ├── ShortingRewardssBTC.ts │ │ │ │ ├── ShortingRewardssETH.ts │ │ │ │ ├── SignedSafeDecimalMath.ts │ │ │ │ ├── StakingRewardsSNXBalancer.ts │ │ │ │ ├── StakingRewardsiBTC.ts │ │ │ │ ├── StakingRewardsiETH.ts │ │ │ │ ├── StakingRewardssAAPLBalancer.ts │ │ │ │ ├── StakingRewardssAMZNBalancer.ts │ │ │ │ ├── StakingRewardssBTCCurve.ts │ │ │ │ ├── StakingRewardssCOINBalancer.ts │ │ │ │ ├── StakingRewardssETHUniswapV1.ts │ │ │ │ ├── StakingRewardssEURCurve.ts │ │ │ │ ├── StakingRewardssFBBalancer.ts │ │ │ │ ├── StakingRewardssGOOGBalancer.ts │ │ │ │ ├── StakingRewardssMSFTBalancer.ts │ │ │ │ ├── StakingRewardssNFLXBalancer.ts │ │ │ │ ├── StakingRewardssTSLABalancer.ts │ │ │ │ ├── StakingRewardssUSDCurve.ts │ │ │ │ ├── StakingRewardssXAUUniswapV2.ts │ │ │ │ ├── SupplySchedule.ts │ │ │ │ ├── SynthRedeemer.ts │ │ │ │ ├── SynthUtil.ts │ │ │ │ ├── Synthetix.ts │ │ │ │ ├── SynthetixBridgeEscrow.ts │ │ │ │ ├── SynthetixBridgeToOptimism.ts │ │ │ │ ├── SynthetixDebtShare.ts │ │ │ │ ├── SynthetixEscrow.ts │ │ │ │ ├── SynthetixState.ts │ │ │ │ ├── SynthsAAVE.ts │ │ │ │ ├── SynthsADA.ts │ │ │ │ ├── SynthsAUD.ts │ │ │ │ ├── SynthsBTC.ts │ │ │ │ ├── SynthsCHF.ts │ │ │ │ ├── SynthsDOT.ts │ │ │ │ ├── SynthsETH.ts │ │ │ │ ├── SynthsETHBTC.ts │ │ │ │ ├── SynthsEUR.ts │ │ │ │ ├── SynthsGBP.ts │ │ │ │ ├── SynthsJPY.ts │ │ │ │ ├── SynthsKRW.ts │ │ │ │ ├── SynthsLINK.ts │ │ │ │ ├── SynthsUSD.ts │ │ │ │ ├── SystemSettings.ts │ │ │ │ ├── SystemSettingsLib.ts │ │ │ │ ├── SystemStatus.ts │ │ │ │ ├── TokenStateSynthetix.ts │ │ │ │ ├── TokenStatesAAVE.ts │ │ │ │ ├── TokenStatesADA.ts │ │ │ │ ├── TokenStatesAUD.ts │ │ │ │ ├── TokenStatesBTC.ts │ │ │ │ ├── TokenStatesCHF.ts │ │ │ │ ├── TokenStatesDOT.ts │ │ │ │ ├── TokenStatesETH.ts │ │ │ │ ├── TokenStatesETHBTC.ts │ │ │ │ ├── TokenStatesEUR.ts │ │ │ │ ├── TokenStatesGBP.ts │ │ │ │ ├── TokenStatesJPY.ts │ │ │ │ ├── TokenStatesKRW.ts │ │ │ │ ├── TokenStatesLINK.ts │ │ │ │ ├── TokenStatesUSD.ts │ │ │ │ ├── TradingRewards.ts │ │ │ │ ├── VirtualSynthMastercopy.ts │ │ │ │ ├── WrapperFactory.ts │ │ │ │ └── json │ │ │ │ │ ├── AddressResolver.json │ │ │ │ │ ├── CircuitBreaker.json │ │ │ │ │ ├── CollateralErc20.json │ │ │ │ │ ├── CollateralEth.json │ │ │ │ │ ├── CollateralManager.json │ │ │ │ │ ├── CollateralManagerState.json │ │ │ │ │ ├── CollateralShort.json │ │ │ │ │ ├── CollateralStateErc20.json │ │ │ │ │ ├── CollateralStateEth.json │ │ │ │ │ ├── CollateralStateShort.json │ │ │ │ │ ├── DappMaintenance.json │ │ │ │ │ ├── DebtCache.json │ │ │ │ │ ├── DebtMigratorOnEthereum.json │ │ │ │ │ ├── DelegateApprovals.json │ │ │ │ │ ├── DelegateApprovalsEternalStorage.json │ │ │ │ │ ├── Depot.json │ │ │ │ │ ├── DirectIntegrationManager.json │ │ │ │ │ ├── DynamicSynthRedeemer.json │ │ │ │ │ ├── EscrowChecker.json │ │ │ │ │ ├── EtherWrapper.json │ │ │ │ │ ├── ExchangeCircuitBreaker.json │ │ │ │ │ ├── ExchangeRates.json │ │ │ │ │ ├── ExchangeSettlementLib.json │ │ │ │ │ ├── ExchangeState.json │ │ │ │ │ ├── Exchanger.json │ │ │ │ │ ├── FeePool.json │ │ │ │ │ ├── FeePoolEternalStorage.json │ │ │ │ │ ├── FeePoolState.json │ │ │ │ │ ├── FlexibleStorage.json │ │ │ │ │ ├── FuturesMarketManager.json │ │ │ │ │ ├── IssuanceEternalStorage.json │ │ │ │ │ ├── Issuer.json │ │ │ │ │ ├── Liquidator.json │ │ │ │ │ ├── LiquidatorRewards.json │ │ │ │ │ ├── Math.json │ │ │ │ │ ├── NativeEtherWrapper.json │ │ │ │ │ ├── OneNetAggregatorDebtRatio.json │ │ │ │ │ ├── OneNetAggregatorIssuedSynths.json │ │ │ │ │ ├── OneNetAggregatorsDEFI.json │ │ │ │ │ ├── OwnerRelayOnEthereum.json │ │ │ │ │ ├── ProxyERC20.json │ │ │ │ │ ├── ProxyERC20sUSD.json │ │ │ │ │ ├── ProxyFeePool.json │ │ │ │ │ ├── ProxySynthetix.json │ │ │ │ │ ├── ProxysAAVE.json │ │ │ │ │ ├── ProxysADA.json │ │ │ │ │ ├── ProxysAUD.json │ │ │ │ │ ├── ProxysBTC.json │ │ │ │ │ ├── ProxysCHF.json │ │ │ │ │ ├── ProxysDOT.json │ │ │ │ │ ├── ProxysETH.json │ │ │ │ │ ├── ProxysETHBTC.json │ │ │ │ │ ├── ProxysEUR.json │ │ │ │ │ ├── ProxysGBP.json │ │ │ │ │ ├── ProxysJPY.json │ │ │ │ │ ├── ProxysKRW.json │ │ │ │ │ ├── ProxysLINK.json │ │ │ │ │ ├── ProxysUSD.json │ │ │ │ │ ├── ReadProxyAddressResolver.json │ │ │ │ │ ├── RewardEscrow.json │ │ │ │ │ ├── RewardEscrowV2.json │ │ │ │ │ ├── RewardEscrowV2Storage.json │ │ │ │ │ ├── RewardsDistribution.json │ │ │ │ │ ├── SafeDecimalMath.json │ │ │ │ │ ├── ShortingRewardssBTC.json │ │ │ │ │ ├── ShortingRewardssETH.json │ │ │ │ │ ├── SignedSafeDecimalMath.json │ │ │ │ │ ├── StakingRewardsSNXBalancer.json │ │ │ │ │ ├── StakingRewardsiBTC.json │ │ │ │ │ ├── StakingRewardsiETH.json │ │ │ │ │ ├── StakingRewardssAAPLBalancer.json │ │ │ │ │ ├── StakingRewardssAMZNBalancer.json │ │ │ │ │ ├── StakingRewardssBTCCurve.json │ │ │ │ │ ├── StakingRewardssCOINBalancer.json │ │ │ │ │ ├── StakingRewardssETHUniswapV1.json │ │ │ │ │ ├── StakingRewardssEURCurve.json │ │ │ │ │ ├── StakingRewardssFBBalancer.json │ │ │ │ │ ├── StakingRewardssGOOGBalancer.json │ │ │ │ │ ├── StakingRewardssMSFTBalancer.json │ │ │ │ │ ├── StakingRewardssNFLXBalancer.json │ │ │ │ │ ├── StakingRewardssTSLABalancer.json │ │ │ │ │ ├── StakingRewardssUSDCurve.json │ │ │ │ │ ├── StakingRewardssXAUUniswapV2.json │ │ │ │ │ ├── SupplySchedule.json │ │ │ │ │ ├── SynthRedeemer.json │ │ │ │ │ ├── SynthUtil.json │ │ │ │ │ ├── Synthetix.json │ │ │ │ │ ├── SynthetixBridgeEscrow.json │ │ │ │ │ ├── SynthetixBridgeToOptimism.json │ │ │ │ │ ├── SynthetixDebtShare.json │ │ │ │ │ ├── SynthetixEscrow.json │ │ │ │ │ ├── SynthetixState.json │ │ │ │ │ ├── SynthsAAVE.json │ │ │ │ │ ├── SynthsADA.json │ │ │ │ │ ├── SynthsAUD.json │ │ │ │ │ ├── SynthsBTC.json │ │ │ │ │ ├── SynthsCHF.json │ │ │ │ │ ├── SynthsDOT.json │ │ │ │ │ ├── SynthsETH.json │ │ │ │ │ ├── SynthsETHBTC.json │ │ │ │ │ ├── SynthsEUR.json │ │ │ │ │ ├── SynthsGBP.json │ │ │ │ │ ├── SynthsJPY.json │ │ │ │ │ ├── SynthsKRW.json │ │ │ │ │ ├── SynthsLINK.json │ │ │ │ │ ├── SynthsUSD.json │ │ │ │ │ ├── SystemSettings.json │ │ │ │ │ ├── SystemSettingsLib.json │ │ │ │ │ ├── SystemStatus.json │ │ │ │ │ ├── TokenStateSynthetix.json │ │ │ │ │ ├── TokenStatesAAVE.json │ │ │ │ │ ├── TokenStatesADA.json │ │ │ │ │ ├── TokenStatesAUD.json │ │ │ │ │ ├── TokenStatesBTC.json │ │ │ │ │ ├── TokenStatesCHF.json │ │ │ │ │ ├── TokenStatesDOT.json │ │ │ │ │ ├── TokenStatesETH.json │ │ │ │ │ ├── TokenStatesETHBTC.json │ │ │ │ │ ├── TokenStatesEUR.json │ │ │ │ │ ├── TokenStatesGBP.json │ │ │ │ │ ├── TokenStatesJPY.json │ │ │ │ │ ├── TokenStatesKRW.json │ │ │ │ │ ├── TokenStatesLINK.json │ │ │ │ │ ├── TokenStatesUSD.json │ │ │ │ │ ├── TradingRewards.json │ │ │ │ │ ├── VirtualSynthMastercopy.json │ │ │ │ │ └── WrapperFactory.json │ │ │ └── synths.ts │ │ ├── sepolia-ovm │ │ │ ├── deployment │ │ │ │ ├── AddressResolver.ts │ │ │ │ ├── CircuitBreaker.ts │ │ │ │ ├── CollateralEth.ts │ │ │ │ ├── CollateralManager.ts │ │ │ │ ├── CollateralManagerState.ts │ │ │ │ ├── CollateralShort.ts │ │ │ │ ├── CollateralUtil.ts │ │ │ │ ├── DappMaintenance.ts │ │ │ │ ├── DebtCache.ts │ │ │ │ ├── DebtMigratorOnOptimism.ts │ │ │ │ ├── DelegateApprovals.ts │ │ │ │ ├── DelegateApprovalsEternalStorage.ts │ │ │ │ ├── DirectIntegrationManager.ts │ │ │ │ ├── DynamicSynthRedeemer.ts │ │ │ │ ├── EscrowChecker.ts │ │ │ │ ├── EtherWrapper.ts │ │ │ │ ├── ExchangeCircuitBreaker.ts │ │ │ │ ├── ExchangeRates.ts │ │ │ │ ├── ExchangeSettlementLib.ts │ │ │ │ ├── ExchangeState.ts │ │ │ │ ├── Exchanger.ts │ │ │ │ ├── FeePool.ts │ │ │ │ ├── FeePoolEternalStorage.ts │ │ │ │ ├── FeePoolState.ts │ │ │ │ ├── FlexibleStorage.ts │ │ │ │ ├── FuturesMarketManager.ts │ │ │ │ ├── Issuer.ts │ │ │ │ ├── Liquidator.ts │ │ │ │ ├── LiquidatorRewards.ts │ │ │ │ ├── Math.ts │ │ │ │ ├── OneNetAggregatorDebtRatio.ts │ │ │ │ ├── OneNetAggregatorIssuedSynths.ts │ │ │ │ ├── OwnerRelayOnOptimism.ts │ │ │ │ ├── PerpsV2DelayedExecution1INCHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAAVEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionADAPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionALGOPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionANKRPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAPEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAPTPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionARBPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionATOMPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAUDPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAVAXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionAXSPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBALPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBCHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBLURPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBNBPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBONKPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionBTCPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionCELOPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionCOMPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionCRVPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionCVXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionDOGEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionDOTPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionDYDXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionENJPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionEOSPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionETCPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionETHBTCPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionETHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionEURPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFETPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFILPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFLOKIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFLOWPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFTMPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionFXSPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionGBPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionGMXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionGRTPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionICPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionIMXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionINJPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionJTOPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionJUPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionKNCPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionLDOPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionLINKPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionLTCPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionMATICPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionMAVPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionMEMEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionMKRPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionNEARPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionONEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionOPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionORDIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionPENDLEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionPEPEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionPERPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionPYTHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionRNDRPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionRPLPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionRUNEPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSEIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSHIBPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSOLPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSTETHETHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSTETHPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSTRKPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSUIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionSUSHIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionTIAPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionTRBPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionTRXPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionUMAPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionUNIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionUSDTPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionWLDPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXAGPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXAUPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXLMPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXMRPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXRPPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionXTZPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionYFIPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionZECPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionZILPERP.ts │ │ │ │ ├── PerpsV2DelayedExecutionZRXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntent1INCHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAAVEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentADAPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentALGOPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentANKRPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAPEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAPTPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentARBPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentATOMPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAUDPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAVAXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentAXSPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBALPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBCHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBLURPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBNBPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBONKPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentBTCPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentCELOPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentCOMPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentCRVPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentCVXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentDOGEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentDOTPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentDYDXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentENJPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentEOSPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentETCPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentETHBTCPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentETHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentEURPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFETPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFILPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFLOKIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFLOWPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFTMPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentFXSPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentGBPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentGMXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentGRTPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentICPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentIMXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentINJPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentJTOPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentJUPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentKNCPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentLDOPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentLINKPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentLTCPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentMATICPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentMAVPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentMEMEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentMKRPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentNEARPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentONEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentOPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentORDIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentPENDLEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentPEPEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentPERPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentPYTHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentRNDRPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentRPLPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentRUNEPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSEIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSHIBPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSOLPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSTETHETHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSTETHPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSTRKPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSUIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentSUSHIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentTIAPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentTRBPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentTRXPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentUMAPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentUNIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentUSDTPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentWLDPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXAGPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXAUPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXLMPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXMRPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXRPPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentXTZPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentYFIPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentZECPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentZILPERP.ts │ │ │ │ ├── PerpsV2DelayedIntentZRXPERP.ts │ │ │ │ ├── PerpsV2ExchangeRate.ts │ │ │ │ ├── PerpsV2Market1INCHPERP.ts │ │ │ │ ├── PerpsV2MarketAAVEPERP.ts │ │ │ │ ├── PerpsV2MarketADAPERP.ts │ │ │ │ ├── PerpsV2MarketALGOPERP.ts │ │ │ │ ├── PerpsV2MarketANKRPERP.ts │ │ │ │ ├── PerpsV2MarketAPEPERP.ts │ │ │ │ ├── PerpsV2MarketAPTPERP.ts │ │ │ │ ├── PerpsV2MarketARBPERP.ts │ │ │ │ ├── PerpsV2MarketATOMPERP.ts │ │ │ │ ├── PerpsV2MarketAUDPERP.ts │ │ │ │ ├── PerpsV2MarketAVAXPERP.ts │ │ │ │ ├── PerpsV2MarketAXSPERP.ts │ │ │ │ ├── PerpsV2MarketBALPERP.ts │ │ │ │ ├── PerpsV2MarketBCHPERP.ts │ │ │ │ ├── PerpsV2MarketBLURPERP.ts │ │ │ │ ├── PerpsV2MarketBNBPERP.ts │ │ │ │ ├── PerpsV2MarketBONKPERP.ts │ │ │ │ ├── PerpsV2MarketBTCPERP.ts │ │ │ │ ├── PerpsV2MarketCELOPERP.ts │ │ │ │ ├── PerpsV2MarketCOMPPERP.ts │ │ │ │ ├── PerpsV2MarketCRVPERP.ts │ │ │ │ ├── PerpsV2MarketCVXPERP.ts │ │ │ │ ├── PerpsV2MarketDOGEPERP.ts │ │ │ │ ├── PerpsV2MarketDOTPERP.ts │ │ │ │ ├── PerpsV2MarketDYDXPERP.ts │ │ │ │ ├── PerpsV2MarketData.ts │ │ │ │ ├── PerpsV2MarketENJPERP.ts │ │ │ │ ├── PerpsV2MarketEOSPERP.ts │ │ │ │ ├── PerpsV2MarketETCPERP.ts │ │ │ │ ├── PerpsV2MarketETHBTCPERP.ts │ │ │ │ ├── PerpsV2MarketETHPERP.ts │ │ │ │ ├── PerpsV2MarketEURPERP.ts │ │ │ │ ├── PerpsV2MarketFETPERP.ts │ │ │ │ ├── PerpsV2MarketFILPERP.ts │ │ │ │ ├── PerpsV2MarketFLOKIPERP.ts │ │ │ │ ├── PerpsV2MarketFLOWPERP.ts │ │ │ │ ├── PerpsV2MarketFTMPERP.ts │ │ │ │ ├── PerpsV2MarketFXSPERP.ts │ │ │ │ ├── PerpsV2MarketGBPPERP.ts │ │ │ │ ├── PerpsV2MarketGMXPERP.ts │ │ │ │ ├── PerpsV2MarketGRTPERP.ts │ │ │ │ ├── PerpsV2MarketICPPERP.ts │ │ │ │ ├── PerpsV2MarketIMXPERP.ts │ │ │ │ ├── PerpsV2MarketINJPERP.ts │ │ │ │ ├── PerpsV2MarketJTOPERP.ts │ │ │ │ ├── PerpsV2MarketJUPPERP.ts │ │ │ │ ├── PerpsV2MarketKNCPERP.ts │ │ │ │ ├── PerpsV2MarketLDOPERP.ts │ │ │ │ ├── PerpsV2MarketLINKPERP.ts │ │ │ │ ├── PerpsV2MarketLTCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidate1INCHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAAVEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateADAPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateALGOPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateANKRPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAPEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAPTPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateARBPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateATOMPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAUDPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAVAXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateAXSPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBALPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBCHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBLURPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBNBPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBONKPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateBTCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateCELOPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateCOMPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateCRVPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateCVXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateDOGEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateDOTPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateDYDXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateENJPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateEOSPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateETCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateETHBTCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateETHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateEURPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFETPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFILPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFLOKIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFLOWPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFTMPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateFXSPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateGBPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateGMXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateGRTPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateICPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateIMXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateINJPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateJTOPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateJUPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateKNCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateLDOPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateLINKPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateLTCPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateMATICPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateMAVPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateMEMEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateMKRPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateNEARPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateONEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateOPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateORDIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidatePENDLEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidatePEPEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidatePERPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidatePYTHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateRNDRPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateRPLPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateRUNEPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSEIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSHIBPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSOLPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSTETHETHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSTETHPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSTRKPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSUIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateSUSHIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateTIAPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateTRBPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateTRXPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateUMAPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateUNIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateUSDTPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateWLDPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXAGPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXAUPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXLMPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXMRPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXRPPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateXTZPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateYFIPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateZECPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateZILPERP.ts │ │ │ │ ├── PerpsV2MarketLiquidateZRXPERP.ts │ │ │ │ ├── PerpsV2MarketMATICPERP.ts │ │ │ │ ├── PerpsV2MarketMAVPERP.ts │ │ │ │ ├── PerpsV2MarketMEMEPERP.ts │ │ │ │ ├── PerpsV2MarketMKRPERP.ts │ │ │ │ ├── PerpsV2MarketNEARPERP.ts │ │ │ │ ├── PerpsV2MarketONEPERP.ts │ │ │ │ ├── PerpsV2MarketOPPERP.ts │ │ │ │ ├── PerpsV2MarketORDIPERP.ts │ │ │ │ ├── PerpsV2MarketPENDLEPERP.ts │ │ │ │ ├── PerpsV2MarketPEPEPERP.ts │ │ │ │ ├── PerpsV2MarketPERPPERP.ts │ │ │ │ ├── PerpsV2MarketPYTHPERP.ts │ │ │ │ ├── PerpsV2MarketRNDRPERP.ts │ │ │ │ ├── PerpsV2MarketRPLPERP.ts │ │ │ │ ├── PerpsV2MarketRUNEPERP.ts │ │ │ │ ├── PerpsV2MarketSEIPERP.ts │ │ │ │ ├── PerpsV2MarketSHIBPERP.ts │ │ │ │ ├── PerpsV2MarketSOLPERP.ts │ │ │ │ ├── PerpsV2MarketSTETHETHPERP.ts │ │ │ │ ├── PerpsV2MarketSTETHPERP.ts │ │ │ │ ├── PerpsV2MarketSTRKPERP.ts │ │ │ │ ├── PerpsV2MarketSUIPERP.ts │ │ │ │ ├── PerpsV2MarketSUSHIPERP.ts │ │ │ │ ├── PerpsV2MarketSettings.ts │ │ │ │ ├── PerpsV2MarketState1INCHPERP.ts │ │ │ │ ├── PerpsV2MarketStateAAVEPERP.ts │ │ │ │ ├── PerpsV2MarketStateADAPERP.ts │ │ │ │ ├── PerpsV2MarketStateALGOPERP.ts │ │ │ │ ├── PerpsV2MarketStateANKRPERP.ts │ │ │ │ ├── PerpsV2MarketStateAPEPERP.ts │ │ │ │ ├── PerpsV2MarketStateAPTPERP.ts │ │ │ │ ├── PerpsV2MarketStateARBPERP.ts │ │ │ │ ├── PerpsV2MarketStateATOMPERP.ts │ │ │ │ ├── PerpsV2MarketStateAUDPERP.ts │ │ │ │ ├── PerpsV2MarketStateAVAXPERP.ts │ │ │ │ ├── PerpsV2MarketStateAXSPERP.ts │ │ │ │ ├── PerpsV2MarketStateBALPERP.ts │ │ │ │ ├── PerpsV2MarketStateBCHPERP.ts │ │ │ │ ├── PerpsV2MarketStateBLURPERP.ts │ │ │ │ ├── PerpsV2MarketStateBNBPERP.ts │ │ │ │ ├── PerpsV2MarketStateBONKPERP.ts │ │ │ │ ├── PerpsV2MarketStateBTCPERP.ts │ │ │ │ ├── PerpsV2MarketStateCELOPERP.ts │ │ │ │ ├── PerpsV2MarketStateCOMPPERP.ts │ │ │ │ ├── PerpsV2MarketStateCRVPERP.ts │ │ │ │ ├── PerpsV2MarketStateCVXPERP.ts │ │ │ │ ├── PerpsV2MarketStateDOGEPERP.ts │ │ │ │ ├── PerpsV2MarketStateDOTPERP.ts │ │ │ │ ├── PerpsV2MarketStateDYDXPERP.ts │ │ │ │ ├── PerpsV2MarketStateENJPERP.ts │ │ │ │ ├── PerpsV2MarketStateEOSPERP.ts │ │ │ │ ├── PerpsV2MarketStateETCPERP.ts │ │ │ │ ├── PerpsV2MarketStateETHBTCPERP.ts │ │ │ │ ├── PerpsV2MarketStateETHPERP.ts │ │ │ │ ├── PerpsV2MarketStateEURPERP.ts │ │ │ │ ├── PerpsV2MarketStateFETPERP.ts │ │ │ │ ├── PerpsV2MarketStateFILPERP.ts │ │ │ │ ├── PerpsV2MarketStateFLOKIPERP.ts │ │ │ │ ├── PerpsV2MarketStateFLOWPERP.ts │ │ │ │ ├── PerpsV2MarketStateFTMPERP.ts │ │ │ │ ├── PerpsV2MarketStateFXSPERP.ts │ │ │ │ ├── PerpsV2MarketStateGBPPERP.ts │ │ │ │ ├── PerpsV2MarketStateGMXPERP.ts │ │ │ │ ├── PerpsV2MarketStateGRTPERP.ts │ │ │ │ ├── PerpsV2MarketStateICPPERP.ts │ │ │ │ ├── PerpsV2MarketStateIMXPERP.ts │ │ │ │ ├── PerpsV2MarketStateINJPERP.ts │ │ │ │ ├── PerpsV2MarketStateJTOPERP.ts │ │ │ │ ├── PerpsV2MarketStateJUPPERP.ts │ │ │ │ ├── PerpsV2MarketStateKNCPERP.ts │ │ │ │ ├── PerpsV2MarketStateLDOPERP.ts │ │ │ │ ├── PerpsV2MarketStateLINKPERP.ts │ │ │ │ ├── PerpsV2MarketStateLTCPERP.ts │ │ │ │ ├── PerpsV2MarketStateMATICPERP.ts │ │ │ │ ├── PerpsV2MarketStateMAVPERP.ts │ │ │ │ ├── PerpsV2MarketStateMEMEPERP.ts │ │ │ │ ├── PerpsV2MarketStateMKRPERP.ts │ │ │ │ ├── PerpsV2MarketStateNEARPERP.ts │ │ │ │ ├── PerpsV2MarketStateONEPERP.ts │ │ │ │ ├── PerpsV2MarketStateOPPERP.ts │ │ │ │ ├── PerpsV2MarketStateORDIPERP.ts │ │ │ │ ├── PerpsV2MarketStatePENDLEPERP.ts │ │ │ │ ├── PerpsV2MarketStatePEPEPERP.ts │ │ │ │ ├── PerpsV2MarketStatePERPPERP.ts │ │ │ │ ├── PerpsV2MarketStatePYTHPERP.ts │ │ │ │ ├── PerpsV2MarketStateRNDRPERP.ts │ │ │ │ ├── PerpsV2MarketStateRPLPERP.ts │ │ │ │ ├── PerpsV2MarketStateRUNEPERP.ts │ │ │ │ ├── PerpsV2MarketStateSEIPERP.ts │ │ │ │ ├── PerpsV2MarketStateSHIBPERP.ts │ │ │ │ ├── PerpsV2MarketStateSOLPERP.ts │ │ │ │ ├── PerpsV2MarketStateSTETHETHPERP.ts │ │ │ │ ├── PerpsV2MarketStateSTETHPERP.ts │ │ │ │ ├── PerpsV2MarketStateSTRKPERP.ts │ │ │ │ ├── PerpsV2MarketStateSUIPERP.ts │ │ │ │ ├── PerpsV2MarketStateSUSHIPERP.ts │ │ │ │ ├── PerpsV2MarketStateTIAPERP.ts │ │ │ │ ├── PerpsV2MarketStateTRBPERP.ts │ │ │ │ ├── PerpsV2MarketStateTRXPERP.ts │ │ │ │ ├── PerpsV2MarketStateUMAPERP.ts │ │ │ │ ├── PerpsV2MarketStateUNIPERP.ts │ │ │ │ ├── PerpsV2MarketStateUSDTPERP.ts │ │ │ │ ├── PerpsV2MarketStateWLDPERP.ts │ │ │ │ ├── PerpsV2MarketStateXAGPERP.ts │ │ │ │ ├── PerpsV2MarketStateXAUPERP.ts │ │ │ │ ├── PerpsV2MarketStateXLMPERP.ts │ │ │ │ ├── PerpsV2MarketStateXMRPERP.ts │ │ │ │ ├── PerpsV2MarketStateXRPPERP.ts │ │ │ │ ├── PerpsV2MarketStateXTZPERP.ts │ │ │ │ ├── PerpsV2MarketStateYFIPERP.ts │ │ │ │ ├── PerpsV2MarketStateZECPERP.ts │ │ │ │ ├── PerpsV2MarketStateZILPERP.ts │ │ │ │ ├── PerpsV2MarketStateZRXPERP.ts │ │ │ │ ├── PerpsV2MarketTIAPERP.ts │ │ │ │ ├── PerpsV2MarketTRBPERP.ts │ │ │ │ ├── PerpsV2MarketTRXPERP.ts │ │ │ │ ├── PerpsV2MarketUMAPERP.ts │ │ │ │ ├── PerpsV2MarketUNIPERP.ts │ │ │ │ ├── PerpsV2MarketUSDTPERP.ts │ │ │ │ ├── PerpsV2MarketViews1INCHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAAVEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsADAPERP.ts │ │ │ │ ├── PerpsV2MarketViewsALGOPERP.ts │ │ │ │ ├── PerpsV2MarketViewsANKRPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAPEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAPTPERP.ts │ │ │ │ ├── PerpsV2MarketViewsARBPERP.ts │ │ │ │ ├── PerpsV2MarketViewsATOMPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAUDPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAVAXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsAXSPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBALPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBCHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBLURPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBNBPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBONKPERP.ts │ │ │ │ ├── PerpsV2MarketViewsBTCPERP.ts │ │ │ │ ├── PerpsV2MarketViewsCELOPERP.ts │ │ │ │ ├── PerpsV2MarketViewsCOMPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsCRVPERP.ts │ │ │ │ ├── PerpsV2MarketViewsCVXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsDOGEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsDOTPERP.ts │ │ │ │ ├── PerpsV2MarketViewsDYDXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsENJPERP.ts │ │ │ │ ├── PerpsV2MarketViewsEOSPERP.ts │ │ │ │ ├── PerpsV2MarketViewsETCPERP.ts │ │ │ │ ├── PerpsV2MarketViewsETHBTCPERP.ts │ │ │ │ ├── PerpsV2MarketViewsETHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsEURPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFETPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFILPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFLOKIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFLOWPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFTMPERP.ts │ │ │ │ ├── PerpsV2MarketViewsFXSPERP.ts │ │ │ │ ├── PerpsV2MarketViewsGBPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsGMXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsGRTPERP.ts │ │ │ │ ├── PerpsV2MarketViewsICPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsIMXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsINJPERP.ts │ │ │ │ ├── PerpsV2MarketViewsJTOPERP.ts │ │ │ │ ├── PerpsV2MarketViewsJUPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsKNCPERP.ts │ │ │ │ ├── PerpsV2MarketViewsLDOPERP.ts │ │ │ │ ├── PerpsV2MarketViewsLINKPERP.ts │ │ │ │ ├── PerpsV2MarketViewsLTCPERP.ts │ │ │ │ ├── PerpsV2MarketViewsMATICPERP.ts │ │ │ │ ├── PerpsV2MarketViewsMAVPERP.ts │ │ │ │ ├── PerpsV2MarketViewsMEMEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsMKRPERP.ts │ │ │ │ ├── PerpsV2MarketViewsNEARPERP.ts │ │ │ │ ├── PerpsV2MarketViewsONEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsOPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsORDIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsPENDLEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsPEPEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsPERPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsPYTHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsRNDRPERP.ts │ │ │ │ ├── PerpsV2MarketViewsRPLPERP.ts │ │ │ │ ├── PerpsV2MarketViewsRUNEPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSEIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSHIBPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSOLPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSTETHETHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSTETHPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSTRKPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSUIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsSUSHIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsTIAPERP.ts │ │ │ │ ├── PerpsV2MarketViewsTRBPERP.ts │ │ │ │ ├── PerpsV2MarketViewsTRXPERP.ts │ │ │ │ ├── PerpsV2MarketViewsUMAPERP.ts │ │ │ │ ├── PerpsV2MarketViewsUNIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsUSDTPERP.ts │ │ │ │ ├── PerpsV2MarketViewsWLDPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXAGPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXAUPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXLMPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXMRPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXRPPERP.ts │ │ │ │ ├── PerpsV2MarketViewsXTZPERP.ts │ │ │ │ ├── PerpsV2MarketViewsYFIPERP.ts │ │ │ │ ├── PerpsV2MarketViewsZECPERP.ts │ │ │ │ ├── PerpsV2MarketViewsZILPERP.ts │ │ │ │ ├── PerpsV2MarketViewsZRXPERP.ts │ │ │ │ ├── PerpsV2MarketWLDPERP.ts │ │ │ │ ├── PerpsV2MarketXAGPERP.ts │ │ │ │ ├── PerpsV2MarketXAUPERP.ts │ │ │ │ ├── PerpsV2MarketXLMPERP.ts │ │ │ │ ├── PerpsV2MarketXMRPERP.ts │ │ │ │ ├── PerpsV2MarketXRPPERP.ts │ │ │ │ ├── PerpsV2MarketXTZPERP.ts │ │ │ │ ├── PerpsV2MarketYFIPERP.ts │ │ │ │ ├── PerpsV2MarketZECPERP.ts │ │ │ │ ├── PerpsV2MarketZILPERP.ts │ │ │ │ ├── PerpsV2MarketZRXPERP.ts │ │ │ │ ├── PerpsV2Proxy1INCHPERP.ts │ │ │ │ ├── PerpsV2ProxyAAVEPERP.ts │ │ │ │ ├── PerpsV2ProxyADAPERP.ts │ │ │ │ ├── PerpsV2ProxyALGOPERP.ts │ │ │ │ ├── PerpsV2ProxyANKRPERP.ts │ │ │ │ ├── PerpsV2ProxyAPEPERP.ts │ │ │ │ ├── PerpsV2ProxyAPTPERP.ts │ │ │ │ ├── PerpsV2ProxyARBPERP.ts │ │ │ │ ├── PerpsV2ProxyATOMPERP.ts │ │ │ │ ├── PerpsV2ProxyAUDPERP.ts │ │ │ │ ├── PerpsV2ProxyAVAXPERP.ts │ │ │ │ ├── PerpsV2ProxyAXSPERP.ts │ │ │ │ ├── PerpsV2ProxyBALPERP.ts │ │ │ │ ├── PerpsV2ProxyBCHPERP.ts │ │ │ │ ├── PerpsV2ProxyBLURPERP.ts │ │ │ │ ├── PerpsV2ProxyBNBPERP.ts │ │ │ │ ├── PerpsV2ProxyBONKPERP.ts │ │ │ │ ├── PerpsV2ProxyBTCPERP.ts │ │ │ │ ├── PerpsV2ProxyCELOPERP.ts │ │ │ │ ├── PerpsV2ProxyCOMPPERP.ts │ │ │ │ ├── PerpsV2ProxyCRVPERP.ts │ │ │ │ ├── PerpsV2ProxyCVXPERP.ts │ │ │ │ ├── PerpsV2ProxyDOGEPERP.ts │ │ │ │ ├── PerpsV2ProxyDOTPERP.ts │ │ │ │ ├── PerpsV2ProxyDYDXPERP.ts │ │ │ │ ├── PerpsV2ProxyENJPERP.ts │ │ │ │ ├── PerpsV2ProxyEOSPERP.ts │ │ │ │ ├── PerpsV2ProxyETCPERP.ts │ │ │ │ ├── PerpsV2ProxyETHBTCPERP.ts │ │ │ │ ├── PerpsV2ProxyETHPERP.ts │ │ │ │ ├── PerpsV2ProxyEURPERP.ts │ │ │ │ ├── PerpsV2ProxyFETPERP.ts │ │ │ │ ├── PerpsV2ProxyFILPERP.ts │ │ │ │ ├── PerpsV2ProxyFLOKIPERP.ts │ │ │ │ ├── PerpsV2ProxyFLOWPERP.ts │ │ │ │ ├── PerpsV2ProxyFTMPERP.ts │ │ │ │ ├── PerpsV2ProxyFXSPERP.ts │ │ │ │ ├── PerpsV2ProxyGBPPERP.ts │ │ │ │ ├── PerpsV2ProxyGMXPERP.ts │ │ │ │ ├── PerpsV2ProxyGRTPERP.ts │ │ │ │ ├── PerpsV2ProxyICPPERP.ts │ │ │ │ ├── PerpsV2ProxyIMXPERP.ts │ │ │ │ ├── PerpsV2ProxyINJPERP.ts │ │ │ │ ├── PerpsV2ProxyJTOPERP.ts │ │ │ │ ├── PerpsV2ProxyJUPPERP.ts │ │ │ │ ├── PerpsV2ProxyKNCPERP.ts │ │ │ │ ├── PerpsV2ProxyLDOPERP.ts │ │ │ │ ├── PerpsV2ProxyLINKPERP.ts │ │ │ │ ├── PerpsV2ProxyLTCPERP.ts │ │ │ │ ├── PerpsV2ProxyMATICPERP.ts │ │ │ │ ├── PerpsV2ProxyMAVPERP.ts │ │ │ │ ├── PerpsV2ProxyMEMEPERP.ts │ │ │ │ ├── PerpsV2ProxyMKRPERP.ts │ │ │ │ ├── PerpsV2ProxyNEARPERP.ts │ │ │ │ ├── PerpsV2ProxyONEPERP.ts │ │ │ │ ├── PerpsV2ProxyOPPERP.ts │ │ │ │ ├── PerpsV2ProxyORDIPERP.ts │ │ │ │ ├── PerpsV2ProxyPENDLEPERP.ts │ │ │ │ ├── PerpsV2ProxyPEPEPERP.ts │ │ │ │ ├── PerpsV2ProxyPERPPERP.ts │ │ │ │ ├── PerpsV2ProxyPYTHPERP.ts │ │ │ │ ├── PerpsV2ProxyRNDRPERP.ts │ │ │ │ ├── PerpsV2ProxyRPLPERP.ts │ │ │ │ ├── PerpsV2ProxyRUNEPERP.ts │ │ │ │ ├── PerpsV2ProxySEIPERP.ts │ │ │ │ ├── PerpsV2ProxySHIBPERP.ts │ │ │ │ ├── PerpsV2ProxySOLPERP.ts │ │ │ │ ├── PerpsV2ProxySTETHETHPERP.ts │ │ │ │ ├── PerpsV2ProxySTETHPERP.ts │ │ │ │ ├── PerpsV2ProxySTRKPERP.ts │ │ │ │ ├── PerpsV2ProxySUIPERP.ts │ │ │ │ ├── PerpsV2ProxySUSHIPERP.ts │ │ │ │ ├── PerpsV2ProxyTIAPERP.ts │ │ │ │ ├── PerpsV2ProxyTRBPERP.ts │ │ │ │ ├── PerpsV2ProxyTRXPERP.ts │ │ │ │ ├── PerpsV2ProxyUMAPERP.ts │ │ │ │ ├── PerpsV2ProxyUNIPERP.ts │ │ │ │ ├── PerpsV2ProxyUSDTPERP.ts │ │ │ │ ├── PerpsV2ProxyWLDPERP.ts │ │ │ │ ├── PerpsV2ProxyXAGPERP.ts │ │ │ │ ├── PerpsV2ProxyXAUPERP.ts │ │ │ │ ├── PerpsV2ProxyXLMPERP.ts │ │ │ │ ├── PerpsV2ProxyXMRPERP.ts │ │ │ │ ├── PerpsV2ProxyXRPPERP.ts │ │ │ │ ├── PerpsV2ProxyXTZPERP.ts │ │ │ │ ├── PerpsV2ProxyYFIPERP.ts │ │ │ │ ├── PerpsV2ProxyZECPERP.ts │ │ │ │ ├── PerpsV2ProxyZILPERP.ts │ │ │ │ ├── PerpsV2ProxyZRXPERP.ts │ │ │ │ ├── ProxyFeePool.ts │ │ │ │ ├── ProxySynthetix.ts │ │ │ │ ├── ProxysBTC.ts │ │ │ │ ├── ProxysETH.ts │ │ │ │ ├── ProxysUSD.ts │ │ │ │ ├── ReadProxyAddressResolver.ts │ │ │ │ ├── RewardEscrowV2.ts │ │ │ │ ├── RewardEscrowV2Frozen.ts │ │ │ │ ├── RewardEscrowV2Storage.ts │ │ │ │ ├── RewardsDistribution.ts │ │ │ │ ├── SafeDecimalMath.ts │ │ │ │ ├── SignedSafeDecimalMath.ts │ │ │ │ ├── SynthRedeemer.ts │ │ │ │ ├── SynthUtil.ts │ │ │ │ ├── Synthetix.ts │ │ │ │ ├── SynthetixBridgeToBase.ts │ │ │ │ ├── SynthetixDebtShare.ts │ │ │ │ ├── SynthetixEscrow.ts │ │ │ │ ├── SynthsBTC.ts │ │ │ │ ├── SynthsETH.ts │ │ │ │ ├── SynthsUSD.ts │ │ │ │ ├── SystemSettings.ts │ │ │ │ ├── SystemSettingsLib.ts │ │ │ │ ├── SystemStatus.ts │ │ │ │ ├── TokenStateSynthetix.ts │ │ │ │ ├── TokenStatesBTC.ts │ │ │ │ ├── TokenStatesETH.ts │ │ │ │ ├── TokenStatesUSD.ts │ │ │ │ ├── TradingRewards.ts │ │ │ │ ├── WrapperFactory.ts │ │ │ │ └── json │ │ │ │ │ ├── AddressResolver.json │ │ │ │ │ ├── CircuitBreaker.json │ │ │ │ │ ├── CollateralEth.json │ │ │ │ │ ├── CollateralManager.json │ │ │ │ │ ├── CollateralManagerState.json │ │ │ │ │ ├── CollateralShort.json │ │ │ │ │ ├── CollateralUtil.json │ │ │ │ │ ├── DappMaintenance.json │ │ │ │ │ ├── DebtCache.json │ │ │ │ │ ├── DebtMigratorOnOptimism.json │ │ │ │ │ ├── DelegateApprovals.json │ │ │ │ │ ├── DelegateApprovalsEternalStorage.json │ │ │ │ │ ├── DirectIntegrationManager.json │ │ │ │ │ ├── DynamicSynthRedeemer.json │ │ │ │ │ ├── EscrowChecker.json │ │ │ │ │ ├── EtherWrapper.json │ │ │ │ │ ├── ExchangeCircuitBreaker.json │ │ │ │ │ ├── ExchangeRates.json │ │ │ │ │ ├── ExchangeSettlementLib.json │ │ │ │ │ ├── ExchangeState.json │ │ │ │ │ ├── Exchanger.json │ │ │ │ │ ├── FeePool.json │ │ │ │ │ ├── FeePoolEternalStorage.json │ │ │ │ │ ├── FeePoolState.json │ │ │ │ │ ├── FlexibleStorage.json │ │ │ │ │ ├── FuturesMarketManager.json │ │ │ │ │ ├── Issuer.json │ │ │ │ │ ├── Liquidator.json │ │ │ │ │ ├── LiquidatorRewards.json │ │ │ │ │ ├── Math.json │ │ │ │ │ ├── OneNetAggregatorDebtRatio.json │ │ │ │ │ ├── OneNetAggregatorIssuedSynths.json │ │ │ │ │ ├── OwnerRelayOnOptimism.json │ │ │ │ │ ├── PerpsV2DelayedExecution1INCHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAAVEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionADAPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionALGOPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionANKRPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAPEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAPTPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionARBPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionATOMPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAUDPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAVAXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionAXSPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBALPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBCHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBLURPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBNBPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBONKPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionBTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionCELOPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionCOMPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionCRVPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionCVXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionDOGEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionDOTPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionDYDXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionENJPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionEOSPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionETCPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionETHBTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionEURPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFETPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFILPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFLOKIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFLOWPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFTMPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionFXSPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionGBPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionGMXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionGRTPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionICPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionIMXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionINJPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionJTOPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionJUPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionKNCPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionLDOPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionLINKPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionLTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionMATICPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionMAVPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionMEMEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionMKRPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionNEARPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionONEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionOPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionORDIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionPENDLEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionPEPEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionPERPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionPYTHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionRNDRPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionRPLPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionRUNEPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSEIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSHIBPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSOLPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSTETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSTRKPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSUIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionSUSHIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionTIAPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionTRBPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionTRXPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionUMAPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionUNIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionUSDTPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionWLDPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXAGPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXAUPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXLMPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXMRPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXRPPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionXTZPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionYFIPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionZECPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionZILPERP.json │ │ │ │ │ ├── PerpsV2DelayedExecutionZRXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntent1INCHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAAVEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentADAPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentALGOPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentANKRPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAPEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAPTPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentARBPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentATOMPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAUDPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAVAXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentAXSPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBALPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBCHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBLURPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBNBPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBONKPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentBTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentCELOPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentCOMPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentCRVPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentCVXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentDOGEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentDOTPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentDYDXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentENJPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentEOSPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentETCPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentETHBTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentEURPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFETPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFILPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFLOKIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFLOWPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFTMPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentFXSPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentGBPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentGMXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentGRTPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentICPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentIMXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentINJPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentJTOPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentJUPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentKNCPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentLDOPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentLINKPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentLTCPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentMATICPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentMAVPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentMEMEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentMKRPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentNEARPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentONEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentOPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentORDIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentPENDLEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentPEPEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentPERPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentPYTHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentRNDRPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentRPLPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentRUNEPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSEIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSHIBPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSOLPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSTETHPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSTRKPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSUIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentSUSHIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentTIAPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentTRBPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentTRXPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentUMAPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentUNIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentUSDTPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentWLDPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXAGPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXAUPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXLMPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXMRPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXRPPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentXTZPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentYFIPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentZECPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentZILPERP.json │ │ │ │ │ ├── PerpsV2DelayedIntentZRXPERP.json │ │ │ │ │ ├── PerpsV2ExchangeRate.json │ │ │ │ │ ├── PerpsV2Market1INCHPERP.json │ │ │ │ │ ├── PerpsV2MarketAAVEPERP.json │ │ │ │ │ ├── PerpsV2MarketADAPERP.json │ │ │ │ │ ├── PerpsV2MarketALGOPERP.json │ │ │ │ │ ├── PerpsV2MarketANKRPERP.json │ │ │ │ │ ├── PerpsV2MarketAPEPERP.json │ │ │ │ │ ├── PerpsV2MarketAPTPERP.json │ │ │ │ │ ├── PerpsV2MarketARBPERP.json │ │ │ │ │ ├── PerpsV2MarketATOMPERP.json │ │ │ │ │ ├── PerpsV2MarketAUDPERP.json │ │ │ │ │ ├── PerpsV2MarketAVAXPERP.json │ │ │ │ │ ├── PerpsV2MarketAXSPERP.json │ │ │ │ │ ├── PerpsV2MarketBALPERP.json │ │ │ │ │ ├── PerpsV2MarketBCHPERP.json │ │ │ │ │ ├── PerpsV2MarketBLURPERP.json │ │ │ │ │ ├── PerpsV2MarketBNBPERP.json │ │ │ │ │ ├── PerpsV2MarketBONKPERP.json │ │ │ │ │ ├── PerpsV2MarketBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketCELOPERP.json │ │ │ │ │ ├── PerpsV2MarketCOMPPERP.json │ │ │ │ │ ├── PerpsV2MarketCRVPERP.json │ │ │ │ │ ├── PerpsV2MarketCVXPERP.json │ │ │ │ │ ├── PerpsV2MarketDOGEPERP.json │ │ │ │ │ ├── PerpsV2MarketDOTPERP.json │ │ │ │ │ ├── PerpsV2MarketDYDXPERP.json │ │ │ │ │ ├── PerpsV2MarketData.json │ │ │ │ │ ├── PerpsV2MarketENJPERP.json │ │ │ │ │ ├── PerpsV2MarketEOSPERP.json │ │ │ │ │ ├── PerpsV2MarketETCPERP.json │ │ │ │ │ ├── PerpsV2MarketETHBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketETHPERP.json │ │ │ │ │ ├── PerpsV2MarketEURPERP.json │ │ │ │ │ ├── PerpsV2MarketFETPERP.json │ │ │ │ │ ├── PerpsV2MarketFILPERP.json │ │ │ │ │ ├── PerpsV2MarketFLOKIPERP.json │ │ │ │ │ ├── PerpsV2MarketFLOWPERP.json │ │ │ │ │ ├── PerpsV2MarketFTMPERP.json │ │ │ │ │ ├── PerpsV2MarketFXSPERP.json │ │ │ │ │ ├── PerpsV2MarketGBPPERP.json │ │ │ │ │ ├── PerpsV2MarketGMXPERP.json │ │ │ │ │ ├── PerpsV2MarketGRTPERP.json │ │ │ │ │ ├── PerpsV2MarketICPPERP.json │ │ │ │ │ ├── PerpsV2MarketIMXPERP.json │ │ │ │ │ ├── PerpsV2MarketINJPERP.json │ │ │ │ │ ├── PerpsV2MarketJTOPERP.json │ │ │ │ │ ├── PerpsV2MarketJUPPERP.json │ │ │ │ │ ├── PerpsV2MarketKNCPERP.json │ │ │ │ │ ├── PerpsV2MarketLDOPERP.json │ │ │ │ │ ├── PerpsV2MarketLINKPERP.json │ │ │ │ │ ├── PerpsV2MarketLTCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidate1INCHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAAVEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateADAPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateALGOPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateANKRPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAPEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAPTPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateARBPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateATOMPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAUDPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAVAXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateAXSPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBALPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBCHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBLURPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBNBPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBONKPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateCELOPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateCOMPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateCRVPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateCVXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateDOGEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateDOTPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateDYDXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateENJPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateEOSPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateETCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateETHBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateETHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateEURPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFETPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFILPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFLOKIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFLOWPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFTMPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateFXSPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateGBPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateGMXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateGRTPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateICPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateIMXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateINJPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateJTOPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateJUPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateKNCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateLDOPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateLINKPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateLTCPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateMATICPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateMAVPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateMEMEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateMKRPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateNEARPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateONEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateOPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateORDIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidatePENDLEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidatePEPEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidatePERPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidatePYTHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateRNDRPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateRPLPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateRUNEPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSEIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSHIBPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSOLPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSTETHPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSTRKPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSUIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateSUSHIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateTIAPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateTRBPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateTRXPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateUMAPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateUNIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateUSDTPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateWLDPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXAGPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXAUPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXLMPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXMRPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXRPPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateXTZPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateYFIPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateZECPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateZILPERP.json │ │ │ │ │ ├── PerpsV2MarketLiquidateZRXPERP.json │ │ │ │ │ ├── PerpsV2MarketMATICPERP.json │ │ │ │ │ ├── PerpsV2MarketMAVPERP.json │ │ │ │ │ ├── PerpsV2MarketMEMEPERP.json │ │ │ │ │ ├── PerpsV2MarketMKRPERP.json │ │ │ │ │ ├── PerpsV2MarketNEARPERP.json │ │ │ │ │ ├── PerpsV2MarketONEPERP.json │ │ │ │ │ ├── PerpsV2MarketOPPERP.json │ │ │ │ │ ├── PerpsV2MarketORDIPERP.json │ │ │ │ │ ├── PerpsV2MarketPENDLEPERP.json │ │ │ │ │ ├── PerpsV2MarketPEPEPERP.json │ │ │ │ │ ├── PerpsV2MarketPERPPERP.json │ │ │ │ │ ├── PerpsV2MarketPYTHPERP.json │ │ │ │ │ ├── PerpsV2MarketRNDRPERP.json │ │ │ │ │ ├── PerpsV2MarketRPLPERP.json │ │ │ │ │ ├── PerpsV2MarketRUNEPERP.json │ │ │ │ │ ├── PerpsV2MarketSEIPERP.json │ │ │ │ │ ├── PerpsV2MarketSHIBPERP.json │ │ │ │ │ ├── PerpsV2MarketSOLPERP.json │ │ │ │ │ ├── PerpsV2MarketSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2MarketSTETHPERP.json │ │ │ │ │ ├── PerpsV2MarketSTRKPERP.json │ │ │ │ │ ├── PerpsV2MarketSUIPERP.json │ │ │ │ │ ├── PerpsV2MarketSUSHIPERP.json │ │ │ │ │ ├── PerpsV2MarketSettings.json │ │ │ │ │ ├── PerpsV2MarketState1INCHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAAVEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateADAPERP.json │ │ │ │ │ ├── PerpsV2MarketStateALGOPERP.json │ │ │ │ │ ├── PerpsV2MarketStateANKRPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAPEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAPTPERP.json │ │ │ │ │ ├── PerpsV2MarketStateARBPERP.json │ │ │ │ │ ├── PerpsV2MarketStateATOMPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAUDPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAVAXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateAXSPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBALPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBCHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBLURPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBNBPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBONKPERP.json │ │ │ │ │ ├── PerpsV2MarketStateBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketStateCELOPERP.json │ │ │ │ │ ├── PerpsV2MarketStateCOMPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateCRVPERP.json │ │ │ │ │ ├── PerpsV2MarketStateCVXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateDOGEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateDOTPERP.json │ │ │ │ │ ├── PerpsV2MarketStateDYDXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateENJPERP.json │ │ │ │ │ ├── PerpsV2MarketStateEOSPERP.json │ │ │ │ │ ├── PerpsV2MarketStateETCPERP.json │ │ │ │ │ ├── PerpsV2MarketStateETHBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketStateETHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateEURPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFETPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFILPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFLOKIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFLOWPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFTMPERP.json │ │ │ │ │ ├── PerpsV2MarketStateFXSPERP.json │ │ │ │ │ ├── PerpsV2MarketStateGBPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateGMXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateGRTPERP.json │ │ │ │ │ ├── PerpsV2MarketStateICPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateIMXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateINJPERP.json │ │ │ │ │ ├── PerpsV2MarketStateJTOPERP.json │ │ │ │ │ ├── PerpsV2MarketStateJUPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateKNCPERP.json │ │ │ │ │ ├── PerpsV2MarketStateLDOPERP.json │ │ │ │ │ ├── PerpsV2MarketStateLINKPERP.json │ │ │ │ │ ├── PerpsV2MarketStateLTCPERP.json │ │ │ │ │ ├── PerpsV2MarketStateMATICPERP.json │ │ │ │ │ ├── PerpsV2MarketStateMAVPERP.json │ │ │ │ │ ├── PerpsV2MarketStateMEMEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateMKRPERP.json │ │ │ │ │ ├── PerpsV2MarketStateNEARPERP.json │ │ │ │ │ ├── PerpsV2MarketStateONEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateOPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateORDIPERP.json │ │ │ │ │ ├── PerpsV2MarketStatePENDLEPERP.json │ │ │ │ │ ├── PerpsV2MarketStatePEPEPERP.json │ │ │ │ │ ├── PerpsV2MarketStatePERPPERP.json │ │ │ │ │ ├── PerpsV2MarketStatePYTHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateRNDRPERP.json │ │ │ │ │ ├── PerpsV2MarketStateRPLPERP.json │ │ │ │ │ ├── PerpsV2MarketStateRUNEPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSEIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSHIBPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSOLPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSTETHPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSTRKPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSUIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateSUSHIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateTIAPERP.json │ │ │ │ │ ├── PerpsV2MarketStateTRBPERP.json │ │ │ │ │ ├── PerpsV2MarketStateTRXPERP.json │ │ │ │ │ ├── PerpsV2MarketStateUMAPERP.json │ │ │ │ │ ├── PerpsV2MarketStateUNIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateUSDTPERP.json │ │ │ │ │ ├── PerpsV2MarketStateWLDPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXAGPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXAUPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXLMPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXMRPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXRPPERP.json │ │ │ │ │ ├── PerpsV2MarketStateXTZPERP.json │ │ │ │ │ ├── PerpsV2MarketStateYFIPERP.json │ │ │ │ │ ├── PerpsV2MarketStateZECPERP.json │ │ │ │ │ ├── PerpsV2MarketStateZILPERP.json │ │ │ │ │ ├── PerpsV2MarketStateZRXPERP.json │ │ │ │ │ ├── PerpsV2MarketTIAPERP.json │ │ │ │ │ ├── PerpsV2MarketTRBPERP.json │ │ │ │ │ ├── PerpsV2MarketTRXPERP.json │ │ │ │ │ ├── PerpsV2MarketUMAPERP.json │ │ │ │ │ ├── PerpsV2MarketUNIPERP.json │ │ │ │ │ ├── PerpsV2MarketUSDTPERP.json │ │ │ │ │ ├── PerpsV2MarketViews1INCHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAAVEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsADAPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsALGOPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsANKRPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAPEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAPTPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsARBPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsATOMPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAUDPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAVAXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsAXSPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBALPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBCHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBLURPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBNBPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBONKPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsCELOPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsCOMPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsCRVPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsCVXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsDOGEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsDOTPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsDYDXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsENJPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsEOSPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsETCPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsETHBTCPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsETHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsEURPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFETPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFILPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFLOKIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFLOWPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFTMPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsFXSPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsGBPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsGMXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsGRTPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsICPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsIMXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsINJPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsJTOPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsJUPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsKNCPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsLDOPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsLINKPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsLTCPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsMATICPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsMAVPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsMEMEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsMKRPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsNEARPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsONEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsOPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsORDIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsPENDLEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsPEPEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsPERPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsPYTHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsRNDRPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsRPLPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsRUNEPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSEIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSHIBPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSOLPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSTETHETHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSTETHPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSTRKPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSUIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsSUSHIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsTIAPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsTRBPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsTRXPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsUMAPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsUNIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsUSDTPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsWLDPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXAGPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXAUPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXLMPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXMRPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXRPPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsXTZPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsYFIPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsZECPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsZILPERP.json │ │ │ │ │ ├── PerpsV2MarketViewsZRXPERP.json │ │ │ │ │ ├── PerpsV2MarketWLDPERP.json │ │ │ │ │ ├── PerpsV2MarketXAGPERP.json │ │ │ │ │ ├── PerpsV2MarketXAUPERP.json │ │ │ │ │ ├── PerpsV2MarketXLMPERP.json │ │ │ │ │ ├── PerpsV2MarketXMRPERP.json │ │ │ │ │ ├── PerpsV2MarketXRPPERP.json │ │ │ │ │ ├── PerpsV2MarketXTZPERP.json │ │ │ │ │ ├── PerpsV2MarketYFIPERP.json │ │ │ │ │ ├── PerpsV2MarketZECPERP.json │ │ │ │ │ ├── PerpsV2MarketZILPERP.json │ │ │ │ │ ├── PerpsV2MarketZRXPERP.json │ │ │ │ │ ├── PerpsV2Proxy1INCHPERP.json │ │ │ │ │ ├── PerpsV2ProxyAAVEPERP.json │ │ │ │ │ ├── PerpsV2ProxyADAPERP.json │ │ │ │ │ ├── PerpsV2ProxyALGOPERP.json │ │ │ │ │ ├── PerpsV2ProxyANKRPERP.json │ │ │ │ │ ├── PerpsV2ProxyAPEPERP.json │ │ │ │ │ ├── PerpsV2ProxyAPTPERP.json │ │ │ │ │ ├── PerpsV2ProxyARBPERP.json │ │ │ │ │ ├── PerpsV2ProxyATOMPERP.json │ │ │ │ │ ├── PerpsV2ProxyAUDPERP.json │ │ │ │ │ ├── PerpsV2ProxyAVAXPERP.json │ │ │ │ │ ├── PerpsV2ProxyAXSPERP.json │ │ │ │ │ ├── PerpsV2ProxyBALPERP.json │ │ │ │ │ ├── PerpsV2ProxyBCHPERP.json │ │ │ │ │ ├── PerpsV2ProxyBLURPERP.json │ │ │ │ │ ├── PerpsV2ProxyBNBPERP.json │ │ │ │ │ ├── PerpsV2ProxyBONKPERP.json │ │ │ │ │ ├── PerpsV2ProxyBTCPERP.json │ │ │ │ │ ├── PerpsV2ProxyCELOPERP.json │ │ │ │ │ ├── PerpsV2ProxyCOMPPERP.json │ │ │ │ │ ├── PerpsV2ProxyCRVPERP.json │ │ │ │ │ ├── PerpsV2ProxyCVXPERP.json │ │ │ │ │ ├── PerpsV2ProxyDOGEPERP.json │ │ │ │ │ ├── PerpsV2ProxyDOTPERP.json │ │ │ │ │ ├── PerpsV2ProxyDYDXPERP.json │ │ │ │ │ ├── PerpsV2ProxyENJPERP.json │ │ │ │ │ ├── PerpsV2ProxyEOSPERP.json │ │ │ │ │ ├── PerpsV2ProxyETCPERP.json │ │ │ │ │ ├── PerpsV2ProxyETHBTCPERP.json │ │ │ │ │ ├── PerpsV2ProxyETHPERP.json │ │ │ │ │ ├── PerpsV2ProxyEURPERP.json │ │ │ │ │ ├── PerpsV2ProxyFETPERP.json │ │ │ │ │ ├── PerpsV2ProxyFILPERP.json │ │ │ │ │ ├── PerpsV2ProxyFLOKIPERP.json │ │ │ │ │ ├── PerpsV2ProxyFLOWPERP.json │ │ │ │ │ ├── PerpsV2ProxyFTMPERP.json │ │ │ │ │ ├── PerpsV2ProxyFXSPERP.json │ │ │ │ │ ├── PerpsV2ProxyGBPPERP.json │ │ │ │ │ ├── PerpsV2ProxyGMXPERP.json │ │ │ │ │ ├── PerpsV2ProxyGRTPERP.json │ │ │ │ │ ├── PerpsV2ProxyICPPERP.json │ │ │ │ │ ├── PerpsV2ProxyIMXPERP.json │ │ │ │ │ ├── PerpsV2ProxyINJPERP.json │ │ │ │ │ ├── PerpsV2ProxyJTOPERP.json │ │ │ │ │ ├── PerpsV2ProxyJUPPERP.json │ │ │ │ │ ├── PerpsV2ProxyKNCPERP.json │ │ │ │ │ ├── PerpsV2ProxyLDOPERP.json │ │ │ │ │ ├── PerpsV2ProxyLINKPERP.json │ │ │ │ │ ├── PerpsV2ProxyLTCPERP.json │ │ │ │ │ ├── PerpsV2ProxyMATICPERP.json │ │ │ │ │ ├── PerpsV2ProxyMAVPERP.json │ │ │ │ │ ├── PerpsV2ProxyMEMEPERP.json │ │ │ │ │ ├── PerpsV2ProxyMKRPERP.json │ │ │ │ │ ├── PerpsV2ProxyNEARPERP.json │ │ │ │ │ ├── PerpsV2ProxyONEPERP.json │ │ │ │ │ ├── PerpsV2ProxyOPPERP.json │ │ │ │ │ ├── PerpsV2ProxyORDIPERP.json │ │ │ │ │ ├── PerpsV2ProxyPENDLEPERP.json │ │ │ │ │ ├── PerpsV2ProxyPEPEPERP.json │ │ │ │ │ ├── PerpsV2ProxyPERPPERP.json │ │ │ │ │ ├── PerpsV2ProxyPYTHPERP.json │ │ │ │ │ ├── PerpsV2ProxyRNDRPERP.json │ │ │ │ │ ├── PerpsV2ProxyRPLPERP.json │ │ │ │ │ ├── PerpsV2ProxyRUNEPERP.json │ │ │ │ │ ├── PerpsV2ProxySEIPERP.json │ │ │ │ │ ├── PerpsV2ProxySHIBPERP.json │ │ │ │ │ ├── PerpsV2ProxySOLPERP.json │ │ │ │ │ ├── PerpsV2ProxySTETHETHPERP.json │ │ │ │ │ ├── PerpsV2ProxySTETHPERP.json │ │ │ │ │ ├── PerpsV2ProxySTRKPERP.json │ │ │ │ │ ├── PerpsV2ProxySUIPERP.json │ │ │ │ │ ├── PerpsV2ProxySUSHIPERP.json │ │ │ │ │ ├── PerpsV2ProxyTIAPERP.json │ │ │ │ │ ├── PerpsV2ProxyTRBPERP.json │ │ │ │ │ ├── PerpsV2ProxyTRXPERP.json │ │ │ │ │ ├── PerpsV2ProxyUMAPERP.json │ │ │ │ │ ├── PerpsV2ProxyUNIPERP.json │ │ │ │ │ ├── PerpsV2ProxyUSDTPERP.json │ │ │ │ │ ├── PerpsV2ProxyWLDPERP.json │ │ │ │ │ ├── PerpsV2ProxyXAGPERP.json │ │ │ │ │ ├── PerpsV2ProxyXAUPERP.json │ │ │ │ │ ├── PerpsV2ProxyXLMPERP.json │ │ │ │ │ ├── PerpsV2ProxyXMRPERP.json │ │ │ │ │ ├── PerpsV2ProxyXRPPERP.json │ │ │ │ │ ├── PerpsV2ProxyXTZPERP.json │ │ │ │ │ ├── PerpsV2ProxyYFIPERP.json │ │ │ │ │ ├── PerpsV2ProxyZECPERP.json │ │ │ │ │ ├── PerpsV2ProxyZILPERP.json │ │ │ │ │ ├── PerpsV2ProxyZRXPERP.json │ │ │ │ │ ├── ProxyFeePool.json │ │ │ │ │ ├── ProxySynthetix.json │ │ │ │ │ ├── ProxysBTC.json │ │ │ │ │ ├── ProxysETH.json │ │ │ │ │ ├── ProxysUSD.json │ │ │ │ │ ├── ReadProxyAddressResolver.json │ │ │ │ │ ├── RewardEscrowV2.json │ │ │ │ │ ├── RewardEscrowV2Frozen.json │ │ │ │ │ ├── RewardEscrowV2Storage.json │ │ │ │ │ ├── RewardsDistribution.json │ │ │ │ │ ├── SafeDecimalMath.json │ │ │ │ │ ├── SignedSafeDecimalMath.json │ │ │ │ │ ├── SynthRedeemer.json │ │ │ │ │ ├── SynthUtil.json │ │ │ │ │ ├── Synthetix.json │ │ │ │ │ ├── SynthetixBridgeToBase.json │ │ │ │ │ ├── SynthetixDebtShare.json │ │ │ │ │ ├── SynthetixEscrow.json │ │ │ │ │ ├── SynthsBTC.json │ │ │ │ │ ├── SynthsETH.json │ │ │ │ │ ├── SynthsUSD.json │ │ │ │ │ ├── SystemSettings.json │ │ │ │ │ ├── SystemSettingsLib.json │ │ │ │ │ ├── SystemStatus.json │ │ │ │ │ ├── TokenStateSynthetix.json │ │ │ │ │ ├── TokenStatesBTC.json │ │ │ │ │ ├── TokenStatesETH.json │ │ │ │ │ ├── TokenStatesUSD.json │ │ │ │ │ ├── TradingRewards.json │ │ │ │ │ └── WrapperFactory.json │ │ │ └── synths.ts │ │ └── sepolia │ │ │ ├── deployment │ │ │ ├── AddressResolver.ts │ │ │ ├── CircuitBreaker.ts │ │ │ ├── CollateralErc20.ts │ │ │ ├── CollateralEth.ts │ │ │ ├── CollateralManager.ts │ │ │ ├── CollateralManagerState.ts │ │ │ ├── CollateralShort.ts │ │ │ ├── CollateralUtil.ts │ │ │ ├── DappMaintenance.ts │ │ │ ├── DebtCache.ts │ │ │ ├── DebtMigratorOnEthereum.ts │ │ │ ├── DelegateApprovals.ts │ │ │ ├── DelegateApprovalsEternalStorage.ts │ │ │ ├── Depot.ts │ │ │ ├── DirectIntegrationManager.ts │ │ │ ├── DynamicSynthRedeemer.ts │ │ │ ├── EscrowChecker.ts │ │ │ ├── EtherWrapper.ts │ │ │ ├── ExchangeCircuitBreaker.ts │ │ │ ├── ExchangeRates.ts │ │ │ ├── ExchangeSettlementLib.ts │ │ │ ├── ExchangeState.ts │ │ │ ├── Exchanger.ts │ │ │ ├── FeePool.ts │ │ │ ├── FeePoolEternalStorage.ts │ │ │ ├── FeePoolState.ts │ │ │ ├── FlexibleStorage.ts │ │ │ ├── FuturesMarketManager.ts │ │ │ ├── Issuer.ts │ │ │ ├── Liquidator.ts │ │ │ ├── LiquidatorRewards.ts │ │ │ ├── Math.ts │ │ │ ├── NativeEtherWrapper.ts │ │ │ ├── OneNetAggregatorDebtRatio.ts │ │ │ ├── OneNetAggregatorIssuedSynths.ts │ │ │ ├── OwnerRelayOnEthereum.ts │ │ │ ├── ProxyFeePool.ts │ │ │ ├── ProxySynthetix.ts │ │ │ ├── ProxysBTC.ts │ │ │ ├── ProxysETH.ts │ │ │ ├── ProxysUSD.ts │ │ │ ├── ReadProxyAddressResolver.ts │ │ │ ├── RewardEscrow.ts │ │ │ ├── RewardEscrowV2.ts │ │ │ ├── RewardEscrowV2Storage.ts │ │ │ ├── RewardsDistribution.ts │ │ │ ├── SafeDecimalMath.ts │ │ │ ├── SignedSafeDecimalMath.ts │ │ │ ├── SupplySchedule.ts │ │ │ ├── SynthRedeemer.ts │ │ │ ├── SynthUtil.ts │ │ │ ├── Synthetix.ts │ │ │ ├── SynthetixBridgeEscrow.ts │ │ │ ├── SynthetixBridgeToOptimism.ts │ │ │ ├── SynthetixDebtShare.ts │ │ │ ├── SynthetixEscrow.ts │ │ │ ├── SynthetixState.ts │ │ │ ├── SynthsBTC.ts │ │ │ ├── SynthsETH.ts │ │ │ ├── SynthsUSD.ts │ │ │ ├── SystemSettings.ts │ │ │ ├── SystemSettingsLib.ts │ │ │ ├── SystemStatus.ts │ │ │ ├── TokenStateSynthetix.ts │ │ │ ├── TokenStatesBTC.ts │ │ │ ├── TokenStatesETH.ts │ │ │ ├── TokenStatesUSD.ts │ │ │ ├── TradingRewards.ts │ │ │ ├── VirtualSynthMastercopy.ts │ │ │ ├── WrapperFactory.ts │ │ │ └── json │ │ │ │ ├── AddressResolver.json │ │ │ │ ├── CircuitBreaker.json │ │ │ │ ├── CollateralErc20.json │ │ │ │ ├── CollateralEth.json │ │ │ │ ├── CollateralManager.json │ │ │ │ ├── CollateralManagerState.json │ │ │ │ ├── CollateralShort.json │ │ │ │ ├── CollateralUtil.json │ │ │ │ ├── DappMaintenance.json │ │ │ │ ├── DebtCache.json │ │ │ │ ├── DebtMigratorOnEthereum.json │ │ │ │ ├── DelegateApprovals.json │ │ │ │ ├── DelegateApprovalsEternalStorage.json │ │ │ │ ├── Depot.json │ │ │ │ ├── DirectIntegrationManager.json │ │ │ │ ├── DynamicSynthRedeemer.json │ │ │ │ ├── EscrowChecker.json │ │ │ │ ├── EtherWrapper.json │ │ │ │ ├── ExchangeCircuitBreaker.json │ │ │ │ ├── ExchangeRates.json │ │ │ │ ├── ExchangeSettlementLib.json │ │ │ │ ├── ExchangeState.json │ │ │ │ ├── Exchanger.json │ │ │ │ ├── FeePool.json │ │ │ │ ├── FeePoolEternalStorage.json │ │ │ │ ├── FeePoolState.json │ │ │ │ ├── FlexibleStorage.json │ │ │ │ ├── FuturesMarketManager.json │ │ │ │ ├── Issuer.json │ │ │ │ ├── Liquidator.json │ │ │ │ ├── LiquidatorRewards.json │ │ │ │ ├── Math.json │ │ │ │ ├── NativeEtherWrapper.json │ │ │ │ ├── OneNetAggregatorDebtRatio.json │ │ │ │ ├── OneNetAggregatorIssuedSynths.json │ │ │ │ ├── OwnerRelayOnEthereum.json │ │ │ │ ├── ProxyFeePool.json │ │ │ │ ├── ProxySynthetix.json │ │ │ │ ├── ProxysBTC.json │ │ │ │ ├── ProxysETH.json │ │ │ │ ├── ProxysUSD.json │ │ │ │ ├── ReadProxyAddressResolver.json │ │ │ │ ├── RewardEscrow.json │ │ │ │ ├── RewardEscrowV2.json │ │ │ │ ├── RewardEscrowV2Storage.json │ │ │ │ ├── RewardsDistribution.json │ │ │ │ ├── SafeDecimalMath.json │ │ │ │ ├── SignedSafeDecimalMath.json │ │ │ │ ├── SupplySchedule.json │ │ │ │ ├── SynthRedeemer.json │ │ │ │ ├── SynthUtil.json │ │ │ │ ├── Synthetix.json │ │ │ │ ├── SynthetixBridgeEscrow.json │ │ │ │ ├── SynthetixBridgeToOptimism.json │ │ │ │ ├── SynthetixDebtShare.json │ │ │ │ ├── SynthetixEscrow.json │ │ │ │ ├── SynthetixState.json │ │ │ │ ├── SynthsBTC.json │ │ │ │ ├── SynthsETH.json │ │ │ │ ├── SynthsUSD.json │ │ │ │ ├── SystemSettings.json │ │ │ │ ├── SystemSettingsLib.json │ │ │ │ ├── SystemStatus.json │ │ │ │ ├── TokenStateSynthetix.json │ │ │ │ ├── TokenStatesBTC.json │ │ │ │ ├── TokenStatesETH.json │ │ │ │ ├── TokenStatesUSD.json │ │ │ │ ├── TradingRewards.json │ │ │ │ ├── VirtualSynthMastercopy.json │ │ │ │ └── WrapperFactory.json │ │ │ └── synths.ts │ └── tsconfig.json ├── cypress │ ├── .eslintrc │ ├── .gitignore │ ├── cypress.config.js │ ├── cypress.d.ts │ ├── cypress │ │ ├── .gitignore │ │ ├── e2e │ │ │ ├── home.e2e.js │ │ │ ├── loans.e2e.js │ │ │ └── wallet.e2e.js │ │ ├── lib │ │ │ ├── subgraph.js │ │ │ └── testname.js │ │ ├── support │ │ │ ├── component-index.html │ │ │ ├── component.js │ │ │ └── e2e.js │ │ └── tasks │ │ │ ├── forkReset.js │ │ │ ├── getSnx.js │ │ │ ├── mintSusd.js │ │ │ ├── removeEthCollateralInteractionDelay.js │ │ │ └── removeMinimumStakeTime.js │ └── package.json ├── lib │ ├── Constants │ │ ├── Constants.ts │ │ ├── index.ts │ │ ├── links.ts │ │ ├── localStorage.ts │ │ ├── package.json │ │ └── subgraph.ts │ ├── ContractContext │ │ ├── ContractContext.tsx │ │ ├── index.ts │ │ └── package.json │ ├── GasSpeedContext │ │ ├── GasSpeedContext.tsx │ │ ├── index.ts │ │ └── package.json │ ├── SignerContext │ │ ├── SignerContext.tsx │ │ ├── index.ts │ │ └── package.json │ ├── SwitchNetworkContext │ │ ├── SwitchNetworkContext.tsx │ │ ├── index.ts │ │ └── package.json │ ├── SynthIcons │ │ ├── getPngSynthIconUrl.ts │ │ ├── index.ts │ │ └── package.json │ ├── calculateWeeklyRewardsInUsd │ │ ├── calculateWeeklyRewardsInUsd.test.tsx │ │ ├── calculateWeeklyRewardsInUsd.tsx │ │ ├── index.ts │ │ └── package.json │ ├── feeSuggestion │ │ ├── feeSuggestion.ts │ │ ├── index.ts │ │ ├── math.ts │ │ ├── package.json │ │ └── utils.ts │ ├── formatters │ │ ├── date.ts │ │ ├── index.ts │ │ ├── number.test.ts │ │ ├── number.ts │ │ ├── package.json │ │ ├── string.test.ts │ │ ├── string.ts │ │ └── tsconfig.json │ ├── getHealthVariant │ │ ├── getHealthVariant.test.ts │ │ ├── getHealthVariant.ts │ │ ├── index.ts │ │ └── package.json │ ├── parseTxnError │ │ ├── index.ts │ │ ├── package.json │ │ ├── parseTnxError.test.ts │ │ └── parseTxnError.ts │ ├── stakingCalculations │ │ ├── index.ts │ │ ├── package.json │ │ ├── stakingCalculations.test.ts │ │ └── stakingCalculations.ts │ ├── subgraph │ │ ├── codegen.ts │ │ ├── index.ts │ │ ├── mainnet.graphql │ │ ├── mainnet.ts │ │ ├── optimism.graphql │ │ ├── optimism.ts │ │ └── package.json │ ├── sumBy │ │ ├── index.ts │ │ ├── package.json │ │ └── sumBy.ts │ ├── synthsByName │ │ ├── index.ts │ │ ├── package.json │ │ └── synthsByName.ts │ ├── txnLink │ │ ├── index.ts │ │ ├── package.json │ │ ├── txnLink.test.ts │ │ └── txnLink.ts │ ├── txnReducer │ │ ├── index.ts │ │ ├── package.json │ │ └── txnReducer.ts │ ├── useApproveERC20sUSDMutation │ │ ├── index.ts │ │ ├── package.json │ │ └── useApproveERC20sUSDMutation.ts │ ├── useApr │ │ ├── index.ts │ │ ├── package.json │ │ └── useApr.ts │ ├── useAuthorisedWallets │ │ ├── index.ts │ │ ├── package.json │ │ └── useAuthorisedWallets.tsx │ ├── useBridgeMutation │ │ ├── index.ts │ │ ├── package.json │ │ └── useBridgeMutation.ts │ ├── useBurnMutation │ │ ├── index.ts │ │ ├── package.json │ │ ├── reducer.ts │ │ └── useBurnMutation.ts │ ├── useClaimLiquidatorRewardsMutation │ │ ├── index.ts │ │ ├── package.json │ │ └── useClaimLiquidatorRewardsMutation.ts │ ├── useClaimRewardsMutation │ │ ├── index.ts │ │ ├── package.json │ │ └── useClaimRewardsMutation.ts │ ├── useClaimableRewards │ │ ├── index.ts │ │ ├── package.json │ │ └── useClaimableRewards.ts │ ├── useDebtData │ │ ├── index.ts │ │ ├── package.json │ │ └── useDebtData.ts │ ├── useDebtPoolData │ │ ├── index.ts │ │ ├── package.json │ │ └── useDebtPoolData.ts │ ├── useDebtShareDataPeriod │ │ ├── index.ts │ │ ├── package.json │ │ └── useDebtShareDataPeriod.ts │ ├── useDelegateWallet │ │ ├── index.ts │ │ ├── package.json │ │ └── useDelegateWallet.tsx │ ├── useEscrowBalance │ │ ├── index.ts │ │ ├── package.json │ │ └── useEscrowBalance.ts │ ├── useEthBalance │ │ ├── index.ts │ │ ├── package.json │ │ └── useEthBalance.ts │ ├── useExchangeRatesData │ │ ├── index.ts │ │ ├── package.json │ │ └── useExchangeRatesData.ts │ ├── useFeePeriodMultiNetwork │ │ ├── index.ts │ │ ├── package.json │ │ └── useFeePeriodMultiNetwork.ts │ ├── useFeePoolData │ │ ├── index.ts │ │ ├── package.json │ │ └── useFeePoolData.ts │ ├── useFeesBurnedInPeriod │ │ ├── index.ts │ │ ├── package.json │ │ ├── useFeesBurnedInPeriod.test.ts │ │ └── useFeesBurnedInPeriod.ts │ ├── useFeesClaimed │ │ ├── index.ts │ │ ├── package.json │ │ └── useFeesClaimed.tsx │ ├── useGasOptions │ │ ├── index.ts │ │ ├── package.json │ │ ├── useGasOptions.test.ts │ │ └── useGasOptions.ts │ ├── useGasPrice │ │ ├── index.ts │ │ ├── package.json │ │ ├── useGasPrice.test.ts │ │ └── useGasPrice.ts │ ├── useGetLifetimeRewards │ │ ├── index.ts │ │ ├── package.json │ │ └── useGetLifetimeRewards.tsx │ ├── useGetLiquidationRewards │ │ ├── index.ts │ │ ├── package.json │ │ └── useGetLiquidationRewards.ts │ ├── useGlobalProvidersWithFallback │ │ ├── index.ts │ │ ├── package.json │ │ ├── tsconfig.json │ │ └── useGlobalProvidersWithFallback.tsx │ ├── useGlobalStakingApr │ │ ├── index.ts │ │ ├── package.json │ │ ├── useGlobalStakingApr.test.ts │ │ └── useGlobalStakingApr.ts │ ├── useInterval │ │ ├── index.ts │ │ ├── package.json │ │ └── useInterval.ts │ ├── useIssuedDebt │ │ ├── index.ts │ │ ├── package.json │ │ └── useIssuedDebt.tsx │ ├── useLiquidationData │ │ ├── index.ts │ │ ├── package.json │ │ └── useLiquidationData.ts │ ├── useMinStakeTime │ │ ├── index.ts │ │ ├── package.json │ │ └── useMinStakeTime.ts │ ├── useMintMutation │ │ ├── index.ts │ │ ├── package.json │ │ └── useMintMutation.ts │ ├── useOptimismLayer1Fee │ │ ├── OptimismOracleContract.ts │ │ ├── index.ts │ │ ├── package.json │ │ ├── useOptimismLayer1Fee.test.ts │ │ └── useOptimismLayer1Fee.ts │ ├── useRewardsAvailable │ │ ├── index.ts │ │ ├── package.json │ │ └── useRewardsAvailable.ts │ ├── useSelfLiquidationData │ │ ├── index.ts │ │ ├── package.json │ │ ├── useSelfLiquidationData.test.ts │ │ └── useSelfLiquidationData.ts │ ├── useSelfLiquidationMutation │ │ ├── index.ts │ │ ├── package.json │ │ └── useSelfLiquidationMutation.ts │ ├── useStakingApr │ │ ├── index.ts │ │ ├── package.json │ │ ├── useStakingApr.test.ts │ │ └── useStakingApr.ts │ ├── useSynthRedeemer │ │ ├── index.ts │ │ ├── package.json │ │ └── useSynthRedeemer.ts │ ├── useSynthetixContracts │ │ ├── common.ts │ │ ├── index.ts │ │ ├── package.json │ │ ├── useExchangeRates.ts │ │ ├── useFeePool.ts │ │ ├── useIssuer.ts │ │ ├── useLiquidator.ts │ │ ├── useLiquidatorRewards.ts │ │ ├── useProxyERC20sUSD.ts │ │ ├── useRewardEscrowV2.ts │ │ ├── useSynthUtil.ts │ │ ├── useSynthetix.ts │ │ ├── useSynthetixBridge.ts │ │ ├── useSynthetixDebtShare.ts │ │ ├── useSynthetixV3.ts │ │ └── useSystemSettings.ts │ ├── useSynthsBalances │ │ ├── index.ts │ │ ├── package.json │ │ └── useSynthsBalances.ts │ ├── useTotalIssuedSynthsExcludeOtherCollateral │ │ ├── index.ts │ │ ├── package.json │ │ └── useTotalIssuedSynthsExcludeOtherCollateral.ts │ ├── useTotalStakedSNX │ │ ├── index.ts │ │ ├── package.json │ │ └── useTotalStakedSNX.tsx │ └── v3Theme │ │ ├── Fonts.tsx │ │ ├── index.ts │ │ ├── package.json │ │ ├── tsconfig.json │ │ └── v3Theme.ts ├── tsconfig.json └── ui │ ├── .gitignore │ ├── App.tsx │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── Routes.tsx │ ├── _redirects │ ├── additional.d.ts │ ├── app.css │ ├── assets │ ├── svg │ │ ├── app │ │ │ ├── arrow-forward-blue.svg │ │ │ ├── arrow-forward-pink.svg │ │ │ ├── arrow-right-long.svg │ │ │ ├── arrow-right.svg │ │ │ ├── arrows-change.svg │ │ │ ├── arrows-swap.svg │ │ │ ├── back.svg │ │ │ ├── burn-circle.svg │ │ │ ├── burn-custom-circle.svg │ │ │ ├── burn-target-circle.svg │ │ │ ├── burn.svg │ │ │ ├── call-to-action.svg │ │ │ ├── caret-down.svg │ │ │ ├── caret-dropdown.svg │ │ │ ├── caret-left-end.svg │ │ │ ├── caret-left-xl.svg │ │ │ ├── caret-left.svg │ │ │ ├── caret-right-end.svg │ │ │ ├── caret-right-gold.svg │ │ │ ├── caret-right-small.svg │ │ │ ├── caret-right-xl.svg │ │ │ ├── caret-right.svg │ │ │ ├── caret-up.svg │ │ │ ├── change-negative.svg │ │ │ ├── change-positive.svg │ │ │ ├── check.svg │ │ │ ├── chevron-collapse.svg │ │ │ ├── chevron-expand.svg │ │ │ ├── circle-arrows.svg │ │ │ ├── circle-ellipsis.svg │ │ │ ├── circle-error.svg │ │ │ ├── circle-tick.svg │ │ │ ├── claim.svg │ │ │ ├── close.svg │ │ │ ├── cog.svg │ │ │ ├── copy.svg │ │ │ ├── cross.svg │ │ │ ├── curve.svg │ │ │ ├── delegate.svg │ │ │ ├── deprecated-x.svg │ │ │ ├── dhedge.svg │ │ │ ├── elipses.svg │ │ │ ├── exit.svg │ │ │ ├── expand.svg │ │ │ ├── failure.svg │ │ │ ├── incognito.svg │ │ │ ├── info-pink.svg │ │ │ ├── info.svg │ │ │ ├── kwenta-full.svg │ │ │ ├── kwenta.svg │ │ │ ├── large-wave.svg │ │ │ ├── learn.svg │ │ │ ├── link-blue.svg │ │ │ ├── link.svg │ │ │ ├── loader.svg │ │ │ ├── locked.svg │ │ │ ├── menu-close.svg │ │ │ ├── menu-hamburger-white.svg │ │ │ ├── menu-hamburger.svg │ │ │ ├── menu.svg │ │ │ ├── migrate.svg │ │ │ ├── mint-circle.svg │ │ │ ├── mint.svg │ │ │ ├── navigation-back.svg │ │ │ ├── no-notifications.svg │ │ │ ├── notification-alert.svg │ │ │ ├── notification.svg │ │ │ ├── open-external.svg │ │ │ ├── pending-confirmation.svg │ │ │ ├── plus-thin.svg │ │ │ ├── plus.svg │ │ │ ├── search.svg │ │ │ ├── small-wave.svg │ │ │ ├── snowflake.svg │ │ │ ├── snx-stat-background.svg │ │ │ ├── sorbet-finance.svg │ │ │ ├── spinner.svg │ │ │ ├── stake.svg │ │ │ ├── staking-l2-logo.svg │ │ │ ├── staking-logo-mobile.svg │ │ │ ├── staking-logo-small.svg │ │ │ ├── staking-logo-tablet.svg │ │ │ ├── staking-logo.svg │ │ │ ├── success.svg │ │ │ ├── synthetix.svg │ │ │ ├── tick.svg │ │ │ ├── trade.svg │ │ │ ├── trash.svg │ │ │ ├── wallet-purple.svg │ │ │ ├── wallet-yellow.svg │ │ │ ├── wallet.svg │ │ │ ├── warning.svg │ │ │ └── wizard │ │ │ │ ├── debt.svg │ │ │ │ ├── mint-burn.svg │ │ │ │ ├── welcome.svg │ │ │ │ ├── what.svg │ │ │ │ └── why.svg │ │ ├── currencies │ │ │ ├── commodity │ │ │ │ ├── GOLD.svg │ │ │ │ └── SILVER.svg │ │ │ ├── crypto │ │ │ │ ├── ADA.svg │ │ │ │ ├── BCH.svg │ │ │ │ ├── BNB.svg │ │ │ │ ├── BTC.svg │ │ │ │ ├── COMP.svg │ │ │ │ ├── CRV.svg │ │ │ │ ├── DASH.svg │ │ │ │ ├── DHEDGE.svg │ │ │ │ ├── EOS.svg │ │ │ │ ├── ETC.svg │ │ │ │ ├── ETH.svg │ │ │ │ ├── KNC.svg │ │ │ │ ├── LEND.svg │ │ │ │ ├── LINK.svg │ │ │ │ ├── LTC.svg │ │ │ │ ├── MKR.svg │ │ │ │ ├── REN.svg │ │ │ │ ├── SNX.svg │ │ │ │ ├── TRX.svg │ │ │ │ ├── XMR.svg │ │ │ │ ├── XRP.svg │ │ │ │ └── XTZ.svg │ │ │ ├── equities │ │ │ │ ├── FTSE.svg │ │ │ │ └── NIKKEI.svg │ │ │ ├── fiat │ │ │ │ ├── AUD.svg │ │ │ │ ├── CAD.svg │ │ │ │ ├── CHF.svg │ │ │ │ ├── EUR.svg │ │ │ │ ├── GBP.svg │ │ │ │ ├── JPY.svg │ │ │ │ ├── KRW.svg │ │ │ │ └── USD.svg │ │ │ └── indices │ │ │ │ ├── CEX.svg │ │ │ │ └── DEFI.svg │ │ ├── providers │ │ │ └── 1inch.svg │ │ └── social │ │ │ ├── discord.svg │ │ │ ├── github.svg │ │ │ └── twitter.svg │ ├── wallet-icons │ │ ├── atoken.png │ │ ├── authereum.png │ │ ├── browserWallet.png │ │ ├── browserWallet.svg │ │ ├── coinbase.svg │ │ ├── dapper.png │ │ ├── dcent.svg │ │ ├── fortmatic.svg │ │ ├── gamestop.svg │ │ ├── huobiwallet.svg │ │ ├── hyperpay.png │ │ ├── imtoken.svg │ │ ├── lattice.svg │ │ ├── ledger.svg │ │ ├── metamask.png │ │ ├── metamask.svg │ │ ├── mykey.png │ │ ├── opera.png │ │ ├── operaTouch.png │ │ ├── portis.svg │ │ ├── squarelink.svg │ │ ├── status.svg │ │ ├── tokenpocket.png │ │ ├── torus.svg │ │ ├── trezor.svg │ │ ├── trust.svg │ │ ├── unilogin.svg │ │ ├── wallet-io.svg │ │ └── walletConnect.svg │ └── webp │ │ └── currencies │ │ └── crypto │ │ └── BTC.webp │ ├── babel.config.js │ ├── bootstrap.tsx │ ├── components │ ├── AvailableBalanceBridge │ │ ├── AvailableBalanceBridge.tsx │ │ └── index.ts │ ├── BaseModal │ │ ├── BaseModal.tsx │ │ └── index.ts │ ├── BridgeSections │ │ ├── BridgeSectionItem.tsx │ │ ├── BridgeSections.tsx │ │ └── index.ts │ ├── Button │ │ ├── Button.tsx │ │ └── index.ts │ ├── ChakraProviderWithTheme.tsx │ ├── ChangePercent │ │ ├── ChangePercent.tsx │ │ └── index.ts │ ├── ConnectOrSwitchNetwork │ │ └── index.tsx │ ├── Currency │ │ ├── CurrencyAmount │ │ │ ├── CurrencyAmount.tsx │ │ │ └── index.ts │ │ ├── CurrencyIcon │ │ │ ├── CurrencyIcon.tsx │ │ │ └── index.ts │ │ ├── CurrencyName │ │ │ ├── CurrencyName.tsx │ │ │ └── index.ts │ │ ├── CurrencyPrice │ │ │ ├── CurrencyPrice.tsx │ │ │ └── index.ts │ │ ├── common.tsx │ │ └── index.ts │ ├── DateSelect │ │ ├── DateSelect.tsx │ │ ├── SelectButton.tsx │ │ └── index.ts │ ├── Form │ │ ├── AssetInput.tsx │ │ ├── TextInput.tsx │ │ └── common.tsx │ ├── GasSelector │ │ ├── GasPriceDisplay.tsx │ │ ├── GasSelector.tsx │ │ └── index.ts │ ├── GridBox │ │ └── Gridbox.tsx │ ├── Input │ │ ├── Input.tsx │ │ ├── NumericInput.test.tsx │ │ ├── NumericInput.tsx │ │ ├── SearchInput.tsx │ │ └── TextInput.tsx │ ├── Loader │ │ ├── Loader.tsx │ │ └── index.ts │ ├── Media │ │ ├── Media.tsx │ │ └── index.ts │ ├── NativeBridge │ │ ├── ApproveAction.tsx │ │ ├── BridgeTransactionModal.tsx │ │ ├── BridgingHistories.tsx │ │ ├── NativeBridge.tsx │ │ ├── ReviewWithdrawModal.tsx │ │ ├── SelectNetwork.tsx │ │ └── index.tsx │ ├── ProgressBar │ │ ├── ProgressBar.tsx │ │ └── index.ts │ ├── Select │ │ ├── Select.tsx │ │ ├── components.tsx │ │ └── index.ts │ ├── SocketBridge │ │ └── index.tsx │ ├── StatBox │ │ ├── StatBox.tsx │ │ └── index.ts │ ├── StatsSection │ │ ├── StatsSection.tsx │ │ └── index.ts │ ├── StructuredTab │ │ ├── StructuredTab.tsx │ │ └── index.ts │ ├── Tab │ │ ├── Tab.tsx │ │ └── index.tsx │ ├── Table │ │ ├── Pagination.tsx │ │ ├── SortTableHead.tsx │ │ ├── Table.tsx │ │ ├── index.ts │ │ └── react-table-config.d.ts │ └── WalletComponents │ │ └── index.tsx │ ├── constants │ ├── 1inch.ts │ ├── currency.ts │ ├── date.ts │ ├── defaults.ts │ ├── dhedge.ts │ ├── enums.ts │ ├── network.ts │ ├── period.ts │ ├── placeholder.ts │ ├── queryKeys.ts │ ├── routes.ts │ └── storage.ts │ ├── containers │ ├── BlockExplorer │ │ ├── BlockExplorer.tsx │ │ └── index.ts │ ├── Connector │ │ ├── Connector.tsx │ │ ├── config.ts │ │ ├── customGnosis.ts │ │ ├── customInjected.ts │ │ ├── index.ts │ │ └── reducer.ts │ ├── Loans │ │ ├── Loans.tsx │ │ ├── getLoan.ts │ │ ├── getOpenLoans.tsx │ │ ├── index.ts │ │ └── types.ts │ └── index.tsx │ ├── content │ ├── 404.tsx │ ├── BridgePage.tsx │ ├── DelegatePage.tsx │ ├── EscrowPage.tsx │ ├── HistoryPage.tsx │ ├── LoansPage.tsx │ ├── MergeAccountsPage.tsx │ ├── MigrateDebtPage.tsx │ ├── MigrateEscrowPage.tsx │ ├── TermsPage.tsx │ ├── V2Burn.tsx │ ├── V2Earn.tsx │ ├── V2Home.tsx │ ├── V2Mint.tsx │ ├── V2SelfLiquidation.tsx │ ├── V2SwapLinks.tsx │ ├── V2Terms.tsx │ ├── V2Unflag.tsx │ └── theme.ts │ ├── contracts │ ├── dHedgePoolLogic.ts │ ├── erc20.js │ ├── ethToken.ts │ ├── wBTCToken.js │ └── wETHToken.js │ ├── hooks │ ├── isMounted.ts │ ├── stakingDataCalculations.test.ts │ ├── stakingDataCalculations.ts │ ├── useBridgingHistoryStore.ts │ ├── useCryptoBalances.ts │ ├── useCustomGasOptions.ts │ ├── useCustomOptimismLayer1Fee.ts │ ├── useEstimateFinalizeWithdraw.ts │ ├── useEstimateProveWithdraw.ts │ ├── useFeePeriodTimeAndProgress.ts │ ├── useGetCurrencyRateChange.ts │ ├── useGetNeedsApproval.ts │ ├── useHistoricalDebtData.ts │ ├── useLocalStorage.ts │ ├── useMediaQuery.ts │ ├── useSelectedPriceCurrency.ts │ ├── useStakedSNX.ts │ └── useUserStakingData.ts │ ├── i18n.ts │ ├── index.html │ ├── index.ts │ ├── jest.config.js │ ├── orphans.ts │ ├── package.json │ ├── postbuild.sh │ ├── public │ ├── _redirects │ ├── fonts │ │ ├── GT-America-Condensed-Bold.woff2 │ │ ├── GT-America-Condensed-Medium.woff2 │ │ ├── GT-America-Extended-Bold.woff2 │ │ ├── GT-America-Mono-Bold.woff2 │ │ ├── Inter-Bold.woff2 │ │ ├── Inter-Regular.woff2 │ │ └── Inter-SemiBold.woff2 │ ├── images │ │ ├── browserWallet.png │ │ ├── browserWallet.svg │ │ ├── favicon.ico │ │ ├── icon-192x192.png │ │ ├── icon-256x256.png │ │ ├── icon-384x384.png │ │ ├── icon-512x512.png │ │ ├── icon-swap.svg │ │ ├── socket-logo-full.svg │ │ ├── socket-logo.svg │ │ ├── staking-facebook.jpg │ │ ├── staking-twitter.jpg │ │ └── synthetix-logo.svg │ ├── manifest.json │ └── metatag.png │ ├── queries │ └── 1inch │ │ ├── use1InchQuoteQuery.ts │ │ └── use1InchSwapQuery.ts │ ├── scripts │ ├── minify-synthetix-contract.js │ └── noop.js │ ├── sections │ ├── delegate │ │ ├── ActionSelector.tsx │ │ ├── DelegateForm.tsx │ │ ├── DelegateTable.tsx │ │ ├── ToggleDelegateApproval.tsx │ │ ├── common.ts │ │ └── index.tsx │ ├── escrow │ │ ├── components │ │ │ ├── ActionBox.tsx │ │ │ ├── EscrowTable.tsx │ │ │ ├── RewardEscrowSchedule │ │ │ │ ├── RewardEscrowSchedule.tsx │ │ │ │ └── index.ts │ │ │ ├── StakingRewardsTab │ │ │ │ ├── MigrateTabContent.tsx │ │ │ │ ├── StakingRewardsTab.tsx │ │ │ │ ├── TabContent.tsx │ │ │ │ └── index.ts │ │ │ ├── TokenSaleEscrowSchedule │ │ │ │ ├── TokenSaleEscrowSchedule.tsx │ │ │ │ └── index.ts │ │ │ ├── TokenSaleTab │ │ │ │ ├── TabContent.tsx │ │ │ │ ├── TokenSaleTab.tsx │ │ │ │ └── index.ts │ │ │ ├── TxSent │ │ │ │ ├── ActionCompleted.tsx │ │ │ │ ├── ActionInProgress.tsx │ │ │ │ ├── common.ts │ │ │ │ └── index.ts │ │ │ └── common.ts │ │ ├── hooks │ │ │ └── useEscrowCalculations.ts │ │ └── index.tsx │ ├── history │ │ ├── CustomTypeOption │ │ │ ├── CustomTypeOption.tsx │ │ │ └── index.ts │ │ ├── Transactions │ │ │ ├── Transactions.tsx │ │ │ └── index.ts │ │ ├── TransactionsContainer.tsx │ │ ├── TypeIcon │ │ │ ├── TypeIcon.tsx │ │ │ └── index.ts │ │ └── types.ts │ ├── loans │ │ ├── components │ │ │ ├── ActionBox │ │ │ │ ├── ActionBox.tsx │ │ │ │ ├── ActiveBorrowsTab │ │ │ │ │ ├── ActiveBorrowsTab.tsx │ │ │ │ │ ├── LoanList.tsx │ │ │ │ │ ├── ModifyLoanActions │ │ │ │ │ │ ├── Close.tsx │ │ │ │ │ │ ├── Deposit.tsx │ │ │ │ │ │ ├── Repay.tsx │ │ │ │ │ │ ├── Withdraw.tsx │ │ │ │ │ │ ├── Wrapper.tsx │ │ │ │ │ │ ├── helpers.test.tsx │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── ModifyLoanMenu.tsx │ │ │ │ ├── BorrowSynthsTab │ │ │ │ │ ├── AssetInput.tsx │ │ │ │ │ ├── BorrowSynthsTab.tsx │ │ │ │ │ ├── FormButton.tsx │ │ │ │ │ ├── calculateLoanCRatio.test.ts │ │ │ │ │ └── calculateLoanCRatio.ts │ │ │ │ └── components │ │ │ │ │ ├── AccruedInterest.tsx │ │ │ │ │ ├── Balance.tsx │ │ │ │ │ ├── CRatio.tsx │ │ │ │ │ ├── InfoSVG.tsx │ │ │ │ │ ├── InterestRate.tsx │ │ │ │ │ ├── IssuanceFee.tsx │ │ │ │ │ ├── LoanCRatio.tsx │ │ │ │ │ └── MinCRatio.tsx │ │ │ ├── InfoBox │ │ │ │ └── InfoBox.tsx │ │ │ └── common.ts │ │ ├── constants.ts │ │ └── index.tsx │ ├── merge-accounts │ │ ├── TxState.tsx │ │ ├── burn │ │ │ ├── BurnActionBox.tsx │ │ │ ├── BurnInfoBox.tsx │ │ │ ├── Tx.tsx │ │ │ └── index.tsx │ │ ├── common.ts │ │ ├── index.tsx │ │ ├── landing │ │ │ ├── GridBox.tsx │ │ │ └── index.tsx │ │ ├── merge │ │ │ ├── MergeActionBox.tsx │ │ │ ├── MergeInfoBox.tsx │ │ │ ├── Tx.tsx │ │ │ └── index.tsx │ │ └── nominate │ │ │ ├── NominateActionBox.tsx │ │ │ ├── NominateInfoBox.tsx │ │ │ ├── Tx.tsx │ │ │ └── index.tsx │ ├── migrate-debt │ │ ├── components │ │ │ ├── ExternalLink │ │ │ │ ├── ExternalLink.tsx │ │ │ │ └── index.ts │ │ │ ├── TxSent │ │ │ │ ├── ActionCompleted.tsx │ │ │ │ ├── ActionInProgress.tsx │ │ │ │ ├── common.ts │ │ │ │ └── index.ts │ │ │ └── common.ts │ │ └── migrate │ │ │ ├── ActionBox │ │ │ ├── ActionBox.tsx │ │ │ └── index.ts │ │ │ ├── MigrateTab │ │ │ ├── MigrateTab.tsx │ │ │ ├── TabContent.tsx │ │ │ └── index.ts │ │ │ └── index.tsx │ ├── migrate-escrow │ │ ├── components │ │ │ ├── ExternalLink │ │ │ │ ├── ExternalLink.tsx │ │ │ │ └── index.ts │ │ │ ├── TxSent │ │ │ │ ├── ActionCompleted.tsx │ │ │ │ ├── ActionInProgress.tsx │ │ │ │ ├── common.ts │ │ │ │ └── index.ts │ │ │ └── common.ts │ │ └── migrate │ │ │ ├── ActionBox │ │ │ ├── ActionBox.tsx │ │ │ └── index.ts │ │ │ ├── MigrateTab │ │ │ ├── MigrateTab.tsx │ │ │ ├── TabContent.tsx │ │ │ └── index.ts │ │ │ └── index.tsx │ ├── shared │ │ ├── Layout │ │ │ ├── AppLayout.tsx │ │ │ ├── Layout.tsx │ │ │ ├── Stats │ │ │ │ ├── BalanceItem.tsx │ │ │ │ ├── CRatioBarStats.tsx │ │ │ │ ├── PeriodBarStats.tsx │ │ │ │ ├── PriceItem.tsx │ │ │ │ └── common.ts │ │ │ ├── index.ts │ │ │ └── useMigrationData.tsx │ │ ├── SystemStatus │ │ │ ├── SystemStatus.tsx │ │ │ └── index.ts │ │ ├── components │ │ │ └── SocialLinks │ │ │ │ ├── SocialLinks.tsx │ │ │ │ └── index.ts │ │ └── modals │ │ │ ├── DelegateModal │ │ │ ├── DelegateModal.tsx │ │ │ └── index.ts │ │ │ ├── TxConfirmationModal │ │ │ ├── TxConfirmationModal.tsx │ │ │ └── index.ts │ │ │ └── common.tsx │ └── staking │ │ ├── components │ │ ├── StakingInfo │ │ │ └── BarStatsRow.tsx │ │ ├── common.ts │ │ ├── helper.test.ts │ │ └── helper.ts │ │ └── hooks │ │ ├── useBurnTx.ts │ │ ├── useClearDebtCalculations.ts │ │ └── useStakingCalculations.ts │ ├── store │ ├── app │ │ ├── constants.ts │ │ └── index.ts │ ├── escrow │ │ └── index.ts │ ├── gov │ │ └── index.ts │ ├── staking │ │ └── index.ts │ ├── utils.ts │ └── wallet │ │ └── index.ts │ ├── styles │ ├── main.css │ └── theme │ │ ├── colors.ts │ │ ├── fonts.ts │ │ └── index.ts │ ├── tests │ ├── ContextProvider.tsx │ ├── e2e │ │ ├── needs-fix │ │ │ ├── pages │ │ │ │ ├── loans-page.js │ │ │ │ └── wallet │ │ │ │ │ └── delegate-page.js │ │ │ └── specs │ │ │ │ ├── delegate-spec.js │ │ │ │ └── loans-spec.js │ │ ├── pages │ │ │ ├── home │ │ │ │ ├── header.js │ │ │ │ ├── home-page.js │ │ │ │ └── onboard.js │ │ │ └── page.js │ │ ├── specs │ │ │ └── login-spec.js │ │ └── tsconfig.json │ ├── global.js │ └── setup.js │ ├── translations │ ├── bnc-notify │ │ └── notifyMessages.ts │ ├── constants.ts │ └── en.json │ ├── tsconfig.json │ ├── typings │ ├── missing-types.d.ts │ ├── react-i18next.d.ts │ ├── styled-components.d.ts │ └── window.d.ts │ ├── utils │ ├── balances.ts │ ├── contracts │ │ ├── bridge.ts │ │ ├── debt.ts │ │ ├── delegate.ts │ │ ├── escrow.ts │ │ ├── index.ts │ │ ├── liquidation.ts │ │ ├── loans.ts │ │ ├── rates.ts │ │ ├── shorts.ts │ │ ├── staking.ts │ │ ├── status.ts │ │ ├── synths.ts │ │ ├── synthsCurrencies.ts │ │ └── wallet.ts │ ├── currencies.test.ts │ ├── currencies.ts │ ├── formatters │ │ ├── date.ts │ │ ├── number.ts │ │ └── string.ts │ ├── governance.ts │ ├── infura.ts │ ├── localStore.ts │ ├── network.test.ts │ ├── network.ts │ ├── parse.ts │ ├── promise.ts │ ├── themeUtils.ts │ └── ts-helpers.ts │ ├── v2-components │ └── Header │ │ ├── Header.tsx │ │ └── index.tsx │ ├── vercel.json │ └── webpack.config.js └── yarn.lock /.eslintignore: -------------------------------------------------------------------------------- 1 | build 2 | coverage 3 | node_modules 4 | dist 5 | .vscode 6 | .yarn 7 | packages/queries/subgraphs 8 | .docusaurus 9 | **/tmp/ 10 | **/.next/ 11 | **/out/ 12 | **/storybook-static/ 13 | **/.nyc_output 14 | **/junit.xml 15 | **/generated 16 | 17 | 18 | # temporary 19 | v3/spot-markets/ui/prototype 20 | -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 16 -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | build 2 | coverage 3 | node_modules 4 | dist 5 | .vscode 6 | .yarn 7 | packages/queries/subgraphs 8 | cache 9 | artifacts 10 | .docusaurus 11 | **/subgraph.yaml 12 | v3/contracts/src 13 | v3/contracts/deployments 14 | v3/spot-markets/contracts/deployments 15 | **/tmp/ 16 | **/.next/ 17 | **/out/ 18 | **/storybook-static/ 19 | **/.nyc_output 20 | **/junit.xml 21 | v3/subgraphs/tests/.latest.json 22 | .yarnrc.yml 23 | 24 | # temporary 25 | v3/spot-markets/ui/prototype 26 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 100, 3 | "semi": true, 4 | "singleQuote": true, 5 | "trailingComma": "es5", 6 | "overrides": [ 7 | { 8 | "files": "*.md", 9 | "options": { 10 | "useTabs": false 11 | } 12 | } 13 | ] 14 | } 15 | -------------------------------------------------------------------------------- /.yarnrc.yml: -------------------------------------------------------------------------------- 1 | checksumBehavior: ignore 2 | 3 | compressionLevel: mixed 4 | 5 | defaultSemverRangePrefix: ^ 6 | 7 | enableGlobalCache: true 8 | 9 | enableTelemetry: false 10 | 11 | nodeLinker: node-modules 12 | 13 | npmRegistryServer: "https://registry.npmjs.org" 14 | 15 | supportedArchitectures: 16 | cpu: 17 | - current 18 | - x64 19 | libc: 20 | - glibc 21 | os: 22 | - current 23 | - linux 24 | 25 | yarnPath: .yarn/releases/yarn-4.6.0.cjs 26 | -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- 1 | codecov: 2 | require_ci_to_pass: yes 3 | notify: 4 | wait_for_ci: yes 5 | 6 | github_checks: 7 | annotations: no # for now let's not fail the build when coverage decreases 8 | 9 | comment: 10 | layout: 'reach, diff, flags, files' 11 | behavior: once 12 | require_changes: false # if true: only post the comment if coverage changes 13 | 14 | ignore: 15 | - '**/*.cy.*' 16 | - '**/*.test.*' 17 | - '**/*.e2e.*' 18 | - '.circleci' 19 | - '.github' 20 | - 'packages/' 21 | - 'tools' 22 | - 'v1' 23 | - 'v2' 24 | - 'babel.config.js' 25 | - 'jest.config.js' 26 | - 'jest.global.js' 27 | -------------------------------------------------------------------------------- /docs/move-to-monorepo-merge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/docs/move-to-monorepo-merge.png -------------------------------------------------------------------------------- /docs/move-to-monorepo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/docs/move-to-monorepo.png -------------------------------------------------------------------------------- /jest.global.js: -------------------------------------------------------------------------------- 1 | module.exports = async () => { 2 | process.env.TZ = 'UTC'; 3 | }; 4 | -------------------------------------------------------------------------------- /packages/contracts-interface/babel.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["@babel/preset-env", "@babel/preset-typescript"], 3 | "plugins": ["@babel/transform-runtime"] 4 | } 5 | -------------------------------------------------------------------------------- /packages/contracts-interface/examples/browser-example.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | Example for browser envionments 11 | 12 | 13 |

If you open the console "command-J" you should see the resutls printed

14 | 15 | 16 | -------------------------------------------------------------------------------- /packages/contracts-interface/src/constants.ts: -------------------------------------------------------------------------------- 1 | export const ERRORS = { 2 | badNetworkArg: 3 | 'unsupported network or network id passed. Please check SynthetixJS.supportedNetworks for a list of supported networks and ids', 4 | noMatch: (type: string, value: string): string => `no contracts match ${type}: ${value}`, 5 | }; 6 | -------------------------------------------------------------------------------- /packages/contracts-interface/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.base.module.json", 3 | "compilerOptions": { 4 | "module": "commonjs", 5 | "outDir": "./build", 6 | "rootDir": "./src" 7 | }, 8 | "include": ["src"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/optimism-networks/babel.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["@babel/preset-env", "@babel/preset-typescript"], 3 | "plugins": ["@babel/transform-runtime"] 4 | } 5 | -------------------------------------------------------------------------------- /packages/optimism-networks/src/optimism-networks.test.ts: -------------------------------------------------------------------------------- 1 | import { getOptimismNetwork } from '.'; 2 | 3 | describe('@synthetixio/optimism-networks', () => { 4 | it('gets network information', () => { 5 | const response = { 6 | chainId: '0xA', 7 | chainName: 'Optimism', 8 | }; 9 | expect(getOptimismNetwork({ layerOneNetworkId: 1 })).toMatchObject(response); 10 | }); 11 | }); 12 | -------------------------------------------------------------------------------- /packages/optimism-networks/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.base.module.json", 3 | "compilerOptions": { 4 | "module": "commonjs", 5 | "outDir": "./build", 6 | "rootDir": "./src" 7 | }, 8 | "include": ["src"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/providers/README.md: -------------------------------------------------------------------------------- 1 | # Synthetix JS - Providers 2 | -------------------------------------------------------------------------------- /packages/providers/babel.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["@babel/preset-env", "@babel/preset-typescript"], 3 | "plugins": ["@babel/transform-runtime"] 4 | } 5 | -------------------------------------------------------------------------------- /packages/providers/src/constants.test.ts: -------------------------------------------------------------------------------- 1 | import { ERRORS } from './constants'; 2 | 3 | describe('@synthetixio/providers', () => { 4 | it('needs tests', () => { 5 | expect(ERRORS.noWeb3Provider).toEqual('Web3 provider missing'); 6 | }); 7 | }); 8 | -------------------------------------------------------------------------------- /packages/providers/src/constants.ts: -------------------------------------------------------------------------------- 1 | export const ERRORS = { 2 | noWeb3Provider: 'Web3 provider missing', 3 | noInfuraId: 'Infura ID missing', 4 | noNetworkId: 'Network ID missing', 5 | wrongNetworkId: 'Network ID not supported', 6 | }; 7 | -------------------------------------------------------------------------------- /packages/providers/src/types.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | ExternalProvider, 3 | FallbackProvider, 4 | InfuraProvider, 5 | Networkish, 6 | Web3Provider, 7 | } from '@ethersproject/providers'; 8 | 9 | export type ProviderConfig = { 10 | networkId?: Networkish; 11 | infuraId?: string; 12 | alchemyId?: string; 13 | provider?: ExternalProvider; 14 | }; 15 | 16 | export type SynthetixProvider = Web3Provider | InfuraProvider | FallbackProvider; 17 | -------------------------------------------------------------------------------- /packages/providers/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.base.module.json", 3 | "compilerOptions": { 4 | "module": "commonjs", 5 | "outDir": "./build", 6 | "rootDir": "./src" 7 | }, 8 | "include": ["src"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/queries/__mocks__/@snapshot-labs/snapshot.js.ts: -------------------------------------------------------------------------------- 1 | const mock = { 2 | utils: { 3 | getScores: () => [ 4 | { '0x0000000000000000000000000000000000000000': 15 }, 5 | { '0x0000000000000000000000000000000000000000': 0 }, 6 | ], 7 | 8 | subgraphRequest: async () => ({ accounts: [] }), 9 | }, 10 | }; 11 | 12 | export default mock; 13 | -------------------------------------------------------------------------------- /packages/queries/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: ['@babel/preset-env', '@babel/preset-typescript'], 3 | plugins: ['@babel/transform-runtime'], 4 | }; 5 | -------------------------------------------------------------------------------- /packages/queries/pull-subgraphs.sh: -------------------------------------------------------------------------------- 1 | npx codegen-graph-ts pull https://api.thegraph.com/subgraphs/name/synthetixio-team/synthetix-exchanges > subgraphs/exchanges.json 2 | npx codegen-graph-ts pull https://api.thegraph.com/subgraphs/name/synthetixio-team/synthetix-exchanger > subgraphs/exchanger.json 3 | -------------------------------------------------------------------------------- /packages/queries/src/abis/ERC20.ts: -------------------------------------------------------------------------------- 1 | import ERC20Json from './ERC20.json'; 2 | 3 | export const ERC20Abi = ERC20Json; 4 | -------------------------------------------------------------------------------- /packages/queries/src/abis/ElectionModule.ts: -------------------------------------------------------------------------------- 1 | import ElectionModuleJson from './ElectionModule.json'; 2 | 3 | export const ElectionModuleAbi = ElectionModuleJson.abi; 4 | -------------------------------------------------------------------------------- /packages/queries/src/context.ts: -------------------------------------------------------------------------------- 1 | import { Signer } from '@ethersproject/abstract-signer'; 2 | import { Provider } from '@ethersproject/providers'; 3 | import { NetworkId, SynthetixJS } from '@synthetixio/contracts-interface'; 4 | 5 | export interface SubgraphEndpoints { 6 | exchanges: string; 7 | exchanger: string; 8 | issuance: string; 9 | subgraph: string; 10 | } 11 | 12 | export interface QueryContext { 13 | networkId: NetworkId | null; 14 | provider: Provider | null; 15 | signer: Signer | null; 16 | snxjs: { contracts: SynthetixJS['contracts'] } | null; 17 | subgraphEndpoints: SubgraphEndpoints; 18 | } 19 | -------------------------------------------------------------------------------- /packages/queries/src/contracts/Ambassador.ts: -------------------------------------------------------------------------------- 1 | import { ElectionModuleAbi } from '../abis/ElectionModule'; 2 | 3 | export const Ambassador = { 4 | address: '0x37fAc8c146889333734015B0C942b620aCfeeff8', 5 | abi: ElectionModuleAbi, 6 | }; 7 | -------------------------------------------------------------------------------- /packages/queries/src/contracts/Grants.ts: -------------------------------------------------------------------------------- 1 | import { ElectionModuleAbi } from '../abis/ElectionModule'; 2 | 3 | export const Grants = { 4 | address: '0x6891FfAA59c0Ce04b4E3C6eaa50CFc5E2fc77b77', 5 | abi: ElectionModuleAbi, 6 | }; 7 | -------------------------------------------------------------------------------- /packages/queries/src/contracts/Spartan.ts: -------------------------------------------------------------------------------- 1 | import { ElectionModuleAbi } from '../abis/ElectionModule'; 2 | 3 | export const Spartan = { 4 | address: '0xE832C302D1160EAe57045eb9d9Ea14daBd2E229c', 5 | abi: ElectionModuleAbi, 6 | }; 7 | -------------------------------------------------------------------------------- /packages/queries/src/contracts/Treasury.ts: -------------------------------------------------------------------------------- 1 | import { ElectionModuleAbi } from '../abis/ElectionModule'; 2 | 3 | export const Treasury = { 4 | address: '0x6cc6050be3214d14db46188e5df59bdeae97a42a', 5 | abi: ElectionModuleAbi, 6 | }; 7 | -------------------------------------------------------------------------------- /packages/queries/src/contracts/index.ts: -------------------------------------------------------------------------------- 1 | import { Ambassador } from './Ambassador'; 2 | import { Grants } from './Grants'; 3 | import { Spartan } from './Spartan'; 4 | import { Treasury } from './Treasury'; 5 | 6 | export { Ambassador, Grants, Spartan, Treasury }; 7 | -------------------------------------------------------------------------------- /packages/queries/src/queries/gov/utils.ts: -------------------------------------------------------------------------------- 1 | import { JsonRpcProvider } from '@ethersproject/providers'; 2 | 3 | export const getOVMProvider = () => { 4 | return new JsonRpcProvider('https://mainnet.optimism.io'); 5 | }; 6 | -------------------------------------------------------------------------------- /packages/queries/src/utils.test.ts: -------------------------------------------------------------------------------- 1 | import { isObjKey } from './utils'; 2 | describe('isObjKey', () => { 3 | test('false when key does no exists', () => { 4 | expect(isObjKey('doesNotExists', { props: 1 })); 5 | }); 6 | test('true when key does exists', () => { 7 | expect(isObjKey('props', { props: 1 })); 8 | }); 9 | }); 10 | -------------------------------------------------------------------------------- /packages/queries/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.base.module.json", 3 | "compilerOptions": { 4 | "module": "commonjs", 5 | "outDir": "./build", 6 | "rootDir": "./src" 7 | }, 8 | "include": ["src", "src/**/*.json"] 9 | } 10 | -------------------------------------------------------------------------------- /svgo.json: -------------------------------------------------------------------------------- 1 | { 2 | "multipass": true, 3 | "js2svg": { 4 | "finalNewline": true, 5 | "eol": "lf", 6 | "indent": 2, 7 | "pretty": true 8 | }, 9 | "plugins": [ 10 | "preset-default", 11 | "convertStyleToAttrs", 12 | { 13 | "name": "sortAttrs", 14 | "params": { 15 | "xmlnsOrder": "alphabetical" 16 | } 17 | } 18 | ] 19 | } 20 | -------------------------------------------------------------------------------- /tools/codegen-graph-ts/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "no-console": "off" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /tools/codegen-graph-ts/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | build 3 | generated 4 | -------------------------------------------------------------------------------- /tools/codegen-graph-ts/babel.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["@babel/preset-env", "@babel/preset-typescript"], 3 | "plugins": ["@babel/transform-runtime"] 4 | } 5 | -------------------------------------------------------------------------------- /tools/codegen-graph-ts/modules.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'eval'; 2 | -------------------------------------------------------------------------------- /tools/codegen-graph-ts/src/gen/methods/index.ts: -------------------------------------------------------------------------------- 1 | import plain from './plain'; 2 | import reactquery from './react-query'; 3 | 4 | export default { 5 | plain, 6 | reactquery, 7 | }; 8 | -------------------------------------------------------------------------------- /tools/codegen-graph-ts/src/gen/types.ts: -------------------------------------------------------------------------------- 1 | export interface Type { 2 | name: string | null; 3 | kind: string; 4 | ofType: Type | null; 5 | } 6 | 7 | export type Field = { 8 | name: string; 9 | type: Type; 10 | }; 11 | 12 | export type Entity = { 13 | name: string; 14 | fields: Field[] | null; 15 | inputFields: Field[] | null; 16 | }; 17 | 18 | export type Schema = { 19 | types: Entity[]; 20 | }; 21 | -------------------------------------------------------------------------------- /tools/codegen-graph-ts/src/gen/util.test.ts: -------------------------------------------------------------------------------- 1 | import { queryFunctionName } from './util'; 2 | 3 | describe('queryFunctionName()', () => { 4 | it('does correct capitalization', () => { 5 | expect(queryFunctionName({ name: 'HelloWorld', fields: [], inputFields: [] })).toEqual( 6 | 'helloWorld' 7 | ); 8 | expect(queryFunctionName({ name: 'HELLOWorld', fields: [], inputFields: [] })).toEqual( 9 | 'helloworld' 10 | ); 11 | }); 12 | }); 13 | -------------------------------------------------------------------------------- /tools/codegen-graph-ts/src/index.ts: -------------------------------------------------------------------------------- 1 | import { gen, pull } from './gen'; 2 | 3 | export { gen, pull }; 4 | -------------------------------------------------------------------------------- /tools/codegen-graph-ts/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.base.module.json", 3 | "compilerOptions": { 4 | "module": "commonjs", 5 | "outDir": "./build", 6 | "rootDir": "./src" 7 | }, 8 | "include": ["src"] 9 | } 10 | -------------------------------------------------------------------------------- /tools/deps/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "no-console": "off" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /tools/deps/lib/colors.js: -------------------------------------------------------------------------------- 1 | exports.fgReset = '\x1b[0m'; 2 | exports.fgRed = '\x1b[31m'; 3 | exports.fgGreen = '\x1b[32m'; 4 | exports.fgYellow = '\x1b[33m'; 5 | exports.fgCyan = '\x1b[36m'; 6 | -------------------------------------------------------------------------------- /tools/deps/lib/exec.js: -------------------------------------------------------------------------------- 1 | module.exports = async function exec(cmd, options) { 2 | return new Promise((resolve, reject) => 3 | require('child_process').exec( 4 | cmd, 5 | { encoding: 'utf-8', stdio: 'pipe', ...options }, 6 | (error, data) => (error ? reject(error) : resolve(data.trim())) 7 | ) 8 | ); 9 | }; 10 | -------------------------------------------------------------------------------- /tools/deps/lib/workspaces.js: -------------------------------------------------------------------------------- 1 | module.exports = async function workspaces() { 2 | const exec = require('./exec'); 3 | return (await exec('yarn workspaces list --verbose --json')) 4 | .split('\n') 5 | .filter(Boolean) 6 | .map((line) => JSON.parse(line)); 7 | }; 8 | -------------------------------------------------------------------------------- /tools/deps/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@synthetixio/deps", 3 | "private": true, 4 | "version": "1.0.0", 5 | "author": "Noisekit ", 6 | "repository": "github:Synthetixio/js-monorepo", 7 | "license": "MIT", 8 | "bin": { 9 | "deps": "./deps.js", 10 | "deps-circular": "./circular.js", 11 | "deps-mismatched": "./mismatched.js", 12 | "deps-version": "./version.js" 13 | }, 14 | "devDependencies": { 15 | "depcheck": "^1.4.7", 16 | "prettier": "^2.8.4", 17 | "typescript": "^5.7.3" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /tools/generate-subgraph-query/babel.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["@babel/preset-env", "@babel/preset-typescript"], 3 | "plugins": ["@babel/transform-runtime"] 4 | } 5 | -------------------------------------------------------------------------------- /tools/generate-subgraph-query/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from './gql'; 2 | -------------------------------------------------------------------------------- /tools/generate-subgraph-query/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.base.module.json", 3 | "compilerOptions": { 4 | "module": "commonjs", 5 | "outDir": "./build", 6 | "rootDir": "./src" 7 | }, 8 | "include": ["src"] 9 | } 10 | -------------------------------------------------------------------------------- /tools/safe-import/index.js: -------------------------------------------------------------------------------- 1 | const { safeLazy } = require('./safeLazy'); 2 | const { safeImport } = require('./safeImport'); 3 | module.exports = { 4 | safeLazy, 5 | safeImport, 6 | }; 7 | -------------------------------------------------------------------------------- /tools/safe-import/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@synthetixio/safe-import", 3 | "publishConfig": { 4 | "access": "public" 5 | }, 6 | "main": "index.js", 7 | "files": [ 8 | "./*.js" 9 | ], 10 | "version": "1.0.0", 11 | "author": "Noisekit ", 12 | "repository": "github:Synthetixio/js-monorepo", 13 | "license": "MIT", 14 | "dependencies": { 15 | "react": "^18.2.0" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /tools/safe-import/safeLazy.js: -------------------------------------------------------------------------------- 1 | const { lazy } = require('react'); 2 | const { safeImport } = require('./safeImport'); 3 | 4 | function safeLazy(importer) { 5 | return lazy(() => safeImport(importer)); 6 | } 7 | 8 | module.exports = { 9 | safeLazy, 10 | }; 11 | -------------------------------------------------------------------------------- /tsconfig.base.references.json: -------------------------------------------------------------------------------- 1 | { 2 | "exclude": [ 3 | "**/node_modules/**", 4 | "**/coverage/**", 5 | "**/tests/**", 6 | "**/*.test.ts", 7 | "**/*.test.tsx", 8 | "**/build/**", 9 | "**/dist/**" 10 | ], 11 | "references": [ 12 | { "path": "./packages/contracts-interface" }, 13 | { "path": "./packages/optimism-networks" }, 14 | { "path": "./packages/providers" }, 15 | { "path": "./packages/queries" }, 16 | { "path": "./tools/codegen-graph-ts" }, 17 | { "path": "./v2/contracts" } 18 | ] 19 | } 20 | -------------------------------------------------------------------------------- /v1/components/Card/CardBody.tsx: -------------------------------------------------------------------------------- 1 | import { FC } from 'react'; 2 | import styled from 'styled-components'; 3 | import { FlexDivCol } from '@snx-v1/styles'; 4 | 5 | export type CardBodyProps = { 6 | children: React.ReactNode; 7 | className?: string; 8 | }; 9 | 10 | export const CardBody: FC = ({ children, ...rest }) => ( 11 | {children} 12 | ); 13 | 14 | const Container = styled(FlexDivCol)` 15 | position: relative; 16 | padding: 12px 18px; 17 | `; 18 | -------------------------------------------------------------------------------- /v1/components/Card/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Card'; 2 | export * from './CardBody'; 3 | export * from './CardHeader'; 4 | -------------------------------------------------------------------------------- /v1/components/Card/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v1/Card", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@snx-v1/styles": "workspace:*" 8 | }, 9 | "devDependencies": { 10 | "react": "^18.2.0", 11 | "styled-components": "^5.3.6" 12 | }, 13 | "peerDependencies": { 14 | "react": "18", 15 | "styled-components": "5" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v1/lib/constantsUi/constantsUi.ts: -------------------------------------------------------------------------------- 1 | export const DESKTOP_SIDE_NAV_WIDTH = 160; 2 | export const MOBILE_SIDE_NAV_WIDTH = 320; 3 | 4 | export const DESKTOP_BODY_PADDING = 40; 5 | export const MOBILE_BODY_PADDING = 20; 6 | 7 | export enum zIndex { 8 | BASE = 1, 9 | DROPDOWN = 20, 10 | DIALOG_OVERLAY = 50, 11 | } 12 | -------------------------------------------------------------------------------- /v1/lib/constantsUi/index.ts: -------------------------------------------------------------------------------- 1 | export * from './constantsUi'; 2 | -------------------------------------------------------------------------------- /v1/lib/constantsUi/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v1/constantsUi", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0" 6 | } 7 | -------------------------------------------------------------------------------- /v1/lib/media/index.ts: -------------------------------------------------------------------------------- 1 | export * from './media'; 2 | 3 | import { media } from './media'; 4 | export default media; 5 | -------------------------------------------------------------------------------- /v1/lib/media/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v1/media", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "devDependencies": { 7 | "@artsy/fresnel": "^1.9.0", 8 | "styled-media-query": "^2.1.2" 9 | }, 10 | "peerDependencies": { 11 | "@artsy/fresnel": "1", 12 | "styled-media-query": "2" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v1/lib/styles/index.ts: -------------------------------------------------------------------------------- 1 | export * from './styles'; 2 | -------------------------------------------------------------------------------- /v1/lib/styles/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v1/styles", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@snx-v1/constantsUi": "workspace:*", 8 | "@snx-v1/media": "workspace:*" 9 | }, 10 | "devDependencies": { 11 | "@tippyjs/react": "^4.2.6", 12 | "styled-components": "^5.3.6" 13 | }, 14 | "peerDependencies": { 15 | "@tippyjs/react": "4", 16 | "styled-components": "5" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /v2/components/BalanceBox/index.ts: -------------------------------------------------------------------------------- 1 | export * from './BalanceBox'; 2 | -------------------------------------------------------------------------------- /v2/components/BoxLink/index.ts: -------------------------------------------------------------------------------- 1 | export * from './BoxLink'; 2 | -------------------------------------------------------------------------------- /v2/components/BoxLink/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/BoxLink", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "react": "^18.2.0", 9 | "react-router-dom": "^6.8.1" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /v2/components/Burn/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './Burn'; 2 | -------------------------------------------------------------------------------- /v2/components/Burn/layout.ts: -------------------------------------------------------------------------------- 1 | export const leftColWidth = '58%'; 2 | export const rightColWidth = '40%'; 3 | -------------------------------------------------------------------------------- /v2/components/BurnStats/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './BurnStats'; 2 | -------------------------------------------------------------------------------- /v2/components/BurnStats/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/BurnStats", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.9", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@snx-v2/StatBox": "workspace:*", 10 | "@snx-v2/icons": "workspace:*", 11 | "@snx-v2/useApr": "workspace:*", 12 | "@snx-v2/useDelegateWallet": "workspace:*", 13 | "@snx-v2/useFeesBurnedInPeriod": "workspace:*", 14 | "@synthetixio/formatters": "workspace:*", 15 | "react": "^18.2.0" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v2/components/CRatioBanner/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CRatioBanner'; 2 | -------------------------------------------------------------------------------- /v2/components/CRatioBanner/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/CRatioBanner", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.13", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/getHealthVariant": "workspace:*", 9 | "@snx-v2/useDebtData": "workspace:*", 10 | "@snx-v2/useFeePoolData": "workspace:*", 11 | "@snx-v2/useRewardsAvailable": "workspace:*", 12 | "@synthetixio/v3-theme": "workspace:*", 13 | "react": "^18.2.0", 14 | "react-i18next": "^12.1.5" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /v2/components/CRatioBox/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CRatioBox'; 2 | -------------------------------------------------------------------------------- /v2/components/CRatioBox/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/CRatioBox", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/getHealthVariant": "workspace:*", 9 | "@snx-v2/icons": "workspace:*", 10 | "@snx-v2/useDebtData": "workspace:*", 11 | "@synthetixio/formatters": "workspace:*", 12 | "react": "^18.2.0", 13 | "react-i18next": "^12.1.5" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /v2/components/CRatioHealthCard/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CRatioHealthCard'; 2 | -------------------------------------------------------------------------------- /v2/components/CRatioHealthCard/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/CRatioHealthCard", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/CRatioHealthPercentage": "workspace:^", 9 | "@snx-v2/CRatioProgressBar": "workspace:*", 10 | "@snx-v2/getHealthVariant": "workspace:*", 11 | "@snx-v2/useDebtData": "workspace:*", 12 | "react": "^18.2.0", 13 | "react-i18next": "^12.1.5" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /v2/components/CRatioHealthPercentage/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CRatioHealthPercentage'; 2 | -------------------------------------------------------------------------------- /v2/components/CRatioHealthPercentage/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/CRatioHealthPercentage", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "react": "^18.2.0" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /v2/components/CRatioProgressBar/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CRatioProgressBar'; 2 | -------------------------------------------------------------------------------- /v2/components/CRatioProgressBar/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/CRatioProgressBar", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/getHealthVariant": "workspace:*", 9 | "@snx-v2/icons": "workspace:*", 10 | "@snx-v2/useDebtData": "workspace:*", 11 | "react": "^18.2.0" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /v2/components/CountDown/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CountDown'; 2 | -------------------------------------------------------------------------------- /v2/components/CountDown/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/CountDown", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/useInterval": "workspace:*", 9 | "date-fns": "^2.29.3", 10 | "react": "^18.2.0" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/components/EarnStats/index.ts: -------------------------------------------------------------------------------- 1 | export * from './EarnStats'; 2 | -------------------------------------------------------------------------------- /v2/components/EarnStats/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/EarnStats", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.10", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/StatBox": "workspace:*", 9 | "@snx-v2/useApr": "workspace:*", 10 | "@snx-v2/useClaimableRewards": "workspace:*", 11 | "@snx-v2/useGetLifetimeRewards": "workspace:*", 12 | "@synthetixio/formatters": "workspace:*", 13 | "react": "^18.2.0" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /v2/components/EpochPrice/index.ts: -------------------------------------------------------------------------------- 1 | export * from './EpochPrice'; 2 | -------------------------------------------------------------------------------- /v2/components/EpochPrice/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/EpochPrice", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/CountDown": "workspace:*", 9 | "@snx-v2/icons": "workspace:*", 10 | "react": "^18.2.0", 11 | "react-i18next": "^12.1.5" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /v2/components/EthGasPriceEstimator/index.ts: -------------------------------------------------------------------------------- 1 | export * from './EthGasPriceEstimator'; 2 | -------------------------------------------------------------------------------- /v2/components/EthGasPriceEstimator/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/EthGasPriceEstimator", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.2-0", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/GasSpeedContext": "workspace:*", 9 | "@snx-v2/icons": "workspace:*", 10 | "@synthetixio/formatters": "workspace:*", 11 | "@synthetixio/wei": "^2.74.4", 12 | "react": "^18.2.0", 13 | "react-i18next": "^12.1.5" 14 | }, 15 | "stableVersion": "0.0.1" 16 | } 17 | -------------------------------------------------------------------------------- /v2/components/ExternalLink/ExternalLink.tsx: -------------------------------------------------------------------------------- 1 | import React, { PropsWithChildren } from 'react'; 2 | import { Link, LinkProps } from '@chakra-ui/react'; 3 | import { ArrowTopRight } from '@snx-v2/icons'; 4 | 5 | export const ExternalLink = ({ children, ...props }: PropsWithChildren) => { 6 | return ( 7 | 8 | {children} 9 | 10 | 11 | ); 12 | }; 13 | -------------------------------------------------------------------------------- /v2/components/ExternalLink/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ExternalLink'; 2 | -------------------------------------------------------------------------------- /v2/components/ExternalLink/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/ExternalLink", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/icons": "workspace:*", 9 | "react": "^18.2.0" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /v2/components/HomeButton/index.ts: -------------------------------------------------------------------------------- 1 | export * from './HomeButton'; 2 | -------------------------------------------------------------------------------- /v2/components/HomeButton/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/HomeButton", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/icons": "workspace:*", 9 | "react-i18next": "^12.1.5", 10 | "react-router-dom": "^6.8.1" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/components/MainActionCards/index.ts: -------------------------------------------------------------------------------- 1 | export * from './MainActionCards'; 2 | export * from './MainActionCardsList'; 3 | -------------------------------------------------------------------------------- /v2/components/Mint/index.tsx: -------------------------------------------------------------------------------- 1 | export { Mint } from './Mint'; 2 | -------------------------------------------------------------------------------- /v2/components/Mint/layout.ts: -------------------------------------------------------------------------------- 1 | export const leftColWidth = '58%'; 2 | export const rightColWidth = '40%'; 3 | -------------------------------------------------------------------------------- /v2/components/MintOrBurnChanges/index.ts: -------------------------------------------------------------------------------- 1 | export * from './MintOrBurnChanges'; 2 | -------------------------------------------------------------------------------- /v2/components/Navigation/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Navigation'; 2 | -------------------------------------------------------------------------------- /v2/components/Notifi/index.ts: -------------------------------------------------------------------------------- 1 | import { NotifiCard } from './NotifiCard'; 2 | export { NotifiCard } from './NotifiCard'; 3 | export default NotifiCard; 4 | -------------------------------------------------------------------------------- /v2/components/Notifi/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/Notifi", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.2", 6 | "dependencies": { 7 | "@notifi-network/notifi-react-card": "^0.86.0", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@snx-v2/useSynthetixContracts": "workspace:*", 10 | "react": "^18.2.0" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/components/NotifiButton/index.ts: -------------------------------------------------------------------------------- 1 | export * from './NotifiButton'; 2 | export * from './NotifiContextWrapper'; 3 | -------------------------------------------------------------------------------- /v2/components/NotifiButton/notifibutton.css: -------------------------------------------------------------------------------- 1 | .notifi-unread-counter { 2 | position: absolute; 3 | top: 0.2rem; 4 | bottom: 0; 5 | left: 1.2rem; 6 | right: 0; 7 | display: flex; 8 | align-items: center; 9 | justify-content: center; 10 | font-size: 0.7rem; 11 | color: #000; 12 | text-align: center; 13 | width: 1.05rem; 14 | height: 1.05rem; 15 | background-color: #82f7c5; 16 | border-radius: 50px; 17 | } 18 | -------------------------------------------------------------------------------- /v2/components/NotifiButton/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/NotifiButton", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.2", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@ethersproject/bytes": "^5.8.0", 9 | "@notifi-network/notifi-react-card": "^0.86.0", 10 | "@snx-v2/ContractContext": "workspace:*", 11 | "@snx-v2/Notifi": "workspace:*", 12 | "@snx-v2/SignerContext": "workspace:*", 13 | "@snx-v2/icons": "workspace:*", 14 | "@snx-v2/useSynthetixContracts": "workspace:*", 15 | "@synthetixio/safe-import": "workspace:*", 16 | "react": "^18.2.0" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /v2/components/RewardsItem/index.ts: -------------------------------------------------------------------------------- 1 | export * from './RewardsItem'; 2 | export * from './Fees'; 3 | -------------------------------------------------------------------------------- /v2/components/SelfLiquidation/index.ts: -------------------------------------------------------------------------------- 1 | export * from './SelfLiquidation'; 2 | -------------------------------------------------------------------------------- /v2/components/Settings/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './Settings'; 2 | -------------------------------------------------------------------------------- /v2/components/Settings/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/Settings", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/icons": "workspace:*", 9 | "react": "^18.2.0", 10 | "react-i18next": "^12.1.5" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/components/StatBox/index.ts: -------------------------------------------------------------------------------- 1 | export * from './StatBox'; 2 | -------------------------------------------------------------------------------- /v2/components/StatBox/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/StatBox", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/icons": "workspace:*", 9 | "react": "^18.2.0" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /v2/components/SwapLinks/index.ts: -------------------------------------------------------------------------------- 1 | export * from './SwapLinks'; 2 | -------------------------------------------------------------------------------- /v2/components/SwapLinks/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/SwapLinks", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.13", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@snx-v2/icons": "workspace:*", 10 | "@snx-v2/useDebtData": "workspace:*", 11 | "@snx-v2/useSynthetixContracts": "workspace:*", 12 | "@synthetixio/formatters": "workspace:*", 13 | "react": "^18.2.0", 14 | "react-i18next": "^12.1.5", 15 | "react-router-dom": "^6.8.1" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v2/components/TableComponents/index.ts: -------------------------------------------------------------------------------- 1 | export * from './TableComponents'; 2 | -------------------------------------------------------------------------------- /v2/components/TableComponents/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/TableComponents", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /v2/components/TermsModal/index.ts: -------------------------------------------------------------------------------- 1 | export * from './TermsModal'; 2 | -------------------------------------------------------------------------------- /v2/components/TermsModal/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/TermsModal", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/Constants": "workspace:*", 9 | "@synthetixio/v3-theme": "workspace:*", 10 | "react": "^18.2.0", 11 | "react-router-dom": "^6.8.1" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /v2/components/TransactionModal/index.ts: -------------------------------------------------------------------------------- 1 | export * from './TransactionModal'; 2 | -------------------------------------------------------------------------------- /v2/components/TransactionModal/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/TransactionModal", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@synthetixio/v3-theme": "workspace:*", 9 | "react": "^18.2.0", 10 | "react-i18next": "^12.1.5" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/components/UnflagOptions/index.ts: -------------------------------------------------------------------------------- 1 | export * from './UnflagOptions'; 2 | -------------------------------------------------------------------------------- /v2/components/UnflagOptions/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/UnflagOptions", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.13", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/getHealthVariant": "workspace:*", 9 | "@snx-v2/icons": "workspace:*", 10 | "@snx-v2/useDebtData": "workspace:*", 11 | "@snx-v2/useLiquidationData": "workspace:*", 12 | "@snx-v2/useSynthsBalances": "workspace:*", 13 | "@synthetixio/formatters": "workspace:*", 14 | "react-i18next": "^12.1.5", 15 | "react-router-dom": "^6.8.1" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v2/components/UserBalances/index.ts: -------------------------------------------------------------------------------- 1 | export * from './UserBalances'; 2 | -------------------------------------------------------------------------------- /v2/components/UserBalances/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/UserBalances", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/icons": "workspace:*", 9 | "@synthetixio/wei": "^2.74.4", 10 | "react-router-dom": "^6.8.1" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/components/UtilityCard/index.ts: -------------------------------------------------------------------------------- 1 | export * from './UtilityCard'; 2 | -------------------------------------------------------------------------------- /v2/components/UtilityCard/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/UtilityCard", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "react": "^18.2.0" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /v2/components/WalletBalances/index.ts: -------------------------------------------------------------------------------- 1 | export * from './WalletBalances'; 2 | -------------------------------------------------------------------------------- /v2/components/WalletLayout/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './WalletLayout'; 2 | -------------------------------------------------------------------------------- /v2/components/WalletLayout/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/WalletLayout", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.10", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@snx-v2/useSynthetixContracts": "workspace:*", 10 | "react": "^18.2.0", 11 | "react-i18next": "^12.1.5", 12 | "react-router-dom": "^6.8.1" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/components/WalletModal/index.ts: -------------------------------------------------------------------------------- 1 | export * from './WalletModal'; 2 | -------------------------------------------------------------------------------- /v2/components/Welcome/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Welcome'; 2 | -------------------------------------------------------------------------------- /v2/components/Welcome/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/Welcome", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "@snx-v2/Constants": "workspace:*", 9 | "react": "^18.2.0", 10 | "react-i18next": "^12.1.5" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/components/icons/ArrowLeft/ArrowLeft.tsx: -------------------------------------------------------------------------------- 1 | import { Icon, IconProps } from '@chakra-ui/react'; 2 | 3 | interface ArrowLeftProps extends IconProps { 4 | color?: string; 5 | } 6 | 7 | export const ArrowLeft = ({ 8 | width = '12px', 9 | height = '12px', 10 | color = '#00D1FF', 11 | ...props 12 | }: ArrowLeftProps) => { 13 | return ( 14 | 15 | 19 | 20 | ); 21 | }; 22 | -------------------------------------------------------------------------------- /v2/components/icons/ArrowLeft/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ArrowLeft'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/ArrowRight/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ArrowRight'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/ArrowTopRight/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ArrowTopRight'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/AvatarIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './AvatarIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/BridgeIcon/index.ts: -------------------------------------------------------------------------------- 1 | export * from './BridgeIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/ChevronDown/ChevronDown.tsx: -------------------------------------------------------------------------------- 1 | import { Icon, IconProps } from '@chakra-ui/react'; 2 | 3 | export const ChevronDown = ({ width = '20px', height = '20px', ...props }: IconProps) => { 4 | return ( 5 | 6 | 10 | 11 | ); 12 | }; 13 | -------------------------------------------------------------------------------- /v2/components/icons/ChevronDown/index.tsx: -------------------------------------------------------------------------------- 1 | export { ChevronDown } from './ChevronDown'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/ChevronUp/ChevronUp.tsx: -------------------------------------------------------------------------------- 1 | import { Icon, IconProps } from '@chakra-ui/react'; 2 | 3 | export const ChevronUp = ({ width = '20px', height = '20px', ...props }: IconProps) => { 4 | return ( 5 | 6 | 10 | 11 | ); 12 | }; 13 | -------------------------------------------------------------------------------- /v2/components/icons/ChevronUp/index.tsx: -------------------------------------------------------------------------------- 1 | export { ChevronUp } from './ChevronUp'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/ClockIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './ClockIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/CloseIcon/CloseIcon.tsx: -------------------------------------------------------------------------------- 1 | import { Icon, IconProps } from '@chakra-ui/react'; 2 | 3 | export const CloseIcon = ({ 4 | color = 'black', 5 | width = '24px', 6 | height = '24px', 7 | ...props 8 | }: IconProps) => { 9 | return ( 10 | 11 | 15 | 16 | ); 17 | }; 18 | -------------------------------------------------------------------------------- /v2/components/icons/CloseIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { CloseIcon } from './CloseIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/CollectIcon/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CollectIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/CopyIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './CopyIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/CowSwapIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { CowSwapIcon } from './CowSwapIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/CurveIcon/Curve.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/components/icons/CurveIcon/Curve.png -------------------------------------------------------------------------------- /v2/components/icons/CurveIcon/CurveIcon.tsx: -------------------------------------------------------------------------------- 1 | import { Image, ImageProps } from '@chakra-ui/react'; 2 | import { FC } from 'react'; 3 | import CurveIconImg from './Curve.png'; 4 | 5 | // Curve's SVG icon is huge so using a png here instead 6 | export const CurveIcon: FC = (props) => { 7 | return ; 8 | }; 9 | -------------------------------------------------------------------------------- /v2/components/icons/CurveIcon/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CurveIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/DebtPoolIcon/index.ts: -------------------------------------------------------------------------------- 1 | export * from './DebtPoolIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/DollarIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './DollarIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/EthereumIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { EthereumIcon } from './EthereumIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/FailedIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { FailedIcon } from './FailedIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/GovIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { GovIcon } from './GovIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/GuideIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { GuideIcon } from './GuideIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/InfoIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { InfoIcon } from './InfoIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/InfoOutline/index.tsx: -------------------------------------------------------------------------------- 1 | export { InfoOutline } from './InfoOutline'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/KebabMenu/index.tsx: -------------------------------------------------------------------------------- 1 | export { KebabMenu } from './KebabMenu'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/KebabMenuVertical/index.tsx: -------------------------------------------------------------------------------- 1 | export { KebabMenuVertical } from './KebabMenuVertical'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/KwentaIcon/index.ts: -------------------------------------------------------------------------------- 1 | export * from './KwentaIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/LoansIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { LoansIcon } from './LoansIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/LyraIcon/index.ts: -------------------------------------------------------------------------------- 1 | export * from './LyraIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/MaintainIcon/index.ts: -------------------------------------------------------------------------------- 1 | export * from './MaintainIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/NineDots/index.ts: -------------------------------------------------------------------------------- 1 | export * from './NineDots'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/NotificationsIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { NotificationsIcon } from './NotificationsIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/OneInchIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { OneInchIcon } from './OneInchIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/OpenInNew/index.ts: -------------------------------------------------------------------------------- 1 | export * from './OpenInNew'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/OptimismIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { OptimismIcon } from './OptimismIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/OvertimeIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './OvertimeIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/PolynomialIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './PolynomialIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/SBTCIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { SBTCIcon } from './SBTCIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/SLINKIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { SLINKIcon } from './SLINKIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/SNXIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './SNXIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/SUSDIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { SUSDIcon } from './SUSDIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/SettingsIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { SettingsIcon } from './SettingsIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/StakeIcon/index.ts: -------------------------------------------------------------------------------- 1 | export * from './StakeIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/StakingIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { StakingIcon } from './StakingIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/StakingLogo/index.ts: -------------------------------------------------------------------------------- 1 | export * from './StakingLogo'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/StakingRewardsIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './StakingRewardsIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/SushiSwapLogo/index.tsx: -------------------------------------------------------------------------------- 1 | export { SushiSwapLogo } from './SushiSwapLogo'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/SwitchIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { SwitchIcon } from './SwitchIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/ThalesIcon/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ThalesIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/TickIcon/TickIcon.tsx: -------------------------------------------------------------------------------- 1 | import { Icon, IconProps } from '@chakra-ui/react'; 2 | 3 | export const TickIcon = ({ 4 | width = '16px', 5 | height = '16px', 6 | color = 'success', 7 | ...props 8 | }: IconProps) => { 9 | return ( 10 | 11 | 15 | 16 | ); 17 | }; 18 | -------------------------------------------------------------------------------- /v2/components/icons/TickIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './TickIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/TokensIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { TokensIcon } from './TokensIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/TradingFeesIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './TradingFeesIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/TransactionCompleted/index.tsx: -------------------------------------------------------------------------------- 1 | export { TransactionCompleted } from './TransactionCompleted'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/TransactionPending/index.tsx: -------------------------------------------------------------------------------- 1 | export { TransactionPending } from './TransactionPending'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/TriangleDownIcon/TriangleDownIcon.tsx: -------------------------------------------------------------------------------- 1 | import { Icon, IconProps } from '@chakra-ui/react'; 2 | 3 | export const TriangleDownIcon = ({ 4 | width = '25px', 5 | height = '24px', 6 | color = 'white', 7 | ...props 8 | }: IconProps) => { 9 | return ( 10 | 11 | 12 | 13 | ); 14 | }; 15 | -------------------------------------------------------------------------------- /v2/components/icons/TriangleDownIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { TriangleDownIcon } from './TriangleDownIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/TriangleUpIcon/TriangleUpIcon.tsx: -------------------------------------------------------------------------------- 1 | import { Icon, IconProps } from '@chakra-ui/react'; 2 | 3 | export const TriangleUpIcon = ({ 4 | width = '25px', 5 | height = '24px', 6 | color = 'white', 7 | ...props 8 | }: IconProps) => { 9 | return ( 10 | 11 | 12 | 13 | ); 14 | }; 15 | -------------------------------------------------------------------------------- /v2/components/icons/TriangleUpIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { TriangleUpIcon } from './TriangleUpIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/WalletIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export { WalletIcon } from './WalletIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/WreckedIcon/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './WreckedIcon'; 2 | -------------------------------------------------------------------------------- /v2/components/icons/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/icons", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "devDependencies": { 7 | "@chakra-ui/react": "^2.5.0", 8 | "react": "^18.2.0" 9 | }, 10 | "peerDependencies": { 11 | "@chakra-ui/react": "2", 12 | "react": "18" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/contracts/index.js: -------------------------------------------------------------------------------- 1 | throw new Error('Import each contract directly from @synthetixio/contracts/build'); 2 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet-ovm/deployment/EscrowChecker.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'EscrowChecker'; 4 | export const address = '0xcdb7D0a946223255d39A6e29B54f08f3291cc118'; 5 | export const source = 'EscrowChecker'; 6 | export const abi = [ 7 | 'constructor(address _esc)', 8 | 'function checkAccountSchedule(address account) view returns (uint256[16])', 9 | 'function synthetix_escrow() view returns (address)', 10 | ]; 11 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet-ovm/deployment/EtherCollateral.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'EtherCollateral'; 4 | export const address = '0xC8E91c926E04BE1cb94e51c5379d14774D51ae6C'; 5 | export const source = 'EmptyEtherCollateral'; 6 | export const abi = ['function totalIssuedSynths() pure returns (uint256)']; 7 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet-ovm/deployment/EtherCollateralsUSD.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'EtherCollateralsUSD'; 4 | export const address = '0xC0c66470E766AE2026E6695966C56C90741811AA'; 5 | export const source = 'EmptyEtherCollateral'; 6 | export const abi = ['function totalIssuedSynths() pure returns (uint256)']; 7 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet-ovm/deployment/EtherWrapper.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'EtherWrapper'; 4 | export const address = '0xc3Ee42caBD773A608fa9Ec951982c94BD6F33d59'; 5 | export const source = 'EmptyEtherWrapper'; 6 | export const abi = [ 7 | 'constructor()', 8 | 'function distributeFees()', 9 | 'function totalIssuedSynths() view returns (uint256)', 10 | ]; 11 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet-ovm/deployment/Math.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'Math'; 4 | export const address = '0x0B3A73EE0740b3130e40B2A6b5aaf59E7E3Ef74c'; 5 | export const source = 'Math'; 6 | export const abi = []; 7 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet-ovm/deployment/SafeDecimalMath.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'SafeDecimalMath'; 4 | export const address = '0x0142F40c25CE1F1177Ed131101FA19217396cB88'; 5 | export const source = 'SafeDecimalMath'; 6 | export const abi = [ 7 | 'function PRECISE_UNIT() view returns (uint256)', 8 | 'function UNIT() view returns (uint256)', 9 | 'function decimals() view returns (uint8)', 10 | 'function highPrecisionDecimals() view returns (uint8)', 11 | 'function preciseUnit() pure returns (uint256)', 12 | 'function unit() pure returns (uint256)', 13 | ]; 14 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet-ovm/deployment/SignedSafeDecimalMath.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'SignedSafeDecimalMath'; 4 | export const address = '0x253914cf059f4c3E277c28060C404acFc38FB6e2'; 5 | export const source = 'SignedSafeDecimalMath'; 6 | export const abi = [ 7 | 'function PRECISE_UNIT() view returns (int256)', 8 | 'function UNIT() view returns (int256)', 9 | 'function decimals() view returns (uint8)', 10 | 'function highPrecisionDecimals() view returns (uint8)', 11 | 'function preciseUnit() pure returns (int256)', 12 | 'function unit() pure returns (int256)', 13 | ]; 14 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet-ovm/deployment/json/EtherCollateral.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "constant": true, 4 | "inputs": [], 5 | "name": "totalIssuedSynths", 6 | "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], 7 | "payable": false, 8 | "stateMutability": "pure", 9 | "type": "function" 10 | } 11 | ] 12 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet-ovm/deployment/json/EtherCollateralsUSD.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "constant": true, 4 | "inputs": [], 5 | "name": "totalIssuedSynths", 6 | "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], 7 | "payable": false, 8 | "stateMutability": "pure", 9 | "type": "function" 10 | } 11 | ] 12 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet-ovm/deployment/json/Math.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet/deployment/EscrowChecker.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'EscrowChecker'; 4 | export const address = '0x3b399e00AFd8201ACf8A5a0EcCF1C47d8D5E41da'; 5 | export const source = 'EscrowChecker'; 6 | export const abi = [ 7 | 'function checkAccountSchedule(address account) view returns (uint256[16])', 8 | 'function synthetix_escrow() view returns (address)', 9 | 'constructor(address _esc)', 10 | ]; 11 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet/deployment/Math.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'Math'; 4 | export const address = '0x385e1Eb2FF28F4A637DA2C9971F8CAF5F5b1E77c'; 5 | export const source = 'Math'; 6 | export const abi = []; 7 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet/deployment/SafeDecimalMath.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'SafeDecimalMath'; 4 | export const address = '0x84D626B2BB4D0F064067e4BF80FCe7055d8F3E7B'; 5 | export const source = 'SafeDecimalMath'; 6 | export const abi = [ 7 | 'function decimals() view returns (uint8)', 8 | 'function PRECISE_UNIT() view returns (uint256)', 9 | 'function unit() pure returns (uint256)', 10 | 'function UNIT() view returns (uint256)', 11 | 'function preciseUnit() pure returns (uint256)', 12 | 'function highPrecisionDecimals() view returns (uint8)', 13 | ]; 14 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet/deployment/SignedSafeDecimalMath.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'SignedSafeDecimalMath'; 4 | export const address = '0x728A2B79Cad691531CC1146eF802617FF50c7095'; 5 | export const source = 'SignedSafeDecimalMath'; 6 | export const abi = [ 7 | 'function PRECISE_UNIT() view returns (int256)', 8 | 'function UNIT() view returns (int256)', 9 | 'function decimals() view returns (uint8)', 10 | 'function highPrecisionDecimals() view returns (uint8)', 11 | 'function preciseUnit() pure returns (int256)', 12 | 'function unit() pure returns (int256)', 13 | ]; 14 | -------------------------------------------------------------------------------- /v2/contracts/src/mainnet/deployment/json/Math.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia-ovm/deployment/EscrowChecker.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'EscrowChecker'; 4 | export const address = '0xAf5E03bF7d4274873A23f343048e1cd3Edca22c0'; 5 | export const source = 'EscrowChecker'; 6 | export const abi = [ 7 | 'constructor(address _esc)', 8 | 'function checkAccountSchedule(address account) view returns (uint256[16])', 9 | 'function synthetix_escrow() view returns (address)', 10 | ]; 11 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia-ovm/deployment/EtherWrapper.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'EtherWrapper'; 4 | export const address = '0x94dD4B5845BB6e13CD9cb8C9798660c7d1fC4863'; 5 | export const source = 'EmptyEtherWrapper'; 6 | export const abi = [ 7 | 'constructor()', 8 | 'function distributeFees()', 9 | 'function totalIssuedSynths() view returns (uint256)', 10 | ]; 11 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia-ovm/deployment/Math.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'Math'; 4 | export const address = '0xee4287a9e9B89F880D50F68597E91a06f69dCc21'; 5 | export const source = 'Math'; 6 | export const abi = []; 7 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia-ovm/deployment/SafeDecimalMath.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'SafeDecimalMath'; 4 | export const address = '0x2aD7cCAac0Eeb396C3A5fc2b73A885435688C0D5'; 5 | export const source = 'SafeDecimalMath'; 6 | export const abi = [ 7 | 'function PRECISE_UNIT() view returns (uint256)', 8 | 'function UNIT() view returns (uint256)', 9 | 'function decimals() view returns (uint8)', 10 | 'function highPrecisionDecimals() view returns (uint8)', 11 | 'function preciseUnit() pure returns (uint256)', 12 | 'function unit() pure returns (uint256)', 13 | ]; 14 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia-ovm/deployment/SignedSafeDecimalMath.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'SignedSafeDecimalMath'; 4 | export const address = '0xc7dCC0929881530d3386de51D9ffdD35B8009c6E'; 5 | export const source = 'SignedSafeDecimalMath'; 6 | export const abi = [ 7 | 'function PRECISE_UNIT() view returns (int256)', 8 | 'function UNIT() view returns (int256)', 9 | 'function decimals() view returns (uint8)', 10 | 'function highPrecisionDecimals() view returns (uint8)', 11 | 'function preciseUnit() pure returns (int256)', 12 | 'function unit() pure returns (int256)', 13 | ]; 14 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia-ovm/deployment/json/Math.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia/deployment/EscrowChecker.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'EscrowChecker'; 4 | export const address = '0x7f9Ecf9cD54cDB7D00927cf32e4029f9a69AF4e5'; 5 | export const source = 'EscrowChecker'; 6 | export const abi = [ 7 | 'constructor(address _esc)', 8 | 'function checkAccountSchedule(address account) view returns (uint256[16])', 9 | 'function synthetix_escrow() view returns (address)', 10 | ]; 11 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia/deployment/Math.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'Math'; 4 | export const address = '0xe5BBE61dC29670Fa52E3a3bCdb7278d926Db1A2A'; 5 | export const source = 'Math'; 6 | export const abi = []; 7 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia/deployment/SafeDecimalMath.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'SafeDecimalMath'; 4 | export const address = '0x9D6D846D4546614a7e668e66886624c0AE21D786'; 5 | export const source = 'SafeDecimalMath'; 6 | export const abi = [ 7 | 'function PRECISE_UNIT() view returns (uint256)', 8 | 'function UNIT() view returns (uint256)', 9 | 'function decimals() view returns (uint8)', 10 | 'function highPrecisionDecimals() view returns (uint8)', 11 | 'function preciseUnit() pure returns (uint256)', 12 | 'function unit() pure returns (uint256)', 13 | ]; 14 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia/deployment/SignedSafeDecimalMath.ts: -------------------------------------------------------------------------------- 1 | // !!! DO NOT EDIT !!! Automatically generated file 2 | 3 | export const name = 'SignedSafeDecimalMath'; 4 | export const address = '0x2060e6041F7C1BF9A90FA0c060E40C402d81D6CE'; 5 | export const source = 'SignedSafeDecimalMath'; 6 | export const abi = [ 7 | 'function PRECISE_UNIT() view returns (int256)', 8 | 'function UNIT() view returns (int256)', 9 | 'function decimals() view returns (uint8)', 10 | 'function highPrecisionDecimals() view returns (uint8)', 11 | 'function preciseUnit() pure returns (int256)', 12 | 'function unit() pure returns (int256)', 13 | ]; 14 | -------------------------------------------------------------------------------- /v2/contracts/src/sepolia/deployment/json/Math.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /v2/contracts/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.base.module.json", 3 | "compilerOptions": { 4 | "module": "commonjs", 5 | "outDir": "./build", 6 | "rootDir": "./src" 7 | }, 8 | "include": ["src"] 9 | } 10 | -------------------------------------------------------------------------------- /v2/cypress/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "no-console": "off" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /v2/cypress/.gitignore: -------------------------------------------------------------------------------- 1 | .env.local 2 | -------------------------------------------------------------------------------- /v2/cypress/cypress.d.ts: -------------------------------------------------------------------------------- 1 | import { mount } from 'cypress/react'; 2 | 3 | // Augment the Cypress namespace to include type definitions for 4 | // your custom command. 5 | // Alternatively, can be defined in cypress/support/component.d.ts 6 | // with a at the top of your spec. 7 | declare global { 8 | namespace Cypress { 9 | interface Chainable { 10 | mount: typeof mount; 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /v2/cypress/cypress/.gitignore: -------------------------------------------------------------------------------- 1 | # cypress ignores 2 | videos 3 | screenshots 4 | reports 5 | forks 6 | -------------------------------------------------------------------------------- /v2/cypress/cypress/e2e/home.e2e.js: -------------------------------------------------------------------------------- 1 | it('shows homepage to unauthorised user', () => { 2 | cy.visit('http://localhost:3000'); 3 | cy.get('#app').should('contain', 'Welcome to Synthetix'); 4 | }); 5 | -------------------------------------------------------------------------------- /v2/cypress/cypress/lib/testname.js: -------------------------------------------------------------------------------- 1 | export function testname() { 2 | return Cypress.currentTest.titlePath.join('--').replace(/[^\w-]+/gi, '-'); 3 | } 4 | -------------------------------------------------------------------------------- /v2/cypress/cypress/support/component-index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Components App 8 | 9 | 10 |
11 | 12 | 13 | -------------------------------------------------------------------------------- /v2/cypress/cypress/tasks/forkReset.js: -------------------------------------------------------------------------------- 1 | import { ethers } from 'ethers'; 2 | 3 | export async function forkReset() { 4 | const provider = new ethers.providers.JsonRpcProvider('http://127.0.0.1:8545'); 5 | await provider.send('anvil_reset', [ 6 | { 7 | forking: { 8 | jsonRpcUrl: '', 9 | blockNumber: 14390000, 10 | }, 11 | }, 12 | ]); 13 | console.log('forkReset', { result: 'OK' }); 14 | return null; 15 | } 16 | -------------------------------------------------------------------------------- /v2/lib/Constants/Constants.ts: -------------------------------------------------------------------------------- 1 | export const WEEKS_IN_YEAR = 52; 2 | export const GWEI_DECIMALS = 9; 3 | -------------------------------------------------------------------------------- /v2/lib/Constants/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Constants'; 2 | export * from './links'; 3 | export * from './localStorage'; 4 | export * from './subgraph'; 5 | -------------------------------------------------------------------------------- /v2/lib/Constants/localStorage.ts: -------------------------------------------------------------------------------- 1 | export const LOCAL_STORAGE_KEYS = { 2 | SELECTED_WALLET: 'selectedWallet', 3 | WATCHED_WALLETS: 'watchedWallets', 4 | THALES_STAKING_INFO_VISIBLE: 'thalesStakingInfo', 5 | WARNING_URL_BANNER_VISIBLE: 'isWarningUrlBannerVisible', 6 | RE_ELECTION_NEW_START_TIME: 'reElectionNewStartTimeVisible', 7 | }; 8 | 9 | export const SESSION_STORAGE_KEYS = { 10 | TERMS_CONDITIONS_ACCEPTED: 'TERMS_CONDITIONS_ACCEPTED', 11 | }; 12 | -------------------------------------------------------------------------------- /v2/lib/Constants/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/Constants", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "react": "^18.2.0" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /v2/lib/Constants/subgraph.ts: -------------------------------------------------------------------------------- 1 | export const MAINNET_URL = 'https://api.thegraph.com/subgraphs/name/synthetixio-team/mainnet-main'; 2 | export const OPTIMISM_URL = 3 | 'https://gateway-arbitrum.network.thegraph.com/api/3955c204decac48c529b8105344afb7f/subgraphs/id/39nXvA89wrgSz7vRAq6uxmvYn2CTNDuSfXJue3m7PVKA'; 4 | -------------------------------------------------------------------------------- /v2/lib/ContractContext/ContractContext.tsx: -------------------------------------------------------------------------------- 1 | import { createContext } from 'react'; 2 | 3 | export const ContractContext = createContext<{ 4 | networkId: number | null; 5 | walletAddress: string | null; 6 | ensName: string | null; 7 | walletType: string | null; 8 | }>({ 9 | networkId: null, 10 | walletAddress: null, 11 | ensName: null, 12 | walletType: null, 13 | }); 14 | -------------------------------------------------------------------------------- /v2/lib/ContractContext/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ContractContext'; 2 | -------------------------------------------------------------------------------- /v2/lib/ContractContext/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/ContractContext", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "react": "^18.2.0" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /v2/lib/GasSpeedContext/index.ts: -------------------------------------------------------------------------------- 1 | export * from './GasSpeedContext'; 2 | -------------------------------------------------------------------------------- /v2/lib/GasSpeedContext/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/GasSpeedContext", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "react": "^18.2.0" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /v2/lib/SignerContext/SignerContext.tsx: -------------------------------------------------------------------------------- 1 | import { createContext } from 'react'; 2 | import { Signer } from 'ethers'; 3 | 4 | export const SignerContext = createContext(null); 5 | -------------------------------------------------------------------------------- /v2/lib/SignerContext/index.ts: -------------------------------------------------------------------------------- 1 | export * from './SignerContext'; 2 | -------------------------------------------------------------------------------- /v2/lib/SignerContext/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/SignerContext", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "ethers": "^5.8.0", 8 | "react": "^18.2.0" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /v2/lib/SwitchNetworkContext/SwitchNetworkContext.tsx: -------------------------------------------------------------------------------- 1 | import { NetworkId } from '@synthetixio/contracts-interface'; 2 | import { createContext } from 'react'; 3 | 4 | // eslint-disable-next-line @typescript-eslint/no-empty-function 5 | export const SwitchNetworkContext = createContext<(id: NetworkId) => Promise>( 6 | async () => undefined 7 | ); 8 | -------------------------------------------------------------------------------- /v2/lib/SwitchNetworkContext/index.ts: -------------------------------------------------------------------------------- 1 | export * from './SwitchNetworkContext'; 2 | -------------------------------------------------------------------------------- /v2/lib/SwitchNetworkContext/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/SwitchNetworkContext", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.7", 6 | "dependencies": { 7 | "@synthetixio/contracts-interface": "workspace:*", 8 | "react": "^18.2.0" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /v2/lib/SynthIcons/getPngSynthIconUrl.ts: -------------------------------------------------------------------------------- 1 | // TODO we should come up with a better solution for this... 2 | export const getPngSynthIconUrl = (currencyKey: string) => { 3 | return `https://raw.githubusercontent.com/Synthetixio/synthetix-assets/master/synths/png/${currencyKey}.png`; 4 | }; 5 | -------------------------------------------------------------------------------- /v2/lib/SynthIcons/index.ts: -------------------------------------------------------------------------------- 1 | export * from './getPngSynthIconUrl'; 2 | -------------------------------------------------------------------------------- /v2/lib/SynthIcons/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/SynthIcons", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1" 6 | } 7 | -------------------------------------------------------------------------------- /v2/lib/calculateWeeklyRewardsInUsd/calculateWeeklyRewardsInUsd.tsx: -------------------------------------------------------------------------------- 1 | import Wei from '@synthetixio/wei'; 2 | 3 | export const calculateWeeklyRewardsInUsd = ( 4 | SNXRate?: Wei, 5 | feesToDistribute?: Wei, 6 | rewardsToDistribute?: Wei 7 | ) => { 8 | if (!feesToDistribute || !rewardsToDistribute || !SNXRate) return undefined; 9 | return feesToDistribute.add(SNXRate.mul(rewardsToDistribute)); 10 | }; 11 | -------------------------------------------------------------------------------- /v2/lib/calculateWeeklyRewardsInUsd/index.ts: -------------------------------------------------------------------------------- 1 | export * from './calculateWeeklyRewardsInUsd'; 2 | -------------------------------------------------------------------------------- /v2/lib/calculateWeeklyRewardsInUsd/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/calculateWeeklyRewardsInUsd", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1", 6 | "dependencies": { 7 | "@synthetixio/wei": "^2.74.4" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /v2/lib/feeSuggestion/index.ts: -------------------------------------------------------------------------------- 1 | export * from './feeSuggestion'; 2 | -------------------------------------------------------------------------------- /v2/lib/feeSuggestion/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/feeSuggestion", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@snx-v2/Constants": "workspace:*", 8 | "@synthetixio/wei": "^2.74.4", 9 | "ethers": "^5.8.0", 10 | "react": "^18.2.0" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/lib/formatters/date.ts: -------------------------------------------------------------------------------- 1 | import format from 'date-fns/format'; 2 | 3 | export const formatShortDateWithTime = (date: Date | number) => format(date, 'MMM d, yyyy H:mma'); 4 | -------------------------------------------------------------------------------- /v2/lib/formatters/index.ts: -------------------------------------------------------------------------------- 1 | export * from './number'; 2 | export * from './string'; 3 | export * from './date'; 4 | -------------------------------------------------------------------------------- /v2/lib/formatters/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@synthetixio/formatters", 3 | "main": "dist/index.js", 4 | "version": "0.0.1-0", 5 | "scripts": { 6 | "build:ts": "tsc", 7 | "build": "yarn build:ts" 8 | }, 9 | "dependencies": { 10 | "date-fns": "^2.29.3", 11 | "typescript": "^5.7.3" 12 | }, 13 | "stableVersion": "0.0.1-0", 14 | "publishConfig": { 15 | "access": "public" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v2/lib/formatters/string.test.ts: -------------------------------------------------------------------------------- 1 | import { parseFloatWithCommas } from './string'; 2 | 3 | describe('string formatters', () => { 4 | test('parseFloatWithCommas', () => { 5 | expect(parseFloatWithCommas('1000')).toBe(1000); 6 | expect(parseFloatWithCommas('10,000')).toBe(10000); 7 | expect(parseFloatWithCommas('1,000,000.50')).toBe(1000000.5); 8 | }); 9 | }); 10 | -------------------------------------------------------------------------------- /v2/lib/formatters/string.ts: -------------------------------------------------------------------------------- 1 | export const truncateAddress = (address: string, first = 5, last = 5) => 2 | `${address.slice(0, first)}...${address.slice(-last, address.length)}`; 3 | 4 | export const parseFloatWithCommas = (numberWithCommas: string) => 5 | parseFloat(numberWithCommas.replaceAll(',', '')); 6 | -------------------------------------------------------------------------------- /v2/lib/formatters/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.base.module.json", 3 | "compilerOptions": { 4 | "outDir": "./dist", 5 | "rootDir": "./" 6 | }, 7 | "include": ["**/*.ts"], 8 | "exclude": ["node_modules", "**/*.test.ts", "./dist/**/*"] 9 | } 10 | -------------------------------------------------------------------------------- /v2/lib/getHealthVariant/index.ts: -------------------------------------------------------------------------------- 1 | export * from './getHealthVariant'; 2 | -------------------------------------------------------------------------------- /v2/lib/getHealthVariant/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/getHealthVariant", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0" 6 | } 7 | -------------------------------------------------------------------------------- /v2/lib/parseTxnError/index.ts: -------------------------------------------------------------------------------- 1 | export * from './parseTxnError'; 2 | -------------------------------------------------------------------------------- /v2/lib/parseTxnError/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/parseTxnError", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0" 6 | } 7 | -------------------------------------------------------------------------------- /v2/lib/parseTxnError/parseTxnError.ts: -------------------------------------------------------------------------------- 1 | export const parseTxnError = (error: any) => { 2 | if (error.reason) return error.reason; 3 | let errorMessage = error.data?.message ?? error.message; 4 | const isFrameWalletError = errorMessage?.includes('(error={'); 5 | if (isFrameWalletError) { 6 | // Frame wallet throws a weird error, we try to parse the message and if it fails we just show the ugly full message 7 | errorMessage = errorMessage.match(/"message":"([^"]+)"/)?.[1] || errorMessage; 8 | } 9 | if (errorMessage) { 10 | return errorMessage; 11 | } 12 | 13 | return 'Unknown error'; 14 | }; 15 | -------------------------------------------------------------------------------- /v2/lib/stakingCalculations/index.ts: -------------------------------------------------------------------------------- 1 | export * from './stakingCalculations'; 2 | -------------------------------------------------------------------------------- /v2/lib/stakingCalculations/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/stakingCalculations", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@synthetixio/wei": "^2.74.4" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /v2/lib/subgraph/index.ts: -------------------------------------------------------------------------------- 1 | export * as MainnetTypes from './mainnet'; 2 | export * as OptimismTypes from './optimism'; 3 | -------------------------------------------------------------------------------- /v2/lib/subgraph/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/subgraph", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "scripts": { 7 | "build": "graphql-codegen --config codegen.ts" 8 | }, 9 | "devDependencies": { 10 | "@graphql-codegen/add": "^4.0.0", 11 | "@graphql-codegen/cli": "^3.0.0", 12 | "@graphql-codegen/schema-ast": "^3.0.0", 13 | "@graphql-codegen/typescript": "^3.0.0", 14 | "typescript": "^5.7.3" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /v2/lib/sumBy/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sumBy'; 2 | -------------------------------------------------------------------------------- /v2/lib/sumBy/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/sumBy", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1" 6 | } 7 | -------------------------------------------------------------------------------- /v2/lib/sumBy/sumBy.ts: -------------------------------------------------------------------------------- 1 | export const sumBy = >(key: K, arr: T[]) => 2 | arr.reduce((acc, val) => { 3 | const keyValue = val[key]; 4 | return acc + keyValue; 5 | }, 0); 6 | -------------------------------------------------------------------------------- /v2/lib/synthsByName/index.ts: -------------------------------------------------------------------------------- 1 | export * from './synthsByName'; 2 | -------------------------------------------------------------------------------- /v2/lib/synthsByName/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/synthsByName", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useSynthetixContracts": "workspace:*", 9 | "@synthetixio/contracts": "workspace:*", 10 | "@tanstack/react-query": "^4.24.6", 11 | "react": "^18.2.0" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /v2/lib/txnLink/index.ts: -------------------------------------------------------------------------------- 1 | export * from './txnLink'; 2 | -------------------------------------------------------------------------------- /v2/lib/txnLink/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/txnLink", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useSynthetixContracts": "workspace:*", 9 | "react": "^18.2.0" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /v2/lib/txnLink/txnLink.test.ts: -------------------------------------------------------------------------------- 1 | import { getEtherscanBaseUrl } from './txnLink'; 2 | describe('getEtherscanBaseUrl', () => { 3 | it('handles mainnet', () => { 4 | expect(getEtherscanBaseUrl(1)).toBe('https://etherscan.io'); 5 | }); 6 | 7 | it('handles optimism', () => { 8 | expect(getEtherscanBaseUrl(10)).toBe('https://optimistic.etherscan.io'); 9 | }); 10 | 11 | it('returns mainnet when unkown', () => { 12 | expect(getEtherscanBaseUrl(123456)).toBe('https://etherscan.io'); 13 | }); 14 | }); 15 | -------------------------------------------------------------------------------- /v2/lib/txnReducer/index.ts: -------------------------------------------------------------------------------- 1 | export * from './txnReducer'; 2 | -------------------------------------------------------------------------------- /v2/lib/txnReducer/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/txnReducer", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1" 6 | } 7 | -------------------------------------------------------------------------------- /v2/lib/useApproveERC20sUSDMutation/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useApproveERC20sUSDMutation'; 2 | -------------------------------------------------------------------------------- /v2/lib/useApproveERC20sUSDMutation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useApproveERC20sUSDMutation", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@ethersproject/bignumber": "^5.8.0", 8 | "@snx-v2/txnReducer": "workspace:*", 9 | "@snx-v2/useGasOptions": "workspace:*", 10 | "@snx-v2/useSynthetixContracts": "workspace:*", 11 | "@tanstack/react-query": "^4.24.6", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useApr/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useApr'; 2 | -------------------------------------------------------------------------------- /v2/lib/useApr/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useApr", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@snx-v2/useDebtData": "workspace:*", 8 | "@snx-v2/useGlobalStakingApr": "workspace:*", 9 | "@snx-v2/useStakingApr": "workspace:*" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /v2/lib/useApr/useApr.ts: -------------------------------------------------------------------------------- 1 | import { useDebtData } from '@snx-v2/useDebtData'; 2 | import { useGlobalStakingApr } from '@snx-v2/useGlobalStakingApr'; 3 | import { useStakingApr } from '@snx-v2/useStakingApr'; 4 | 5 | export const useApr = () => { 6 | const { data: debtData } = useDebtData(); 7 | 8 | const stakingAprQuery = useStakingApr(); 9 | 10 | const notStaking = debtData?.debtBalance.eq(0); 11 | 12 | const globalAprQuery = useGlobalStakingApr(); 13 | 14 | const firstEpochUserStaking = stakingAprQuery.data?.combinedApr.eq(0); 15 | 16 | return notStaking || firstEpochUserStaking ? globalAprQuery : stakingAprQuery; 17 | }; 18 | -------------------------------------------------------------------------------- /v2/lib/useAuthorisedWallets/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useAuthorisedWallets'; 2 | -------------------------------------------------------------------------------- /v2/lib/useAuthorisedWallets/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useAuthorisedWallets", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@snx-v2/Constants": "workspace:*", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@tanstack/react-query": "^4.24.6", 10 | "react": "^18.2.0" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/lib/useBridgeMutation/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useBridgeMutation'; 2 | -------------------------------------------------------------------------------- /v2/lib/useBridgeMutation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useBridgeMutation", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@ethersproject/bignumber": "^5.8.0", 8 | "@snx-v2/txnReducer": "workspace:*", 9 | "@snx-v2/useGasOptions": "workspace:*", 10 | "@snx-v2/useSynthetixContracts": "workspace:*", 11 | "@tanstack/react-query": "^4.24.6", 12 | "ethers": "^5.8.0", 13 | "react": "^18.2.0" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /v2/lib/useBurnMutation/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useBurnMutation'; 2 | export * from './reducer'; 3 | -------------------------------------------------------------------------------- /v2/lib/useBurnMutation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useBurnMutation", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@ethersproject/bignumber": "^5.8.0", 8 | "@snx-v2/txnReducer": "workspace:*", 9 | "@snx-v2/useGasOptions": "workspace:*", 10 | "@snx-v2/useSynthetixContracts": "workspace:*", 11 | "@tanstack/react-query": "^4.24.6", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useClaimLiquidatorRewardsMutation/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useClaimLiquidatorRewardsMutation'; 2 | -------------------------------------------------------------------------------- /v2/lib/useClaimLiquidatorRewardsMutation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useClaimLiquidatorRewardsMutation", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/txnReducer": "workspace:*", 9 | "@snx-v2/useGasOptions": "workspace:*", 10 | "@snx-v2/useSynthetixContracts": "workspace:*", 11 | "@tanstack/react-query": "^4.24.6", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useClaimRewardsMutation/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useClaimRewardsMutation'; 2 | -------------------------------------------------------------------------------- /v2/lib/useClaimRewardsMutation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useClaimRewardsMutation", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@snx-v2/txnReducer": "workspace:*", 8 | "@snx-v2/useDelegateWallet": "workspace:*", 9 | "@snx-v2/useGasOptions": "workspace:*", 10 | "@snx-v2/useSynthetixContracts": "workspace:*", 11 | "@tanstack/react-query": "^4.24.6", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useClaimableRewards/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useClaimableRewards'; 2 | -------------------------------------------------------------------------------- /v2/lib/useClaimableRewards/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useClaimableRewards", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.10", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useDelegateWallet": "workspace:*", 9 | "@snx-v2/useExchangeRatesData": "workspace:*", 10 | "@snx-v2/useGetLiquidationRewards": "workspace:*", 11 | "@snx-v2/useRewardsAvailable": "workspace:*", 12 | "@tanstack/react-query": "^4.24.6", 13 | "react": "^18.2.0" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /v2/lib/useDebtData/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useDebtData'; 2 | -------------------------------------------------------------------------------- /v2/lib/useDebtData/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useDebtData", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@ethersproject/strings": "^5.8.0", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@snx-v2/useDelegateWallet": "workspace:*", 10 | "@snx-v2/useSynthetixContracts": "workspace:*", 11 | "@synthetixio/wei": "^2.74.4", 12 | "@tanstack/react-query": "^4.24.6", 13 | "ethers": "^5.8.0", 14 | "react": "^18.2.0" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /v2/lib/useDebtPoolData/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useDebtPoolData'; 2 | -------------------------------------------------------------------------------- /v2/lib/useDebtPoolData/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useDebtPoolData", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.5", 6 | "dependencies": { 7 | "@tanstack/react-query": "^4.24.6" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /v2/lib/useDebtShareDataPeriod/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useDebtShareDataPeriod'; 2 | -------------------------------------------------------------------------------- /v2/lib/useDebtShareDataPeriod/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useDebtShareDataPeriod", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useDelegateWallet": "workspace:*", 9 | "@snx-v2/useSynthetixContracts": "workspace:*", 10 | "@synthetixio/contracts-interface": "workspace:*", 11 | "@synthetixio/use-global-providers": "workspace:*", 12 | "@synthetixio/wei": "^2.74.4", 13 | "@tanstack/react-query": "^4.24.6", 14 | "react": "^18.2.0" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /v2/lib/useDelegateWallet/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useDelegateWallet'; 2 | -------------------------------------------------------------------------------- /v2/lib/useDelegateWallet/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useDelegateWallet", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.3", 6 | "dependencies": { 7 | "react": "^18.2.0" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /v2/lib/useEscrowBalance/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useEscrowBalance'; 2 | -------------------------------------------------------------------------------- /v2/lib/useEscrowBalance/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useEscrowBalance", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useSynthetixContracts": "workspace:*", 9 | "@synthetixio/wei": "^2.74.4", 10 | "@tanstack/react-query": "^4.24.6", 11 | "react": "^18.2.0" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /v2/lib/useEthBalance/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useEthBalance'; 2 | -------------------------------------------------------------------------------- /v2/lib/useEthBalance/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useEthBalance", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/SignerContext": "workspace:*", 9 | "@synthetixio/wei": "^2.74.4", 10 | "@tanstack/react-query": "^4.24.6", 11 | "react": "^18.2.0" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /v2/lib/useExchangeRatesData/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useExchangeRatesData'; 2 | -------------------------------------------------------------------------------- /v2/lib/useExchangeRatesData/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useExchangeRatesData", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@ethersproject/strings": "^5.8.0", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@snx-v2/useSynthetixContracts": "workspace:*", 10 | "@synthetixio/wei": "^2.74.4", 11 | "@tanstack/react-query": "^4.24.6", 12 | "ethers": "^5.8.0", 13 | "react": "^18.2.0" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /v2/lib/useFeePeriodMultiNetwork/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useFeePeriodMultiNetwork'; 2 | -------------------------------------------------------------------------------- /v2/lib/useFeePeriodMultiNetwork/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useFeePeriodMultiNetwork", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@snx-v2/useSynthetixContracts": "workspace:*", 8 | "@synthetixio/contracts-interface": "workspace:*", 9 | "@synthetixio/use-global-providers": "workspace:*", 10 | "@tanstack/react-query": "^4.24.6", 11 | "react": "^18.2.0" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /v2/lib/useFeePoolData/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useFeePoolData'; 2 | -------------------------------------------------------------------------------- /v2/lib/useFeePoolData/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useFeePoolData", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useSynthetixContracts": "workspace:*", 9 | "@synthetixio/wei": "^2.74.4", 10 | "@tanstack/react-query": "^4.24.6", 11 | "date-fns": "^2.29.3", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useFeesBurnedInPeriod/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useFeesBurnedInPeriod'; 2 | -------------------------------------------------------------------------------- /v2/lib/useFeesBurnedInPeriod/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useFeesBurnedInPeriod", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useDebtShareDataPeriod": "workspace:*", 9 | "@snx-v2/useFeePeriodMultiNetwork": "workspace:*", 10 | "@synthetixio/wei": "^2.74.4", 11 | "react": "^18.2.0" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /v2/lib/useFeesClaimed/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useFeesClaimed'; 2 | -------------------------------------------------------------------------------- /v2/lib/useFeesClaimed/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useFeesClaimed", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@snx-v2/Constants": "workspace:*", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@snx-v2/useDelegateWallet": "workspace:*", 10 | "@synthetixio/wei": "^2.74.4", 11 | "@tanstack/react-query": "^4.24.6", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useGasOptions/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useGasOptions'; 2 | -------------------------------------------------------------------------------- /v2/lib/useGasPrice/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useGasPrice'; 2 | -------------------------------------------------------------------------------- /v2/lib/useGasPrice/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useGasPrice", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@snx-v2/Constants": "workspace:*", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@snx-v2/feeSuggestion": "workspace:*", 10 | "@snx-v2/useSynthetixContracts": "workspace:*", 11 | "@synthetixio/use-global-providers": "workspace:*", 12 | "@synthetixio/wei": "^2.74.4", 13 | "@tanstack/react-query": "^4.24.6", 14 | "react": "^18.2.0" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /v2/lib/useGetLifetimeRewards/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useGetLifetimeRewards'; 2 | -------------------------------------------------------------------------------- /v2/lib/useGetLifetimeRewards/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useGetLifetimeRewards", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.10", 6 | "dependencies": { 7 | "@snx-v2/useExchangeRatesData": "workspace:*", 8 | "@tanstack/react-query": "^4.24.6", 9 | "react": "^18.2.0" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /v2/lib/useGetLiquidationRewards/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useGetLiquidationRewards'; 2 | -------------------------------------------------------------------------------- /v2/lib/useGetLiquidationRewards/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useGetLiquidationRewards", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useDelegateWallet": "workspace:*", 9 | "@snx-v2/useSynthetixContracts": "workspace:*", 10 | "@synthetixio/wei": "^2.74.4", 11 | "@tanstack/react-query": "^4.24.6", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useGlobalProvidersWithFallback/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useGlobalProvidersWithFallback'; 2 | -------------------------------------------------------------------------------- /v2/lib/useGlobalProvidersWithFallback/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@synthetixio/use-global-providers", 3 | "main": "dist/index.js", 4 | "version": "0.0.1-0", 5 | "scripts": { 6 | "build:ts": "tsc", 7 | "build": "yarn build:ts" 8 | }, 9 | "dependencies": { 10 | "ethers": "^5.8.0", 11 | "react": "^18.2.0", 12 | "typescript": "^5.7.3" 13 | }, 14 | "stableVersion": "0.0.1-0", 15 | "publishConfig": { 16 | "access": "public" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /v2/lib/useGlobalProvidersWithFallback/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.base.module.json", 3 | "compilerOptions": { 4 | "outDir": "./dist", 5 | "rootDir": "./", 6 | "jsx": "react" 7 | }, 8 | "include": ["**/*.ts", "**/*.tsx"], 9 | "exclude": ["node_modules", "./dist/**/*"] 10 | } 11 | -------------------------------------------------------------------------------- /v2/lib/useGlobalStakingApr/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useGlobalStakingApr'; 2 | -------------------------------------------------------------------------------- /v2/lib/useGlobalStakingApr/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useGlobalStakingApr", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@snx-v2/Constants": "workspace:*", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@snx-v2/useExchangeRatesData": "workspace:*", 10 | "@snx-v2/useFeePeriodMultiNetwork": "workspace:*", 11 | "@snx-v2/useSynthetixContracts": "workspace:*", 12 | "@snx-v2/useTotalStakedSNX": "workspace:*", 13 | "@synthetixio/wei": "^2.74.4", 14 | "react": "^18.2.0" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /v2/lib/useInterval/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useInterval'; 2 | -------------------------------------------------------------------------------- /v2/lib/useInterval/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useInterval", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "react": "^18.2.0" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /v2/lib/useInterval/useInterval.ts: -------------------------------------------------------------------------------- 1 | import { useEffect, useRef } from 'react'; 2 | 3 | export function useInterval(callback: () => void, delay: number | null) { 4 | const savedCallback = useRef(callback); 5 | 6 | useEffect(() => { 7 | savedCallback.current = callback; 8 | }, [callback]); 9 | 10 | useEffect(() => { 11 | if (delay === null) { 12 | return; 13 | } 14 | 15 | const id = setInterval(() => savedCallback.current(), delay); 16 | 17 | return () => clearInterval(id); 18 | }, [delay]); 19 | } 20 | -------------------------------------------------------------------------------- /v2/lib/useIssuedDebt/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useIssuedDebt'; 2 | -------------------------------------------------------------------------------- /v2/lib/useIssuedDebt/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useIssuedDebt", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.0", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@tanstack/react-query": "^4.24.6", 9 | "react": "^18.2.0" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /v2/lib/useLiquidationData/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useLiquidationData'; 2 | -------------------------------------------------------------------------------- /v2/lib/useLiquidationData/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useLiquidationData", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useSynthetixContracts": "workspace:*", 9 | "@synthetixio/wei": "^2.74.4", 10 | "@tanstack/react-query": "^4.24.6", 11 | "react": "^18.2.0" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /v2/lib/useMinStakeTime/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useMinStakeTime'; 2 | -------------------------------------------------------------------------------- /v2/lib/useMinStakeTime/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useMinStakeTime", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useDelegateWallet": "workspace:*", 9 | "@snx-v2/useSynthetixContracts": "workspace:*", 10 | "@synthetixio/wei": "^2.74.4", 11 | "@tanstack/react-query": "^4.24.6", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useMintMutation/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useMintMutation'; 2 | -------------------------------------------------------------------------------- /v2/lib/useMintMutation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useMintMutation", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@ethersproject/bignumber": "^5.8.0", 8 | "@snx-v2/txnReducer": "workspace:*", 9 | "@snx-v2/useGasOptions": "workspace:*", 10 | "@snx-v2/useSynthetixContracts": "workspace:*", 11 | "@tanstack/react-query": "^4.24.6", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useOptimismLayer1Fee/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useOptimismLayer1Fee'; 2 | -------------------------------------------------------------------------------- /v2/lib/useRewardsAvailable/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useRewardsAvailable'; 2 | -------------------------------------------------------------------------------- /v2/lib/useRewardsAvailable/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useRewardsAvailable", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/useDelegateWallet": "workspace:*", 9 | "@snx-v2/useSynthetixContracts": "workspace:*", 10 | "@synthetixio/wei": "^2.74.4", 11 | "@tanstack/react-query": "^4.24.6", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useSelfLiquidationData/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useSelfLiquidationData'; 2 | -------------------------------------------------------------------------------- /v2/lib/useSelfLiquidationData/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useSelfLiquidationData", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@snx-v2/ContractContext": "workspace:*", 8 | "@snx-v2/getHealthVariant": "workspace:*", 9 | "@snx-v2/useDebtData": "workspace:*", 10 | "@snx-v2/useExchangeRatesData": "workspace:*", 11 | "@snx-v2/useLiquidationData": "workspace:*", 12 | "@snx-v2/useSynthetixContracts": "workspace:*", 13 | "@synthetixio/wei": "^2.74.4", 14 | "@tanstack/react-query": "^4.24.6", 15 | "react": "^18.2.0" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v2/lib/useSelfLiquidationMutation/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useSelfLiquidationMutation'; 2 | -------------------------------------------------------------------------------- /v2/lib/useSelfLiquidationMutation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useSelfLiquidationMutation", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@snx-v2/txnReducer": "workspace:*", 8 | "@snx-v2/useGasOptions": "workspace:*", 9 | "@snx-v2/useSynthetixContracts": "workspace:*", 10 | "@synthetixio/wei": "^2.74.4", 11 | "@tanstack/react-query": "^4.24.6", 12 | "react": "^18.2.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/lib/useStakingApr/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useStakingApr'; 2 | -------------------------------------------------------------------------------- /v2/lib/useStakingApr/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useStakingApr", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@snx-v2/Constants": "workspace:*", 8 | "@snx-v2/stakingCalculations": "workspace:*", 9 | "@snx-v2/useDebtData": "workspace:*", 10 | "@snx-v2/useDebtShareDataPeriod": "workspace:*", 11 | "@snx-v2/useExchangeRatesData": "workspace:*", 12 | "@snx-v2/useFeePoolData": "workspace:*", 13 | "@snx-v2/useFeesBurnedInPeriod": "workspace:*", 14 | "@synthetixio/wei": "^2.74.4", 15 | "react": "^18.2.0" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v2/lib/useSynthRedeemer/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useSynthRedeemer'; 2 | -------------------------------------------------------------------------------- /v2/lib/useSynthetixContracts/common.ts: -------------------------------------------------------------------------------- 1 | export const NetworkIdByName = { 2 | mainnet: 1, 3 | 'mainnet-ovm': 10, 4 | } as const; 5 | 6 | export const NetworkNameById = { 7 | 1: 'mainnet', 8 | 10: 'mainnet-ovm', 9 | } as const; 10 | export type NetworkId = (typeof NetworkIdByName)[keyof typeof NetworkIdByName]; 11 | 12 | export function isSupportedNetworkId(id: number | string | null | undefined): id is NetworkId { 13 | if (!id) return false; 14 | return id in NetworkNameById; 15 | } 16 | -------------------------------------------------------------------------------- /v2/lib/useSynthetixContracts/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useSynthetix'; 2 | export * from './useLiquidator'; 3 | export * from './useSystemSettings'; 4 | export * from './useFeePool'; 5 | export * from './useExchangeRates'; 6 | export * from './useSynthUtil'; 7 | export * from './useProxyERC20sUSD'; 8 | export * from './useRewardEscrowV2'; 9 | export * from './useLiquidatorRewards'; 10 | export * from './useSynthetixDebtShare'; 11 | export * from './useIssuer'; 12 | export * from './common'; 13 | -------------------------------------------------------------------------------- /v2/lib/useSynthetixContracts/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useSynthetixContracts", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@ethersproject/providers": "^5.8.0", 8 | "@snx-v2/ContractContext": "workspace:*", 9 | "@snx-v2/SignerContext": "workspace:*", 10 | "@synthetixio/contracts": "workspace:*", 11 | "@synthetixio/use-global-providers": "workspace:*", 12 | "@synthetixio/v3-contracts": "^8.1.0", 13 | "@tanstack/react-query": "^4.24.6", 14 | "ethers": "^5.8.0", 15 | "react": "^18.2.0" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v2/lib/useSynthsBalances/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useSynthsBalances'; 2 | -------------------------------------------------------------------------------- /v2/lib/useSynthsBalances/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useSynthsBalances", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.12", 6 | "dependencies": { 7 | "@ethersproject/bignumber": "^5.8.0", 8 | "@ethersproject/strings": "^5.8.0", 9 | "@snx-v2/ContractContext": "workspace:*", 10 | "@snx-v2/useSynthetixContracts": "workspace:*", 11 | "@synthetixio/wei": "^2.74.4", 12 | "@tanstack/react-query": "^4.24.6", 13 | "lodash": "^4.17.21", 14 | "react": "^18.2.0" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /v2/lib/useTotalIssuedSynthsExcludeOtherCollateral/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useTotalIssuedSynthsExcludeOtherCollateral'; 2 | -------------------------------------------------------------------------------- /v2/lib/useTotalIssuedSynthsExcludeOtherCollateral/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useTotalIssuedSynthsExcludeOtherCollateral", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.11", 6 | "dependencies": { 7 | "@ethersproject/strings": "^5.8.0", 8 | "@snx-v2/useSynthetixContracts": "workspace:*", 9 | "@synthetixio/wei": "^2.74.4", 10 | "@tanstack/react-query": "^4.24.6" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/lib/useTotalStakedSNX/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useTotalStakedSNX'; 2 | -------------------------------------------------------------------------------- /v2/lib/useTotalStakedSNX/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@snx-v2/useTotalStakedSNX", 3 | "private": true, 4 | "main": "index.ts", 5 | "version": "0.0.1", 6 | "dependencies": { 7 | "@tanstack/react-query": "^4.24.6" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /v2/lib/v3Theme/index.ts: -------------------------------------------------------------------------------- 1 | export * from './v3Theme'; 2 | export * from './Fonts'; 3 | -------------------------------------------------------------------------------- /v2/lib/v3Theme/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@synthetixio/v3-theme", 3 | "main": "dist/index.js", 4 | "version": "0.0.1", 5 | "scripts": { 6 | "build:ts": "tsc", 7 | "build": "yarn build:ts" 8 | }, 9 | "dependencies": { 10 | "@chakra-ui/react": "^2.5.0", 11 | "@chakra-ui/theme-tools": "^2.0.18", 12 | "@emotion/react": "^11.10.5", 13 | "react": "^18.2.0", 14 | "typescript": "^5.7.3" 15 | }, 16 | "publishConfig": { 17 | "access": "public" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /v2/lib/v3Theme/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.base.module.json", 3 | "compilerOptions": { 4 | "outDir": "./dist", 5 | "rootDir": "./", 6 | "jsx": "react" 7 | }, 8 | "include": ["**/*.ts", "**/*.tsx"], 9 | "exclude": ["node_modules", "./dist/**/*"] 10 | } 11 | -------------------------------------------------------------------------------- /v2/ui/.gitignore: -------------------------------------------------------------------------------- 1 | # local env files 2 | .env.local 3 | .env.development.local 4 | .env.test.local 5 | .env.production.local 6 | 7 | tmp/ 8 | out/ 9 | 10 | graphql.schema.json 11 | graphql.schema.clean.json 12 | -------------------------------------------------------------------------------- /v2/ui/_redirects: -------------------------------------------------------------------------------- 1 | /* /index.html 200 -------------------------------------------------------------------------------- /v2/ui/additional.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.svg'; 2 | declare module '*.png'; 3 | declare module '*.webp'; 4 | declare module '*.gif'; 5 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/arrow-forward-blue.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/arrow-forward-pink.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/arrow-right-long.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/arrow-right.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/arrows-change.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/arrows-swap.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/back.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/caret-down.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/caret-dropdown.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/caret-left-end.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/caret-left.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/caret-right-end.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/caret-right-gold.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/caret-right-small.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/caret-right.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/caret-up.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/change-negative.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/change-positive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/check.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/chevron-collapse.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/chevron-expand.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/circle-ellipsis.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/circle-error.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/close.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/copy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/cross.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/delegate.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/deprecated-x.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/dhedge.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/elipses.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/exit.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/expand.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/info-pink.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/info.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/link-blue.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/link.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/menu-close.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/menu-hamburger-white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/menu-hamburger.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/menu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/navigation-back.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/no-notifications.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/notification-alert.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/notification.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/open-external.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/plus-thin.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/plus.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/search.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/tick.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/trash.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/wallet-yellow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/app/wallet.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/currencies/crypto/BNB.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/currencies/crypto/DHEDGE.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/currencies/crypto/EOS.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/currencies/crypto/LEND.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/currencies/crypto/LTC.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/currencies/crypto/MKR.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/currencies/crypto/XMR.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/currencies/crypto/XRP.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/currencies/fiat/JPY.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /v2/ui/assets/svg/social/twitter.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/atoken.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/wallet-icons/atoken.png -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/authereum.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/wallet-icons/authereum.png -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/browserWallet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/wallet-icons/browserWallet.png -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/dapper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/wallet-icons/dapper.png -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/fortmatic.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/hyperpay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/wallet-icons/hyperpay.png -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/metamask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/wallet-icons/metamask.png -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/mykey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/wallet-icons/mykey.png -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/opera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/wallet-icons/opera.png -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/operaTouch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/wallet-icons/operaTouch.png -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/status.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/tokenpocket.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/wallet-icons/tokenpocket.png -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/torus.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /v2/ui/assets/wallet-icons/trezor.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/assets/webp/currencies/crypto/BTC.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/assets/webp/currencies/crypto/BTC.webp -------------------------------------------------------------------------------- /v2/ui/bootstrap.tsx: -------------------------------------------------------------------------------- 1 | import { Suspense } from 'react'; 2 | import ReactDOM from 'react-dom/client'; 3 | 4 | import '@reach/dialog/styles.css'; 5 | import 'tippy.js/dist/tippy.css'; 6 | import './app.css'; 7 | 8 | import './i18n'; 9 | 10 | import App from './App'; 11 | 12 | export async function bootstrap() { 13 | const app = document.querySelector('#app'); 14 | const root = ReactDOM.createRoot(app as Element); 15 | root.render( 16 | 17 | 18 | 19 | ); 20 | } 21 | -------------------------------------------------------------------------------- /v2/ui/components/AvailableBalanceBridge/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './AvailableBalanceBridge'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/BaseModal/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './BaseModal'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/BridgeSections/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './BridgeSections'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Button/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './Button'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/ChakraProviderWithTheme.tsx: -------------------------------------------------------------------------------- 1 | import React, { FC, PropsWithChildren } from 'react'; 2 | import { stakingTheme } from '../content/theme'; 3 | import { ChakraProvider, extendTheme } from '@chakra-ui/react'; 4 | 5 | const ChakraProviderWithTheme: FC = ({ children }) => { 6 | return {children}; 7 | }; 8 | 9 | export default ChakraProviderWithTheme; 10 | -------------------------------------------------------------------------------- /v2/ui/components/ChangePercent/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './ChangePercent'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Currency/CurrencyAmount/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './CurrencyAmount'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Currency/CurrencyIcon/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './CurrencyIcon'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Currency/CurrencyName/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './CurrencyName'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Currency/CurrencyPrice/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './CurrencyPrice'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Currency/common.tsx: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components'; 2 | import media from '@snx-v1/media'; 3 | 4 | export const ContainerRow = styled.span` 5 | display: inline-grid; 6 | grid-gap: 2px; 7 | 8 | ${media.lessThan('md')` 9 | display: flex; 10 | flex-direction: row; 11 | `} 12 | `; 13 | -------------------------------------------------------------------------------- /v2/ui/components/Currency/index.ts: -------------------------------------------------------------------------------- 1 | import CurrencyIcon from './CurrencyIcon'; 2 | import CurrencyName from './CurrencyName'; 3 | import CurrencyPrice from './CurrencyPrice'; 4 | import CurrencyAmount from './CurrencyAmount'; 5 | 6 | export default { 7 | Icon: CurrencyIcon, 8 | Name: CurrencyName, 9 | Price: CurrencyPrice, 10 | Amount: CurrencyAmount, 11 | }; 12 | -------------------------------------------------------------------------------- /v2/ui/components/DateSelect/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './DateSelect'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/GasSelector/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './GasSelector'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Input/SearchInput.tsx: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components'; 2 | 3 | import Input from './Input'; 4 | 5 | export const TextInput = styled(Input).attrs({ type: 'search' })``; 6 | 7 | export default TextInput; 8 | -------------------------------------------------------------------------------- /v2/ui/components/Input/TextInput.tsx: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components'; 2 | 3 | import Input from './Input'; 4 | 5 | export const TextInput = styled(Input).attrs({ type: 'text' })``; 6 | 7 | export default TextInput; 8 | -------------------------------------------------------------------------------- /v2/ui/components/Loader/Loader.tsx: -------------------------------------------------------------------------------- 1 | import type { FC } from 'react'; 2 | import LoaderIcon from 'assets/svg/app/loader.svg'; 3 | import { AbsoluteCenteredDiv } from '@snx-v1/styles'; 4 | 5 | type LoaderProps = { 6 | inline?: boolean; 7 | }; 8 | 9 | export const Loader: FC = ({ inline }) => { 10 | const loader = ; 11 | 12 | return inline ? loader : {loader}; 13 | }; 14 | 15 | Loader.defaultProps = { 16 | inline: false, 17 | }; 18 | 19 | export default Loader; 20 | -------------------------------------------------------------------------------- /v2/ui/components/Loader/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './Loader'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Media/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | DesktopOnlyView, 3 | MobileOnlyView, 4 | MobileOrTabletView, 5 | MobileHiddenView, 6 | TabletOnlyView, 7 | DesktopOrTabletView, 8 | } from './Media'; 9 | -------------------------------------------------------------------------------- /v2/ui/components/NativeBridge/index.tsx: -------------------------------------------------------------------------------- 1 | export { default } from './NativeBridge'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/ProgressBar/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './ProgressBar'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Select/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './Select'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/StatBox/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './StatBox'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/StatsSection/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './StatsSection'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/StructuredTab/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './StructuredTab'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Tab/index.tsx: -------------------------------------------------------------------------------- 1 | export { TabList, TabButton, TabPanel, TabPanelContainer } from './Tab'; 2 | -------------------------------------------------------------------------------- /v2/ui/components/Table/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './Table'; 2 | -------------------------------------------------------------------------------- /v2/ui/constants/1inch.ts: -------------------------------------------------------------------------------- 1 | export const ethAddress = '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE'; 2 | export const quoteEndpoint = 'https://api.1inch.exchange/v2.0/quote'; 3 | export const swapEndpoint = 'https://api.1inch.exchange/v2.0/swap'; 4 | -------------------------------------------------------------------------------- /v2/ui/constants/date.ts: -------------------------------------------------------------------------------- 1 | import getISOWeeksInYear from 'date-fns/getISOWeeksInYear'; 2 | 3 | export const WEEKS_IN_YEAR = getISOWeeksInYear(new Date()); 4 | 5 | export const DURATION_SEPARATOR = ' '; 6 | -------------------------------------------------------------------------------- /v2/ui/constants/dhedge.ts: -------------------------------------------------------------------------------- 1 | import { Contract } from 'ethers'; 2 | import { abi as erc20ABI } from 'contracts/erc20'; 3 | import { abi as dHedgePoolLogicABI } from 'contracts/dHedgePoolLogic'; 4 | 5 | export const dSNXContractMainnet = new Contract( 6 | '0x5f7F94a1dd7b15594d17543BEB8B30b111DD464c', 7 | erc20ABI 8 | ); 9 | 10 | export const dSNXPoolAddressMainnet = '0x65bb99e80a863e0e27ee6d09c794ed8c0be47186'; 11 | export const dSNXPoolAddressOptimism = '0x59babc14dd73761e38e5bda171b2298dc14da92d'; 12 | export const dSNXPoolContractOptimism = new Contract(dSNXPoolAddressOptimism, dHedgePoolLogicABI); 13 | -------------------------------------------------------------------------------- /v2/ui/constants/enums.ts: -------------------------------------------------------------------------------- 1 | export enum BridgeTypeEnum { 2 | NATIVE = 'NATIVE', 3 | INSTANT = 'INSTANT', 4 | } 5 | 6 | export enum BridgeTransactionStatusEnum { 7 | PENDING = 'pending', 8 | SUCCESS = 'success', 9 | ERROR = 'error', 10 | } 11 | -------------------------------------------------------------------------------- /v2/ui/constants/network.ts: -------------------------------------------------------------------------------- 1 | import { wei } from '@synthetixio/wei'; 2 | import { BigNumber, ethers } from 'ethers'; 3 | 4 | export const GWEI_PRECISION = 9; 5 | 6 | export const TokenAllowanceLimit = wei(ethers.constants.MaxUint256); 7 | export enum Transaction { 8 | PRESUBMIT = 'PRESUBMIT', 9 | WAITING = 'WAITING', 10 | FAILED = 'FAILED', 11 | SUCCESS = 'SUCCESS', 12 | } 13 | export type GasLimitEstimate = BigNumber | null; 14 | -------------------------------------------------------------------------------- /v2/ui/constants/placeholder.ts: -------------------------------------------------------------------------------- 1 | export const NO_VALUE = '-'; 2 | export const ESTIMATE_VALUE = '≈'; 3 | -------------------------------------------------------------------------------- /v2/ui/constants/queryKeys.ts: -------------------------------------------------------------------------------- 1 | import { WeiSource } from '@synthetixio/wei'; 2 | 3 | export const QUERY_KEYS = { 4 | Swap: { 5 | quote1Inch: (walletAddress: string, networkId: number, amount: WeiSource) => [ 6 | 'quote', 7 | '1inch', 8 | walletAddress, 9 | networkId, 10 | amount, 11 | ], 12 | swap1Inch: ( 13 | walletAddress: string, 14 | networkId: number, 15 | amount: WeiSource, 16 | fromAddress: string 17 | ) => ['swap', '1inch', walletAddress, networkId, amount, fromAddress], 18 | }, 19 | }; 20 | 21 | export default QUERY_KEYS; 22 | -------------------------------------------------------------------------------- /v2/ui/constants/storage.ts: -------------------------------------------------------------------------------- 1 | export const LOCAL_STORAGE_KEYS = { 2 | SELECTED_WALLET: 'selectedWallet', 3 | THALES_STAKING_INFO_VISIBLE: 'thalesStakingInfo', 4 | KWENTA_TOKEN_LIVE: 'KWENTA_TOKEN_LIVE', 5 | WARNING_URL_BANNER_VISIBLE: 'isWarningUrlBannerVisible', 6 | RE_ELECTION_NEW_START_TIME: 'reElectionNewStartTimeVisible', 7 | LIQUIDATION_SETTING_CHANGES: 'LIQUIDATION_SETTING_CHANGES', 8 | BRIDGING_HISTORY: 'BRIDGING_HISTORY', 9 | }; 10 | -------------------------------------------------------------------------------- /v2/ui/containers/BlockExplorer/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './BlockExplorer'; 2 | -------------------------------------------------------------------------------- /v2/ui/containers/Connector/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './Connector'; 2 | -------------------------------------------------------------------------------- /v2/ui/containers/Loans/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './Loans'; 2 | -------------------------------------------------------------------------------- /v2/ui/containers/Loans/types.ts: -------------------------------------------------------------------------------- 1 | import { BigNumber } from 'ethers'; 2 | 3 | export type Loan = { 4 | account: string; 5 | amount: BigNumber; 6 | collateral: BigNumber; 7 | cratio: BigNumber; 8 | minCratio: BigNumber; 9 | currency: string; 10 | collateralAsset: string; 11 | id: BigNumber; 12 | accruedInterest: BigNumber; 13 | interestIndex: BigNumber; 14 | lastInteraction: BigNumber; 15 | }; 16 | -------------------------------------------------------------------------------- /v2/ui/containers/index.tsx: -------------------------------------------------------------------------------- 1 | import { FC, ReactNode } from 'react'; 2 | 3 | import Connector from './Connector'; 4 | import BlockExplorer from './BlockExplorer'; 5 | 6 | type WithAppContainersProps = { 7 | children: ReactNode; 8 | }; 9 | 10 | export const WithAppContainers: FC = ({ children }) => ( 11 | 12 | {children} 13 | 14 | ); 15 | 16 | export default WithAppContainers; 17 | -------------------------------------------------------------------------------- /v2/ui/content/DelegatePage.tsx: -------------------------------------------------------------------------------- 1 | import { FC } from 'react'; 2 | import Head from 'react-helmet'; 3 | import { useTranslation } from 'react-i18next'; 4 | import Main from 'sections/delegate/index'; 5 | 6 | const DelegatePage: FC = () => { 7 | const { t } = useTranslation(); 8 | return ( 9 | <> 10 | 11 | {t('delegate.page-title')} 12 | 13 |
14 | 15 | ); 16 | }; 17 | 18 | export default DelegatePage; 19 | -------------------------------------------------------------------------------- /v2/ui/content/MergeAccountsPage.tsx: -------------------------------------------------------------------------------- 1 | import { FC } from 'react'; 2 | import Head from 'react-helmet'; 3 | import { useTranslation } from 'react-i18next'; 4 | import Main from 'sections/merge-accounts'; 5 | 6 | const MergeAccountsPage: FC = () => { 7 | const { t } = useTranslation(); 8 | 9 | return ( 10 | <> 11 | 12 | {t('merge-accounts.page-title')} 13 | 14 | 15 |
16 | 17 | ); 18 | }; 19 | 20 | export default MergeAccountsPage; 21 | -------------------------------------------------------------------------------- /v2/ui/content/V2Burn.tsx: -------------------------------------------------------------------------------- 1 | import { Container, Box } from '@chakra-ui/react'; 2 | import { Burn } from '@snx-v2/Burn'; 3 | import { HomeButton } from '@snx-v2/HomeButton'; 4 | 5 | const V2Burn = () => { 6 | return ( 7 | <> 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | ); 16 | }; 17 | 18 | export default V2Burn; 19 | -------------------------------------------------------------------------------- /v2/ui/content/V2Mint.tsx: -------------------------------------------------------------------------------- 1 | import { Container, Box } from '@chakra-ui/react'; 2 | import { Mint } from '@snx-v2/Mint'; 3 | import { HomeButton } from '@snx-v2/HomeButton'; 4 | 5 | const V2Mint = () => { 6 | return ( 7 | 8 | 9 | 10 | 11 | 12 | 13 | ); 14 | }; 15 | 16 | export default V2Mint; 17 | -------------------------------------------------------------------------------- /v2/ui/content/V2SelfLiquidation.tsx: -------------------------------------------------------------------------------- 1 | import { Box, Container } from '@chakra-ui/react'; 2 | import { SelfLiquidation } from '@snx-v2/SelfLiquidation'; 3 | 4 | const V2SelfLiquidation = () => { 5 | return ( 6 | 7 | 8 | 9 | 10 | 11 | ); 12 | }; 13 | 14 | export default V2SelfLiquidation; 15 | -------------------------------------------------------------------------------- /v2/ui/contracts/ethToken.ts: -------------------------------------------------------------------------------- 1 | import { Network } from 'store/wallet'; 2 | import { ethers } from 'ethers'; 3 | import { DEFAULT_NETWORK_ID } from 'constants/defaults'; 4 | import { isSupportedNetworkId } from '../utils/network'; 5 | 6 | export const getETHToken = (network?: Network | null) => { 7 | return { 8 | symbol: 'ETH', 9 | address: ethers.constants.AddressZero, 10 | decimals: 18, 11 | logoURI: '', 12 | name: 'Ethereum', 13 | chainId: network?.id && isSupportedNetworkId(network?.id) ? network.id : DEFAULT_NETWORK_ID, 14 | tags: [], 15 | }; 16 | }; 17 | -------------------------------------------------------------------------------- /v2/ui/contracts/wBTCToken.js: -------------------------------------------------------------------------------- 1 | export default { 2 | address: '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599', 3 | abi: [ 4 | { 5 | constant: true, 6 | inputs: [{ internalType: 'address', name: 'account', type: 'address' }], 7 | name: 'balanceOf', 8 | outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }], 9 | payable: false, 10 | stateMutability: 'view', 11 | type: 'function', 12 | }, 13 | ], 14 | }; 15 | -------------------------------------------------------------------------------- /v2/ui/contracts/wETHToken.js: -------------------------------------------------------------------------------- 1 | export default { 2 | address: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', 3 | abi: [ 4 | { 5 | constant: true, 6 | inputs: [{ internalType: 'address', name: 'account', type: 'address' }], 7 | name: 'balanceOf', 8 | outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }], 9 | payable: false, 10 | stateMutability: 'view', 11 | type: 'function', 12 | }, 13 | ], 14 | }; 15 | -------------------------------------------------------------------------------- /v2/ui/hooks/isMounted.ts: -------------------------------------------------------------------------------- 1 | import { useEffect, useRef } from 'react'; 2 | 3 | export default function useIsMounted(): boolean { 4 | const mountedRef = useRef(false); 5 | 6 | useEffect(() => { 7 | mountedRef.current = true; 8 | 9 | return () => { 10 | mountedRef.current = false; 11 | }; 12 | }, []); 13 | 14 | return mountedRef.current; 15 | } 16 | -------------------------------------------------------------------------------- /v2/ui/hooks/useMediaQuery.ts: -------------------------------------------------------------------------------- 1 | import { useMediaQuery as baseUseMediaQuery } from 'react-responsive'; 2 | import { breakpoints, Breakpoint } from '@snx-v1/media'; 3 | 4 | const useMediaQuery = (screen: Breakpoint) => { 5 | const query = `(max-width: ${breakpoints[screen]}px)`; 6 | return baseUseMediaQuery({ query }); 7 | }; 8 | 9 | export default useMediaQuery; 10 | -------------------------------------------------------------------------------- /v2/ui/i18n.ts: -------------------------------------------------------------------------------- 1 | import i18n from 'i18next'; 2 | import { initReactI18next } from 'react-i18next'; 3 | 4 | import enTranslation from './translations/en.json'; 5 | 6 | i18n.use(initReactI18next).init({ 7 | resources: { 8 | en: { translation: enTranslation }, 9 | }, 10 | fallbackLng: 'en', 11 | lng: 'en', 12 | }); 13 | 14 | export default i18n; 15 | -------------------------------------------------------------------------------- /v2/ui/index.ts: -------------------------------------------------------------------------------- 1 | import { safeImport } from '@synthetixio/safe-import/safeImport'; 2 | 3 | async function bootstrap() { 4 | const { bootstrap } = await safeImport(() => import(/* webpackChunkName: "app" */ './bootstrap')); 5 | bootstrap(); 6 | } 7 | 8 | bootstrap(); 9 | 10 | if (module.hot) { 11 | module.hot.accept(); 12 | module.hot.dispose(() => { 13 | // do nothing 14 | }); 15 | } 16 | -------------------------------------------------------------------------------- /v2/ui/jest.config.js: -------------------------------------------------------------------------------- 1 | require.resolve('babel-jest'); 2 | require.resolve('jest-environment-jsdom'); 3 | 4 | module.exports = { 5 | roots: ['/../../v2', '/../../v1'], 6 | modulePaths: [''], 7 | globalSetup: './tests/global.js', 8 | setupFilesAfterEnv: ['/tests/setup.js'], 9 | testEnvironment: 'jest-environment-jsdom', 10 | testMatch: ['/../../v{1,2}/**/*.test.{js,jsx,ts,tsx}'], 11 | collectCoverageFrom: [ 12 | '/../../v{1,2}/**/*.{js,jsx,ts,tsx}', 13 | '!/*.{js,jsx,ts,tsx}', 14 | '!/../../v{1,2}/**/*.d.{ts,tsx}', 15 | ], 16 | }; 17 | -------------------------------------------------------------------------------- /v2/ui/orphans.ts: -------------------------------------------------------------------------------- 1 | // Temporary include orphan component here until incorporated into the app 2 | import '@snx-v2/EthGasPriceEstimator'; 3 | import '@snx-v2/SelfLiquidation'; 4 | -------------------------------------------------------------------------------- /v2/ui/public/_redirects: -------------------------------------------------------------------------------- 1 | /* /index.html 200 -------------------------------------------------------------------------------- /v2/ui/public/fonts/GT-America-Condensed-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/fonts/GT-America-Condensed-Bold.woff2 -------------------------------------------------------------------------------- /v2/ui/public/fonts/GT-America-Condensed-Medium.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/fonts/GT-America-Condensed-Medium.woff2 -------------------------------------------------------------------------------- /v2/ui/public/fonts/GT-America-Extended-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/fonts/GT-America-Extended-Bold.woff2 -------------------------------------------------------------------------------- /v2/ui/public/fonts/GT-America-Mono-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/fonts/GT-America-Mono-Bold.woff2 -------------------------------------------------------------------------------- /v2/ui/public/fonts/Inter-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/fonts/Inter-Bold.woff2 -------------------------------------------------------------------------------- /v2/ui/public/fonts/Inter-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/fonts/Inter-Regular.woff2 -------------------------------------------------------------------------------- /v2/ui/public/fonts/Inter-SemiBold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/fonts/Inter-SemiBold.woff2 -------------------------------------------------------------------------------- /v2/ui/public/images/browserWallet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/images/browserWallet.png -------------------------------------------------------------------------------- /v2/ui/public/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/images/favicon.ico -------------------------------------------------------------------------------- /v2/ui/public/images/icon-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/images/icon-192x192.png -------------------------------------------------------------------------------- /v2/ui/public/images/icon-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/images/icon-256x256.png -------------------------------------------------------------------------------- /v2/ui/public/images/icon-384x384.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/images/icon-384x384.png -------------------------------------------------------------------------------- /v2/ui/public/images/icon-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/images/icon-512x512.png -------------------------------------------------------------------------------- /v2/ui/public/images/icon-swap.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /v2/ui/public/images/staking-facebook.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/images/staking-facebook.jpg -------------------------------------------------------------------------------- /v2/ui/public/images/staking-twitter.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/images/staking-twitter.jpg -------------------------------------------------------------------------------- /v2/ui/public/metatag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Synthetixio/js-monorepo/d4752cb4d290eb7285f1f4f8254fb0db61dd1c52/v2/ui/public/metatag.png -------------------------------------------------------------------------------- /v2/ui/scripts/noop.js: -------------------------------------------------------------------------------- 1 | (function (exports) { 2 | exports.noop = function () {}; 3 | })(typeof module === 'object' && typeof module.exports === 'object' ? module.exports : window); 4 | -------------------------------------------------------------------------------- /v2/ui/sections/escrow/components/RewardEscrowSchedule/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './RewardEscrowSchedule'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/escrow/components/StakingRewardsTab/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './StakingRewardsTab'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/escrow/components/TokenSaleEscrowSchedule/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './TokenSaleEscrowSchedule'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/escrow/components/TokenSaleTab/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './TokenSaleTab'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/escrow/components/TxSent/index.ts: -------------------------------------------------------------------------------- 1 | import ActionInProgress from './ActionInProgress'; 2 | import ActionCompleted from './ActionCompleted'; 3 | 4 | export { ActionCompleted, ActionInProgress }; 5 | -------------------------------------------------------------------------------- /v2/ui/sections/history/CustomTypeOption/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './CustomTypeOption'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/history/Transactions/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './Transactions'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/history/TypeIcon/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './TypeIcon'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/loans/components/ActionBox/ActiveBorrowsTab/ActiveBorrowsTab.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import Action, { ACTION_NAMES } from './ModifyLoanActions'; 4 | import LoanList from './LoanList'; 5 | 6 | type ActiveBorrowsTabProps = { 7 | loanId: string; 8 | loanAction: string; 9 | }; 10 | 11 | const ActiveBorrowsTab: React.FC = ({ loanId, loanAction }) => { 12 | return loanId ? : ; 13 | }; 14 | 15 | export default ActiveBorrowsTab; 16 | -------------------------------------------------------------------------------- /v2/ui/sections/loans/constants.ts: -------------------------------------------------------------------------------- 1 | export const DEBT_ASSETS = ['sUSD', 'sETH']; 2 | export const DEBT_ASSETS_L2 = ['sUSD', 'sETH']; 3 | 4 | export const getSafeMinCRatioBuffer = (debtAsset: string, collateralAsset: string) => { 5 | if (collateralAsset.includes('ETH') && debtAsset.includes('sETH')) return 0.02; 6 | return 0.1; 7 | }; 8 | -------------------------------------------------------------------------------- /v2/ui/sections/merge-accounts/burn/index.tsx: -------------------------------------------------------------------------------- 1 | import { FC } from 'react'; 2 | import Connector from 'containers/Connector'; 3 | 4 | import { Cols, Col } from 'sections/merge-accounts/common'; 5 | import ActionBox from './BurnActionBox'; 6 | import InfoBox from './BurnInfoBox'; 7 | 8 | const Burn: FC = () => { 9 | const { isAppReady } = Connector.useContainer(); 10 | 11 | return !isAppReady ? null : ( 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | ); 21 | }; 22 | 23 | export default Burn; 24 | -------------------------------------------------------------------------------- /v2/ui/sections/merge-accounts/merge/index.tsx: -------------------------------------------------------------------------------- 1 | import { FC } from 'react'; 2 | 3 | import Connector from 'containers/Connector'; 4 | import { Cols, Col } from 'sections/merge-accounts/common'; 5 | import ActionBox from './MergeActionBox'; 6 | import InfoBox from './MergeInfoBox'; 7 | 8 | const Merge: FC = () => { 9 | const { isAppReady } = Connector.useContainer(); 10 | 11 | return !isAppReady ? null : ( 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | ); 21 | }; 22 | 23 | export default Merge; 24 | -------------------------------------------------------------------------------- /v2/ui/sections/merge-accounts/nominate/index.tsx: -------------------------------------------------------------------------------- 1 | import Connector from 'containers/Connector'; 2 | import { FC } from 'react'; 3 | 4 | import { Cols, Col } from 'sections/merge-accounts/common'; 5 | import ActionBox from './NominateActionBox'; 6 | import InfoBox from './NominateInfoBox'; 7 | 8 | const Nominate: FC = () => { 9 | const { isAppReady } = Connector.useContainer(); 10 | 11 | return !isAppReady ? null : ( 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | ); 21 | }; 22 | 23 | export default Nominate; 24 | -------------------------------------------------------------------------------- /v2/ui/sections/migrate-debt/components/ExternalLink/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './ExternalLink'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/migrate-debt/components/TxSent/index.ts: -------------------------------------------------------------------------------- 1 | import ActionInProgress from './ActionInProgress'; 2 | import ActionCompleted from './ActionCompleted'; 3 | 4 | export { ActionCompleted, ActionInProgress }; 5 | -------------------------------------------------------------------------------- /v2/ui/sections/migrate-debt/migrate/ActionBox/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './ActionBox'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/migrate-debt/migrate/MigrateTab/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './MigrateTab'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/migrate-debt/migrate/index.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import styled from 'styled-components'; 3 | 4 | import ActionBox from './ActionBox'; 5 | 6 | const Index: React.FC = () => { 7 | return ( 8 | 9 | 10 | 11 | ); 12 | }; 13 | 14 | const Container = styled.div` 15 | margin: 0 auto; 16 | max-width: 650px; 17 | `; 18 | 19 | export default Index; 20 | -------------------------------------------------------------------------------- /v2/ui/sections/migrate-escrow/components/ExternalLink/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './ExternalLink'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/migrate-escrow/components/TxSent/index.ts: -------------------------------------------------------------------------------- 1 | import ActionInProgress from './ActionInProgress'; 2 | import ActionCompleted from './ActionCompleted'; 3 | 4 | export { ActionCompleted, ActionInProgress }; 5 | -------------------------------------------------------------------------------- /v2/ui/sections/migrate-escrow/migrate/ActionBox/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './ActionBox'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/migrate-escrow/migrate/MigrateTab/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './MigrateTab'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/migrate-escrow/migrate/index.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import styled from 'styled-components'; 3 | 4 | import ActionBox from './ActionBox'; 5 | 6 | const Index: React.FC = () => { 7 | return ( 8 | 9 | 10 | 11 | ); 12 | }; 13 | 14 | const Container = styled.div` 15 | margin: 0 auto; 16 | max-width: 650px; 17 | `; 18 | 19 | export default Index; 20 | -------------------------------------------------------------------------------- /v2/ui/sections/shared/Layout/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './Layout'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/shared/SystemStatus/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './SystemStatus'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/shared/components/SocialLinks/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './SocialLinks'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/shared/modals/DelegateModal/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './DelegateModal'; 2 | -------------------------------------------------------------------------------- /v2/ui/sections/shared/modals/TxConfirmationModal/index.ts: -------------------------------------------------------------------------------- 1 | export { default } from './TxConfirmationModal'; 2 | -------------------------------------------------------------------------------- /v2/ui/store/app/constants.ts: -------------------------------------------------------------------------------- 1 | import { getAppKey } from '../utils'; 2 | 3 | export const priceCurrencyStateKey = getAppKey('priceCurrency'); 4 | export const languageStateKey = getAppKey('language'); 5 | -------------------------------------------------------------------------------- /v2/ui/store/escrow/index.ts: -------------------------------------------------------------------------------- 1 | import { atom } from 'recoil'; 2 | 3 | import { getEscrowKey } from '../utils'; 4 | 5 | export enum EscrowPanelType { 6 | REWARDS = 'rewards', 7 | ICO = 'ico', 8 | } 9 | 10 | export const panelTypeState = atom({ 11 | key: getEscrowKey('panelType'), 12 | default: EscrowPanelType.REWARDS, 13 | }); 14 | -------------------------------------------------------------------------------- /v2/ui/store/gov/index.ts: -------------------------------------------------------------------------------- 1 | export enum ProposalInfoType { 2 | RESULTS = 'results', 3 | HISTORY = 'history', 4 | } 5 | 6 | export enum PanelType { 7 | LIST = 'list', 8 | PROPOSAL = 'proposal', 9 | CREATE = 'create', 10 | } 11 | -------------------------------------------------------------------------------- /v2/ui/store/utils.ts: -------------------------------------------------------------------------------- 1 | export const getAppKey = (subKey: string) => `app/${subKey}`; 2 | export const getUIKey = (subKey: string) => `ui/${subKey}`; 3 | export const getWalletKey = (subKey: string) => `wallet/${subKey}`; 4 | export const getStakingKey = (subKey: string) => `staking/${subKey}`; 5 | export const getEscrowKey = (subKey: string) => `escrow/${subKey}`; 6 | export const getGovKey = (subKey: string) => `gov/${subKey};`; 7 | export const getDebtKey = (subKey: string) => `debt/${subKey}`; 8 | -------------------------------------------------------------------------------- /v2/ui/styles/theme/fonts.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | regular: 'Inter', 3 | interBold: 'Inter Bold', 4 | interSemiBold: 'Inter Semi Bold', 5 | mono: 'GT America Mono', 6 | condensedBold: 'GT America Condensed-Bold', 7 | condensedMedium: 'GT America Condensed-Medium', 8 | extended: 'GT America Extended Bold', 9 | }; 10 | -------------------------------------------------------------------------------- /v2/ui/styles/theme/index.ts: -------------------------------------------------------------------------------- 1 | import colors from './colors'; 2 | import fonts from './fonts'; 3 | 4 | export const theme = { 5 | colors, 6 | fonts, 7 | }; 8 | 9 | export type ThemeInterface = typeof theme; 10 | 11 | export default theme; 12 | -------------------------------------------------------------------------------- /v2/ui/tests/e2e/needs-fix/pages/loans-page.js: -------------------------------------------------------------------------------- 1 | import Page from './page'; 2 | 3 | export default class LoansPage extends Page { 4 | getForm() { 5 | return cy.findByTestId('loans-form'); 6 | } 7 | 8 | getFormButton() { 9 | return cy.findByTestId('loans-form-button'); 10 | } 11 | 12 | getLeftInput() { 13 | return cy.findByTestId('loans-form-left-input'); 14 | } 15 | 16 | getRightInput() { 17 | return cy.findByTestId('loans-form-right-input'); 18 | } 19 | 20 | getTable() { 21 | return cy.findByTestId('loans-table'); 22 | } 23 | 24 | visit() { 25 | cy.visit('/loans'); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /v2/ui/tests/e2e/pages/home/header.js: -------------------------------------------------------------------------------- 1 | import Page from '../page'; 2 | export default class Header extends Page { 3 | getUserMenu() { 4 | return cy.findByTestId('user-menu'); 5 | } 6 | getConnectWalletBtn() { 7 | return cy.findByTestId('connect-wallet'); 8 | } 9 | getWalletAddress() { 10 | return cy.findByTestId('wallet-address'); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /v2/ui/tests/e2e/pages/home/onboard.js: -------------------------------------------------------------------------------- 1 | import Page from '../page'; 2 | export default class Onboard extends Page { 3 | getBrowserWalletBtn() { 4 | return cy.findByAltText('Browser Wallet'); 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /v2/ui/tests/e2e/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "allowJs": true, 4 | "baseUrl": "../../node_modules", 5 | "types": [ 6 | "cypress", 7 | "@types/puppeteer-core", 8 | "@synthetixio/synpress/support", 9 | "cypress-wait-until", 10 | "@testing-library/cypress" 11 | ], 12 | "outDir": "./output" 13 | }, 14 | "include": ["**/*.*"] 15 | } 16 | -------------------------------------------------------------------------------- /v2/ui/tests/global.js: -------------------------------------------------------------------------------- 1 | module.exports = async () => { 2 | process.env.TZ = 'UTC'; 3 | }; 4 | -------------------------------------------------------------------------------- /v2/ui/translations/constants.ts: -------------------------------------------------------------------------------- 1 | export enum Language { 2 | EN = 'en', 3 | } 4 | -------------------------------------------------------------------------------- /v2/ui/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json" 3 | } 4 | -------------------------------------------------------------------------------- /v2/ui/typings/missing-types.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'synthetix-data'; 2 | declare module '@snapshot-labs/snapshot.js'; 3 | declare module '@ensdomains/ensjs'; 4 | declare module 'remarkable/linkify'; 5 | declare module 'remarkable-external-link'; 6 | declare module '@synthetixio/safe-import'; 7 | declare module '@synthetixio/safe-import/safeImport'; 8 | -------------------------------------------------------------------------------- /v2/ui/typings/react-i18next.d.ts: -------------------------------------------------------------------------------- 1 | import 'react-i18next'; 2 | import ns1 from '../translations/en.json'; 3 | 4 | declare module 'react-i18next' { 5 | // and extend them! 6 | interface CustomTypeOptions { 7 | // custom namespace type if you changed it 8 | defaultNS: 'ns1'; 9 | // custom resources type 10 | resources: { 11 | ns1: typeof ns1; 12 | }; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /v2/ui/typings/styled-components.d.ts: -------------------------------------------------------------------------------- 1 | import { ThemeInterface } from 'styles/theme'; 2 | 3 | declare module 'styled-components' { 4 | interface DefaultTheme extends ThemeInterface {} 5 | } 6 | -------------------------------------------------------------------------------- /v2/ui/typings/window.d.ts: -------------------------------------------------------------------------------- 1 | import { NetworkId } from '@synthetixio/contracts-interface'; 2 | import { providers } from 'ethers'; 3 | 4 | declare global { 5 | interface Window { 6 | web3?: { 7 | eth?: { 8 | net: { 9 | getId: () => NetworkId; 10 | }; 11 | }; 12 | version: { 13 | getNetwork(cb: (err: Error | undefined, networkId: NetworkId) => void): void; 14 | network: NetworkId; 15 | }; 16 | }; 17 | ethereum?: providers; 18 | trustwallet?: providers; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /v2/ui/utils/governance.ts: -------------------------------------------------------------------------------- 1 | import { VOTE_CODE, NOMINATION_CODE } from '@synthetixio/queries'; 2 | 3 | export const isAnyElectionInNomination = ( 4 | periodStatuses?: { currentPeriodLabel: string; code: number }[] 5 | ) => periodStatuses?.some(({ code }) => code === NOMINATION_CODE) ?? false; 6 | export const isAnyElectionInVoting = ( 7 | periodStatuses?: { currentPeriodLabel: string; code: number }[] 8 | ) => periodStatuses?.some(({ code }) => code === VOTE_CODE) ?? false; 9 | -------------------------------------------------------------------------------- /v2/ui/utils/localStore.ts: -------------------------------------------------------------------------------- 1 | export const set = (key: string, value: any) => { 2 | if (typeof window !== 'undefined') { 3 | window.localStorage.setItem(key, JSON.stringify(value)); 4 | } 5 | }; 6 | 7 | export function get(key: string): T | null { 8 | if (typeof window !== 'undefined') { 9 | const item = window.localStorage.getItem(key); 10 | try { 11 | if (item != null) { 12 | return JSON.parse(item); 13 | } 14 | } catch (e) { 15 | console.error(e); 16 | } 17 | } 18 | return null; 19 | } 20 | 21 | export default { 22 | set, 23 | get, 24 | }; 25 | -------------------------------------------------------------------------------- /v2/ui/utils/parse.ts: -------------------------------------------------------------------------------- 1 | import { wei, WeiSource } from '@synthetixio/wei'; 2 | 3 | export function parseSafeWei(v: WeiSource, def: WeiSource) { 4 | let p = wei(def); 5 | try { 6 | p = wei(v); 7 | } catch (_) {} 8 | 9 | return p; 10 | } 11 | -------------------------------------------------------------------------------- /v2/ui/utils/promise.ts: -------------------------------------------------------------------------------- 1 | export function sleep(ms: number): Promise { 2 | return new Promise((r) => setTimeout(r, ms)); 3 | } 4 | -------------------------------------------------------------------------------- /v2/ui/utils/ts-helpers.ts: -------------------------------------------------------------------------------- 1 | export function isObjectOrErrorWithMessage(x: unknown): x is { message: string } { 2 | if (typeof x !== 'object') return false; 3 | if (x === null) return false; 4 | return 'message' in x; 5 | } 6 | export function notNill(value: Value | null | undefined): value is Value { 7 | return value !== null && value !== undefined; 8 | } 9 | 10 | export type Omit = Pick>; 11 | export type PartialBy = Omit & Partial>; 12 | -------------------------------------------------------------------------------- /v2/ui/v2-components/Header/index.tsx: -------------------------------------------------------------------------------- 1 | export { Header } from './Header'; 2 | --------------------------------------------------------------------------------