From 49a2d4ed09e75fd31f1e5439c6744ce8d7d95b34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Est=C3=A1cio=20=7C=20stacio=2Eeth?= Date: Tue, 21 Jun 2022 15:36:29 -0300 Subject: [PATCH 01/21] feat: add twitter dialog after swap (#299) * feat: add twitter popup to ask to share * chore: update text * chore: remove underline * Update packages/app/src/systems/Tweet/components/TwitterDialog.tsx Co-authored-by: John Adler * Update packages/app/src/systems/Tweet/components/TwitterDialog.tsx Co-authored-by: John Adler * test: add dismiss share * Update packages/app/src/systems/Tweet/components/TwitterDialog.tsx Co-authored-by: John Adler * chore: update text * chore: update local storage key Co-authored-by: John Adler --- packages/app/cypress/e2e/App.cy.ts | 3 + .../app/src/systems/Swap/pages/SwapPage.tsx | 4 ++ .../Tweet/components/TwitterDialog.tsx | 64 +++++++++++++++++++ .../systems/Tweet/hooks/useTwitterDialog.ts | 23 +++++++ packages/app/src/systems/Tweet/index.ts | 2 + .../app/src/systems/UI/components/Link.tsx | 2 +- 6 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 packages/app/src/systems/Tweet/components/TwitterDialog.tsx create mode 100644 packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts create mode 100644 packages/app/src/systems/Tweet/index.ts diff --git a/packages/app/cypress/e2e/App.cy.ts b/packages/app/cypress/e2e/App.cy.ts index aa22347d..dcb71a28 100644 --- a/packages/app/cypress/e2e/App.cy.ts +++ b/packages/app/cypress/e2e/App.cy.ts @@ -80,6 +80,9 @@ describe('End-to-end Test: 😁 Happy Path', () => { cy.getByAriaLabel('Swap button').click(); cy.contains('Swap made successfully!'); + // Dismiss twitter popup + cy.contains('button', 'No thanks').click(); + // validate remove liquidity cy.contains('button', 'Pool').click(); cy.contains('button', 'Remove liquidity').click(); diff --git a/packages/app/src/systems/Swap/pages/SwapPage.tsx b/packages/app/src/systems/Swap/pages/SwapPage.tsx index d14cac14..01063f89 100644 --- a/packages/app/src/systems/Swap/pages/SwapPage.tsx +++ b/packages/app/src/systems/Swap/pages/SwapPage.tsx @@ -29,6 +29,7 @@ import { } from "~/systems/Core"; import { useTransactionCost } from "~/systems/Core/hooks/useTransactionCost"; import { usePoolInfo, useUserPositions } from "~/systems/Pool"; +import { TwitterDialog, useTwitterDialog } from "~/systems/Tweet"; import { Button, Card } from "~/systems/UI"; import type { PreviewInfo } from "~/types/contracts/ExchangeContractAbi"; @@ -55,6 +56,7 @@ export function SwapPage() { const balances = useBalances(); const setHasSwapped = useSetAtom(swapHasSwappedAtom); const { poolRatio } = useUserPositions(); + const { open: openTwitterDialog } = useTwitterDialog(); const { isLoading } = useQuery( [ @@ -104,6 +106,7 @@ export function SwapPage() { { onSuccess: async () => { setHasSwapped(true); + openTwitterDialog(); toast.success("Swap made successfully!"); await balances.refetch(); }, @@ -130,6 +133,7 @@ export function SwapPage() { return ( + diff --git a/packages/app/src/systems/Tweet/components/TwitterDialog.tsx b/packages/app/src/systems/Tweet/components/TwitterDialog.tsx new file mode 100644 index 00000000..dad1a4e8 --- /dev/null +++ b/packages/app/src/systems/Tweet/components/TwitterDialog.tsx @@ -0,0 +1,64 @@ +import { useEffect } from "react"; + +import { useTwitterDialog } from "../hooks/useTwitterDialog"; + +import { Button, Dialog, Link, useDialog } from "~/systems/UI"; + +const tweetText = `I'm using #SwaySwap, a blazingly fast DEX built on Fuel @fuellabs_\nhttps://fuellabs.github.io/swayswap`; +const tweetLink = `https://twitter.com/intent/tweet?text=${encodeURIComponent( + tweetText +)}`; + +export function TwitterDialog() { + const dialog = useDialog(); + const { isOpen, close } = useTwitterDialog(); + + useEffect(() => { + dialog.setOpen(isOpen); + }, [isOpen]); + + function shareTweet() { + setTimeout(() => { + close(); + }, 500); + } + + function handleSkip() { + close(); + } + + return ( + + +

+ 💚 Share that you're using SwaySwap on Twitter. +

+ + + + +
+
+ ); +} diff --git a/packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts b/packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts new file mode 100644 index 00000000..a2f1a8b1 --- /dev/null +++ b/packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts @@ -0,0 +1,23 @@ +import { atom, useAtom } from 'jotai'; + +const TWITTER_DIALOG_KEY = 'swayswap-share-twitter-dialog'; +const openTwitterAtom = atom(localStorage.getItem(TWITTER_DIALOG_KEY) === 'true'); + +export function useTwitterDialog() { + const [open, setOpen] = useAtom(openTwitterAtom); + + return { + open: () => { + const currentState = localStorage.getItem(TWITTER_DIALOG_KEY); + if (currentState !== 'false') { + setOpen(true); + localStorage.setItem(TWITTER_DIALOG_KEY, String(true)); + } + }, + close: () => { + setOpen(false); + localStorage.setItem(TWITTER_DIALOG_KEY, String(false)); + }, + isOpen: open, + }; +} diff --git a/packages/app/src/systems/Tweet/index.ts b/packages/app/src/systems/Tweet/index.ts new file mode 100644 index 00000000..ee580440 --- /dev/null +++ b/packages/app/src/systems/Tweet/index.ts @@ -0,0 +1,2 @@ +export * from './components/TwitterDialog'; +export * from './hooks/useTwitterDialog'; diff --git a/packages/app/src/systems/UI/components/Link.tsx b/packages/app/src/systems/UI/components/Link.tsx index c39159e0..c444073c 100644 --- a/packages/app/src/systems/UI/components/Link.tsx +++ b/packages/app/src/systems/UI/components/Link.tsx @@ -29,7 +29,7 @@ export function Link({ {...buttonProps} {...(href && { href })} ref={ref} - className={cx(className, "link")} + className={cx("link", className)} data-pressed={isPressed} {...(isExternal && { target: "_blank", rel: "noopener noreferrer" })} > From fb83b23047d0eb95244470bb99e52b144f066a6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Est=C3=A1cio=20=7C=20stacio=2Eeth?= Date: Tue, 21 Jun 2022 18:43:00 -0300 Subject: [PATCH 02/21] feat: improve checkbox ui for legal disclaimer (#310) --- .../src/styles/components/welcome-page.css | 4 +++ .../Welcome/components/WelcomeDone.tsx | 27 +++++++++---------- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/packages/app/src/styles/components/welcome-page.css b/packages/app/src/styles/components/welcome-page.css index 3dcf1b12..c1142ee6 100644 --- a/packages/app/src/styles/components/welcome-page.css +++ b/packages/app/src/styles/components/welcome-page.css @@ -119,4 +119,8 @@ @apply hidden; } } + + #accept-agreement { + transform: translateY(5px); + } } diff --git a/packages/app/src/systems/Welcome/components/WelcomeDone.tsx b/packages/app/src/systems/Welcome/components/WelcomeDone.tsx index 31a7eab8..527c5430 100644 --- a/packages/app/src/systems/Welcome/components/WelcomeDone.tsx +++ b/packages/app/src/systems/Welcome/components/WelcomeDone.tsx @@ -23,21 +23,20 @@ export function WelcomeDone() { Now you're ready to swap and pool test assets using Fuel: the fastest modular execution layer.

-
- { - send("ACCEPT_AGREEMENT", { - value: e.target.checked, - }); - }} - className="h-5 w-5 mr-3 cursor-pointer" - type="checkbox" - /> +
))} +
+ + View on Fuel Explorer + +
); } diff --git a/packages/app/src/systems/Core/hooks/useTokensMethods.ts b/packages/app/src/systems/Core/hooks/useTokensMethods.ts index bc1b9c5a..c23f857e 100644 --- a/packages/app/src/systems/Core/hooks/useTokensMethods.ts +++ b/packages/app/src/systems/Core/hooks/useTokensMethods.ts @@ -18,7 +18,7 @@ export function useTokenMethods(tokenId: string) { getBalance() { return wallet?.getBalance(tokenId); }, - async queryNetworkFee() { + queryNetworkFee() { return contract.prepareCall.mint({ variableOutputs: 1, }); @@ -26,8 +26,8 @@ export function useTokenMethods(tokenId: string) { async getMintAmount() { return contract.dryRun.get_mint_amount(); }, - mint(gasLimit: bigint) { - return contract.submit.mint( + async mint(gasLimit: bigint) { + return contract.submitResult.mint( getOverrides({ variableOutputs: 1, gasLimit, diff --git a/packages/app/src/systems/Core/hooks/useTransactionCost.ts b/packages/app/src/systems/Core/hooks/useTransactionCost.ts index 95fe6b04..dc17d182 100644 --- a/packages/app/src/systems/Core/hooks/useTransactionCost.ts +++ b/packages/app/src/systems/Core/hooks/useTransactionCost.ts @@ -1,4 +1,4 @@ -import type { ScriptTransactionRequest } from 'fuels'; +import type { ContractCall } from 'fuels'; import type { UseQueryOptions } from 'react-query'; import { useQuery } from 'react-query'; @@ -9,7 +9,7 @@ import { useEthBalance } from './useEthBalance'; export function useTransactionCost( queryKey: unknown[], - request: () => Promise, + request: () => ContractCall, options?: Omit, 'queryKey' | 'queryFn'> ) { const ethBalance = useEthBalance(); diff --git a/packages/app/src/systems/Core/utils/feedback.tsx b/packages/app/src/systems/Core/utils/feedback.tsx new file mode 100644 index 00000000..87a759cd --- /dev/null +++ b/packages/app/src/systems/Core/utils/feedback.tsx @@ -0,0 +1,49 @@ +import type { TransactionResult } from "fuels"; +import toast from "react-hot-toast"; + +import { BLOCK_EXPLORER_URL } from "~/config"; +import { Link } from "~/systems/UI"; + +export function getBlockExplorerLink(path: string) { + return `${BLOCK_EXPLORER_URL}${path}?providerUrl=${encodeURIComponent( + process.env.VITE_FUEL_PROVIDER_URL as string + )}`; +} + +export function txFeedback( + txMsg: string, + onSuccess: () => void | Promise +) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + return async (data: TransactionResult | undefined) => { + const txLink = ( +

+ + View it on Fuel Explorer + +

+ ); + + /** + * Show a toast success message if status.type === 'success' + */ + if (data?.status.type === "success") { + toast.success( + <> + {txMsg} {txLink} + , + { duration: 5000 } + ); + await onSuccess(); + return; + } + + /** + * Show a toast error if status.type !== 'success'' + */ + toast.error(<>Transaction reverted! {txLink}); + }; +} diff --git a/packages/app/src/systems/Core/utils/gas.ts b/packages/app/src/systems/Core/utils/gas.ts index 3af3ac14..f486e0af 100644 --- a/packages/app/src/systems/Core/utils/gas.ts +++ b/packages/app/src/systems/Core/utils/gas.ts @@ -1,5 +1,5 @@ -import type { CallResult, Overrides, ScriptTransactionRequest } from 'fuels'; -import { arrayify, Provider, ReceiptType } from 'fuels'; +import type { CallResult, ContractCall, Overrides, ScriptTransactionRequest } from 'fuels'; +import { buildTransaction, arrayify, Provider, ReceiptType } from 'fuels'; import { divideFnValidOnly, toBigInt, toNumber, ZERO } from './math'; @@ -23,6 +23,7 @@ export type ChainConfig = { chain: { consensusParameters: { gasPriceFactor: string; + maxGasPerTx: string; }; latestBlock: { height: string; @@ -40,6 +41,7 @@ export async function getChainConfig(): Promise { chain { consensusParameters { gasPriceFactor + maxGasPerTx } latestBlock { height @@ -101,16 +103,15 @@ export function getTotalFee(gasUsed: bigint, byteSize: bigint, chainConfig?: Cha return getPriceByFactor(gasFee, chainConfig) + getPriceByFactor(byteFee, chainConfig); } -export async function getTransactionCost( - requestPromise: Promise -): Promise { +export async function getTransactionCost(contractCall: ContractCall): Promise { try { - const request = await requestPromise; + const request = await buildTransaction(contractCall, { fundTransaction: true }); // Set gasPrice and bytePrice to ZERO to // measure gasUsed without needing to have balance request.gasPrice = ZERO; request.bytePrice = ZERO; const chainConfig = await getChainConfig(); + request.gasLimit = toBigInt(chainConfig.chain.consensusParameters.maxGasPerTx); const provider = new Provider(FUEL_PROVIDER_URL); const dryRunResult = await provider.call(request); const gasUsed = getGasUsed(dryRunResult); diff --git a/packages/app/src/systems/Core/utils/queryClient.tsx b/packages/app/src/systems/Core/utils/queryClient.tsx index bddcffc9..eaf7d984 100644 --- a/packages/app/src/systems/Core/utils/queryClient.tsx +++ b/packages/app/src/systems/Core/utils/queryClient.tsx @@ -10,7 +10,7 @@ const panicError = (msg: string) => ( copy(msg)}> Click here {" "} - to view block response + to copy block response
); diff --git a/packages/app/src/systems/Mint/hooks/useMint.ts b/packages/app/src/systems/Mint/hooks/useMint.ts index b8977b9e..71da3403 100644 --- a/packages/app/src/systems/Mint/hooks/useMint.ts +++ b/packages/app/src/systems/Mint/hooks/useMint.ts @@ -1,10 +1,10 @@ -import toast from 'react-hot-toast'; import { useMutation, useQuery } from 'react-query'; import { useNavigate } from 'react-router-dom'; import { TOKEN_ID } from '~/config'; import { useTokenMethods, useBalances, ZERO } from '~/systems/Core'; import { useTransactionCost } from '~/systems/Core/hooks/useTransactionCost'; +import { txFeedback } from '~/systems/Core/utils/feedback'; import { Pages } from '~/types'; type UseMintOpts = { @@ -21,18 +21,17 @@ export function useMint(opts: UseMintOpts = {}) { const mutation = useMutation( async () => { if (!txCost.total) return; - await methods.mint(txCost.total); + return methods.mint(txCost.total); }, - { - onSuccess: async () => { - opts.onSuccess?.(); - toast.success(`Token received successfully!`); - await balances.refetch(); - navigate(Pages.swap); - }, - } + { onSuccess: txFeedback('Token received successfully!', handleSuccess) } ); + async function handleSuccess() { + opts.onSuccess?.(); + await balances.refetch(); + navigate(Pages.swap); + } + function handleMint() { mutation.mutate(); } diff --git a/packages/app/src/systems/Pool/components/AddLiquidityPoolPrice.tsx b/packages/app/src/systems/Pool/components/AddLiquidityPoolPrice.tsx index d2847adf..1667696b 100644 --- a/packages/app/src/systems/Pool/components/AddLiquidityPoolPrice.tsx +++ b/packages/app/src/systems/Pool/components/AddLiquidityPoolPrice.tsx @@ -25,7 +25,7 @@ export const AddLiquidityPoolPrice = ({ return (

Pool price

-
+
1 {coinFrom.name} = {daiPrice} {coinTo.name} diff --git a/packages/app/src/systems/Pool/pages/AddLiquidity.tsx b/packages/app/src/systems/Pool/pages/AddLiquidity.tsx index 56ee2e4e..471cab62 100644 --- a/packages/app/src/systems/Pool/pages/AddLiquidity.tsx +++ b/packages/app/src/systems/Pool/pages/AddLiquidity.tsx @@ -29,10 +29,10 @@ import type { Coin } from "~/types"; const style = { wrapper: `self-start max-w-[500px] mt-24`, - content: `bg-gray-800 w-[30rem] rounded-2xl p-4 m-2`, + content: `bg-gray-800 w-[30rem] rounded-xl p-4 m-2`, formHeader: `px-2 flex items-center justify-between font-semibold text-xl`, createPoolInfo: `font-mono mt-4 px-4 py-3 text-sm text-slate-400 decoration-1 border border-dashed - border-white/10 rounded-lg w-full`, + border-white/10 rounded-xl w-full`, }; function PoolLoader({ @@ -47,7 +47,7 @@ function PoolLoader({ steps: string[]; }) { return ( -
    +
      {steps.map((stepText, index) => (
    • { describe("without liquidity", () => { beforeAll(async () => { @@ -173,38 +166,5 @@ describe("SwapPage", () => { expect(value).toBeGreaterThan(1); }); }); - - it("should swap between two tokens", async () => { - const spy = jest.spyOn(toast, "success"); - const amount = 0.5; - // As we don't have a way to access a good estimate of gas fee - // we use a max gas cost - const gasFeeEstimateMax = 0.01; - const currentBalance = Number(await getFormattedBalance(wallet)); - expect(currentBalance).toBeGreaterThan(1); - - renderWithRouter(, { - route: "/swap", - }); - - await waitFor(async () => { - const coinFrom = await screen.findByLabelText(/Coin from input/i); - fireEvent.change(coinFrom, { target: { value: String(amount) } }); - expect(coinFrom.getAttribute("value")).toBe(String(amount)); - - const swapBtn = await screen.findByLabelText(/swap button/i); - expect(swapBtn).not.toBeDisabled(); - expect(swapBtn.textContent).toMatch(/Swap/i); - fireEvent.click(swapBtn); - }); - - await waitFor(async () => { - expect(spy).toBeCalled(); - const afterBalance = Number(await getFormattedBalance(wallet)); - expect(afterBalance).toBeGreaterThan( - currentBalance - amount - gasFeeEstimateMax - ); - }); - }); }); }); diff --git a/packages/app/src/systems/Swap/pages/SwapPage.tsx b/packages/app/src/systems/Swap/pages/SwapPage.tsx index 01063f89..0a064faa 100644 --- a/packages/app/src/systems/Swap/pages/SwapPage.tsx +++ b/packages/app/src/systems/Swap/pages/SwapPage.tsx @@ -1,6 +1,5 @@ import { useSetAtom } from "jotai"; import { useMemo, useState } from "react"; -import toast from "react-hot-toast"; import { MdSwapCalls } from "react-icons/md"; import { useMutation, useQuery } from "react-query"; @@ -28,6 +27,7 @@ import { isSwayInfinity, } from "~/systems/Core"; import { useTransactionCost } from "~/systems/Core/hooks/useTransactionCost"; +import { txFeedback } from "~/systems/Core/utils/feedback"; import { usePoolInfo, useUserPositions } from "~/systems/Pool"; import { TwitterDialog, useTwitterDialog } from "~/systems/Tweet"; import { Button, Card } from "~/systems/UI"; @@ -96,27 +96,6 @@ export function SwapPage() { () => queryNetworkFee(contract, swapState?.direction) ); - const { mutate: swap, isLoading: isSwapping } = useMutation( - async () => { - if (!swapState) return; - if (!txCost?.gas || txCost.error) return; - setHasSwapped(false); - await swapTokens(contract, swapState, txCost); - }, - { - onSuccess: async () => { - setHasSwapped(true); - openTwitterDialog(); - toast.success("Swap made successfully!"); - await balances.refetch(); - }, - } - ); - - function handleSwap(state: SwapState) { - setSwapState(state); - } - const validationState = getValidationState({ swapState, previewAmount, @@ -131,6 +110,27 @@ export function SwapPage() { const btnText = getValidationText(validationState, swapState); + const { mutate: swap, isLoading: isSwapping } = useMutation( + async () => { + if (!swapState) return; + if (!txCost?.gas || txCost.error) return; + setHasSwapped(false); + const res = await swapTokens(contract, swapState, txCost); + return res; + }, + { onSuccess: txFeedback("Swap made successfully!", handleSuccess) } + ); + + function handleSwap(state: SwapState) { + setSwapState(state); + } + + async function handleSuccess() { + setHasSwapped(true); + openTwitterDialog(); + await balances.refetch(); + } + return ( diff --git a/packages/app/src/systems/Swap/utils/queries.ts b/packages/app/src/systems/Swap/utils/queries.ts index 803cc741..28fe086f 100644 --- a/packages/app/src/systems/Swap/utils/queries.ts +++ b/packages/app/src/systems/Swap/utils/queries.ts @@ -1,5 +1,3 @@ -import type { ScriptTransactionRequest } from 'fuels'; - import type { SwapState } from '../types'; import { ActiveInput } from '../types'; @@ -69,42 +67,41 @@ export const swapTokens = async ( if (!forwardAmount.has_liquidity) { throw new Error('Not enough liquidity on pool'); } - await contract.submit.swap_with_maximum( + return contract.submitResult.swap_with_maximum( amount, DEADLINE, getOverrides({ forward: [forwardAmount.amount, coinFrom.assetId], gasLimit: txCost.total, - variableOutputs: 1, + variableOutputs: 2, }) ); - } else if (direction === ActiveInput.from && amount) { + } + if (direction === ActiveInput.from && amount) { const minValue = await getSwapWithMinimumMinAmount(contract, coinFrom.assetId, amount); if (!minValue.has_liquidity) { throw new Error('Not enough liquidity on pool'); } - await contract.submit.swap_with_minimum( + + return contract.submitResult.swap_with_minimum( minValue.amount, DEADLINE, getOverrides({ forward: [amount, coinFrom.assetId], gasLimit: txCost.total, - variableOutputs: 1, + variableOutputs: 2, }) ); } }; -export const queryNetworkFee = async ( - contract: ExchangeContractAbi, - direction?: ActiveInput -): Promise => { +export const queryNetworkFee = (contract: ExchangeContractAbi, direction?: ActiveInput) => { const DEADLINE = 1000; const directionValue = direction || ActiveInput.from; if (directionValue === ActiveInput.to) { return contract.prepareCall.swap_with_maximum(1, DEADLINE, { forward: [1, COIN_ETH], - variableOutputs: 1, + variableOutputs: 2, gasLimit: 1000000, }); } diff --git a/packages/app/src/systems/UI/components/InvertButton.tsx b/packages/app/src/systems/UI/components/InvertButton.tsx index b98617cc..8279a048 100644 --- a/packages/app/src/systems/UI/components/InvertButton.tsx +++ b/packages/app/src/systems/UI/components/InvertButton.tsx @@ -6,9 +6,9 @@ import { Button } from "./Button"; const style = { confirmButton: ` - p-0 relative w-10 h-10 rounded-lg mb-3 mt-0 translate-x-[60px] + p-0 relative w-10 h-10 rounded-xl mb-3 mt-0 translate-x-[60px] border-2 border-gray-700 bg-gray-800 cursor-pointer text-gray-400 - sm:translate-x-0 sm:my-1 sm:w-12 sm:h-12 sm:rounded-2xl hover:text-gray-50`, + sm:translate-x-0 sm:my-1 sm:w-12 sm:h-12 sm:rounded-xl hover:text-gray-50`, icon: `transition-all`, iconLeft: `translate-x-[6px]`, iconRight: `translate-x-[-6px]`, diff --git a/packages/app/src/systems/UI/components/NumberInput.tsx b/packages/app/src/systems/UI/components/NumberInput.tsx index fe9e92e5..d6d8242d 100644 --- a/packages/app/src/systems/UI/components/NumberInput.tsx +++ b/packages/app/src/systems/UI/components/NumberInput.tsx @@ -3,7 +3,7 @@ import type { NumberFormatProps } from "react-number-format"; import NumberFormat from "react-number-format"; const style = { - transferPropContainer: `bg-gray-700 rounded-lg px-4 py-2 border border-gray-700 flex justify-between`, + transferPropContainer: `bg-gray-700 rounded-xl px-4 py-2 border border-gray-700 flex justify-between`, transferPropInput: `bg-transparent placeholder:text-gray-300 outline-none w-full`, }; diff --git a/packages/app/src/types/contracts/ExchangeContractAbi.d.ts b/packages/app/src/types/contracts/ExchangeContractAbi.d.ts index 61c7de62..19ab7e76 100644 --- a/packages/app/src/types/contracts/ExchangeContractAbi.d.ts +++ b/packages/app/src/types/contracts/ExchangeContractAbi.d.ts @@ -7,6 +7,8 @@ import type { FunctionFragment, DecodedValue, Contract, + ContractCall, + ContractCallOptions, Overrides, BigNumberish, BytesLike, @@ -43,85 +45,7 @@ export type PreviewInfoInput = { amount: BigNumberish; has_liquidity: boolean }; export type PreviewInfo = { amount: bigint; has_liquidity: boolean }; interface ExchangeContractAbiInterface extends Interface { - submit: { - get_balance: FunctionFragment; - get_pool_info: FunctionFragment; - get_add_liquidity_token_amount: FunctionFragment; - deposit: FunctionFragment; - withdraw: FunctionFragment; - add_liquidity: FunctionFragment; - remove_liquidity: FunctionFragment; - swap_with_minimum: FunctionFragment; - swap_with_maximum: FunctionFragment; - get_swap_with_minimum: FunctionFragment; - get_swap_with_maximum: FunctionFragment; - }; - submitResult: { - get_balance: FunctionFragment; - get_pool_info: FunctionFragment; - get_add_liquidity_token_amount: FunctionFragment; - deposit: FunctionFragment; - withdraw: FunctionFragment; - add_liquidity: FunctionFragment; - remove_liquidity: FunctionFragment; - swap_with_minimum: FunctionFragment; - swap_with_maximum: FunctionFragment; - get_swap_with_minimum: FunctionFragment; - get_swap_with_maximum: FunctionFragment; - }; - dryRun: { - get_balance: FunctionFragment; - get_pool_info: FunctionFragment; - get_add_liquidity_token_amount: FunctionFragment; - deposit: FunctionFragment; - withdraw: FunctionFragment; - add_liquidity: FunctionFragment; - remove_liquidity: FunctionFragment; - swap_with_minimum: FunctionFragment; - swap_with_maximum: FunctionFragment; - get_swap_with_minimum: FunctionFragment; - get_swap_with_maximum: FunctionFragment; - }; - dryRunResult: { - get_balance: FunctionFragment; - get_pool_info: FunctionFragment; - get_add_liquidity_token_amount: FunctionFragment; - deposit: FunctionFragment; - withdraw: FunctionFragment; - add_liquidity: FunctionFragment; - remove_liquidity: FunctionFragment; - swap_with_minimum: FunctionFragment; - swap_with_maximum: FunctionFragment; - get_swap_with_minimum: FunctionFragment; - get_swap_with_maximum: FunctionFragment; - }; - simulate: { - get_balance: FunctionFragment; - get_pool_info: FunctionFragment; - get_add_liquidity_token_amount: FunctionFragment; - deposit: FunctionFragment; - withdraw: FunctionFragment; - add_liquidity: FunctionFragment; - remove_liquidity: FunctionFragment; - swap_with_minimum: FunctionFragment; - swap_with_maximum: FunctionFragment; - get_swap_with_minimum: FunctionFragment; - get_swap_with_maximum: FunctionFragment; - }; - simulateResult: { - get_balance: FunctionFragment; - get_pool_info: FunctionFragment; - get_add_liquidity_token_amount: FunctionFragment; - deposit: FunctionFragment; - withdraw: FunctionFragment; - add_liquidity: FunctionFragment; - remove_liquidity: FunctionFragment; - swap_with_minimum: FunctionFragment; - swap_with_maximum: FunctionFragment; - get_swap_with_minimum: FunctionFragment; - get_swap_with_maximum: FunctionFragment; - }; - prepareCall: { + functions: { get_balance: FunctionFragment; get_pool_info: FunctionFragment; get_add_liquidity_token_amount: FunctionFragment; @@ -183,6 +107,53 @@ interface ExchangeContractAbiInterface extends Interface { export class ExchangeContractAbi extends Contract { interface: ExchangeContractAbiInterface; + prepareCall: { + get_balance(asset_id: ContractIdInput, options?: ContractCallOptions): ContractCall; + + get_pool_info(options?: ContractCallOptions): ContractCall; + + get_add_liquidity_token_amount( + eth_amount: BigNumberish, + options?: ContractCallOptions + ): ContractCall; + + deposit(options?: ContractCallOptions): ContractCall; + + withdraw( + amount: BigNumberish, + asset_id: ContractIdInput, + options?: ContractCallOptions + ): ContractCall; + + add_liquidity( + min_liquidity: BigNumberish, + deadline: BigNumberish, + options?: ContractCallOptions + ): ContractCall; + + remove_liquidity( + min_eth: BigNumberish, + min_tokens: BigNumberish, + deadline: BigNumberish, + options?: ContractCallOptions + ): ContractCall; + + swap_with_minimum( + min: BigNumberish, + deadline: BigNumberish, + options?: ContractCallOptions + ): ContractCall; + + swap_with_maximum( + amount: BigNumberish, + deadline: BigNumberish, + options?: ContractCallOptions + ): ContractCall; + + get_swap_with_minimum(amount: BigNumberish, options?: ContractCallOptions): ContractCall; + + get_swap_with_maximum(amount: BigNumberish, options?: ContractCallOptions): ContractCall; + }; submit: { get_balance( asset_id: ContractIdInput, @@ -411,66 +382,6 @@ export class ExchangeContractAbi extends Contract { overrides?: Overrides & { from?: string | Promise } ): Promise; }; - prepareCall: { - get_balance( - asset_id: ContractIdInput, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - get_pool_info( - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - get_add_liquidity_token_amount( - eth_amount: BigNumberish, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - deposit( - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - withdraw( - amount: BigNumberish, - asset_id: ContractIdInput, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - add_liquidity( - min_liquidity: BigNumberish, - deadline: BigNumberish, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - remove_liquidity( - min_eth: BigNumberish, - min_tokens: BigNumberish, - deadline: BigNumberish, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - swap_with_minimum( - min: BigNumberish, - deadline: BigNumberish, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - swap_with_maximum( - amount: BigNumberish, - deadline: BigNumberish, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - get_swap_with_minimum( - amount: BigNumberish, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - get_swap_with_maximum( - amount: BigNumberish, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - }; simulate: { get_balance( asset_id: ContractIdInput, diff --git a/packages/app/src/types/contracts/TokenContractAbi.d.ts b/packages/app/src/types/contracts/TokenContractAbi.d.ts index 5d6e15bb..2180bc92 100644 --- a/packages/app/src/types/contracts/TokenContractAbi.d.ts +++ b/packages/app/src/types/contracts/TokenContractAbi.d.ts @@ -7,6 +7,8 @@ import type { FunctionFragment, DecodedValue, Contract, + ContractCall, + ContractCallOptions, Overrides, BigNumberish, BytesLike, @@ -24,79 +26,7 @@ export type ContractIdInput = { value: string }; export type ContractId = { value: string }; interface TokenContractAbiInterface extends Interface { - submit: { - initialize: FunctionFragment; - set_mint_amount: FunctionFragment; - mint_coins: FunctionFragment; - burn_coins: FunctionFragment; - transfer_coins: FunctionFragment; - transfer_token_to_output: FunctionFragment; - mint: FunctionFragment; - get_mint_amount: FunctionFragment; - get_balance: FunctionFragment; - get_token_balance: FunctionFragment; - }; - submitResult: { - initialize: FunctionFragment; - set_mint_amount: FunctionFragment; - mint_coins: FunctionFragment; - burn_coins: FunctionFragment; - transfer_coins: FunctionFragment; - transfer_token_to_output: FunctionFragment; - mint: FunctionFragment; - get_mint_amount: FunctionFragment; - get_balance: FunctionFragment; - get_token_balance: FunctionFragment; - }; - dryRun: { - initialize: FunctionFragment; - set_mint_amount: FunctionFragment; - mint_coins: FunctionFragment; - burn_coins: FunctionFragment; - transfer_coins: FunctionFragment; - transfer_token_to_output: FunctionFragment; - mint: FunctionFragment; - get_mint_amount: FunctionFragment; - get_balance: FunctionFragment; - get_token_balance: FunctionFragment; - }; - dryRunResult: { - initialize: FunctionFragment; - set_mint_amount: FunctionFragment; - mint_coins: FunctionFragment; - burn_coins: FunctionFragment; - transfer_coins: FunctionFragment; - transfer_token_to_output: FunctionFragment; - mint: FunctionFragment; - get_mint_amount: FunctionFragment; - get_balance: FunctionFragment; - get_token_balance: FunctionFragment; - }; - simulate: { - initialize: FunctionFragment; - set_mint_amount: FunctionFragment; - mint_coins: FunctionFragment; - burn_coins: FunctionFragment; - transfer_coins: FunctionFragment; - transfer_token_to_output: FunctionFragment; - mint: FunctionFragment; - get_mint_amount: FunctionFragment; - get_balance: FunctionFragment; - get_token_balance: FunctionFragment; - }; - simulateResult: { - initialize: FunctionFragment; - set_mint_amount: FunctionFragment; - mint_coins: FunctionFragment; - burn_coins: FunctionFragment; - transfer_coins: FunctionFragment; - transfer_token_to_output: FunctionFragment; - mint: FunctionFragment; - get_mint_amount: FunctionFragment; - get_balance: FunctionFragment; - get_token_balance: FunctionFragment; - }; - prepareCall: { + functions: { initialize: FunctionFragment; set_mint_amount: FunctionFragment; mint_coins: FunctionFragment; @@ -143,6 +73,40 @@ interface TokenContractAbiInterface extends Interface { export class TokenContractAbi extends Contract { interface: TokenContractAbiInterface; + prepareCall: { + initialize( + mint_amount: BigNumberish, + address: AddressInput, + options?: ContractCallOptions + ): ContractCall; + + set_mint_amount(mint_amount: BigNumberish, options?: ContractCallOptions): ContractCall; + + mint_coins(mint_amount: BigNumberish, options?: ContractCallOptions): ContractCall; + + burn_coins(burn_amount: BigNumberish, options?: ContractCallOptions): ContractCall; + + transfer_coins( + coins: BigNumberish, + address: AddressInput, + options?: ContractCallOptions + ): ContractCall; + + transfer_token_to_output( + coins: BigNumberish, + asset_id: ContractIdInput, + address: AddressInput, + options?: ContractCallOptions + ): ContractCall; + + mint(options?: ContractCallOptions): ContractCall; + + get_mint_amount(options?: ContractCallOptions): ContractCall; + + get_balance(options?: ContractCallOptions): ContractCall; + + get_token_balance(asset_id: ContractIdInput, options?: ContractCallOptions): ContractCall; + }; submit: { initialize( mint_amount: BigNumberish, @@ -335,58 +299,6 @@ export class TokenContractAbi extends Contract { overrides?: Overrides & { from?: string | Promise } ): Promise; }; - prepareCall: { - initialize( - mint_amount: BigNumberish, - address: AddressInput, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - set_mint_amount( - mint_amount: BigNumberish, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - mint_coins( - mint_amount: BigNumberish, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - burn_coins( - burn_amount: BigNumberish, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - transfer_coins( - coins: BigNumberish, - address: AddressInput, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - transfer_token_to_output( - coins: BigNumberish, - asset_id: ContractIdInput, - address: AddressInput, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - mint( - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - get_mint_amount( - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - get_balance( - overrides?: Overrides & { from?: string | Promise } - ): Promise; - - get_token_balance( - asset_id: ContractIdInput, - overrides?: Overrides & { from?: string | Promise } - ): Promise; - }; simulate: { initialize( mint_amount: BigNumberish, diff --git a/packages/app/vite.config.ts b/packages/app/vite.config.ts index b0498648..d185970a 100644 --- a/packages/app/vite.config.ts +++ b/packages/app/vite.config.ts @@ -30,4 +30,11 @@ export default defineConfig({ 'process.env': Object.fromEntries(ENV_VARS), }, ...(Boolean(process.env.CI) && { logLevel: 'silent' }), + /** + * Need because of this issue: + * https://github.com/vitejs/vite/issues/8644#issuecomment-1159308803 + */ + esbuild: { + logOverride: { 'this-is-undefined-in-esm': 'silent' }, + }, }); diff --git a/packages/config/package.json b/packages/config/package.json index a3337266..c3f326f2 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -7,9 +7,9 @@ ], "license": "Apache-2.0", "dependencies": { - "@typescript-eslint/eslint-plugin": "^5.27.1", - "@typescript-eslint/parser": "^5.27.1", - "eslint": "^8.17.0", + "@typescript-eslint/eslint-plugin": "^5.29.0", + "@typescript-eslint/parser": "^5.29.0", + "eslint": "^8.18.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-airbnb-typescript": "^17.0.0", "eslint-plugin-cypress": "^2.12.1", @@ -20,15 +20,15 @@ "eslint-plugin-jsx-a11y": "^6.5.1", "eslint-plugin-prettier": "^4.0.0", "eslint-plugin-react": "^7.30.0", - "eslint-plugin-react-hooks": "^4.5.0", + "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-testing-library": "^5.5.1", - "prettier": "^2.6.2", - "react": "^18.1.0", - "react-dom": "^18.1.0" + "prettier": "^2.7.1", + "react": "^18.2.0", + "react-dom": "^18.2.0" }, "devDependencies": { "tsdx": "^0.14.1", - "tsup": "^6.1.0", - "typescript": "^4.7.3" + "tsup": "^6.1.2", + "typescript": "^4.7.4" } } diff --git a/packages/scripts/package.json b/packages/scripts/package.json index fe5d9d7e..02e85036 100644 --- a/packages/scripts/package.json +++ b/packages/scripts/package.json @@ -16,19 +16,19 @@ "bundle-require": "^3.0.4", "commander": "^9.3.0", "debug": "^4.3.4", - "esbuild": "^0.14.42", - "fuels": "0.0.0-master-3caba861", + "esbuild": "^0.14.47", + "fuels": "0.0.0-master-b32f29b9", "joycon": "^3.1.1", - "prettier": "^2.6.2", - "typechain": "^8.0.0", - "typechain-target-fuels": "0.0.0-master-3caba861", - "typescript": "^4.7.3" + "prettier": "^2.7.1", + "typechain": "^8.1.0", + "typechain-target-fuels": "0.0.0-master-b32f29b9", + "typescript": "^4.7.4" }, "devDependencies": { "@swayswap/config": "workspace:*", "@types/debug": "^4.1.7", "@types/glob": "^7.2.0", "glob": "^8.0.3", - "tsup": "^6.1.0" + "tsup": "^6.1.2" } } diff --git a/packages/test-utils/package.json b/packages/test-utils/package.json index 638b3ca6..4db4ff82 100644 --- a/packages/test-utils/package.json +++ b/packages/test-utils/package.json @@ -25,22 +25,22 @@ }, "dependencies": { "@chakra-ui/utils": "2.0.2", - "@testing-library/dom": "^8.13.0", + "@testing-library/dom": "^8.14.0", "@testing-library/jest-dom": "^5.16.4", "@testing-library/react": "^13.3.0", - "@testing-library/react-hooks": "^8.0.0", - "@testing-library/user-event": "^14.2.0", - "@types/testing-library__jest-dom": "^5.14.3", + "@testing-library/react-hooks": "^8.0.1", + "@testing-library/user-event": "^14.2.1", + "@types/testing-library__jest-dom": "^5.14.5", "jest-axe": "^6.0.0", "jest-fail-on-console": "^2.4.2", "jest-matcher-utils": "^28.1.1", - "react": "^18.1.0", - "react-dom": "^18.1.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", "react-router-dom": "^6.3.0" }, "devDependencies": { "@swayswap/config": "workspace:*", - "@types/jest-axe": "^3.5.3" + "@types/jest-axe": "^3.5.4" }, "peerDependencies": { "react": ">=18" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index de01696e..86c1acf8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -31,6 +31,7 @@ importers: tsup: ^6.1.0 turbo: ^1.2.16 typescript: ^4.7.3 + updates: ^13.1.0 devDependencies: '@babel/core': 7.18.2 '@cypress/react': 5.12.5_ffamunvexibplb3jif5xuixfmm @@ -59,6 +60,7 @@ importers: tsup: 6.1.2_7byub6guob4umnoh7kaog5fh7u turbo: 1.2.16 typescript: 4.7.3 + updates: 13.1.0 packages/app: specifiers: @@ -67,34 +69,34 @@ importers: '@ethersproject/units': ^5.6.1 '@fontsource/inter': ^4.5.11 '@fontsource/raleway': ^4.5.9 - '@headlessui/react': ^1.6.4 - '@jest/globals': ^28.1.0 + '@headlessui/react': ^1.6.5 + '@jest/globals': ^28.1.1 '@radix-ui/react-accordion': ^0.1.6 '@radix-ui/react-alert-dialog': ^0.1.7 '@radix-ui/react-tooltip': ^0.1.7 - '@react-aria/button': ^3.5.0 - '@react-aria/dialog': ^3.2.0 - '@react-aria/focus': ^3.6.0 - '@react-aria/interactions': ^3.9.0 - '@react-aria/link': ^3.3.0 - '@react-aria/menu': ^3.5.0 - '@react-aria/overlays': ^3.9.0 - '@react-aria/textfield': ^3.6.0 - '@react-aria/tooltip': ^3.2.0 - '@react-aria/utils': ^3.13.0 - '@react-stately/collections': ^3.4.0 - '@react-stately/overlays': ^3.3.0 - '@react-stately/tooltip': ^3.1.0 - '@react-stately/tree': ^3.3.0 - '@react-types/button': ^3.5.0 - '@react-types/dialog': ^3.4.0 - '@react-types/link': ^3.3.0 - '@react-types/overlays': ^3.6.0 - '@react-types/shared': ^3.13.0 - '@react-types/tooltip': ^3.2.0 + '@react-aria/button': ^3.5.1 + '@react-aria/dialog': ^3.2.1 + '@react-aria/focus': ^3.6.1 + '@react-aria/interactions': ^3.9.1 + '@react-aria/link': ^3.3.1 + '@react-aria/menu': ^3.5.1 + '@react-aria/overlays': ^3.9.1 + '@react-aria/textfield': ^3.6.1 + '@react-aria/tooltip': ^3.2.1 + '@react-aria/utils': ^3.13.1 + '@react-stately/collections': ^3.4.1 + '@react-stately/overlays': ^3.3.1 + '@react-stately/tooltip': ^3.1.1 + '@react-stately/tree': ^3.3.1 + '@react-types/button': ^3.5.1 + '@react-types/dialog': ^3.4.1 + '@react-types/link': ^3.3.1 + '@react-types/overlays': ^3.6.1 + '@react-types/shared': ^3.13.1 + '@react-types/tooltip': ^3.2.1 '@tailwindcss/typography': ^0.5.2 - '@types/node': ^17.0.41 - '@types/react': ^18.0.12 + '@types/node': ^18.0.0 + '@types/react': ^18.0.14 '@types/react-dom': ^18.0.5 '@types/react-google-recaptcha': ^2.1.5 '@types/react-helmet': ^6.1.5 @@ -107,19 +109,19 @@ importers: cross-fetch: ^3.1.5 decimal.js: ^10.3.1 dotenv: ^16.0.1 - eslint: ^8.17.0 + eslint: ^8.18.0 eslint-plugin-cypress: ^2.12.1 - ethers: ^5.6.8 - framer-motion: ^6.3.10 - fuels: 0.0.0-master-3caba861 + ethers: ^5.6.9 + framer-motion: ^6.3.12 + fuels: 0.0.0-master-b32f29b9 graphql-request: ^4.3.0 http-server: ^14.1.1 - jotai: ^1.7.1 + jotai: ^1.7.2 postcss: ^8.4.14 postcss-import: ^14.1.0 - react: ^18.1.0 + react: ^18.2.0 react-content-loader: ^6.2.0 - react-dom: ^18.1.0 + react-dom: ^18.2.0 react-error-boundary: ^3.1.4 react-google-recaptcha: ^2.1.0 react-hot-toast: ^2.2.0 @@ -129,11 +131,11 @@ importers: react-router-dom: '6' react-use: ^17.4.0 spinners-react: ^1.0.7 - tailwindcss: ^3.0.24 + tailwindcss: ^3.1.4 ts-node: ^10.8.1 - typescript: ^4.7.3 + typescript: ^4.7.4 url-join-ts: ^1.0.5 - vite: ^2.9.10 + vite: ^2.9.12 vite-tsconfig-paths: ^3.5.0 xstate: ^4.32.1 dependencies: @@ -142,82 +144,82 @@ importers: '@ethersproject/units': 5.6.1 '@fontsource/inter': 4.5.11 '@fontsource/raleway': 4.5.9 - '@headlessui/react': 1.6.4_ef5jwxihqo6n7gxfmzogljlgcm - '@radix-ui/react-accordion': 0.1.6_react@18.1.0 - '@radix-ui/react-alert-dialog': 0.1.7_eurjwfem4ie5nnznw6gmhlbswe - '@radix-ui/react-tooltip': 0.1.7_ef5jwxihqo6n7gxfmzogljlgcm - '@react-aria/button': 3.5.0_react@18.1.0 - '@react-aria/dialog': 3.2.0_react@18.1.0 - '@react-aria/focus': 3.6.0_react@18.1.0 - '@react-aria/interactions': 3.9.0_react@18.1.0 - '@react-aria/link': 3.3.0_react@18.1.0 - '@react-aria/menu': 3.5.0_ef5jwxihqo6n7gxfmzogljlgcm - '@react-aria/overlays': 3.9.0_ef5jwxihqo6n7gxfmzogljlgcm - '@react-aria/textfield': 3.6.0_react@18.1.0 - '@react-aria/tooltip': 3.2.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-stately/collections': 3.4.0_react@18.1.0 - '@react-stately/overlays': 3.3.0_react@18.1.0 - '@react-stately/tooltip': 3.1.0_react@18.1.0 - '@react-stately/tree': 3.3.0_react@18.1.0 - '@react-types/overlays': 3.6.0_react@18.1.0 - '@tailwindcss/typography': 0.5.2_tailwindcss@3.1.2 - '@xstate/react': 3.0.0_nxaw3aggewkk2xco2xus35m4sq + '@headlessui/react': 1.6.5_biqbaboplfbrettd7655fr4n2y + '@radix-ui/react-accordion': 0.1.6_react@18.2.0 + '@radix-ui/react-alert-dialog': 0.1.7_twyhzqqpkwvvgrmyeapdo6i4my + '@radix-ui/react-tooltip': 0.1.7_biqbaboplfbrettd7655fr4n2y + '@react-aria/button': 3.5.1_react@18.2.0 + '@react-aria/dialog': 3.2.1_react@18.2.0 + '@react-aria/focus': 3.6.1_react@18.2.0 + '@react-aria/interactions': 3.9.1_react@18.2.0 + '@react-aria/link': 3.3.1_react@18.2.0 + '@react-aria/menu': 3.5.1_biqbaboplfbrettd7655fr4n2y + '@react-aria/overlays': 3.9.1_biqbaboplfbrettd7655fr4n2y + '@react-aria/textfield': 3.6.1_react@18.2.0 + '@react-aria/tooltip': 3.2.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-stately/collections': 3.4.1_react@18.2.0 + '@react-stately/overlays': 3.3.1_react@18.2.0 + '@react-stately/tooltip': 3.1.1_react@18.2.0 + '@react-stately/tree': 3.3.1_react@18.2.0 + '@react-types/overlays': 3.6.1_react@18.2.0 + '@tailwindcss/typography': 0.5.2_tailwindcss@3.1.4 + '@xstate/react': 3.0.0_qkj3h26yqjpoza3bh3zse7k4ye bignumber.js: 9.0.2 classnames: 2.3.1 clipboard: 2.0.11 cross-fetch: 3.1.5 decimal.js: 10.3.1 - ethers: 5.6.8 - framer-motion: 6.3.11_ef5jwxihqo6n7gxfmzogljlgcm - fuels: 0.0.0-master-3caba861 + ethers: 5.6.9 + framer-motion: 6.3.12_biqbaboplfbrettd7655fr4n2y + fuels: 0.0.0-master-b32f29b9 graphql-request: 4.3.0 - jotai: 1.7.2_2jlcqljsajnujrum4ztt4u63b4 - react: 18.1.0 - react-content-loader: 6.2.0_react@18.1.0 - react-dom: 18.1.0_react@18.1.0 - react-error-boundary: 3.1.4_react@18.1.0 - react-google-recaptcha: 2.1.0_react@18.1.0 - react-hot-toast: 2.2.0_ef5jwxihqo6n7gxfmzogljlgcm - react-icons: 4.4.0_react@18.1.0 - react-number-format: 4.9.3_ef5jwxihqo6n7gxfmzogljlgcm - react-query: 3.39.1_ef5jwxihqo6n7gxfmzogljlgcm - react-router-dom: 6.3.0_ef5jwxihqo6n7gxfmzogljlgcm - react-use: 17.4.0_ef5jwxihqo6n7gxfmzogljlgcm - spinners-react: 1.0.7_zlkrlo2xsersbascmmsr65fm34 + jotai: 1.7.2_ypoyxfrlqzbdcysfoko2qan5wa + react: 18.2.0 + react-content-loader: 6.2.0_react@18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-error-boundary: 3.1.4_react@18.2.0 + react-google-recaptcha: 2.1.0_react@18.2.0 + react-hot-toast: 2.2.0_biqbaboplfbrettd7655fr4n2y + react-icons: 4.4.0_react@18.2.0 + react-number-format: 4.9.3_biqbaboplfbrettd7655fr4n2y + react-query: 3.39.1_biqbaboplfbrettd7655fr4n2y + react-router-dom: 6.3.0_biqbaboplfbrettd7655fr4n2y + react-use: 17.4.0_biqbaboplfbrettd7655fr4n2y + spinners-react: 1.0.7_fzknh3pugl53jp7xsetxkg5ani url-join-ts: 1.0.5 vite-tsconfig-paths: 3.5.0_vite@2.9.12 xstate: 4.32.1 devDependencies: '@jest/globals': 28.1.1 - '@react-types/button': 3.5.0_react@18.1.0 - '@react-types/dialog': 3.4.0_react@18.1.0 - '@react-types/link': 3.3.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - '@react-types/tooltip': 3.2.0_react@18.1.0 - '@types/node': 17.0.41 - '@types/react': 18.0.12 + '@react-types/button': 3.5.1_react@18.2.0 + '@react-types/dialog': 3.4.1_react@18.2.0 + '@react-types/link': 3.3.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + '@react-types/tooltip': 3.2.1_react@18.2.0 + '@types/node': 18.0.0 + '@types/react': 18.0.14 '@types/react-dom': 18.0.5 '@types/react-google-recaptcha': 2.1.5 '@types/react-helmet': 6.1.5 '@vitejs/plugin-react': 1.3.2 autoprefixer: 10.4.7_postcss@8.4.14 dotenv: 16.0.1 - eslint: 8.17.0 - eslint-plugin-cypress: 2.12.1_eslint@8.17.0 + eslint: 8.18.0 + eslint-plugin-cypress: 2.12.1_eslint@8.18.0 http-server: 14.1.1 postcss: 8.4.14 postcss-import: 14.1.0_postcss@8.4.14 - tailwindcss: 3.1.2_ts-node@10.8.1 - ts-node: 10.8.1_f5eqjuxkorpjvs4z7mviievvou - typescript: 4.7.3 + tailwindcss: 3.1.4_ts-node@10.8.1 + ts-node: 10.8.1_qiyc72axg2v44xl4yovan2v55u + typescript: 4.7.4 vite: 2.9.12 packages/config: specifiers: - '@typescript-eslint/eslint-plugin': ^5.27.1 - '@typescript-eslint/parser': ^5.27.1 - eslint: ^8.17.0 + '@typescript-eslint/eslint-plugin': ^5.29.0 + '@typescript-eslint/parser': ^5.29.0 + eslint: ^8.18.0 eslint-config-airbnb-base: ^15.0.0 eslint-config-airbnb-typescript: ^17.0.0 eslint-config-prettier: ^8.5.0 @@ -228,37 +230,37 @@ importers: eslint-plugin-jsx-a11y: ^6.5.1 eslint-plugin-prettier: ^4.0.0 eslint-plugin-react: ^7.30.0 - eslint-plugin-react-hooks: ^4.5.0 + eslint-plugin-react-hooks: ^4.6.0 eslint-plugin-testing-library: ^5.5.1 - prettier: ^2.6.2 - react: ^18.1.0 - react-dom: ^18.1.0 + prettier: ^2.7.1 + react: ^18.2.0 + react-dom: ^18.2.0 tsdx: ^0.14.1 - tsup: ^6.1.0 - typescript: ^4.7.3 - dependencies: - '@typescript-eslint/eslint-plugin': 5.27.1_aq7uryhocdbvbqum33pitcm3y4 - '@typescript-eslint/parser': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4 - eslint: 8.17.0 - eslint-config-airbnb-base: 15.0.0_3yxiwxzsqipdmy4jwrlv6vgfmy - eslint-config-airbnb-typescript: 17.0.0_tp6b2m7mjearuulyvjl6n6zeka - eslint-config-prettier: 8.5.0_eslint@8.17.0 - eslint-plugin-cypress: 2.12.1_eslint@8.17.0 - eslint-plugin-eslint-comments: 3.2.0_eslint@8.17.0 - eslint-plugin-import: 2.26.0_pv5w3e62ssxduf5aiwxbc3knra - eslint-plugin-jest-dom: 4.0.2_eslint@8.17.0 - eslint-plugin-jsx-a11y: 6.5.1_eslint@8.17.0 - eslint-plugin-prettier: 4.0.0_ucegkljdju7q4zmvwxzqoprf3y - eslint-plugin-react: 7.30.0_eslint@8.17.0 - eslint-plugin-react-hooks: 4.5.0_eslint@8.17.0 - eslint-plugin-testing-library: 5.5.1_ud6rd4xtew5bv4yhvkvu24pzm4 - prettier: 2.6.2 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + tsup: ^6.1.2 + typescript: ^4.7.4 + dependencies: + '@typescript-eslint/eslint-plugin': 5.29.0_qqmbkyiaixvppdwswpytuf2hgm + '@typescript-eslint/parser': 5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e + eslint: 8.18.0 + eslint-config-airbnb-base: 15.0.0_srrmf5la5dmnsfe2mpg6sboreu + eslint-config-airbnb-typescript: 17.0.0_5hz5uetpggdx7cisb4emmjbrn4 + eslint-config-prettier: 8.5.0_eslint@8.18.0 + eslint-plugin-cypress: 2.12.1_eslint@8.18.0 + eslint-plugin-eslint-comments: 3.2.0_eslint@8.18.0 + eslint-plugin-import: 2.26.0_zgg5sxdhnxsuz2d3vdnwdtmcnu + eslint-plugin-jest-dom: 4.0.2_eslint@8.18.0 + eslint-plugin-jsx-a11y: 6.5.1_eslint@8.18.0 + eslint-plugin-prettier: 4.0.0_xu6ewijrtliw5q5lksq5uixwby + eslint-plugin-react: 7.30.0_eslint@8.18.0 + eslint-plugin-react-hooks: 4.6.0_eslint@8.18.0 + eslint-plugin-testing-library: 5.5.1_b5e7v2qnwxfo6hmiq56u52mz3e + prettier: 2.7.1 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 devDependencies: tsdx: 0.14.1 - tsup: 6.1.2_typescript@4.7.3 - typescript: 4.7.3 + tsup: 6.1.2_typescript@4.7.4 + typescript: 4.7.4 packages/scripts: specifiers: @@ -268,67 +270,67 @@ importers: bundle-require: ^3.0.4 commander: ^9.3.0 debug: ^4.3.4 - esbuild: ^0.14.42 - fuels: 0.0.0-master-3caba861 + esbuild: ^0.14.47 + fuels: 0.0.0-master-b32f29b9 glob: ^8.0.3 joycon: ^3.1.1 - prettier: ^2.6.2 - tsup: ^6.1.0 - typechain: ^8.0.0 - typechain-target-fuels: 0.0.0-master-3caba861 - typescript: ^4.7.3 + prettier: ^2.7.1 + tsup: ^6.1.2 + typechain: ^8.1.0 + typechain-target-fuels: 0.0.0-master-b32f29b9 + typescript: ^4.7.4 dependencies: - bundle-require: 3.0.4_esbuild@0.14.43 + bundle-require: 3.0.4_esbuild@0.14.47 commander: 9.3.0 debug: 4.3.4 - esbuild: 0.14.43 - fuels: 0.0.0-master-3caba861 + esbuild: 0.14.47 + fuels: 0.0.0-master-b32f29b9 joycon: 3.1.1 - prettier: 2.6.2 - typechain: 8.1.0_typescript@4.7.3 - typechain-target-fuels: 0.0.0-master-3caba861 - typescript: 4.7.3 + prettier: 2.7.1 + typechain: 8.1.0_typescript@4.7.4 + typechain-target-fuels: 0.0.0-master-b32f29b9 + typescript: 4.7.4 devDependencies: '@swayswap/config': link:../config '@types/debug': 4.1.7 '@types/glob': 7.2.0 glob: 8.0.3 - tsup: 6.1.2_typescript@4.7.3 + tsup: 6.1.2_typescript@4.7.4 packages/test-utils: specifiers: '@chakra-ui/utils': 2.0.2 '@swayswap/config': workspace:* - '@testing-library/dom': ^8.13.0 + '@testing-library/dom': ^8.14.0 '@testing-library/jest-dom': ^5.16.4 '@testing-library/react': ^13.3.0 - '@testing-library/react-hooks': ^8.0.0 - '@testing-library/user-event': ^14.2.0 - '@types/jest-axe': ^3.5.3 - '@types/testing-library__jest-dom': ^5.14.3 + '@testing-library/react-hooks': ^8.0.1 + '@testing-library/user-event': ^14.2.1 + '@types/jest-axe': ^3.5.4 + '@types/testing-library__jest-dom': ^5.14.5 jest-axe: ^6.0.0 jest-fail-on-console: ^2.4.2 jest-matcher-utils: ^28.1.1 - react: ^18.1.0 - react-dom: ^18.1.0 + react: ^18.2.0 + react-dom: ^18.2.0 react-router-dom: ^6.3.0 dependencies: '@chakra-ui/utils': 2.0.2 - '@testing-library/dom': 8.13.0 + '@testing-library/dom': 8.14.0 '@testing-library/jest-dom': 5.16.4 - '@testing-library/react': 13.3.0_ef5jwxihqo6n7gxfmzogljlgcm - '@testing-library/react-hooks': 8.0.0_ef5jwxihqo6n7gxfmzogljlgcm - '@testing-library/user-event': 14.2.0_tlwynutqiyp5mns3woioasuxnq - '@types/testing-library__jest-dom': 5.14.3 + '@testing-library/react': 13.3.0_biqbaboplfbrettd7655fr4n2y + '@testing-library/react-hooks': 8.0.1_biqbaboplfbrettd7655fr4n2y + '@testing-library/user-event': 14.2.1_ihvo3xlg2d6kwqju3os3zitn3y + '@types/testing-library__jest-dom': 5.14.5 jest-axe: 6.0.0 jest-fail-on-console: 2.4.2 jest-matcher-utils: 28.1.1 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 - react-router-dom: 6.3.0_ef5jwxihqo6n7gxfmzogljlgcm + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-router-dom: 6.3.0_biqbaboplfbrettd7655fr4n2y devDependencies: '@swayswap/config': link:../config - '@types/jest-axe': 3.5.3 + '@types/jest-axe': 3.5.4 packages: @@ -1626,8 +1628,8 @@ packages: babel-loader: '>=8' cypress: '*' next: '>=8' - react: ^=16.x || ^=17.x - react-dom: ^=16.x || ^=17.x + react: '*' + react-dom: '*' webpack: '>=4' peerDependenciesMeta: '@babel/core': @@ -1642,6 +1644,10 @@ packages: optional: true next: optional: true + react: + optional: true + react-dom: + optional: true webpack: optional: true dependencies: @@ -1718,8 +1724,8 @@ packages: transitivePeerDependencies: - supports-color - /@ethersproject/abi/5.6.3: - resolution: {integrity: sha512-CxKTdoZY4zDJLWXG6HzNH6znWK0M79WzzxHegDoecE3+K32pzfHOzuXg2/oGSTecZynFgpkjYXNPOqXVJlqClw==} + /@ethersproject/abi/5.6.4: + resolution: {integrity: sha512-TTeZUlCeIHG6527/2goZA6gW5F8Emoc7MrZDC7hhP84aRGvW3TEdTnZR08Ls88YXM1m2SuK42Osw/jSi3uO8gg==} dependencies: '@ethersproject/address': 5.6.1 '@ethersproject/bignumber': 5.6.2 @@ -1738,7 +1744,7 @@ packages: '@ethersproject/bignumber': 5.6.2 '@ethersproject/bytes': 5.6.1 '@ethersproject/logger': 5.6.0 - '@ethersproject/networks': 5.6.3 + '@ethersproject/networks': 5.6.4 '@ethersproject/properties': 5.6.0 '@ethersproject/transactions': 5.6.2 '@ethersproject/web': 5.6.1 @@ -1800,7 +1806,7 @@ packages: /@ethersproject/contracts/5.6.2: resolution: {integrity: sha512-hguUA57BIKi6WY0kHvZp6PwPlWF87MCeB4B7Z7AbUpTxfFXFdn/3b0GmjZPagIHS+3yhcBJDnuEfU4Xz+Ks/8g==} dependencies: - '@ethersproject/abi': 5.6.3 + '@ethersproject/abi': 5.6.4 '@ethersproject/abstract-provider': 5.6.1 '@ethersproject/abstract-signer': 5.6.2 '@ethersproject/address': 5.6.1 @@ -1871,8 +1877,8 @@ packages: resolution: {integrity: sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==} dev: false - /@ethersproject/networks/5.6.3: - resolution: {integrity: sha512-QZxRH7cA5Ut9TbXwZFiCyuPchdWi87ZtVNHWZd0R6YFgYtes2jQ3+bsslJ0WdyDe0i6QumqtoYqvY3rrQFRZOQ==} + /@ethersproject/networks/5.6.4: + resolution: {integrity: sha512-KShHeHPahHI2UlWdtDMn2lJETcbtaJge4k7XSjDR9h79QTd6yQJmv6Cp2ZA4JdqWnhszAOLSuJEd9C0PRw7hSQ==} dependencies: '@ethersproject/logger': 5.6.0 dev: false @@ -1903,7 +1909,7 @@ packages: '@ethersproject/constants': 5.6.1 '@ethersproject/hash': 5.6.1 '@ethersproject/logger': 5.6.0 - '@ethersproject/networks': 5.6.3 + '@ethersproject/networks': 5.6.4 '@ethersproject/properties': 5.6.0 '@ethersproject/random': 5.6.1 '@ethersproject/rlp': 5.6.1 @@ -2074,119 +2080,119 @@ packages: tslib: 2.4.0 dev: false - /@fuel-ts/abi-coder/0.0.0-master-3caba861: - resolution: {integrity: sha512-YRAlwVu4C/141I9C2Fk0mFNndQLjGKI+yMHM1iIBAGH34kNGzYMujhnjRSKhTU0b2r+3zLAztTCmezUnKauMhQ==} + /@fuel-ts/abi-coder/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-1OszOJ+rgfaL3cutvuLCBpDOVxQwLfFHOemhsT7gwJxpJAsGp2XGFfrKqejZ3nB+8/yMWy+lo14wBsWfkgWW9Q==} dependencies: - '@ethersproject/abi': 5.6.3 + '@ethersproject/abi': 5.6.4 '@ethersproject/bytes': 5.6.1 '@ethersproject/logger': 5.6.0 '@ethersproject/sha2': 5.6.1 '@ethersproject/strings': 5.6.1 - '@fuel-ts/math': 0.0.0-master-3caba861 + '@fuel-ts/math': 0.0.0-master-b32f29b9 type-fest: 2.13.0 dev: false - /@fuel-ts/constants/0.0.0-master-3caba861: - resolution: {integrity: sha512-SGgy3HsMhtl1vkCDVy1tr2SfrDtqzdKdjT910ntdOki8QxizjYuYdcOg6tTxxM0vjk3O3W1Orf8O+qxof+b9rw==} + /@fuel-ts/constants/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-h80/5YrrYx9GkNDpHcdDSbE/8rKtMmrvJFMan/tD8Vo6Xavc5CeRM9kTsEawoDQyU0OsyxobxS4dJkG4vTLLyg==} dev: false - /@fuel-ts/contract/0.0.0-master-3caba861: - resolution: {integrity: sha512-ourFKLQuskCb4X8koQgOTAjpu6b+Q7zrghC726J80ex8Ez9bk7Rsg1hYGQq0p2aezun0BA5fN6Gl4YrQYXKk6g==} + /@fuel-ts/contract/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-w5OD8Icl2R3qGY6UIsCF7TxBM7r8IFdZLdbhIuQvoo44fFKLVESP4489rUY4I0QsaUV8q6aR9m1PY+oODMQZcw==} dependencies: '@ethersproject/bytes': 5.6.1 '@ethersproject/logger': 5.6.0 '@ethersproject/sha2': 5.6.1 - '@fuel-ts/abi-coder': 0.0.0-master-3caba861 - '@fuel-ts/constants': 0.0.0-master-3caba861 - '@fuel-ts/interfaces': 0.0.0-master-3caba861 - '@fuel-ts/keystore': 0.0.0-master-3caba861 - '@fuel-ts/math': 0.0.0-master-3caba861 - '@fuel-ts/merkle': 0.0.0-master-3caba861 - '@fuel-ts/providers': 0.0.0-master-3caba861 - '@fuel-ts/script': 0.0.0-master-3caba861 - '@fuel-ts/wallet': 0.0.0-master-3caba861 + '@fuel-ts/abi-coder': 0.0.0-master-b32f29b9 + '@fuel-ts/constants': 0.0.0-master-b32f29b9 + '@fuel-ts/interfaces': 0.0.0-master-b32f29b9 + '@fuel-ts/keystore': 0.0.0-master-b32f29b9 + '@fuel-ts/math': 0.0.0-master-b32f29b9 + '@fuel-ts/merkle': 0.0.0-master-b32f29b9 + '@fuel-ts/providers': 0.0.0-master-b32f29b9 + '@fuel-ts/script': 0.0.0-master-b32f29b9 + '@fuel-ts/wallet': 0.0.0-master-b32f29b9 transitivePeerDependencies: - encoding dev: false - /@fuel-ts/hasher/0.0.0-master-3caba861: - resolution: {integrity: sha512-ZKNkMpquubJjbPlJuuFcZj2pCzv980TfvyoeOx6ht+/Y7zNWFL/VVSherUeXpu+kL4c/HGEMnHpFqsUKvb+uLA==} + /@fuel-ts/hasher/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-jqqCy0rW2GDYC4AueB/b+Fxx8zHR6fFp1HAILu7qBp/yyJyl0BhEqmFQWSqPfiUvviKjPyYIpoxn8ytGqjVGiA==} dependencies: '@ethersproject/bytes': 5.6.1 '@ethersproject/sha2': 5.6.1 - '@fuel-ts/constants': 0.0.0-master-3caba861 - '@fuel-ts/providers': 0.0.0-master-3caba861 + '@fuel-ts/constants': 0.0.0-master-b32f29b9 + '@fuel-ts/providers': 0.0.0-master-b32f29b9 lodash.clonedeep: 4.5.0 transitivePeerDependencies: - encoding dev: false - /@fuel-ts/hdwallet/0.0.0-master-3caba861: - resolution: {integrity: sha512-qSYDhPEecaKjK2+33EUrgy+nwd02XZvIxcELrP7JeJLGQ2apr/jEnMaLQMhlrSO6cyBz6GbSq4kdGTf+9MDC9w==} + /@fuel-ts/hdwallet/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-piXiDWQyvmO6rRtsrfoFq6aY+nN8hGtWAXTWb4fqj8XrN5l3+Ho1Y88mfJv+xBInt+ogqhzMV8hUGcQxGBeQaw==} dependencies: '@ethersproject/basex': 5.6.1 '@ethersproject/bytes': 5.6.1 '@ethersproject/sha2': 5.6.1 - '@fuel-ts/math': 0.0.0-master-3caba861 - '@fuel-ts/mnemonic': 0.0.0-master-3caba861 - '@fuel-ts/signer': 0.0.0-master-3caba861 + '@fuel-ts/math': 0.0.0-master-b32f29b9 + '@fuel-ts/mnemonic': 0.0.0-master-b32f29b9 + '@fuel-ts/signer': 0.0.0-master-b32f29b9 transitivePeerDependencies: - encoding dev: false - /@fuel-ts/interfaces/0.0.0-master-3caba861: - resolution: {integrity: sha512-LJsLuPXorVmYDHt62Pm2mCXNhK/8FCYpjgdSruHUFZEF6hxDvbn32rs3YxmM7SUo8KBzbmRIueuHgfzYaPWhmA==} + /@fuel-ts/interfaces/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-8DZ5U3czT3v4+iuTw6joDUgn8XnR0Hr8IK/wkyK1Kbp10wzjFMrJeg005uUIdXUJ6kr3yjrg04Xpt9HF2181tw==} dependencies: '@ethersproject/bytes': 5.6.1 dev: false - /@fuel-ts/keystore/0.0.0-master-3caba861: - resolution: {integrity: sha512-GZOLEm1E6EHoSucp34p4pPct1blfZJk5iZt7mFmd5jZ+ces3mMN1k2nYg+61zMDCwPLmxX/wUq6D6FcVY+X2LA==} + /@fuel-ts/keystore/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-aYF0h7oa1lI0qQeYfF0QYIuMwLirOx2lidrqFQEuaws1eYHkmF0mPEfOzcgAPihxTBc7rY5MtghhukEZsPaBdQ==} dependencies: '@ethersproject/bytes': 5.6.1 '@ethersproject/pbkdf2': 5.6.1 dev: false - /@fuel-ts/math/0.0.0-master-3caba861: - resolution: {integrity: sha512-lZfew/NVLACULgAtc9RNQrsB8RG8amn/g1lIFPMq94d4dgPLbz75s9CGFGds4vmi/dDAzuXz+cuFlAuI/9EVLA==} + /@fuel-ts/math/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-hbX1JlG76thz4dNiZY/LT/q7H4YYuotJr43LWXRU4l9q0Ku4B9GczeJB+Pq55YWn7MFiuLBISxPLcsz15PXKmg==} dev: false - /@fuel-ts/merkle-shared/0.0.0-master-3caba861: - resolution: {integrity: sha512-lpdYd3CmmOnO1AP6+umRDnIvmmLN8NOMKmZGUJpAp0TxuN2ymWOpYD01e26h/xA0JTfpa0qq1n4PfjxbnD5ukA==} + /@fuel-ts/merkle-shared/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-oj0zGp+i9v850pY0NNJpW5NYOYW0De0uMrRgAOtDQS+wDJjhzbWOSucEWT1mtgDDcVBh8bbQMG4XdmEwplg7zQ==} dependencies: '@ethersproject/bytes': 5.6.1 '@ethersproject/sha2': 5.6.1 - '@fuel-ts/math': 0.0.0-master-3caba861 + '@fuel-ts/math': 0.0.0-master-b32f29b9 dev: false - /@fuel-ts/merkle/0.0.0-master-3caba861: - resolution: {integrity: sha512-bOY+B62+C6hRPZGZhKYsPnAgW4NFmbnUq0O8nATFwxOSquhDJH3FHk+jEJZYQEl6Jk290UVwZn1eWi/ybI3e1w==} + /@fuel-ts/merkle/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-jdm+KP+7UQtRzgPse45mfV+vy6LVOLrn08k5ahtGuEU5vbus0f56waRVFhE9nL2zZlew1+07ESC+AS8bOQ+/SQ==} dependencies: - '@fuel-ts/merkle-shared': 0.0.0-master-3caba861 + '@fuel-ts/merkle-shared': 0.0.0-master-b32f29b9 dev: false - /@fuel-ts/mnemonic/0.0.0-master-3caba861: - resolution: {integrity: sha512-Mgu263V0aLQYqvYBJqvTUULpPSlf4xXqS9QNIUpGiuWFaovst1NNQ71bYhOmawLiw3GqmJVVXMPkVgNpfVR/KA==} + /@fuel-ts/mnemonic/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-YqFieaD/7j//l8kJzUZG4iDP1eXXFXIr7H8nUYYP9BBdW1BCMvD8KOWqFaYG0A12H2nqw00B1koFpr0zqiDQsg==} dependencies: '@ethersproject/basex': 5.6.1 '@ethersproject/bytes': 5.6.1 '@ethersproject/pbkdf2': 5.6.1 '@ethersproject/sha2': 5.6.1 - '@fuel-ts/keystore': 0.0.0-master-3caba861 - '@fuel-ts/wordlists': 0.0.0-master-3caba861 + '@fuel-ts/keystore': 0.0.0-master-b32f29b9 + '@fuel-ts/wordlists': 0.0.0-master-b32f29b9 dev: false - /@fuel-ts/providers/0.0.0-master-3caba861: - resolution: {integrity: sha512-ge0/OGX7ewOxdqYaOAavZumanI8ti/Cxrmpn4dC6R8jrhe6iF0+rndXfs6MkjrqQ4KyfAnAetw3Uhqye9csXMA==} + /@fuel-ts/providers/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-o8pxAq+p4Ogmsdhhmlibk+9Hk9n1AQwAIHAHHqAXhDdLFUGViaMkA6sqlRos8ExZpBzAHhHoO/aLhMP8Niy2YQ==} dependencies: '@ethersproject/bytes': 5.6.1 - '@ethersproject/networks': 5.6.3 + '@ethersproject/networks': 5.6.4 '@ethersproject/sha2': 5.6.1 - '@fuel-ts/constants': 0.0.0-master-3caba861 - '@fuel-ts/interfaces': 0.0.0-master-3caba861 - '@fuel-ts/keystore': 0.0.0-master-3caba861 - '@fuel-ts/math': 0.0.0-master-3caba861 - '@fuel-ts/transactions': 0.0.0-master-3caba861 + '@fuel-ts/constants': 0.0.0-master-b32f29b9 + '@fuel-ts/interfaces': 0.0.0-master-b32f29b9 + '@fuel-ts/keystore': 0.0.0-master-b32f29b9 + '@fuel-ts/math': 0.0.0-master-b32f29b9 + '@fuel-ts/transactions': 0.0.0-master-b32f29b9 graphql: 15.8.0 graphql-request: 3.7.0_graphql@15.8.0 graphql-tag: 2.12.6_graphql@15.8.0 @@ -2194,67 +2200,72 @@ packages: - encoding dev: false - /@fuel-ts/script/0.0.0-master-3caba861: - resolution: {integrity: sha512-WVqcnkPrcn3as37mvXirj2mp3qlyR4H/2T5kVFbZlxHoZtLMWhYG8kihuIDxiMuaBx56/uTk9eID9gUaBClYcw==} + /@fuel-ts/script/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-WTqcohjzxIpc3sNoYc5SQJpp165/gbBlFWsPn1tF8tNRsn2lLr06oYgdMduDdSM/O2pZv/STenxc6HJEJ46BSQ==} dependencies: '@ethersproject/bytes': 5.6.1 - '@fuel-ts/abi-coder': 0.0.0-master-3caba861 - '@fuel-ts/constants': 0.0.0-master-3caba861 - '@fuel-ts/providers': 0.0.0-master-3caba861 - '@fuel-ts/wallet': 0.0.0-master-3caba861 + '@fuel-ts/abi-coder': 0.0.0-master-b32f29b9 + '@fuel-ts/constants': 0.0.0-master-b32f29b9 + '@fuel-ts/providers': 0.0.0-master-b32f29b9 + '@fuel-ts/wallet': 0.0.0-master-b32f29b9 transitivePeerDependencies: - encoding dev: false - /@fuel-ts/signer/0.0.0-master-3caba861: - resolution: {integrity: sha512-vj5rK4+cUIpDjSZvvGbQ246yuBPyUwkLSXExfLsrcEc94ktv2PF/mele35XH0PIEAaMkc1WZKGYX5RLEqa0+4Q==} + /@fuel-ts/signer/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-hbiAHxTwbzHEyJhbmB5DK/W1+7LbF2nYUJinhoIbFNzPAITtzKa4Hu/fo7aw0B9dIA13W42/YgCBkG6FmP0U+Q==} dependencies: '@ethersproject/bytes': 5.6.1 '@ethersproject/sha2': 5.6.1 - '@fuel-ts/hasher': 0.0.0-master-3caba861 - '@fuel-ts/keystore': 0.0.0-master-3caba861 + '@fuel-ts/hasher': 0.0.0-master-b32f29b9 + '@fuel-ts/keystore': 0.0.0-master-b32f29b9 elliptic: 6.5.4 transitivePeerDependencies: - encoding dev: false - /@fuel-ts/transactions/0.0.0-master-3caba861: - resolution: {integrity: sha512-YmL+Z1/Km/vDNYl9DtbdqkTAIvucDENPVHCvQxnuPoNzmA5Zq8YjRFtkY9V2g4GNq7FsCtXOxfgxEjCDqhAm5g==} + /@fuel-ts/transactions/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-WbbNCZwfY8h3rrhTmKLS7oR4b7QQFhF2Y+5sgbhcxMDmPMIAcicppB9fQJbScZLtWvaJm64MeFNxXuy95MRvtg==} dependencies: '@ethersproject/bytes': 5.6.1 - '@fuel-ts/abi-coder': 0.0.0-master-3caba861 - '@fuel-ts/constants': 0.0.0-master-3caba861 + '@fuel-ts/abi-coder': 0.0.0-master-b32f29b9 + '@fuel-ts/constants': 0.0.0-master-b32f29b9 dev: false - /@fuel-ts/wallet/0.0.0-master-3caba861: - resolution: {integrity: sha512-510SwSLMjEklQHnJKhrLpTdzTS7GCjSUO9b8frRi9nsYbqmQg34L1OOaHevstyby9nhejpzYB/nVKYXTh/+28Q==} + /@fuel-ts/wallet/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-rAEtvvy05C89ixXwFKO/Dxl4AaoR29u26fciaIMmi1CLuGvPBtBn5N7NNL235gyG89StDnoyQEF4hThbVRgQUA==} dependencies: '@ethersproject/bytes': 5.6.1 - '@fuel-ts/constants': 0.0.0-master-3caba861 - '@fuel-ts/hasher': 0.0.0-master-3caba861 - '@fuel-ts/hdwallet': 0.0.0-master-3caba861 - '@fuel-ts/interfaces': 0.0.0-master-3caba861 - '@fuel-ts/math': 0.0.0-master-3caba861 - '@fuel-ts/mnemonic': 0.0.0-master-3caba861 - '@fuel-ts/providers': 0.0.0-master-3caba861 - '@fuel-ts/signer': 0.0.0-master-3caba861 + '@fuel-ts/constants': 0.0.0-master-b32f29b9 + '@fuel-ts/hasher': 0.0.0-master-b32f29b9 + '@fuel-ts/hdwallet': 0.0.0-master-b32f29b9 + '@fuel-ts/interfaces': 0.0.0-master-b32f29b9 + '@fuel-ts/math': 0.0.0-master-b32f29b9 + '@fuel-ts/mnemonic': 0.0.0-master-b32f29b9 + '@fuel-ts/providers': 0.0.0-master-b32f29b9 + '@fuel-ts/signer': 0.0.0-master-b32f29b9 transitivePeerDependencies: - encoding dev: false - /@fuel-ts/wordlists/0.0.0-master-3caba861: - resolution: {integrity: sha512-grWj1NhxL3X8et/4ehMPI7ItB/KMTdHKP/6qAKdeP+rEcvTtBfuQJ8UxNrjUsLnsky2y1uT8XRJaG6uCuJQb7Q==} + /@fuel-ts/wordlists/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-BDpHmcUrC6fz2I2zzAy+JJlYLiQ5Urd1+Gf2Rql4jw8uguS01ud3tiVaqSw2tPpnORcgMLFjO6dJRsRIGkt6vg==} dev: false - /@headlessui/react/1.6.4_ef5jwxihqo6n7gxfmzogljlgcm: - resolution: {integrity: sha512-0yqz1scwbFtwljmbbKjXsSGl5ABEYNICVHZnMCWo0UtOZodo2Tpu94uOVgCRjRZ77l2WcTi2S0uidINDvG7lsA==} + /@headlessui/react/1.6.5_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-3VkKteDxlxf3fE0KbfO9t60KC1lM7YNpZggLpwzVNg1J/zwL+h+4N7MBlFDVpInZI3rKlZGpNx0PWsG/9c2vQg==} engines: {node: '>=10'} peerDependencies: - react: ^16 || ^17 || ^18 - react-dom: ^16 || ^17 || ^18 + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 dev: false /@humanwhocodes/config-array/0.9.5: @@ -2270,14 +2281,14 @@ packages: /@humanwhocodes/object-schema/1.2.1: resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} - /@internationalized/date/3.0.0-rc.1: - resolution: {integrity: sha512-IHc1NqUTA/fo9nf0pwRXrMjrabJ/9vTw5RIFAF3qS8JsdEGnw3dIyDb/+ipjEEqZyHVHHXwnqD8hKM18gGoWTg==} + /@internationalized/date/3.0.0: + resolution: {integrity: sha512-mvlQCeYNg7JgO+QtIIx1zFJx10CJNVnt8cOjW2pYab1Ap/c7BYybS37Z5oTCdmRZbvnpmWtjhOEH324zlgWHLw==} dependencies: '@babel/runtime': 7.18.3 dev: false - /@internationalized/message/3.0.7: - resolution: {integrity: sha512-f+3VC8NIR5rbk3un9WnGRNpAViWOUbnB2LfzYGlpC38XZ1GzCzi2AcCQ8qhgENXiNk8qetZ1TwJYmCZ/M8UM4Q==} + /@internationalized/message/3.0.8: + resolution: {integrity: sha512-5B9zvBgyPZi0ciPgisW835WTuvjVIWFf4IJex1Swb5mDwonbi0lO2teAjBVGV25NTI0OKq1GM9PAWXXUzv6Waw==} dependencies: '@babel/runtime': 7.18.3 intl-messageformat: 9.13.0 @@ -2791,343 +2802,432 @@ packages: '@babel/runtime': 7.18.3 dev: false - /@radix-ui/react-accordion/0.1.6_react@18.1.0: + /@radix-ui/react-accordion/0.1.6_react@18.2.0: resolution: {integrity: sha512-LOXlqPU6y6EMBopdRIKCWFvMPY1wPTQ4uJiX7ZVxldrMJcM7imBzI3wlRTkPCHZ3FLHmpuw+cQi3du23pzJp1g==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 '@radix-ui/primitive': 0.1.0 - '@radix-ui/react-collapsible': 0.1.6_react@18.1.0 - '@radix-ui/react-collection': 0.1.4_react@18.1.0 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - '@radix-ui/react-context': 0.1.1_react@18.1.0 - '@radix-ui/react-id': 0.1.5_react@18.1.0 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - '@radix-ui/react-use-controllable-state': 0.1.0_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-collapsible': 0.1.6_react@18.2.0 + '@radix-ui/react-collection': 0.1.4_react@18.2.0 + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + '@radix-ui/react-context': 0.1.1_react@18.2.0 + '@radix-ui/react-id': 0.1.5_react@18.2.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + '@radix-ui/react-use-controllable-state': 0.1.0_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-alert-dialog/0.1.7_eurjwfem4ie5nnznw6gmhlbswe: + /@radix-ui/react-alert-dialog/0.1.7_twyhzqqpkwvvgrmyeapdo6i4my: resolution: {integrity: sha512-b0+TWr0VRWMWM7QcXvvcwbMGNzpTmvPBSBpYcoaD+QnVo3jdJt0k0bghwbYBuywzdyuRNUFf33xwah/57w09QA==} peerDependencies: - react: '>=16.8' - react-dom: ^16.8 || ^17.0 + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: '@babel/runtime': 7.18.3 '@radix-ui/primitive': 0.1.0 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - '@radix-ui/react-context': 0.1.1_react@18.1.0 - '@radix-ui/react-dialog': 0.1.7_eurjwfem4ie5nnznw6gmhlbswe - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - '@radix-ui/react-slot': 0.1.2_react@18.1.0 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + '@radix-ui/react-context': 0.1.1_react@18.2.0 + '@radix-ui/react-dialog': 0.1.7_twyhzqqpkwvvgrmyeapdo6i4my + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + '@radix-ui/react-slot': 0.1.2_react@18.2.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 transitivePeerDependencies: - '@types/react' dev: false - /@radix-ui/react-arrow/0.1.4_react@18.1.0: + /@radix-ui/react-arrow/0.1.4_react@18.2.0: resolution: {integrity: sha512-BB6XzAb7Ml7+wwpFdYVtZpK1BlMgqyafSQNGzhIpSZ4uXvXOHPlR5GP8M449JkeQzgQjv9Mp1AsJxFC0KuOtuA==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-collapsible/0.1.6_react@18.1.0: + /@radix-ui/react-collapsible/0.1.6_react@18.2.0: resolution: {integrity: sha512-Gkf8VuqMc6HTLzA2AxVYnyK6aMczVLpatCjdD9Lj4wlYLXCz9KtiqZYslLMeqnQFLwLyZS0WKX/pQ8j5fioIBw==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 '@radix-ui/primitive': 0.1.0 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - '@radix-ui/react-context': 0.1.1_react@18.1.0 - '@radix-ui/react-id': 0.1.5_react@18.1.0 - '@radix-ui/react-presence': 0.1.2_react@18.1.0 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - '@radix-ui/react-use-controllable-state': 0.1.0_react@18.1.0 - '@radix-ui/react-use-layout-effect': 0.1.0_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + '@radix-ui/react-context': 0.1.1_react@18.2.0 + '@radix-ui/react-id': 0.1.5_react@18.2.0 + '@radix-ui/react-presence': 0.1.2_react@18.2.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + '@radix-ui/react-use-controllable-state': 0.1.0_react@18.2.0 + '@radix-ui/react-use-layout-effect': 0.1.0_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-collection/0.1.4_react@18.1.0: + /@radix-ui/react-collection/0.1.4_react@18.2.0: resolution: {integrity: sha512-3muGI15IdgaDFjOcO7xX8a35HQRBRF6LH9pS6UCeZeRmbslkVeHyJRQr2rzICBUoX7zgIA0kXyMDbpQnJGyJTA==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - '@radix-ui/react-context': 0.1.1_react@18.1.0 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - '@radix-ui/react-slot': 0.1.2_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + '@radix-ui/react-context': 0.1.1_react@18.2.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + '@radix-ui/react-slot': 0.1.2_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-compose-refs/0.1.0_react@18.1.0: + /@radix-ui/react-compose-refs/0.1.0_react@18.2.0: resolution: {integrity: sha512-eyclbh+b77k+69Dk72q3694OHrn9B3QsoIRx7ywX341U9RK1ThgQjMFZoPtmZNQTksXHLNEiefR8hGVeFyInGg==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 + react: 18.2.0 dev: false - /@radix-ui/react-context/0.1.1_react@18.1.0: + /@radix-ui/react-context/0.1.1_react@18.2.0: resolution: {integrity: sha512-PkyVX1JsLBioeu0jB9WvRpDBBLtLZohVDT3BB5CTSJqActma8S8030P57mWZb4baZifMvN7KKWPAA40UmWKkQg==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 + react: 18.2.0 dev: false - /@radix-ui/react-dialog/0.1.7_eurjwfem4ie5nnznw6gmhlbswe: + /@radix-ui/react-dialog/0.1.7_twyhzqqpkwvvgrmyeapdo6i4my: resolution: {integrity: sha512-jXt8srGhHBRvEr9jhEAiwwJzWCWZoGRJ030aC9ja/gkRJbZdy0iD3FwXf+Ff4RtsZyLUMHW7VUwFOlz3Ixe1Vw==} peerDependencies: - react: ^16.8 || ^17.0 - react-dom: ^16.8 || ^17.0 + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: '@babel/runtime': 7.18.3 '@radix-ui/primitive': 0.1.0 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - '@radix-ui/react-context': 0.1.1_react@18.1.0 - '@radix-ui/react-dismissable-layer': 0.1.5_react@18.1.0 - '@radix-ui/react-focus-guards': 0.1.0_react@18.1.0 - '@radix-ui/react-focus-scope': 0.1.4_react@18.1.0 - '@radix-ui/react-id': 0.1.5_react@18.1.0 - '@radix-ui/react-portal': 0.1.4_ef5jwxihqo6n7gxfmzogljlgcm - '@radix-ui/react-presence': 0.1.2_react@18.1.0 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - '@radix-ui/react-slot': 0.1.2_react@18.1.0 - '@radix-ui/react-use-controllable-state': 0.1.0_react@18.1.0 + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + '@radix-ui/react-context': 0.1.1_react@18.2.0 + '@radix-ui/react-dismissable-layer': 0.1.5_react@18.2.0 + '@radix-ui/react-focus-guards': 0.1.0_react@18.2.0 + '@radix-ui/react-focus-scope': 0.1.4_react@18.2.0 + '@radix-ui/react-id': 0.1.5_react@18.2.0 + '@radix-ui/react-portal': 0.1.4_biqbaboplfbrettd7655fr4n2y + '@radix-ui/react-presence': 0.1.2_react@18.2.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + '@radix-ui/react-slot': 0.1.2_react@18.2.0 + '@radix-ui/react-use-controllable-state': 0.1.0_react@18.2.0 aria-hidden: 1.1.3 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 - react-remove-scroll: 2.5.4_cbpnieqasrszcwkqeh5i7z7nse + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-remove-scroll: 2.5.4_luyos4mouogwq6z3wafb3re4ce transitivePeerDependencies: - '@types/react' dev: false - /@radix-ui/react-dismissable-layer/0.1.5_react@18.1.0: + /@radix-ui/react-dismissable-layer/0.1.5_react@18.2.0: resolution: {integrity: sha512-J+fYWijkX4M4QKwf9dtu1oC0U6e6CEl8WhBp3Ad23yz2Hia0XCo6Pk/mp5CAFy4QBtQedTSkhW05AdtSOEoajQ==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 '@radix-ui/primitive': 0.1.0 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - '@radix-ui/react-use-body-pointer-events': 0.1.1_react@18.1.0 - '@radix-ui/react-use-callback-ref': 0.1.0_react@18.1.0 - '@radix-ui/react-use-escape-keydown': 0.1.0_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + '@radix-ui/react-use-body-pointer-events': 0.1.1_react@18.2.0 + '@radix-ui/react-use-callback-ref': 0.1.0_react@18.2.0 + '@radix-ui/react-use-escape-keydown': 0.1.0_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-focus-guards/0.1.0_react@18.1.0: + /@radix-ui/react-focus-guards/0.1.0_react@18.2.0: resolution: {integrity: sha512-kRx/swAjEfBpQ3ns7J3H4uxpXuWCqN7MpALiSDOXiyo2vkWv0L9sxvbpZeTulINuE3CGMzicVMuNc/VWXjFKOg==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 + react: 18.2.0 dev: false - /@radix-ui/react-focus-scope/0.1.4_react@18.1.0: + /@radix-ui/react-focus-scope/0.1.4_react@18.2.0: resolution: {integrity: sha512-fbA4ES3H4Wkxp+OeLhvN6SwL7mXNn/aBtUf7DRYxY9+Akrf7dRxl2ck4lgcpPsSg3zSDsEwLcY+h5cmj5yvlug==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - '@radix-ui/react-use-callback-ref': 0.1.0_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + '@radix-ui/react-use-callback-ref': 0.1.0_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-id/0.1.5_react@18.1.0: + /@radix-ui/react-id/0.1.5_react@18.2.0: resolution: {integrity: sha512-IPc4H/63bes0IZ1GJJozSEkSWcDyhNGtKFWUpJ+XtaLyQ1X3x7Mf6fWwWhDcpqlYEP+5WtAvfqcyEsyjP+ZhBQ==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-use-layout-effect': 0.1.0_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-use-layout-effect': 0.1.0_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-popper/0.1.4_react@18.1.0: + /@radix-ui/react-popper/0.1.4_react@18.2.0: resolution: {integrity: sha512-18gDYof97t8UQa7zwklG1Dr8jIdj3u+rVOQLzPi9f5i1YQak/pVGkaqw8aY+iDUknKKuZniTk/7jbAJUYlKyOw==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 '@radix-ui/popper': 0.1.0 - '@radix-ui/react-arrow': 0.1.4_react@18.1.0 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - '@radix-ui/react-context': 0.1.1_react@18.1.0 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - '@radix-ui/react-use-rect': 0.1.1_react@18.1.0 - '@radix-ui/react-use-size': 0.1.1_react@18.1.0 + '@radix-ui/react-arrow': 0.1.4_react@18.2.0 + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + '@radix-ui/react-context': 0.1.1_react@18.2.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + '@radix-ui/react-use-rect': 0.1.1_react@18.2.0 + '@radix-ui/react-use-size': 0.1.1_react@18.2.0 '@radix-ui/rect': 0.1.1 - react: 18.1.0 + react: 18.2.0 dev: false - /@radix-ui/react-portal/0.1.4_ef5jwxihqo6n7gxfmzogljlgcm: + /@radix-ui/react-portal/0.1.4_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-MO0wRy2eYRTZ/CyOri9NANCAtAtq89DEtg90gicaTlkCfdqCLEBsLb+/q66BZQTr3xX/Vq01nnVfc/TkCqoqvw==} peerDependencies: - react: ^16.8 || ^17.0 - react-dom: ^16.8 || ^17.0 + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - '@radix-ui/react-use-layout-effect': 0.1.0_react@18.1.0 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + '@radix-ui/react-use-layout-effect': 0.1.0_react@18.2.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 dev: false - /@radix-ui/react-presence/0.1.2_react@18.1.0: + /@radix-ui/react-presence/0.1.2_react@18.2.0: resolution: {integrity: sha512-3BRlFZraooIUfRlyN+b/Xs5hq1lanOOo/+3h6Pwu2GMFjkGKKa4Rd51fcqGqnVlbr3jYg+WLuGyAV4KlgqwrQw==} peerDependencies: - react: '>=16.8' + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - '@radix-ui/react-use-layout-effect': 0.1.0_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + '@radix-ui/react-use-layout-effect': 0.1.0_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-primitive/0.1.4_react@18.1.0: + /@radix-ui/react-primitive/0.1.4_react@18.2.0: resolution: {integrity: sha512-6gSl2IidySupIMJFjYnDIkIWRyQdbu/AHK7rbICPani+LW4b0XdxBXc46og/iZvuwW8pjCS8I2SadIerv84xYA==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-slot': 0.1.2_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-slot': 0.1.2_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-slot/0.1.2_react@18.1.0: + /@radix-ui/react-slot/0.1.2_react@18.2.0: resolution: {integrity: sha512-ADkqfL+agEzEguU3yS26jfB50hRrwf7U4VTwAOZEmi/g+ITcBWe12yM46ueS/UCIMI9Py+gFUaAdxgxafFvY2Q==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-tooltip/0.1.7_ef5jwxihqo6n7gxfmzogljlgcm: + /@radix-ui/react-tooltip/0.1.7_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-eiBUsVOHenZ0JR16tl970bB0DafJBz6mFgSGfIGIVpflFj0LIsIDiLMsYyvYdx1KwwsIUDTEZtxcPm/sWjPzqA==} peerDependencies: - react: ^16.8 || ^17.0 - react-dom: ^16.8 || ^17.0 + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: '@babel/runtime': 7.18.3 '@radix-ui/primitive': 0.1.0 - '@radix-ui/react-compose-refs': 0.1.0_react@18.1.0 - '@radix-ui/react-context': 0.1.1_react@18.1.0 - '@radix-ui/react-id': 0.1.5_react@18.1.0 - '@radix-ui/react-popper': 0.1.4_react@18.1.0 - '@radix-ui/react-portal': 0.1.4_ef5jwxihqo6n7gxfmzogljlgcm - '@radix-ui/react-presence': 0.1.2_react@18.1.0 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - '@radix-ui/react-slot': 0.1.2_react@18.1.0 - '@radix-ui/react-use-controllable-state': 0.1.0_react@18.1.0 - '@radix-ui/react-use-escape-keydown': 0.1.0_react@18.1.0 - '@radix-ui/react-use-previous': 0.1.1_react@18.1.0 - '@radix-ui/react-use-rect': 0.1.1_react@18.1.0 - '@radix-ui/react-visually-hidden': 0.1.4_react@18.1.0 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 - dev: false - - /@radix-ui/react-use-body-pointer-events/0.1.1_react@18.1.0: + '@radix-ui/react-compose-refs': 0.1.0_react@18.2.0 + '@radix-ui/react-context': 0.1.1_react@18.2.0 + '@radix-ui/react-id': 0.1.5_react@18.2.0 + '@radix-ui/react-popper': 0.1.4_react@18.2.0 + '@radix-ui/react-portal': 0.1.4_biqbaboplfbrettd7655fr4n2y + '@radix-ui/react-presence': 0.1.2_react@18.2.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + '@radix-ui/react-slot': 0.1.2_react@18.2.0 + '@radix-ui/react-use-controllable-state': 0.1.0_react@18.2.0 + '@radix-ui/react-use-escape-keydown': 0.1.0_react@18.2.0 + '@radix-ui/react-use-previous': 0.1.1_react@18.2.0 + '@radix-ui/react-use-rect': 0.1.1_react@18.2.0 + '@radix-ui/react-visually-hidden': 0.1.4_react@18.2.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + dev: false + + /@radix-ui/react-use-body-pointer-events/0.1.1_react@18.2.0: resolution: {integrity: sha512-R8leV2AWmJokTmERM8cMXFHWSiv/fzOLhG/JLmRBhLTAzOj37EQizssq4oW0Z29VcZy2tODMi9Pk/htxwb+xpA==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-use-layout-effect': 0.1.0_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-use-layout-effect': 0.1.0_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-use-callback-ref/0.1.0_react@18.1.0: + /@radix-ui/react-use-callback-ref/0.1.0_react@18.2.0: resolution: {integrity: sha512-Va041McOFFl+aV+sejvl0BS2aeHx86ND9X/rVFmEFQKTXCp6xgUK0NGUAGcgBlIjnJSbMYPGEk1xKSSlVcN2Aw==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 + react: 18.2.0 dev: false - /@radix-ui/react-use-controllable-state/0.1.0_react@18.1.0: + /@radix-ui/react-use-controllable-state/0.1.0_react@18.2.0: resolution: {integrity: sha512-zv7CX/PgsRl46a52Tl45TwqwVJdmqnlQEQhaYMz/yBOD2sx2gCkCFSoF/z9mpnYWmS6DTLNTg5lIps3fV6EnXg==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-use-callback-ref': 0.1.0_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-use-callback-ref': 0.1.0_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-use-escape-keydown/0.1.0_react@18.1.0: + /@radix-ui/react-use-escape-keydown/0.1.0_react@18.2.0: resolution: {integrity: sha512-tDLZbTGFmvXaazUXXv8kYbiCcbAE8yKgng9s95d8fCO+Eundv0Jngbn/hKPhDDs4jj9ChwRX5cDDnlaN+ugYYQ==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-use-callback-ref': 0.1.0_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-use-callback-ref': 0.1.0_react@18.2.0 + react: 18.2.0 dev: false - /@radix-ui/react-use-layout-effect/0.1.0_react@18.1.0: + /@radix-ui/react-use-layout-effect/0.1.0_react@18.2.0: resolution: {integrity: sha512-+wdeS51Y+E1q1Wmd+1xSSbesZkpVj4jsg0BojCbopWvgq5iBvixw5vgemscdh58ep98BwUbsFYnrywFhV9yrVg==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 + react: 18.2.0 dev: false - /@radix-ui/react-use-previous/0.1.1_react@18.1.0: + /@radix-ui/react-use-previous/0.1.1_react@18.2.0: resolution: {integrity: sha512-O/ZgrDBr11dR8rhO59ED8s5zIXBRFi8MiS+CmFGfi7MJYdLbfqVOmQU90Ghf87aifEgWe6380LA69KBneaShAg==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 + react: 18.2.0 dev: false - /@radix-ui/react-use-rect/0.1.1_react@18.1.0: + /@radix-ui/react-use-rect/0.1.1_react@18.2.0: resolution: {integrity: sha512-kHNNXAsP3/PeszEmM/nxBBS9Jbo93sO+xuMTcRfwzXsmxT5gDXQzAiKbZQ0EecCPtJIzqvr7dlaQi/aP1PKYqQ==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 '@radix-ui/rect': 0.1.1 - react: 18.1.0 + react: 18.2.0 dev: false - /@radix-ui/react-use-size/0.1.1_react@18.1.0: + /@radix-ui/react-use-size/0.1.1_react@18.2.0: resolution: {integrity: sha512-pTgWM5qKBu6C7kfKxrKPoBI2zZYZmp2cSXzpUiGM3qEBQlMLtYhaY2JXdXUCxz+XmD1YEjc8oRwvyfsD4AG4WA==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 + react: 18.2.0 dev: false - /@radix-ui/react-visually-hidden/0.1.4_react@18.1.0: + /@radix-ui/react-visually-hidden/0.1.4_react@18.2.0: resolution: {integrity: sha512-K/q6AEEzqeeEq/T0NPChvBqnwlp8Tl4NnQdrI/y8IOY7BRR+Ug0PEsVk6g48HJ7cA1//COugdxXXVVK/m0X1mA==} peerDependencies: - react: ^16.8 || ^17.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@radix-ui/react-primitive': 0.1.4_react@18.1.0 - react: 18.1.0 + '@radix-ui/react-primitive': 0.1.4_react@18.2.0 + react: 18.2.0 dev: false /@radix-ui/rect/0.1.1: @@ -3136,394 +3236,497 @@ packages: '@babel/runtime': 7.18.3 dev: false - /@react-aria/button/3.5.0_react@18.1.0: - resolution: {integrity: sha512-S15W77YemT5g8jNHr8QpIHqT242TxpiBwzj3D0HsQFKoTEb5uXoNAIqZinDjhmbl4ovx2s7h/XevqDNEzvjAtw==} + /@react-aria/button/3.5.1_react@18.2.0: + resolution: {integrity: sha512-M0AaDeJoM4wu2xkv1FvbhuvWB78yF8yNE91KkyEW+TMBiEjSaij61jyov95m08DT2EXSxuXnch3BoP8s3XHj4g==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/focus': 3.6.0_react@18.1.0 - '@react-aria/interactions': 3.9.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-stately/toggle': 3.3.0_react@18.1.0 - '@react-types/button': 3.5.0_react@18.1.0 - react: 18.1.0 + '@react-aria/focus': 3.6.1_react@18.2.0 + '@react-aria/interactions': 3.9.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-stately/toggle': 3.3.1_react@18.2.0 + '@react-types/button': 3.5.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-aria/dialog/3.2.0_react@18.1.0: - resolution: {integrity: sha512-ScjjfpNw9cvznuGjG+Q15U6wvLkwF++0NbE7v9PILWp1Vs3UHFyKJ7VrxUiDuG20rM3gfTYP8hi55CjwY7wbNA==} + /@react-aria/dialog/3.2.1_react@18.2.0: + resolution: {integrity: sha512-q3834JCNXcVSSfiez8R+6OunQzwiaM/sGctklRVBUooo80nJbPhnegumKiYe1Va4Gz7i/aLZwSEeK4AU3GMA9Q==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/focus': 3.6.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-stately/overlays': 3.3.0_react@18.1.0 - '@react-types/dialog': 3.4.0_react@18.1.0 - react: 18.1.0 + '@react-aria/focus': 3.6.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-stately/overlays': 3.3.1_react@18.2.0 + '@react-types/dialog': 3.4.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-aria/focus/3.6.0_react@18.1.0: - resolution: {integrity: sha512-1XuwDvhrmLcNnYHBFzwmZOoXuxkybRc8MUhiGLYRD1aVX1h9GarglYo9sfbGZNRO5jxMptXjtJv2rdWz1mHmQw==} + /@react-aria/focus/3.6.1_react@18.2.0: + resolution: {integrity: sha512-4IHAu+826jC3SjWwuaYhCr0qhWg4XwmJIUEhcL1wbw3fq2dsjIBwEJ5HoayhluiVCfjGbcQcJNf1L4Vj3VTp4w==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/interactions': 3.9.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 + '@react-aria/interactions': 3.9.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 clsx: 1.1.1 - react: 18.1.0 + react: 18.2.0 dev: false - /@react-aria/i18n/3.4.0_react@18.1.0: - resolution: {integrity: sha512-2pU13zT9bgD4eMlqfJ/Um2wjYRS7ORvR0jqGSfNzY9Lx+1IeSCqTkBNubT7bCV+Oc0LMUR93fGRDxfdtMyJCog==} + /@react-aria/i18n/3.4.1_react@18.2.0: + resolution: {integrity: sha512-/nrMpWOFmbn9R04JfWgGFRJ/oYBZLIydLBuWVw3ugwyKrHhIj/xRFrAMcGKspEZIymIANv9cnoTYhwk8d/DCEg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@internationalized/date': 3.0.0-rc.1 - '@internationalized/message': 3.0.7 + '@internationalized/date': 3.0.0 + '@internationalized/message': 3.0.8 '@internationalized/number': 3.1.1 - '@react-aria/ssr': 3.2.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-aria/ssr': 3.2.0_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-aria/interactions/3.9.0_react@18.1.0: - resolution: {integrity: sha512-tf9vJtHf7DSnj4e/q19hoO5h61xb0qxNXUkOwaVwU1XlaA+eh+Qas2RF0GIMARLj+JhGX9y2nLjw3FK8F+pItQ==} + /@react-aria/interactions/3.9.1_react@18.2.0: + resolution: {integrity: sha512-qPTJpUwIiis2OwpVzDd3I8dBjBkelDnvAW+dJkX+8B840JP5a7E1zVoAuR7OOAXqKa95R7miwK+5la1aSeWoDg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 - /@react-aria/label/3.3.0_react@18.1.0: - resolution: {integrity: sha512-E8vOEWv04xGasDigbNtB0JOcq5ZLyPEbbOFSa5VgB7LfXu3i+82ZSAjTA1OtZwOc6MiiXRs5BuKx5HgiZn3HHA==} + /@react-aria/label/3.3.1_react@18.2.0: + resolution: {integrity: sha512-Md4AEYBNByD8e6okbM/GR320++N/i4/xZZXdWtDVIfwpMVnLZ0v/ZPEi4DgLTc4Rwhm021s2qpYhZHQYThOd4A==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-types/label': 3.6.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-types/label': 3.6.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-aria/link/3.3.0_react@18.1.0: - resolution: {integrity: sha512-D/3g6YsyIb1bYkWmphCVLrd22op/Yc8bu1mdejYigXpNJpTZVZwjyOgzMYkzuGHDKF/5hy+Nc33RrKarPaZwnQ==} + /@react-aria/link/3.3.1_react@18.2.0: + resolution: {integrity: sha512-so77s4IjZo8VGi85v6oDUzsQRoAwQH4LUUUpDLbKxEb5YaiN4/3yCVibeZrWzIzOTCOyLMXPbGwxHOUsl8EhVg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/focus': 3.6.0_react@18.1.0 - '@react-aria/interactions': 3.9.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-types/link': 3.3.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-aria/focus': 3.6.1_react@18.2.0 + '@react-aria/interactions': 3.9.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-types/link': 3.3.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-aria/menu/3.5.0_ef5jwxihqo6n7gxfmzogljlgcm: - resolution: {integrity: sha512-Y5L9ESVnTG2eUOmLk33oQEl5UEK/hCw50udOEqjPBgOVv4drIr8sc4ZcoB0U6IVVKbLHEskhW/ExqlJd6GSACQ==} + /@react-aria/menu/3.5.1_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-6l9m3/zs3EwSQ5B62wYaLGYP0zif6Esyh+rnxvbwlknsqUsTTDYc8Ly25M5PcGK4oeeLjHajPdFq6hMfNNhMgg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/i18n': 3.4.0_react@18.1.0 - '@react-aria/interactions': 3.9.0_react@18.1.0 - '@react-aria/overlays': 3.9.0_ef5jwxihqo6n7gxfmzogljlgcm - '@react-aria/selection': 3.9.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-stately/collections': 3.4.0_react@18.1.0 - '@react-stately/menu': 3.3.0_react@18.1.0 - '@react-stately/tree': 3.3.0_react@18.1.0 - '@react-types/button': 3.5.0_react@18.1.0 - '@react-types/menu': 3.6.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 - dev: false - - /@react-aria/overlays/3.9.0_ef5jwxihqo6n7gxfmzogljlgcm: - resolution: {integrity: sha512-YeZ+/0yfBAcqhuRF/Aas5ga9rZWff3EkhisEy1yXjOrf5veedqb05CsyjRkefZzmUeUggfq/AmqX0DJBlZFbxg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + '@react-aria/i18n': 3.4.1_react@18.2.0 + '@react-aria/interactions': 3.9.1_react@18.2.0 + '@react-aria/overlays': 3.9.1_biqbaboplfbrettd7655fr4n2y + '@react-aria/selection': 3.9.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-stately/collections': 3.4.1_react@18.2.0 + '@react-stately/menu': 3.3.1_react@18.2.0 + '@react-stately/tree': 3.3.1_react@18.2.0 + '@react-types/button': 3.5.1_react@18.2.0 + '@react-types/menu': 3.6.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + dev: false + + /@react-aria/overlays/3.9.1_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-gQlM9MQX+RZiX5kxuyX5C2hv7Wm0k1wM4VBfeBmcPbcOGJz3v//GN002PuSUjSTx6eaTNuQeks7Qx0Wovsnd5A==} + peerDependencies: + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/i18n': 3.4.0_react@18.1.0 - '@react-aria/interactions': 3.9.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-aria/visually-hidden': 3.3.0_react@18.1.0 - '@react-stately/overlays': 3.3.0_react@18.1.0 - '@react-types/button': 3.5.0_react@18.1.0 - '@react-types/overlays': 3.6.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 + '@react-aria/i18n': 3.4.1_react@18.2.0 + '@react-aria/interactions': 3.9.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-aria/visually-hidden': 3.3.1_react@18.2.0 + '@react-stately/overlays': 3.3.1_react@18.2.0 + '@react-types/button': 3.5.1_react@18.2.0 + '@react-types/overlays': 3.6.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 dom-helpers: 5.2.1 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 - react-transition-group: 4.4.2_ef5jwxihqo6n7gxfmzogljlgcm + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-transition-group: 4.4.2_biqbaboplfbrettd7655fr4n2y dev: false - /@react-aria/selection/3.9.0_react@18.1.0: - resolution: {integrity: sha512-dDtMpi1RkG056zKQEzI8bm3p4KvRjq7+qqPEXTSQIqVU2+SfaiPo3Kmx26whN8Yd5tOcGQyNrKAZbC0GriqOFA==} + /@react-aria/selection/3.9.1_react@18.2.0: + resolution: {integrity: sha512-xUjhiVu5HLAxun9crpBLjfXfJc75oMgzKoCwRTCZinPvTdLLqYVFy6U/lTmQzkulIHLyUaJ94EE8IsfSUUzfLw==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/focus': 3.6.0_react@18.1.0 - '@react-aria/i18n': 3.4.0_react@18.1.0 - '@react-aria/interactions': 3.9.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-stately/collections': 3.4.0_react@18.1.0 - '@react-stately/selection': 3.10.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-aria/focus': 3.6.1_react@18.2.0 + '@react-aria/i18n': 3.4.1_react@18.2.0 + '@react-aria/interactions': 3.9.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-stately/collections': 3.4.1_react@18.2.0 + '@react-stately/selection': 3.10.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-aria/ssr/3.2.0_react@18.1.0: + /@react-aria/ssr/3.2.0_react@18.2.0: resolution: {integrity: sha512-wwJFdkl+Q8NU5yJ4NvdAOqx5LM3QtUVoSjuK7Ey8jZ4WS4bB0EqT3Kr3IInBs257HzZ5nXCiKXKE4NGXXuIRWA==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 + react: 18.2.0 - /@react-aria/textfield/3.6.0_react@18.1.0: - resolution: {integrity: sha512-cyI0fo4imJHTifX8AkTSqQN2or+IS1gF0F2/N+CzvPWIX7LbePchKvmrADKXT4v13W0mr9sBP9NdL6k6TzIrMQ==} + /@react-aria/textfield/3.6.1_react@18.2.0: + resolution: {integrity: sha512-MX0xDIin1rZweEVKqEAqLjw7BsNQjjj8FVopNFzRl2tLxf7C+n/cHLdgwf8uVhHOcl9Vcqx/zeKuuZeB//Dvrg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/focus': 3.6.0_react@18.1.0 - '@react-aria/label': 3.3.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - '@react-types/textfield': 3.5.0_react@18.1.0 - react: 18.1.0 + '@react-aria/focus': 3.6.1_react@18.2.0 + '@react-aria/label': 3.3.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + '@react-types/textfield': 3.5.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-aria/tooltip/3.2.0_react@18.1.0: - resolution: {integrity: sha512-JnchvAwt3N+F76gfpxfRLoHU2FRI8hUfMKr1CrcmLGJs996kINiBSIsETobTZhLnPzYk+pLZ26ZoqJYjP1bJwg==} + /@react-aria/tooltip/3.2.1_react@18.2.0: + resolution: {integrity: sha512-wcX87K1UdoMFVugNlbkevgjbqshmfdr00hb5N8GnRT3KlilWnlmDtxQBOYNao4uMQvkwkc4/xcvvpOpuuB1FoQ==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/focus': 3.6.0_react@18.1.0 - '@react-aria/interactions': 3.9.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 - '@react-stately/tooltip': 3.1.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - '@react-types/tooltip': 3.2.0_react@18.1.0 - react: 18.1.0 + '@react-aria/focus': 3.6.1_react@18.2.0 + '@react-aria/interactions': 3.9.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 + '@react-stately/tooltip': 3.1.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + '@react-types/tooltip': 3.2.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-aria/utils/3.13.0_react@18.1.0: - resolution: {integrity: sha512-iF/yYkUVCc2Cgyu7o8oE6w7a67P/M8gXKDR2tp592Be6iUKQPy2kb49VvSh+Bom6Wq/To3h4UBOLFI6I0VXJYA==} + /@react-aria/utils/3.13.1_react@18.2.0: + resolution: {integrity: sha512-usW6RoLKil4ylgDbRcaQ5YblNGv5ZihI4I9NB8pdazhw53cSRyLaygLdmHO33xgpPnAhb6Nb/tv8d5p6cAde+A==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/ssr': 3.2.0_react@18.1.0 - '@react-stately/utils': 3.5.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 + '@react-aria/ssr': 3.2.0_react@18.2.0 + '@react-stately/utils': 3.5.0_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 clsx: 1.1.1 - react: 18.1.0 + react: 18.2.0 - /@react-aria/visually-hidden/3.3.0_react@18.1.0: - resolution: {integrity: sha512-pnm4CzO/pI/2xfDMY9OcnlLqYYpaE1bIAwDdFzkXr6ldcR+4kG6N0dJprL6x+ZMgXbztfxUDSPLmexVQShmFsQ==} + /@react-aria/visually-hidden/3.3.1_react@18.2.0: + resolution: {integrity: sha512-HDdYIaRq9BFEwQQ2vkySHcHEj+FaJ/S6bJ4nO+CQwxzVMUcfbVXDS4lfGzsQdDLoV5PaKYajryUZQbUAk0Cfng==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-aria/interactions': 3.9.0_react@18.1.0 - '@react-aria/utils': 3.13.0_react@18.1.0 + '@react-aria/interactions': 3.9.1_react@18.2.0 + '@react-aria/utils': 3.13.1_react@18.2.0 clsx: 1.1.1 - react: 18.1.0 + react: 18.2.0 dev: false - /@react-stately/collections/3.4.0_react@18.1.0: - resolution: {integrity: sha512-ODS/Nm5OH4XqLugKII7jGc698XnaQEJo423jKa0jhyIpSnviqFRpXRbrPiFPAcaE3S4d/pp20HdDotWZAbM8Ww==} + /@react-stately/collections/3.4.1_react@18.2.0: + resolution: {integrity: sha512-CAYFGmzuc/u6qqJru57gXt50JqUz9maLvGO2YMl4ZaQ1kV2/slDVlMD30GIiBqbuYHvVUqXXJdekjPvl2dOBeQ==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-stately/menu/3.3.0_react@18.1.0: - resolution: {integrity: sha512-kdw8YoynxVha6YNTZvHwrA9b5mxC+v5F4hq/fB6I6tqsyW3ntM/8wIvjpdCS01Nygn03Nnuy2t8atycvEeYH0g==} + /@react-stately/menu/3.3.1_react@18.2.0: + resolution: {integrity: sha512-/S4vTsLQK0plhVp25/MmTM38A40pG7fx4wEynSf/bQzS4Jiz+SzZzOBhF1ByysAZJvwREMuXuzakUjTSxLYdvA==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-stately/overlays': 3.3.0_react@18.1.0 - '@react-stately/utils': 3.5.0_react@18.1.0 - '@react-types/menu': 3.6.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-stately/overlays': 3.3.1_react@18.2.0 + '@react-stately/utils': 3.5.0_react@18.2.0 + '@react-types/menu': 3.6.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-stately/overlays/3.3.0_react@18.1.0: - resolution: {integrity: sha512-x8ASMyhib7mL4ITgZQXUaTGGkFPZz4qPJVThdx9i6q1iu0CpO7hXpPxzrUFKPV+JV/fyXlWbo3n7tWBE2yHTVw==} + /@react-stately/overlays/3.3.1_react@18.2.0: + resolution: {integrity: sha512-IRaK8x9OnwP6p9sojs39hF4nXNqRTt1qydbQMTw876SU94kG2pdqk/vHe4qdGVEaHB/mZ/8wRMntitQ0C6XFKA==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-stately/utils': 3.5.0_react@18.1.0 - '@react-types/overlays': 3.6.0_react@18.1.0 - react: 18.1.0 + '@react-stately/utils': 3.5.0_react@18.2.0 + '@react-types/overlays': 3.6.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-stately/selection/3.10.0_react@18.1.0: - resolution: {integrity: sha512-bHlCoy3tMO1QmSnodpqXMvE7CjMPe4vNhGuSCqU5WiotwswuKuwAWZAoPeKQ6Zh99oUMaX28dUt+FQ9qZhaP9w==} + /@react-stately/selection/3.10.1_react@18.2.0: + resolution: {integrity: sha512-5b68yo4kD1kxAyFJTsGRfMsVCkRS45EgpFCqpNkJzcNQj8YK2IlrqCkb+fM7J0IblbHeVcM5KHf3zGsZA39kog==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-stately/collections': 3.4.0_react@18.1.0 - '@react-stately/utils': 3.5.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-stately/collections': 3.4.1_react@18.2.0 + '@react-stately/utils': 3.5.0_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-stately/toggle/3.3.0_react@18.1.0: - resolution: {integrity: sha512-fiVT1yw9qBBWyfFviUwNR4AcdCnN7TPAX2VpuL7LO7zB1a+sOGiTz3nTnHI4837trvpsXHpCvYXTBMY6yxGEMg==} + /@react-stately/toggle/3.3.1_react@18.2.0: + resolution: {integrity: sha512-JIOPfeZ46vfQqfBygCmyIRL0KJwdHdVQ5PSii5YM0qs/kzaHm3SLGf/iiGjwcRCOsnL50zN9U5YNDtRAEbsncg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-stately/utils': 3.5.0_react@18.1.0 - '@react-types/checkbox': 3.3.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-stately/utils': 3.5.0_react@18.2.0 + '@react-types/checkbox': 3.3.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-stately/tooltip/3.1.0_react@18.1.0: - resolution: {integrity: sha512-Wg7nF7sb1tiMNiLq0tDYBqUhqb2tBZS6ORTPOey1YoOI/wh4QB1OalCC62a3dzFjdv5dhnThdai3d4X1AXya0A==} + /@react-stately/tooltip/3.1.1_react@18.2.0: + resolution: {integrity: sha512-Y+qyIrmnVTLKD+JaePEKx3AZ634+dcJPDLCA4KkmKqVPRIUW3s4N3BE0Jw+uFlBi+xl5tLEdID+bQGd0fl7avA==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-stately/overlays': 3.3.0_react@18.1.0 - '@react-stately/utils': 3.5.0_react@18.1.0 - '@react-types/tooltip': 3.2.0_react@18.1.0 - react: 18.1.0 + '@react-stately/overlays': 3.3.1_react@18.2.0 + '@react-stately/utils': 3.5.0_react@18.2.0 + '@react-types/tooltip': 3.2.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-stately/tree/3.3.0_react@18.1.0: - resolution: {integrity: sha512-Ic3QMRlrLbbnYPEbiraJdDAcrOnaLd7nJK7qG/cq7Jg7gfruqbO4XFzy+2w7I5B2BbXqFCivtCgEQZIYsgMaSw==} + /@react-stately/tree/3.3.1_react@18.2.0: + resolution: {integrity: sha512-s/pcafhvUnt2uOIUWRdTpWCBLnGOuG5e9CAzPkwlUCGFXiI7jIJBT8Y4dLP7Iwx6i9U2wZqs22onxH7GHlGgbw==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@react-stately/collections': 3.4.0_react@18.1.0 - '@react-stately/selection': 3.10.0_react@18.1.0 - '@react-stately/utils': 3.5.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-stately/collections': 3.4.1_react@18.2.0 + '@react-stately/selection': 3.10.1_react@18.2.0 + '@react-stately/utils': 3.5.0_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-stately/utils/3.5.0_react@18.1.0: + /@react-stately/utils/3.5.0_react@18.2.0: resolution: {integrity: sha512-WzzwlQtJrf7egaN+lt02/f/wkFKbcscsbinmXs9pL7QyYm+BCQ9xXj01w0juzt93piZgB/kfIYJqInEdpudh1A==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 + react: 18.2.0 - /@react-types/button/3.5.0_react@18.1.0: - resolution: {integrity: sha512-pxmriCe7rx/kNKuy3KonttD7qHDFclgZ7k/U2hb+w75DpsI7mXs6aFnsk+j5ZeVjsXKXPZwQXbyBhlzvlEJI0A==} + /@react-types/button/3.5.1_react@18.2.0: + resolution: {integrity: sha512-GxTikDKfuztu1r0LWHmqG1AD5yM9F6WFzwAYgLltn8B7RshzpJcYSfpYsh1e64z84YJpEoj+DD8XGGSc0p/rvw==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 - /@react-types/checkbox/3.3.0_react@18.1.0: - resolution: {integrity: sha512-aAlorLrY9mTQ01hBSXP+p5dXVLmhwYwPu+lW8rJSosyaZFtaV6GdNHaYb/NioR5YjiMInableWvIxSuTurrMmA==} + /@react-types/checkbox/3.3.1_react@18.2.0: + resolution: {integrity: sha512-6PlyvfqisuObrltmJdBx88t143NaQ/ibkvuDdsEaiMlJbHKU4m0dbxaYNhGNQ0Jm4AK/x9Rig0tbpMeXjBXaDA==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-types/dialog/3.4.0_react@18.1.0: - resolution: {integrity: sha512-fqX19lXvohx+ybWyzWW3H7oAtDqcmeKbZBdr1G2Sqg8vZg2wg2qw35uqgFEjUhIHM8TQTjdr/LQP7rIMuaEuYw==} + /@react-types/dialog/3.4.1_react@18.2.0: + resolution: {integrity: sha512-tB/zDF4sR0l8GhTz0hl6bZGAYyxbF7UtTHRVVPW1XSDgjM7nuZiJrWb300S8KICj4933+ZmB5DCuzCzEKjIV6g==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - '@react-types/overlays': 3.6.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-types/overlays': 3.6.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 - /@react-types/label/3.6.0_react@18.1.0: - resolution: {integrity: sha512-3P0DOe2wToPpB/fpAZizktpoImTuAuvnnGQOn+lleNUAMp4zbfI2rfGxw0oByOQiKqg7kCVRe1/mw2puKM8p+Q==} + /@react-types/label/3.6.1_react@18.2.0: + resolution: {integrity: sha512-Yjz1qWJ3uAdMYMOKDUiB28Wdc/3kqeuE9BtrLbvqjX/VZcnFgbVEQ6Yy8G9v6pcjEF/EJRl+hcA0deUews/G0w==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-types/link/3.3.0_react@18.1.0: - resolution: {integrity: sha512-R7rtz47Il2OAPF01RXXWVb4DSahBk9YBSgBEbditH8H+UBeG7pr3pKyOdWD/wJgzOpIJYeNSho46iV0+9j+Mrw==} + /@react-types/link/3.3.1_react@18.2.0: + resolution: {integrity: sha512-+kx61SCpH9QI0GIhdrgnkSOcgCpMhgpX+PmiMw7gDv+PiCP1GhSJxNw7bZB6sXLYM0Ye/L76F3f2MrPIfec2xw==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - '@react-aria/interactions': 3.9.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-aria/interactions': 3.9.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 - /@react-types/menu/3.6.0_react@18.1.0: - resolution: {integrity: sha512-GO6GjM+WH+8nOC9c1sVBPE9dYC5vKGBCNA3YxleQq9T2unFB0NOZc8hbzbFcAdwn7NnQbV9eLc0XHpUEkL9NLA==} + /@react-types/menu/3.6.1_react@18.2.0: + resolution: {integrity: sha512-W8ClaYd0t/he5tjg2l/E4bPqUFov041MYKGuTIOTL9dfMsB4eHeV7zmXKA2Li8DJL+E7CkTuaYqTJcP9pcfTzg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - '@react-types/overlays': 3.6.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-types/overlays': 3.6.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-types/overlays/3.6.0_react@18.1.0: - resolution: {integrity: sha512-atoRgctzNHxWE4qhI2YLI/0Y9bicsib3EnaliV0jUQf2oJMr0S8yKVwwx+K0ENh9Ah00XBEFQxkjgP1q3xQQYw==} + /@react-types/overlays/3.6.1_react@18.2.0: + resolution: {integrity: sha512-vkVSC7KvRLugfr9HP2dyV4J5wmI5KxfKyAFdT4j3Q+YfSYQwKa7OT+iTeRHDOIR3ubKnxgoIdQpjurBQTjCWwg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 - /@react-types/shared/3.13.0_react@18.1.0: - resolution: {integrity: sha512-ha+Xzn6gG/aww2nl7A6kYSJdYQypTxdYgNrJvddDB7h0QuyVQTf27iVleOWrmkHQ1TM9Q/FUbMdJ93CgdtP26g==} + /@react-types/shared/3.13.1_react@18.2.0: + resolution: {integrity: sha512-EHQqILDJeDvnloy5VV9lnnEjpCMwH1ghptCfa/lz9Ht9nwco3qGCvUABkWyND7yU1Adt3A/1oJxhpRUu3eTlyg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - react: 18.1.0 + react: 18.2.0 - /@react-types/textfield/3.5.0_react@18.1.0: - resolution: {integrity: sha512-luwzw+nC0qR7pyhofPQxySzew26bvuS2mpsUQ3Ho56X9i8eGQkhJYIawLu4QIQC79cso4Fe7P9GB146cfRWjVA==} + /@react-types/textfield/3.5.1_react@18.2.0: + resolution: {integrity: sha512-EYsljXfGJJJ6B/Buu6BaBm0Kyrf67so6skBCP3odECKIvmBwTKbikHULpe/Od8DBFIvjd7x2ZEzUlMH2hp+eRQ==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 dev: false - /@react-types/tooltip/3.2.0_react@18.1.0: - resolution: {integrity: sha512-q/AHHTOfIYEkmfNwanphgWlcR0R2OKXW5zWXT2KsxQlYXUSqPDxGys044UCCnHgnUS64ihvzJFFmHOc3pgH4Yg==} + /@react-types/tooltip/3.2.1_react@18.2.0: + resolution: {integrity: sha512-1YkpJaIvcVevYbQlOvPqPua5fdwAMrRm4BkLtVRbUL0DerCazCrB/osdQINGOU67XmLU1JIv/xTBMK0Say5Jvg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - '@react-types/overlays': 3.6.0_react@18.1.0 - '@react-types/shared': 3.13.0_react@18.1.0 - react: 18.1.0 + '@react-types/overlays': 3.6.1_react@18.2.0 + '@react-types/shared': 3.13.1_react@18.2.0 + react: 18.2.0 /@rollup/plugin-babel/5.3.1_2p6krh5ny4mu3adm6tzx7itwfm: resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==} @@ -3774,7 +3977,7 @@ packages: '@swc/core': 1.2.197 dev: true - /@tailwindcss/typography/0.5.2_tailwindcss@3.1.2: + /@tailwindcss/typography/0.5.2_tailwindcss@3.1.4: resolution: {integrity: sha512-coq8DBABRPFcVhVIk6IbKyyHUt7YTEC/C992tatFB+yEx5WGBQrCgsSFjxHUr8AWXphWckadVJbominEduYBqw==} peerDependencies: tailwindcss: '>=3.0.0 || >= 3.0.0-alpha.1 || insiders' @@ -3782,7 +3985,7 @@ packages: lodash.castarray: 4.4.0 lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 - tailwindcss: 3.1.2_ts-node@10.8.1 + tailwindcss: 3.1.4_ts-node@10.8.1 dev: false /@testing-library/dom/8.13.0: @@ -3799,12 +4002,26 @@ packages: pretty-format: 27.5.1 dev: false + /@testing-library/dom/8.14.0: + resolution: {integrity: sha512-m8FOdUo77iMTwVRCyzWcqxlEIk+GnopbrRI15a0EaLbpZSCinIVI4kSQzWhkShK83GogvEFJSsHF3Ws0z1vrqA==} + engines: {node: '>=12'} + dependencies: + '@babel/code-frame': 7.16.7 + '@babel/runtime': 7.18.3 + '@types/aria-query': 4.2.2 + aria-query: 5.0.0 + chalk: 4.1.2 + dom-accessibility-api: 0.5.14 + lz-string: 1.4.4 + pretty-format: 27.5.1 + dev: false + /@testing-library/jest-dom/5.16.4: resolution: {integrity: sha512-Gy+IoFutbMQcky0k+bqqumXZ1cTGswLsFqmNLzNdSKkU9KGV2u9oXhukCbbJ9/LRPKiqwxEE8VpV/+YZlfkPUA==} engines: {node: '>=8', npm: '>=6', yarn: '>=1'} dependencies: '@babel/runtime': 7.18.3 - '@types/testing-library__jest-dom': 5.14.3 + '@types/testing-library__jest-dom': 5.14.5 aria-query: 5.0.0 chalk: 3.0.0 css: 3.0.0 @@ -3814,49 +4031,56 @@ packages: redent: 3.0.0 dev: false - /@testing-library/react-hooks/8.0.0_ef5jwxihqo6n7gxfmzogljlgcm: - resolution: {integrity: sha512-uZqcgtcUUtw7Z9N32W13qQhVAD+Xki2hxbTR461MKax8T6Jr8nsUvZB+vcBTkzY2nFvsUet434CsgF0ncW2yFw==} + /@testing-library/react-hooks/8.0.1_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-Aqhl2IVmLt8IovEVarNDFuJDVWVvhnr9/GCU6UUnrYXwgDFF9h2L2o2P9KBni1AST5sT6riAyoukFLyjQUgD/g==} engines: {node: '>=12'} peerDependencies: '@types/react': ^16.9.0 || ^17.0.0 - react: ^16.9.0 || ^17.0.0 - react-dom: ^16.9.0 || ^17.0.0 + react: '*' + react-dom: '*' react-test-renderer: ^16.9.0 || ^17.0.0 peerDependenciesMeta: '@types/react': optional: true + react: + optional: true react-dom: optional: true react-test-renderer: optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 - react-error-boundary: 3.1.4_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-error-boundary: 3.1.4_react@18.2.0 dev: false - /@testing-library/react/13.3.0_ef5jwxihqo6n7gxfmzogljlgcm: + /@testing-library/react/13.3.0_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-DB79aA426+deFgGSjnf5grczDPiL4taK3hFaa+M5q7q20Kcve9eQottOG5kZ74KEr55v0tU2CQormSSDK87zYQ==} engines: {node: '>=12'} peerDependencies: - react: ^18.0.0 - react-dom: ^18.0.0 + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: '@babel/runtime': 7.18.3 - '@testing-library/dom': 8.13.0 + '@testing-library/dom': 8.14.0 '@types/react-dom': 18.0.5 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 dev: false - /@testing-library/user-event/14.2.0_tlwynutqiyp5mns3woioasuxnq: - resolution: {integrity: sha512-+hIlG4nJS6ivZrKnOP7OGsDu9Fxmryj9vCl8x0ZINtTJcCHs2zLsYif5GzuRiBF2ck5GZG2aQr7Msg+EHlnYVQ==} + /@testing-library/user-event/14.2.1_ihvo3xlg2d6kwqju3os3zitn3y: + resolution: {integrity: sha512-HOr1QiODrq+0j9lKU5i10y9TbhxMBMRMGimNx10asdmau9cb8Xb1Vyg0GvTwyIL2ziQyh2kAloOtAQFBQVuecA==} engines: {node: '>=12', npm: '>=6'} peerDependencies: '@testing-library/dom': '>=7.21.4' dependencies: - '@testing-library/dom': 8.13.0 + '@testing-library/dom': 8.14.0 dev: false /@tootallnate/once/2.0.0: @@ -3963,8 +4187,8 @@ packages: '@types/istanbul-lib-report': 3.0.0 dev: true - /@types/jest-axe/3.5.3: - resolution: {integrity: sha512-ad9qI9f+00N8IlOuGh6dnZ6o0BDdV9VhGfTUr1zCejsPvOfZd6eohffe4JYxUoUuRYEftyMcaJ6Ux4+MsOpGHg==} + /@types/jest-axe/3.5.4: + resolution: {integrity: sha512-S0M+Etke9v3o0PjjfA4ijoU8G0+eI+lblpGYFYw2t+PPPnPPzJBX7UKLoQjz1SfIp+Hf/bNMFvoBX8zlFVzdrQ==} dependencies: '@types/jest': 28.1.1 axe-core: 3.5.6 @@ -4025,6 +4249,10 @@ packages: /@types/node/17.0.41: resolution: {integrity: sha512-xA6drNNeqb5YyV5fO3OAEsnXLfO7uF0whiOfPTz5AeDo8KeZFmODKnvwPymMNO8qE/an8pVY/O50tig2SQCrGw==} + dev: true + + /@types/node/18.0.0: + resolution: {integrity: sha512-cHlGmko4gWLVI27cGJntjs/Sj8th9aYwplmZFwmmgYQQvL5NUsgVJG7OddLvNfLqYS31KFN0s3qlaD9qCaxACA==} /@types/normalize-package-data/2.4.1: resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} @@ -4051,18 +4279,18 @@ packages: /@types/react-dom/18.0.5: resolution: {integrity: sha512-OWPWTUrY/NIrjsAPkAk1wW9LZeIjSvkXRhclsFO8CZcZGCOg2G0YZy4ft+rOyYxy8B7ui5iZzi9OkDebZ7/QSA==} dependencies: - '@types/react': 18.0.12 + '@types/react': 18.0.14 /@types/react-google-recaptcha/2.1.5: resolution: {integrity: sha512-iWTjmVttlNgp0teyh7eBXqNOQzVq2RWNiFROWjraOptRnb1OcHJehQnji0sjqIRAk9K0z8stjyhU+OLpPb0N6w==} dependencies: - '@types/react': 18.0.12 + '@types/react': 18.0.14 dev: true /@types/react-helmet/6.1.5: resolution: {integrity: sha512-/ICuy7OHZxR0YCAZLNg9r7I9aijWUWvxaPR6uTuyxe8tAj5RL4Sw1+R6NhXUtOsarkGYPmaHdBDvuXh2DIN/uA==} dependencies: - '@types/react': 18.0.12 + '@types/react': 18.0.14 dev: true /@types/react/18.0.12: @@ -4071,6 +4299,14 @@ packages: '@types/prop-types': 15.7.5 '@types/scheduler': 0.16.2 csstype: 3.1.0 + dev: true + + /@types/react/18.0.14: + resolution: {integrity: sha512-x4gGuASSiWmo0xjDLpm5mPb52syZHJx02VKbqUKdLmKtAwIh63XClGsiTI1K6DO5q7ox4xAsQrU+Gl3+gGXF9Q==} + dependencies: + '@types/prop-types': 15.7.5 + '@types/scheduler': 0.16.2 + csstype: 3.1.0 /@types/resolve/1.17.1: resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} @@ -4097,8 +4333,8 @@ packages: resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==} dev: true - /@types/testing-library__jest-dom/5.14.3: - resolution: {integrity: sha512-oKZe+Mf4ioWlMuzVBaXQ9WDnEm1+umLx0InILg+yvZVBBDmzV5KfZyLrCvadtWcx8+916jLmHafcmqqffl+iIw==} + /@types/testing-library__jest-dom/5.14.5: + resolution: {integrity: sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==} dependencies: '@types/jest': 28.1.1 dev: false @@ -4159,8 +4395,8 @@ packages: - supports-color dev: true - /@typescript-eslint/eslint-plugin/5.27.1_aq7uryhocdbvbqum33pitcm3y4: - resolution: {integrity: sha512-6dM5NKT57ZduNnJfpY81Phe9nc9wolnMCnknb1im6brWi1RYv84nbMS3olJa27B6+irUVV1X/Wb+Am0FjJdGFw==} + /@typescript-eslint/eslint-plugin/5.29.0_qqmbkyiaixvppdwswpytuf2hgm: + resolution: {integrity: sha512-kgTsISt9pM53yRFQmLZ4npj99yGl3x3Pl7z4eA66OuTzAGC4bQB5H5fuLwPnqTKU3yyrrg4MIhjF17UYnL4c0w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: '@typescript-eslint/parser': ^5.0.0 @@ -4170,18 +4406,18 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/parser': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4 - '@typescript-eslint/scope-manager': 5.27.1 - '@typescript-eslint/type-utils': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4 - '@typescript-eslint/utils': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4 + '@typescript-eslint/parser': 5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e + '@typescript-eslint/scope-manager': 5.29.0 + '@typescript-eslint/type-utils': 5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e + '@typescript-eslint/utils': 5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e debug: 4.3.4 - eslint: 8.17.0 + eslint: 8.18.0 functional-red-black-tree: 1.0.1 ignore: 5.2.0 regexpp: 3.2.0 semver: 7.3.7 - tsutils: 3.21.0_typescript@4.7.3 - typescript: 4.7.3 + tsutils: 3.21.0_typescript@4.7.4 + typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: false @@ -4222,8 +4458,8 @@ packages: - supports-color dev: true - /@typescript-eslint/parser/5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4: - resolution: {integrity: sha512-7Va2ZOkHi5NP+AZwb5ReLgNF6nWLGTeUJfxdkVUAPPSaAdbWNnFZzLZ4EGGmmiCTg+AwlbE1KyUYTBglosSLHQ==} + /@typescript-eslint/parser/5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e: + resolution: {integrity: sha512-ruKWTv+x0OOxbzIw9nW5oWlUopvP/IQDjB5ZqmTglLIoDTctLlAJpAQFpNPJP/ZI7hTT9sARBosEfaKbcFuECw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -4232,12 +4468,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 5.27.1 - '@typescript-eslint/types': 5.27.1 - '@typescript-eslint/typescript-estree': 5.27.1_typescript@4.7.3 + '@typescript-eslint/scope-manager': 5.29.0 + '@typescript-eslint/types': 5.29.0 + '@typescript-eslint/typescript-estree': 5.29.0_typescript@4.7.4 debug: 4.3.4 - eslint: 8.17.0 - typescript: 4.7.3 + eslint: 8.18.0 + typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: false @@ -4250,8 +4486,16 @@ packages: '@typescript-eslint/visitor-keys': 5.27.1 dev: false - /@typescript-eslint/type-utils/5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4: - resolution: {integrity: sha512-+UC1vVUWaDHRnC2cQrCJ4QtVjpjjCgjNFpg8b03nERmkHv9JV9X5M19D7UFMd+/G7T/sgFwX2pGmWK38rqyvXw==} + /@typescript-eslint/scope-manager/5.29.0: + resolution: {integrity: sha512-etbXUT0FygFi2ihcxDZjz21LtC+Eps9V2xVx09zFoN44RRHPrkMflidGMI+2dUs821zR1tDS6Oc9IXxIjOUZwA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.29.0 + '@typescript-eslint/visitor-keys': 5.29.0 + dev: false + + /@typescript-eslint/type-utils/5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e: + resolution: {integrity: sha512-JK6bAaaiJozbox3K220VRfCzLa9n0ib/J+FHIwnaV3Enw/TO267qe0pM1b1QrrEuy6xun374XEAsRlA86JJnyg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: '*' @@ -4260,11 +4504,11 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/utils': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4 + '@typescript-eslint/utils': 5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e debug: 4.3.4 - eslint: 8.17.0 - tsutils: 3.21.0_typescript@4.7.3 - typescript: 4.7.3 + eslint: 8.18.0 + tsutils: 3.21.0_typescript@4.7.4 + typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: false @@ -4274,6 +4518,11 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: false + /@typescript-eslint/types/5.29.0: + resolution: {integrity: sha512-X99VbqvAXOMdVyfFmksMy3u8p8yoRGITgU1joBJPzeYa0rhdf5ok9S56/itRoUSh99fiDoMtarSIJXo7H/SnOg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: false + /@typescript-eslint/typescript-estree/2.34.0_typescript@3.9.10: resolution: {integrity: sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==} engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} @@ -4295,7 +4544,7 @@ packages: - supports-color dev: true - /@typescript-eslint/typescript-estree/5.27.1_typescript@4.7.3: + /@typescript-eslint/typescript-estree/5.27.1_typescript@4.7.4: resolution: {integrity: sha512-DnZvvq3TAJ5ke+hk0LklvxwYsnXpRdqUY5gaVS0D4raKtbznPz71UJGnPTHEFo0GDxqLOLdMkkmVZjSpET1hFw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -4310,13 +4559,34 @@ packages: globby: 11.1.0 is-glob: 4.0.3 semver: 7.3.7 - tsutils: 3.21.0_typescript@4.7.3 - typescript: 4.7.3 + tsutils: 3.21.0_typescript@4.7.4 + typescript: 4.7.4 + transitivePeerDependencies: + - supports-color + dev: false + + /@typescript-eslint/typescript-estree/5.29.0_typescript@4.7.4: + resolution: {integrity: sha512-mQvSUJ/JjGBdvo+1LwC+GY2XmSYjK1nAaVw2emp/E61wEVYEyibRHCqm1I1vEKbXCpUKuW4G7u9ZCaZhJbLoNQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 5.29.0 + '@typescript-eslint/visitor-keys': 5.29.0 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.3.7 + tsutils: 3.21.0_typescript@4.7.4 + typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: false - /@typescript-eslint/utils/5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4: + /@typescript-eslint/utils/5.27.1_b5e7v2qnwxfo6hmiq56u52mz3e: resolution: {integrity: sha512-mZ9WEn1ZLDaVrhRaYgzbkXBkTPghPFsup8zDbbsYTxC5OmqrFE7skkKS/sraVsLP3TcT3Ki5CSyEFBRkLH/H/w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -4325,10 +4595,28 @@ packages: '@types/json-schema': 7.0.11 '@typescript-eslint/scope-manager': 5.27.1 '@typescript-eslint/types': 5.27.1 - '@typescript-eslint/typescript-estree': 5.27.1_typescript@4.7.3 - eslint: 8.17.0 + '@typescript-eslint/typescript-estree': 5.27.1_typescript@4.7.4 + eslint: 8.18.0 eslint-scope: 5.1.1 - eslint-utils: 3.0.0_eslint@8.17.0 + eslint-utils: 3.0.0_eslint@8.18.0 + transitivePeerDependencies: + - supports-color + - typescript + dev: false + + /@typescript-eslint/utils/5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e: + resolution: {integrity: sha512-3Eos6uP1nyLOBayc/VUdKZikV90HahXE5Dx9L5YlSd/7ylQPXhLk1BYb29SDgnBnTp+jmSZUU0QxUiyHgW4p7A==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + '@types/json-schema': 7.0.11 + '@typescript-eslint/scope-manager': 5.29.0 + '@typescript-eslint/types': 5.29.0 + '@typescript-eslint/typescript-estree': 5.29.0_typescript@4.7.4 + eslint: 8.18.0 + eslint-scope: 5.1.1 + eslint-utils: 3.0.0_eslint@8.18.0 transitivePeerDependencies: - supports-color - typescript @@ -4342,6 +4630,14 @@ packages: eslint-visitor-keys: 3.3.0 dev: false + /@typescript-eslint/visitor-keys/5.29.0: + resolution: {integrity: sha512-Hpb/mCWsjILvikMQoZIE3voc9wtQcS0A9FUw3h8bhr9UxBdtI/tw1ZDZUOXHXLOVMedKCH5NxyzATwnU78bWCQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.29.0 + eslint-visitor-keys: 3.3.0 + dev: false + /@vitejs/plugin-react/1.3.2: resolution: {integrity: sha512-aurBNmMo0kz1O4qRoY+FM4epSA39y3ShWGuqfLRA/3z0oEJAdtoSfgA3aO98/PCCHAqMaduLxIxErWrVKIFzXA==} engines: {node: '>=12.0.0'} @@ -4362,21 +4658,23 @@ packages: resolution: {integrity: sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==} dev: false - /@xstate/react/3.0.0_nxaw3aggewkk2xco2xus35m4sq: + /@xstate/react/3.0.0_qkj3h26yqjpoza3bh3zse7k4ye: resolution: {integrity: sha512-KHSCfwtb8gZ7QH2luihvmKYI+0lcdHQOmGNRUxUEs4zVgaJCyd8csCEmwPsudpliLdUmyxX2pzUBojFkINpotw==} peerDependencies: '@xstate/fsm': ^2.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: '*' xstate: ^4.31.0 peerDependenciesMeta: '@xstate/fsm': optional: true + react: + optional: true xstate: optional: true dependencies: - react: 18.1.0 - use-isomorphic-layout-effect: 1.1.2_cbpnieqasrszcwkqeh5i7z7nse - use-sync-external-store: 1.1.0_react@18.1.0 + react: 18.2.0 + use-isomorphic-layout-effect: 1.1.2_luyos4mouogwq6z3wafb3re4ce + use-sync-external-store: 1.1.0_react@18.2.0 xstate: 4.32.1 transitivePeerDependencies: - '@types/react' @@ -4452,7 +4750,7 @@ packages: hasBin: true /aes-js/3.0.0: - resolution: {integrity: sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==} + resolution: {integrity: sha1-4h3xCtbCBTKVvLuNq0Cwnb6ofk0=} dev: false /agent-base/6.0.2: @@ -5169,6 +5467,17 @@ packages: dependencies: esbuild: 0.14.43 load-tsconfig: 0.2.3 + dev: true + + /bundle-require/3.0.4_esbuild@0.14.47: + resolution: {integrity: sha512-VXG6epB1yrLAvWVQpl92qF347/UXmncQj7J3U8kZEbdVZ1ZkQyr4hYeL/9RvcE8vVVdp53dY78Fd/3pqfRqI1A==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + peerDependencies: + esbuild: '>=0.13' + dependencies: + esbuild: 0.14.47 + load-tsconfig: 0.2.3 + dev: false /cac/6.7.12: resolution: {integrity: sha512-rM7E2ygtMkJqD9c7WnFU6fruFcN3xe4FM5yUmgxhZzIKJk4uHl9U/fhwdajGFQbQuv43FAUo1Fe8gX/oIKDeSA==} @@ -6079,6 +6388,24 @@ packages: cpu: [x64] os: [android] requiresBuild: true + dev: true + optional: true + + /esbuild-android-64/0.14.45: + resolution: {integrity: sha512-krVmwL2uXQN1A+Ci4u2MR+Y0IAvQK0u3no5TsgguHVhTy138szjuohScCGjkpvLCpGLk7P4kFP1LKuntvJ0d4A==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + optional: true + + /esbuild-android-64/0.14.47: + resolution: {integrity: sha512-R13Bd9+tqLVFndncMHssZrPWe6/0Kpv2/dt4aA69soX4PRxlzsVpCvoJeFE8sOEoeVEiBkI0myjlkDodXlHa0g==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: false optional: true /esbuild-android-arm64/0.14.43: @@ -6087,6 +6414,24 @@ packages: cpu: [arm64] os: [android] requiresBuild: true + dev: true + optional: true + + /esbuild-android-arm64/0.14.45: + resolution: {integrity: sha512-62POGdzAjM+XOXEM5MmFW6k9Pjdjg1hTrXKKBbPE700LFF36B+1Jv9QkskT5UadbTk4cdH9BQ7bGiRPYY0p/Dw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + optional: true + + /esbuild-android-arm64/0.14.47: + resolution: {integrity: sha512-OkwOjj7ts4lBp/TL6hdd8HftIzOy/pdtbrNA4+0oVWgGG64HrdVzAF5gxtJufAPOsEjkyh1oIYvKAUinKKQRSQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: false optional: true /esbuild-darwin-64/0.14.43: @@ -6095,6 +6440,24 @@ packages: cpu: [x64] os: [darwin] requiresBuild: true + dev: true + optional: true + + /esbuild-darwin-64/0.14.45: + resolution: {integrity: sha512-dbkVUAnGx5IeZesWnIhnvxy7dSvgUQvfy0TVLzd9XVP3oI/VsKs8UNsfPrxI5HiN4SINv7oPAbxWceMpB7IqNA==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + optional: true + + /esbuild-darwin-64/0.14.47: + resolution: {integrity: sha512-R6oaW0y5/u6Eccti/TS6c/2c1xYTb1izwK3gajJwi4vIfNs1s8B1dQzI1UiC9T61YovOQVuePDcfqHLT3mUZJA==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: false optional: true /esbuild-darwin-arm64/0.14.43: @@ -6103,6 +6466,24 @@ packages: cpu: [arm64] os: [darwin] requiresBuild: true + dev: true + optional: true + + /esbuild-darwin-arm64/0.14.45: + resolution: {integrity: sha512-O6Bz7nnOae5rvbh2Ueo8ibSr7+/eLjsbPdgeMsAZri+LkOa7nsVPnhmocpO3Hy/LWfagTtHy1O9HRPIaArPmTg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + optional: true + + /esbuild-darwin-arm64/0.14.47: + resolution: {integrity: sha512-seCmearlQyvdvM/noz1L9+qblC5vcBrhUaOoLEDDoLInF/VQ9IkobGiLlyTPYP5dW1YD4LXhtBgOyevoIHGGnw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: false optional: true /esbuild-freebsd-64/0.14.43: @@ -6111,6 +6492,24 @@ packages: cpu: [x64] os: [freebsd] requiresBuild: true + dev: true + optional: true + + /esbuild-freebsd-64/0.14.45: + resolution: {integrity: sha512-y1X2nr3XSWnDC7MRcy21EVAT0TiCtdefOntJ+SQcZnPBTURzX77f99S8lDF2KswukChkiacpd2Wd4VZieo7w7Q==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + optional: true + + /esbuild-freebsd-64/0.14.47: + resolution: {integrity: sha512-ZH8K2Q8/Ux5kXXvQMDsJcxvkIwut69KVrYQhza/ptkW50DC089bCVrJZZ3sKzIoOx+YPTrmsZvqeZERjyYrlvQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: false optional: true /esbuild-freebsd-arm64/0.14.43: @@ -6119,6 +6518,24 @@ packages: cpu: [arm64] os: [freebsd] requiresBuild: true + dev: true + optional: true + + /esbuild-freebsd-arm64/0.14.45: + resolution: {integrity: sha512-r3ZNejkx1BKXQ6sYOP6C5rTwgiUajyAh03wygLWZtl+SLyygvAnu+OouqtveesufjBDgujp4wZXP/n8PVqXkqg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + optional: true + + /esbuild-freebsd-arm64/0.14.47: + resolution: {integrity: sha512-ZJMQAJQsIOhn3XTm7MPQfCzEu5b9STNC+s90zMWe2afy9EwnHV7Ov7ohEMv2lyWlc2pjqLW8QJnz2r0KZmeAEQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: false optional: true /esbuild-linux-32/0.14.43: @@ -6127,6 +6544,24 @@ packages: cpu: [ia32] os: [linux] requiresBuild: true + dev: true + optional: true + + /esbuild-linux-32/0.14.45: + resolution: {integrity: sha512-Qk9cCO3PJig/Y+SdslN/Th4pbAjgaH9oUjVH28eMsLTPf6QDUuK6EED91jepJdR3vxhcnVjyl6JqtOWmP+uxCg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + optional: true + + /esbuild-linux-32/0.14.47: + resolution: {integrity: sha512-FxZOCKoEDPRYvq300lsWCTv1kcHgiiZfNrPtEhFAiqD7QZaXrad8LxyJ8fXGcWzIFzRiYZVtB3ttvITBvAFhKw==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: false optional: true /esbuild-linux-64/0.14.43: @@ -6135,6 +6570,24 @@ packages: cpu: [x64] os: [linux] requiresBuild: true + dev: true + optional: true + + /esbuild-linux-64/0.14.45: + resolution: {integrity: sha512-IybO2ugqvc/Zzn1Kih3x0FVjYAy3GTCwhtcp91dbdqk3wPqxYCzObYspa8ca0s+OovI0Cnb+rhXrUtq8gBqlqw==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + optional: true + + /esbuild-linux-64/0.14.47: + resolution: {integrity: sha512-nFNOk9vWVfvWYF9YNYksZptgQAdstnDCMtR6m42l5Wfugbzu11VpMCY9XrD4yFxvPo9zmzcoUL/88y0lfJZJJw==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false optional: true /esbuild-linux-arm/0.14.43: @@ -6143,6 +6596,24 @@ packages: cpu: [arm] os: [linux] requiresBuild: true + dev: true + optional: true + + /esbuild-linux-arm/0.14.45: + resolution: {integrity: sha512-qKWJ4A4TAcxXV2TBLPw3Av5X2SYNfyNnBHNJTQJ5VuevK6Aq5i6XEMvUgdlcVuZ9MYPfS5aJZWglzDzJMf1Lpw==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + optional: true + + /esbuild-linux-arm/0.14.47: + resolution: {integrity: sha512-ZGE1Bqg/gPRXrBpgpvH81tQHpiaGxa8c9Rx/XOylkIl2ypLuOcawXEAo8ls+5DFCcRGt/o3sV+PzpAFZobOsmA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: false optional: true /esbuild-linux-arm64/0.14.43: @@ -6151,6 +6622,24 @@ packages: cpu: [arm64] os: [linux] requiresBuild: true + dev: true + optional: true + + /esbuild-linux-arm64/0.14.45: + resolution: {integrity: sha512-UNEyuHTwztrkEU/+mWIxGzKrYBo2cEtjYAZQVZB1kliANKgRITktg2miaO/b/VtNe84ob1aXSvW8XOPEn5RTGQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + optional: true + + /esbuild-linux-arm64/0.14.47: + resolution: {integrity: sha512-ywfme6HVrhWcevzmsufjd4iT3PxTfCX9HOdxA7Hd+/ZM23Y9nXeb+vG6AyA6jgq/JovkcqRHcL9XwRNpWG6XRw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false optional: true /esbuild-linux-mips64le/0.14.43: @@ -6159,78 +6648,258 @@ packages: cpu: [mips64el] os: [linux] requiresBuild: true + dev: true + optional: true + + /esbuild-linux-mips64le/0.14.45: + resolution: {integrity: sha512-s/jcfw3Vpku5dIVSFVY7idJsGdIpIJ88IrkyprVgCG2yBeXatb67B7yIt0E1tL+OHrJJdNBw6GikCiMPAAu1VA==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + optional: true + + /esbuild-linux-mips64le/0.14.47: + resolution: {integrity: sha512-mg3D8YndZ1LvUiEdDYR3OsmeyAew4MA/dvaEJxvyygahWmpv1SlEEnhEZlhPokjsUMfRagzsEF/d/2XF+kTQGg==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-ppc64le/0.14.43: + resolution: {integrity: sha512-5wZYMDGAL/K2pqkdIsW+I4IR41kyfHr/QshJcNpUfK3RjB3VQcPWOaZmc+74rm4ZjVirYrtz+jWw0SgxtxRanA==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-ppc64le/0.14.45: + resolution: {integrity: sha512-lJItl6ESZnhSx951U9R7MTBopgwIELHlQzC6SBR023V5JC1rPRFDZ/UEBsV+7BFcCAfqlyb+odGEAmcBSf4XCA==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + optional: true + + /esbuild-linux-ppc64le/0.14.47: + resolution: {integrity: sha512-WER+f3+szmnZiWoK6AsrTKGoJoErG2LlauSmk73LEZFQ/iWC+KhhDsOkn1xBUpzXWsxN9THmQFltLoaFEH8F8w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-riscv64/0.14.43: + resolution: {integrity: sha512-lYcAOUxp85hC7lSjycJUVSmj4/9oEfSyXjb/ua9bNl8afonaduuqtw7hvKMoKuYnVwOCDw4RSfKpcnIRDWq+Bw==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-riscv64/0.14.45: + resolution: {integrity: sha512-8anMu+QLl9MununVCGJN2I/JvUWPm1EVsBBLq/J+Nz4hr8t6QOCuEp0HRaeMohyl2XiMFBchVu0mwa05rF7GFQ==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + optional: true + + /esbuild-linux-riscv64/0.14.47: + resolution: {integrity: sha512-1fI6bP3A3rvI9BsaaXbMoaOjLE3lVkJtLxsgLHqlBhLlBVY7UqffWBvkrX/9zfPhhVMd9ZRFiaqXnB1T7BsL2g==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-s390x/0.14.43: + resolution: {integrity: sha512-27e43ZhHvhFE4nM7HqtUbMRu37I/4eNSUbb8FGZWszV+uLzMIsHDwLoBiJmw7G9N+hrehNPeQ4F5Ujad0DrUKQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-s390x/0.14.45: + resolution: {integrity: sha512-1TPeNvNCoahMw745KNTA6POKaFfSqQrBb3fdOL82GXZqyKU/6rHNwGP0NgHe88bAUMp3QZfjGfCGKxfBHL77RQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + optional: true + + /esbuild-linux-s390x/0.14.47: + resolution: {integrity: sha512-eZrWzy0xFAhki1CWRGnhsHVz7IlSKX6yT2tj2Eg8lhAwlRE5E96Hsb0M1mPSE1dHGpt1QVwwVivXIAacF/G6mw==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-netbsd-64/0.14.43: + resolution: {integrity: sha512-2mH4QF6hHBn5zzAfxEI/2eBC0mspVsZ6UVo821LpAJKMvLJPBk3XJO5xwg7paDqSqpl7p6IRrAenW999AEfJhQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /esbuild-netbsd-64/0.14.45: + resolution: {integrity: sha512-55f2eZ8EQhhOZosqX0mApgRoI9PrVyXlHd9Uivk+B0B4WTKUgzkoHaVk4EkIUtNRQTpDWPciTlpb/C2tUYVejA==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + optional: true + + /esbuild-netbsd-64/0.14.47: + resolution: {integrity: sha512-Qjdjr+KQQVH5Q2Q1r6HBYswFTToPpss3gqCiSw2Fpq/ua8+eXSQyAMG+UvULPqXceOwpnPo4smyZyHdlkcPppQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: false + optional: true + + /esbuild-openbsd-64/0.14.43: + resolution: {integrity: sha512-ZhQpiZjvqCqO8jKdGp9+8k9E/EHSA+zIWOg+grwZasI9RoblqJ1QiZqqi7jfd6ZrrG1UFBNGe4m0NFxCFbMVbg==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /esbuild-openbsd-64/0.14.45: + resolution: {integrity: sha512-Z5sNcT3oN9eryMW3mGn5HAgg7XCxiUS4isqH1tZXpsdOdOESbgbTEP0mBEJU0WU7Vt2gIN5XMbAp7Oigm0k71g==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + optional: true + + /esbuild-openbsd-64/0.14.47: + resolution: {integrity: sha512-QpgN8ofL7B9z8g5zZqJE+eFvD1LehRlxr25PBkjyyasakm4599iroUpaj96rdqRlO2ShuyqwJdr+oNqWwTUmQw==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: false + optional: true + + /esbuild-sunos-64/0.14.43: + resolution: {integrity: sha512-DgxSi9DaHReL9gYuul2rrQCAapgnCJkh3LSHPKsY26zytYppG0HgkgVF80zjIlvEsUbGBP/GHQzBtrezj/Zq1Q==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /esbuild-sunos-64/0.14.45: + resolution: {integrity: sha512-WmWu4wAm8mIxxK9aWFCj5VHunY3BHQDT3dAPexMLLszPyMF7RDtUYf+Dash9tjyitvnoxPAvR7DpWpirDLQIlQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + optional: true + + /esbuild-sunos-64/0.14.47: + resolution: {integrity: sha512-uOeSgLUwukLioAJOiGYm3kNl+1wJjgJA8R671GYgcPgCx7QR73zfvYqXFFcIO93/nBdIbt5hd8RItqbbf3HtAQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: false optional: true - /esbuild-linux-ppc64le/0.14.43: - resolution: {integrity: sha512-5wZYMDGAL/K2pqkdIsW+I4IR41kyfHr/QshJcNpUfK3RjB3VQcPWOaZmc+74rm4ZjVirYrtz+jWw0SgxtxRanA==} + /esbuild-windows-32/0.14.43: + resolution: {integrity: sha512-Ih3+2O5oExiqm0mY6YYE5dR0o8+AspccQ3vIAtRodwFvhuyGLjb0Hbmzun/F3Lw19nuhPMu3sW2fqIJ5xBxByw==} engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] + cpu: [ia32] + os: [win32] requiresBuild: true + dev: true optional: true - /esbuild-linux-riscv64/0.14.43: - resolution: {integrity: sha512-lYcAOUxp85hC7lSjycJUVSmj4/9oEfSyXjb/ua9bNl8afonaduuqtw7hvKMoKuYnVwOCDw4RSfKpcnIRDWq+Bw==} + /esbuild-windows-32/0.14.45: + resolution: {integrity: sha512-DPPehKwPJFBoSG+jILc/vcJNN8pTwz1m6FWojxqtqPhgw8OabTgN4vL7gNMqL/FSeDxF+zyvZeeMrZFYF1d81Q==} engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] + cpu: [ia32] + os: [win32] requiresBuild: true optional: true - /esbuild-linux-s390x/0.14.43: - resolution: {integrity: sha512-27e43ZhHvhFE4nM7HqtUbMRu37I/4eNSUbb8FGZWszV+uLzMIsHDwLoBiJmw7G9N+hrehNPeQ4F5Ujad0DrUKQ==} + /esbuild-windows-32/0.14.47: + resolution: {integrity: sha512-H0fWsLTp2WBfKLBgwYT4OTfFly4Im/8B5f3ojDv1Kx//kiubVY0IQunP2Koc/fr/0wI7hj3IiBDbSrmKlrNgLQ==} engines: {node: '>=12'} - cpu: [s390x] - os: [linux] + cpu: [ia32] + os: [win32] requiresBuild: true + dev: false optional: true - /esbuild-netbsd-64/0.14.43: - resolution: {integrity: sha512-2mH4QF6hHBn5zzAfxEI/2eBC0mspVsZ6UVo821LpAJKMvLJPBk3XJO5xwg7paDqSqpl7p6IRrAenW999AEfJhQ==} + /esbuild-windows-64/0.14.43: + resolution: {integrity: sha512-8NsuNfI8xwFuJbrCuI+aBqNTYkrWErejFO5aYM+yHqyHuL8mmepLS9EPzAzk8rvfaJrhN0+RvKWAcymViHOKEw==} engines: {node: '>=12'} cpu: [x64] - os: [netbsd] + os: [win32] requiresBuild: true + dev: true optional: true - /esbuild-openbsd-64/0.14.43: - resolution: {integrity: sha512-ZhQpiZjvqCqO8jKdGp9+8k9E/EHSA+zIWOg+grwZasI9RoblqJ1QiZqqi7jfd6ZrrG1UFBNGe4m0NFxCFbMVbg==} + /esbuild-windows-64/0.14.45: + resolution: {integrity: sha512-t6bxFZcp9bLmSs+1pCNL/BW2bq3QEQHxU4HoiMEyWfF8QBU8iNXFI1iLGdyCzB1Ue2739h55tpOvojFrfyNPWA==} engines: {node: '>=12'} cpu: [x64] - os: [openbsd] + os: [win32] requiresBuild: true optional: true - /esbuild-sunos-64/0.14.43: - resolution: {integrity: sha512-DgxSi9DaHReL9gYuul2rrQCAapgnCJkh3LSHPKsY26zytYppG0HgkgVF80zjIlvEsUbGBP/GHQzBtrezj/Zq1Q==} + /esbuild-windows-64/0.14.47: + resolution: {integrity: sha512-/Pk5jIEH34T68r8PweKRi77W49KwanZ8X6lr3vDAtOlH5EumPE4pBHqkCUdELanvsT14yMXLQ/C/8XPi1pAtkQ==} engines: {node: '>=12'} cpu: [x64] - os: [sunos] + os: [win32] requiresBuild: true + dev: false optional: true - /esbuild-windows-32/0.14.43: - resolution: {integrity: sha512-Ih3+2O5oExiqm0mY6YYE5dR0o8+AspccQ3vIAtRodwFvhuyGLjb0Hbmzun/F3Lw19nuhPMu3sW2fqIJ5xBxByw==} + /esbuild-windows-arm64/0.14.43: + resolution: {integrity: sha512-7ZlD7bo++kVRblJEoG+cepljkfP8bfuTPz5fIXzptwnPaFwGS6ahvfoYzY7WCf5v/1nX2X02HDraVItTgbHnKw==} engines: {node: '>=12'} - cpu: [ia32] + cpu: [arm64] os: [win32] requiresBuild: true + dev: true optional: true - /esbuild-windows-64/0.14.43: - resolution: {integrity: sha512-8NsuNfI8xwFuJbrCuI+aBqNTYkrWErejFO5aYM+yHqyHuL8mmepLS9EPzAzk8rvfaJrhN0+RvKWAcymViHOKEw==} + /esbuild-windows-arm64/0.14.45: + resolution: {integrity: sha512-DnhrvjECBJ2L0owoznPb4RqQKZ498SM8J+YHqmqzi0Gf/enkUwwTjB8vPCK6dDuFnNU/NE8f94FhKdkBHYruDQ==} engines: {node: '>=12'} - cpu: [x64] + cpu: [arm64] os: [win32] requiresBuild: true optional: true - /esbuild-windows-arm64/0.14.43: - resolution: {integrity: sha512-7ZlD7bo++kVRblJEoG+cepljkfP8bfuTPz5fIXzptwnPaFwGS6ahvfoYzY7WCf5v/1nX2X02HDraVItTgbHnKw==} + /esbuild-windows-arm64/0.14.47: + resolution: {integrity: sha512-HFSW2lnp62fl86/qPQlqw6asIwCnEsEoNIL1h2uVMgakddf+vUuMcCbtUY1i8sst7KkgHrVKCJQB33YhhOweCQ==} engines: {node: '>=12'} cpu: [arm64] os: [win32] requiresBuild: true + dev: false optional: true /esbuild/0.14.43: @@ -6259,6 +6928,62 @@ packages: esbuild-windows-32: 0.14.43 esbuild-windows-64: 0.14.43 esbuild-windows-arm64: 0.14.43 + dev: true + + /esbuild/0.14.45: + resolution: {integrity: sha512-JOxGUD8jcs8xE8DjyGWC8by/vLMCXTJ/wuauWipL5kJRZx1dhpqIntb31QHjA45GZJWaXv7SjC/Zwu1bCkXWtQ==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + esbuild-android-64: 0.14.45 + esbuild-android-arm64: 0.14.45 + esbuild-darwin-64: 0.14.45 + esbuild-darwin-arm64: 0.14.45 + esbuild-freebsd-64: 0.14.45 + esbuild-freebsd-arm64: 0.14.45 + esbuild-linux-32: 0.14.45 + esbuild-linux-64: 0.14.45 + esbuild-linux-arm: 0.14.45 + esbuild-linux-arm64: 0.14.45 + esbuild-linux-mips64le: 0.14.45 + esbuild-linux-ppc64le: 0.14.45 + esbuild-linux-riscv64: 0.14.45 + esbuild-linux-s390x: 0.14.45 + esbuild-netbsd-64: 0.14.45 + esbuild-openbsd-64: 0.14.45 + esbuild-sunos-64: 0.14.45 + esbuild-windows-32: 0.14.45 + esbuild-windows-64: 0.14.45 + esbuild-windows-arm64: 0.14.45 + + /esbuild/0.14.47: + resolution: {integrity: sha512-wI4ZiIfFxpkuxB8ju4MHrGwGLyp1+awEHAHVpx6w7a+1pmYIq8T9FGEVVwFo0iFierDoMj++Xq69GXWYn2EiwA==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + esbuild-android-64: 0.14.47 + esbuild-android-arm64: 0.14.47 + esbuild-darwin-64: 0.14.47 + esbuild-darwin-arm64: 0.14.47 + esbuild-freebsd-64: 0.14.47 + esbuild-freebsd-arm64: 0.14.47 + esbuild-linux-32: 0.14.47 + esbuild-linux-64: 0.14.47 + esbuild-linux-arm: 0.14.47 + esbuild-linux-arm64: 0.14.47 + esbuild-linux-mips64le: 0.14.47 + esbuild-linux-ppc64le: 0.14.47 + esbuild-linux-riscv64: 0.14.47 + esbuild-linux-s390x: 0.14.47 + esbuild-netbsd-64: 0.14.47 + esbuild-openbsd-64: 0.14.47 + esbuild-sunos-64: 0.14.47 + esbuild-windows-32: 0.14.47 + esbuild-windows-64: 0.14.47 + esbuild-windows-arm64: 0.14.47 + dev: false /escalade/3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} @@ -6304,7 +7029,7 @@ packages: source-map: 0.6.1 dev: true - /eslint-config-airbnb-base/15.0.0_3yxiwxzsqipdmy4jwrlv6vgfmy: + /eslint-config-airbnb-base/15.0.0_srrmf5la5dmnsfe2mpg6sboreu: resolution: {integrity: sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==} engines: {node: ^10.12.0 || >=12.0.0} peerDependencies: @@ -6312,14 +7037,14 @@ packages: eslint-plugin-import: ^2.25.2 dependencies: confusing-browser-globals: 1.0.11 - eslint: 8.17.0 - eslint-plugin-import: 2.26.0_pv5w3e62ssxduf5aiwxbc3knra + eslint: 8.18.0 + eslint-plugin-import: 2.26.0_zgg5sxdhnxsuz2d3vdnwdtmcnu object.assign: 4.1.2 object.entries: 1.1.5 semver: 6.3.0 dev: false - /eslint-config-airbnb-typescript/17.0.0_tp6b2m7mjearuulyvjl6n6zeka: + /eslint-config-airbnb-typescript/17.0.0_5hz5uetpggdx7cisb4emmjbrn4: resolution: {integrity: sha512-elNiuzD0kPAPTXjFWg+lE24nMdHMtuxgYoD30OyMD6yrW1AhFZPAg27VX7d3tzOErw+dgJTNWfRSDqEcXb4V0g==} peerDependencies: '@typescript-eslint/eslint-plugin': ^5.13.0 @@ -6327,11 +7052,11 @@ packages: eslint: ^7.32.0 || ^8.2.0 eslint-plugin-import: ^2.25.3 dependencies: - '@typescript-eslint/eslint-plugin': 5.27.1_aq7uryhocdbvbqum33pitcm3y4 - '@typescript-eslint/parser': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4 - eslint: 8.17.0 - eslint-config-airbnb-base: 15.0.0_3yxiwxzsqipdmy4jwrlv6vgfmy - eslint-plugin-import: 2.26.0_pv5w3e62ssxduf5aiwxbc3knra + '@typescript-eslint/eslint-plugin': 5.29.0_qqmbkyiaixvppdwswpytuf2hgm + '@typescript-eslint/parser': 5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e + eslint: 8.18.0 + eslint-config-airbnb-base: 15.0.0_srrmf5la5dmnsfe2mpg6sboreu + eslint-plugin-import: 2.26.0_zgg5sxdhnxsuz2d3vdnwdtmcnu dev: false /eslint-config-prettier/6.15.0_eslint@6.8.0: @@ -6344,13 +7069,13 @@ packages: get-stdin: 6.0.0 dev: true - /eslint-config-prettier/8.5.0_eslint@8.17.0: + /eslint-config-prettier/8.5.0_eslint@8.18.0: resolution: {integrity: sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 8.17.0 + eslint: 8.18.0 dev: false /eslint-config-react-app/5.2.1_ckh43hc77i4l5toqxpdts3avcu: @@ -6391,7 +7116,7 @@ packages: transitivePeerDependencies: - supports-color - /eslint-module-utils/2.7.3_5uhabtgzo3akfzi73a5jap3i6a: + /eslint-module-utils/2.7.3_tf5cicivm5w4o4owwu2j7i4y2u: resolution: {integrity: sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==} engines: {node: '>=4'} peerDependencies: @@ -6409,7 +7134,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4 + '@typescript-eslint/parser': 5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e debug: 3.2.7 eslint-import-resolver-node: 0.3.6 find-up: 2.1.0 @@ -6443,22 +7168,22 @@ packages: - supports-color dev: true - /eslint-plugin-cypress/2.12.1_eslint@8.17.0: + /eslint-plugin-cypress/2.12.1_eslint@8.18.0: resolution: {integrity: sha512-c2W/uPADl5kospNDihgiLc7n87t5XhUbFDoTl6CfVkmG+kDAb5Ux10V9PoLPu9N+r7znpc+iQlcmAqT1A/89HA==} peerDependencies: eslint: '>= 3.2.1' dependencies: - eslint: 8.17.0 + eslint: 8.18.0 globals: 11.12.0 - /eslint-plugin-eslint-comments/3.2.0_eslint@8.17.0: + /eslint-plugin-eslint-comments/3.2.0_eslint@8.18.0: resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} engines: {node: '>=6.5.0'} peerDependencies: eslint: '>=4.19.1' dependencies: escape-string-regexp: 1.0.5 - eslint: 8.17.0 + eslint: 8.18.0 ignore: 5.2.0 dev: false @@ -6472,7 +7197,7 @@ packages: lodash: 4.17.21 dev: true - /eslint-plugin-import/2.26.0_pv5w3e62ssxduf5aiwxbc3knra: + /eslint-plugin-import/2.26.0_tbglwmj7t2rhd43mvxmptakoay: resolution: {integrity: sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==} engines: {node: '>=4'} peerDependencies: @@ -6482,14 +7207,14 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4 + '@typescript-eslint/parser': 2.34.0_z6m2zvrkqxyghb4a2ijhravsdi array-includes: 3.1.5 array.prototype.flat: 1.3.0 debug: 2.6.9 doctrine: 2.1.0 - eslint: 8.17.0 + eslint: 6.8.0 eslint-import-resolver-node: 0.3.6 - eslint-module-utils: 2.7.3_5uhabtgzo3akfzi73a5jap3i6a + eslint-module-utils: 2.7.3_v3bireslbrxtr5bkc2nznayije has: 1.0.3 is-core-module: 2.9.0 is-glob: 4.0.3 @@ -6501,9 +7226,9 @@ packages: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - dev: false + dev: true - /eslint-plugin-import/2.26.0_tbglwmj7t2rhd43mvxmptakoay: + /eslint-plugin-import/2.26.0_zgg5sxdhnxsuz2d3vdnwdtmcnu: resolution: {integrity: sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==} engines: {node: '>=4'} peerDependencies: @@ -6513,14 +7238,14 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 2.34.0_z6m2zvrkqxyghb4a2ijhravsdi + '@typescript-eslint/parser': 5.29.0_b5e7v2qnwxfo6hmiq56u52mz3e array-includes: 3.1.5 array.prototype.flat: 1.3.0 debug: 2.6.9 doctrine: 2.1.0 - eslint: 6.8.0 + eslint: 8.18.0 eslint-import-resolver-node: 0.3.6 - eslint-module-utils: 2.7.3_v3bireslbrxtr5bkc2nznayije + eslint-module-utils: 2.7.3_tf5cicivm5w4o4owwu2j7i4y2u has: 1.0.3 is-core-module: 2.9.0 is-glob: 4.0.3 @@ -6532,9 +7257,9 @@ packages: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - dev: true + dev: false - /eslint-plugin-jest-dom/4.0.2_eslint@8.17.0: + /eslint-plugin-jest-dom/4.0.2_eslint@8.18.0: resolution: {integrity: sha512-Jo51Atwyo2TdcUncjmU+UQeSTKh3sc2LF/M5i/R3nTU0Djw9V65KGJisdm/RtuKhy2KH/r7eQ1n6kwYFPNdHlA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6', yarn: '>=1'} peerDependencies: @@ -6542,7 +7267,7 @@ packages: dependencies: '@babel/runtime': 7.18.3 '@testing-library/dom': 8.13.0 - eslint: 8.17.0 + eslint: 8.18.0 requireindex: 1.2.0 dev: false @@ -6567,7 +7292,7 @@ packages: minimatch: 3.1.2 dev: true - /eslint-plugin-jsx-a11y/6.5.1_eslint@8.17.0: + /eslint-plugin-jsx-a11y/6.5.1_eslint@8.18.0: resolution: {integrity: sha512-sVCFKX9fllURnXT2JwLN5Qgo24Ug5NF6dxhkmxsMEUZhXRcGg+X3e1JbJ84YePQKBl5E0ZjAH5Q4rkdcGY99+g==} engines: {node: '>=4.0'} peerDependencies: @@ -6581,7 +7306,7 @@ packages: axobject-query: 2.2.0 damerau-levenshtein: 1.0.8 emoji-regex: 9.2.2 - eslint: 8.17.0 + eslint: 8.18.0 has: 1.0.3 jsx-ast-utils: 3.3.0 language-tags: 1.0.5 @@ -6605,7 +7330,7 @@ packages: prettier-linter-helpers: 1.0.0 dev: true - /eslint-plugin-prettier/4.0.0_ucegkljdju7q4zmvwxzqoprf3y: + /eslint-plugin-prettier/4.0.0_xu6ewijrtliw5q5lksq5uixwby: resolution: {integrity: sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==} engines: {node: '>=6.0.0'} peerDependencies: @@ -6616,9 +7341,9 @@ packages: eslint-config-prettier: optional: true dependencies: - eslint: 8.17.0 - eslint-config-prettier: 8.5.0_eslint@8.17.0 - prettier: 2.6.2 + eslint: 8.18.0 + eslint-config-prettier: 8.5.0_eslint@8.18.0 + prettier: 2.7.1 prettier-linter-helpers: 1.0.0 dev: false @@ -6631,13 +7356,13 @@ packages: eslint: 6.8.0 dev: true - /eslint-plugin-react-hooks/4.5.0_eslint@8.17.0: - resolution: {integrity: sha512-8k1gRt7D7h03kd+SAAlzXkQwWK22BnK6GKZG+FJA6BAGy22CFvl8kCIXKpVux0cCxMWDQUPqSok0LKaZ0aOcCw==} + /eslint-plugin-react-hooks/4.6.0_eslint@8.18.0: + resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} engines: {node: '>=10'} peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 dependencies: - eslint: 8.17.0 + eslint: 8.18.0 dev: false /eslint-plugin-react/7.30.0_eslint@6.8.0: @@ -6663,7 +7388,7 @@ packages: string.prototype.matchall: 4.0.7 dev: true - /eslint-plugin-react/7.30.0_eslint@8.17.0: + /eslint-plugin-react/7.30.0_eslint@8.18.0: resolution: {integrity: sha512-RgwH7hjW48BleKsYyHK5vUAvxtE9SMPDKmcPRQgtRCYaZA0XQPt5FSkrU3nhz5ifzMZcA8opwmRJ2cmOO8tr5A==} engines: {node: '>=4'} peerDependencies: @@ -6672,7 +7397,7 @@ packages: array-includes: 3.1.5 array.prototype.flatmap: 1.3.0 doctrine: 2.1.0 - eslint: 8.17.0 + eslint: 8.18.0 estraverse: 5.3.0 jsx-ast-utils: 3.3.0 minimatch: 3.1.2 @@ -6686,14 +7411,14 @@ packages: string.prototype.matchall: 4.0.7 dev: false - /eslint-plugin-testing-library/5.5.1_ud6rd4xtew5bv4yhvkvu24pzm4: + /eslint-plugin-testing-library/5.5.1_b5e7v2qnwxfo6hmiq56u52mz3e: resolution: {integrity: sha512-plLEkkbAKBjPxsLj7x4jNapcHAg2ernkQlKKrN2I8NrQwPISZHyCUNvg5Hv3EDqOQReToQb5bnqXYbkijJPE/g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6'} peerDependencies: eslint: ^7.5.0 || ^8.0.0 dependencies: - '@typescript-eslint/utils': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4 - eslint: 8.17.0 + '@typescript-eslint/utils': 5.27.1_b5e7v2qnwxfo6hmiq56u52mz3e + eslint: 8.18.0 transitivePeerDependencies: - supports-color - typescript @@ -6735,6 +7460,16 @@ packages: dependencies: eslint: 8.17.0 eslint-visitor-keys: 2.1.0 + dev: true + + /eslint-utils/3.0.0_eslint@8.18.0: + resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} + engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} + peerDependencies: + eslint: '>=5' + dependencies: + eslint: 8.18.0 + eslint-visitor-keys: 2.1.0 /eslint-visitor-keys/1.3.0: resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==} @@ -6837,6 +7572,50 @@ packages: v8-compile-cache: 2.3.0 transitivePeerDependencies: - supports-color + dev: true + + /eslint/8.18.0: + resolution: {integrity: sha512-As1EfFMVk7Xc6/CvhssHUjsAQSkpfXvUGMFC3ce8JDe6WvqCgRrLOBQbVpsBFr1X1V+RACOadnzVvcUS5ni2bA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + hasBin: true + dependencies: + '@eslint/eslintrc': 1.3.0 + '@humanwhocodes/config-array': 0.9.5 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.3 + debug: 4.3.4 + doctrine: 3.0.0 + escape-string-regexp: 4.0.0 + eslint-scope: 7.1.1 + eslint-utils: 3.0.0_eslint@8.18.0 + eslint-visitor-keys: 3.3.0 + espree: 9.3.2 + esquery: 1.4.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 6.0.1 + functional-red-black-tree: 1.0.1 + glob-parent: 6.0.2 + globals: 13.15.0 + ignore: 5.2.0 + import-fresh: 3.3.0 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + js-yaml: 4.1.0 + json-stable-stringify-without-jsonify: 1.0.1 + levn: 0.4.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.1 + regexpp: 3.2.0 + strip-ansi: 6.0.1 + strip-json-comments: 3.1.1 + text-table: 0.2.0 + v8-compile-cache: 2.3.0 + transitivePeerDependencies: + - supports-color /espree/6.2.1: resolution: {integrity: sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==} @@ -6897,10 +7676,10 @@ packages: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} - /ethers/5.6.8: - resolution: {integrity: sha512-YxIGaltAOdvBFPZwIkyHnXbW40f1r8mHUgapW6dxkO+6t7H6wY8POUn0Kbxrd/N7I4hHxyi7YCddMAH/wmho2w==} + /ethers/5.6.9: + resolution: {integrity: sha512-lMGC2zv9HC5EC+8r429WaWu3uWJUCgUCt8xxKCFqkrFuBDZXDYIdzDUECxzjf2BMF8IVBByY1EBoGSL3RTm8RA==} dependencies: - '@ethersproject/abi': 5.6.3 + '@ethersproject/abi': 5.6.4 '@ethersproject/abstract-provider': 5.6.1 '@ethersproject/abstract-signer': 5.6.2 '@ethersproject/address': 5.6.1 @@ -6915,7 +7694,7 @@ packages: '@ethersproject/json-wallets': 5.6.1 '@ethersproject/keccak256': 5.6.1 '@ethersproject/logger': 5.6.0 - '@ethersproject/networks': 5.6.3 + '@ethersproject/networks': 5.6.4 '@ethersproject/pbkdf2': 5.6.1 '@ethersproject/properties': 5.6.0 '@ethersproject/providers': 5.6.8 @@ -7357,17 +8136,22 @@ packages: map-cache: 0.2.2 dev: true - /framer-motion/6.3.11_ef5jwxihqo6n7gxfmzogljlgcm: - resolution: {integrity: sha512-xQLk+ZSklNs5QNCUmdWPpKMOuWiB8ZETsvcIOWw8xvri9K3TamuifgCI/B6XpaEDR0/V2ZQF2Wm+gUAZrXo+rw==} + /framer-motion/6.3.12_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-JfBNDeZX/0J2XtjuGpCf5klissAVw1N4tKrVu23SzQ2ksuL2xu1Jm/CE11sYq9RvFEiN0qkMp+CylFpYLarFoQ==} peerDependencies: - react: '>=16.8 || ^17.0.0 || ^18.0.0' - react-dom: '>=16.8 || ^17.0.0 || ^18.0.0' + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: framesync: 6.0.1 hey-listen: 1.0.8 popmotion: 11.0.3 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 style-value-types: 5.0.0 tslib: 2.4.0 optionalDependencies: @@ -7432,18 +8216,18 @@ packages: requiresBuild: true optional: true - /fuels/0.0.0-master-3caba861: - resolution: {integrity: sha512-shiqHGtWKYe0YjH5X4b85CgfyF8VRlIO1VNDIafvm+Z5OgmGvVhnaXs1Hnuyz+h8WqwgH6kVRExtK5t99pKT8A==} + /fuels/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-Zb4N87c2GACTb+8JNc4FWxHuq8Pvwqmep3NewepmXyNRiDqiQI4nGL2EzQdangEF2GnT/9XkYEkXx2K4g8XS3Q==} dependencies: '@ethersproject/bytes': 5.6.1 - '@fuel-ts/abi-coder': 0.0.0-master-3caba861 - '@fuel-ts/constants': 0.0.0-master-3caba861 - '@fuel-ts/contract': 0.0.0-master-3caba861 - '@fuel-ts/keystore': 0.0.0-master-3caba861 - '@fuel-ts/math': 0.0.0-master-3caba861 - '@fuel-ts/providers': 0.0.0-master-3caba861 - '@fuel-ts/transactions': 0.0.0-master-3caba861 - '@fuel-ts/wallet': 0.0.0-master-3caba861 + '@fuel-ts/abi-coder': 0.0.0-master-b32f29b9 + '@fuel-ts/constants': 0.0.0-master-b32f29b9 + '@fuel-ts/contract': 0.0.0-master-b32f29b9 + '@fuel-ts/keystore': 0.0.0-master-b32f29b9 + '@fuel-ts/math': 0.0.0-master-b32f29b9 + '@fuel-ts/providers': 0.0.0-master-b32f29b9 + '@fuel-ts/transactions': 0.0.0-master-b32f29b9 + '@fuel-ts/wallet': 0.0.0-master-b32f29b9 transitivePeerDependencies: - encoding dev: false @@ -9333,7 +10117,7 @@ packages: - ts-node dev: true - /jotai/1.7.2_2jlcqljsajnujrum4ztt4u63b4: + /jotai/1.7.2_ypoyxfrlqzbdcysfoko2qan5wa: resolution: {integrity: sha512-ksvpW1Wu+/HwW1iDYq23PpXLu2df5Vv+eWw70jRAx7IEY4c+qRsORULnqPFurSy/X8LSoPcRhVDJx/cyf8jjMg==} engines: {node: '>=12.7.0'} peerDependencies: @@ -9342,7 +10126,7 @@ packages: '@urql/core': '*' immer: '*' optics-ts: '*' - react: '>=16.8' + react: '*' react-query: '*' valtio: '*' wonka: '*' @@ -9358,6 +10142,8 @@ packages: optional: true optics-ts: optional: true + react: + optional: true react-query: optional: true valtio: @@ -9367,8 +10153,8 @@ packages: xstate: optional: true dependencies: - react: 18.1.0 - react-query: 3.39.1_ef5jwxihqo6n7gxfmzogljlgcm + react: 18.2.0 + react-query: 3.39.1_biqbaboplfbrettd7655fr4n2y xstate: 4.32.1 dev: false @@ -10048,18 +10834,23 @@ packages: thenify-all: 1.6.0 dev: true - /nano-css/5.3.5_ef5jwxihqo6n7gxfmzogljlgcm: + /nano-css/5.3.5_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-vSB9X12bbNu4ALBu7nigJgRViZ6ja3OU7CeuiV1zMIbXOdmkLahgtPmh3GBOlDxbKY0CitqlPdOReGlBLSp+yg==} peerDependencies: react: '*' react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: css-tree: 1.1.3 csstype: 3.1.0 fastest-stable-stringify: 2.0.2 inline-style-prefixer: 6.0.1 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 rtl-css-js: 1.15.0 sourcemap-codec: 1.4.8 stacktrace-js: 2.0.2 @@ -10639,7 +11430,7 @@ packages: dependencies: lilconfig: 2.0.5 postcss: 8.4.14 - ts-node: 10.8.1_f5eqjuxkorpjvs4z7mviievvou + ts-node: 10.8.1_qiyc72axg2v44xl4yovan2v55u yaml: 1.10.2 /postcss-load-config/3.1.4_ts-node@10.8.1: @@ -10711,6 +11502,13 @@ packages: resolution: {integrity: sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==} engines: {node: '>=10.13.0'} hasBin: true + dev: true + + /prettier/2.7.1: + resolution: {integrity: sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==} + engines: {node: '>=10.13.0'} + hasBin: true + dev: false /pretty-bytes/5.6.0: resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} @@ -10821,75 +11619,98 @@ packages: safe-buffer: 5.2.1 dev: true - /react-async-script/1.2.0_react@18.1.0: + /react-async-script/1.2.0_react@18.2.0: resolution: {integrity: sha512-bCpkbm9JiAuMGhkqoAiC0lLkb40DJ0HOEJIku+9JDjxX3Rcs+ztEOG13wbrOskt3n2DTrjshhaQ/iay+SnGg5Q==} peerDependencies: - react: '>=16.4.1' + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: hoist-non-react-statics: 3.3.2 prop-types: 15.8.1 - react: 18.1.0 + react: 18.2.0 dev: false - /react-content-loader/6.2.0_react@18.1.0: + /react-content-loader/6.2.0_react@18.2.0: resolution: {integrity: sha512-r1dI6S+uHNLW68qraLE2njJYOuy6976PpCExuCZUcABWbfnF3FMcmuESRI8L4Bj45wnZ7n8g71hkPLzbma7/Cw==} engines: {node: '>=10'} peerDependencies: - react: '>=16.0.0' + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - react: 18.1.0 + react: 18.2.0 dev: false - /react-dom/18.1.0_react@18.1.0: - resolution: {integrity: sha512-fU1Txz7Budmvamp7bshe4Zi32d0ll7ect+ccxNu9FlObT605GOEB8BfO4tmRJ39R5Zj831VCpvQ05QPBW5yb+w==} + /react-dom/18.2.0_react@18.2.0: + resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} peerDependencies: - react: ^18.1.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: loose-envify: 1.4.0 - react: 18.1.0 - scheduler: 0.22.0 + react: 18.2.0 + scheduler: 0.23.0 dev: false - /react-error-boundary/3.1.4_react@18.1.0: + /react-error-boundary/3.1.4_react@18.2.0: resolution: {integrity: sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA==} engines: {node: '>=10', npm: '>=6'} peerDependencies: - react: '>=16.13.1' + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: '@babel/runtime': 7.18.3 - react: 18.1.0 + react: 18.2.0 dev: false - /react-google-recaptcha/2.1.0_react@18.1.0: + /react-google-recaptcha/2.1.0_react@18.2.0: resolution: {integrity: sha512-K9jr7e0CWFigi8KxC3WPvNqZZ47df2RrMAta6KmRoE4RUi7Ys6NmNjytpXpg4HI/svmQJLKR+PncEPaNJ98DqQ==} peerDependencies: - react: '>=16.4.1' + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: prop-types: 15.8.1 - react: 18.1.0 - react-async-script: 1.2.0_react@18.1.0 + react: 18.2.0 + react-async-script: 1.2.0_react@18.2.0 dev: false - /react-hot-toast/2.2.0_ef5jwxihqo6n7gxfmzogljlgcm: + /react-hot-toast/2.2.0_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-248rXw13uhf/6TNDVzagX+y7R8J183rp7MwUMNkcrBRyHj/jWOggfXTGlM8zAOuh701WyVW+eUaWG2LeSufX9g==} engines: {node: '>=10'} peerDependencies: - react: '>=16' - react-dom: '>=16' + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: goober: 2.1.9 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 transitivePeerDependencies: - csstype dev: false - /react-icons/4.4.0_react@18.1.0: + /react-icons/4.4.0_react@18.2.0: resolution: {integrity: sha512-fSbvHeVYo/B5/L4VhB7sBA1i2tS8MkT0Hb9t2H1AVPkwGfVHLJCqyr2Py9dKMxsyM63Eng1GkdZfbWj+Fmv8Rg==} peerDependencies: react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - react: 18.1.0 + react: 18.2.0 dev: false /react-is/16.13.1: @@ -10901,24 +11722,31 @@ packages: /react-is/18.1.0: resolution: {integrity: sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg==} - /react-number-format/4.9.3_ef5jwxihqo6n7gxfmzogljlgcm: + /react-number-format/4.9.3_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-am1A1xYAbENuKJ+zpM7V+B1oRTSeOHYltqVKExznIVFweBzhLmOBmyb1DfIKjHo90E0bo1p3nzVJ2NgS5xh+sQ==} peerDependencies: - react: ^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 - react-dom: ^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: prop-types: 15.8.1 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 dev: false - /react-query/3.39.1_ef5jwxihqo6n7gxfmzogljlgcm: + /react-query/3.39.1_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-qYKT1bavdDiQZbngWZyPotlBVzcBjDYEJg5RQLBa++5Ix5jjfbEYJmHSZRZD+USVHUSvl/ey9Hu+QfF1QAK80A==} peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: '*' react-dom: '*' react-native: '*' peerDependenciesMeta: + react: + optional: true react-dom: optional: true react-native: @@ -10927,8 +11755,8 @@ packages: '@babel/runtime': 7.18.3 broadcast-channel: 3.7.0 match-sorter: 6.3.1 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 dev: false /react-refresh/0.13.0: @@ -10936,108 +11764,135 @@ packages: engines: {node: '>=0.10.0'} dev: true - /react-remove-scroll-bar/2.3.3_cbpnieqasrszcwkqeh5i7z7nse: + /react-remove-scroll-bar/2.3.3_luyos4mouogwq6z3wafb3re4ce: resolution: {integrity: sha512-i9GMNWwpz8XpUpQ6QlevUtFjHGqnPG4Hxs+wlIJntu/xcsZVEpJcIV71K3ZkqNy2q3GfgvkD7y6t/Sv8ofYSbw==} engines: {node: '>=10'} peerDependencies: '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: '*' peerDependenciesMeta: '@types/react': optional: true + react: + optional: true dependencies: - '@types/react': 18.0.12 - react: 18.1.0 - react-style-singleton: 2.2.1_cbpnieqasrszcwkqeh5i7z7nse + '@types/react': 18.0.14 + react: 18.2.0 + react-style-singleton: 2.2.1_luyos4mouogwq6z3wafb3re4ce tslib: 2.4.0 dev: false - /react-remove-scroll/2.5.4_cbpnieqasrszcwkqeh5i7z7nse: + /react-remove-scroll/2.5.4_luyos4mouogwq6z3wafb3re4ce: resolution: {integrity: sha512-xGVKJJr0SJGQVirVFAUZ2k1QLyO6m+2fy0l8Qawbp5Jgrv3DeLalrfMNBFSlmz5kriGGzsVBtGVnf4pTKIhhWA==} engines: {node: '>=10'} peerDependencies: '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: '*' peerDependenciesMeta: '@types/react': optional: true + react: + optional: true dependencies: - '@types/react': 18.0.12 - react: 18.1.0 - react-remove-scroll-bar: 2.3.3_cbpnieqasrszcwkqeh5i7z7nse - react-style-singleton: 2.2.1_cbpnieqasrszcwkqeh5i7z7nse + '@types/react': 18.0.14 + react: 18.2.0 + react-remove-scroll-bar: 2.3.3_luyos4mouogwq6z3wafb3re4ce + react-style-singleton: 2.2.1_luyos4mouogwq6z3wafb3re4ce tslib: 2.4.0 - use-callback-ref: 1.3.0_cbpnieqasrszcwkqeh5i7z7nse - use-sidecar: 1.1.2_cbpnieqasrszcwkqeh5i7z7nse + use-callback-ref: 1.3.0_luyos4mouogwq6z3wafb3re4ce + use-sidecar: 1.1.2_luyos4mouogwq6z3wafb3re4ce dev: false - /react-router-dom/6.3.0_ef5jwxihqo6n7gxfmzogljlgcm: + /react-router-dom/6.3.0_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-uaJj7LKytRxZNQV8+RbzJWnJ8K2nPsOOEuX7aQstlMZKQT0164C+X2w6bnkqU3sjtLvpd5ojrezAyfZ1+0sStw==} peerDependencies: - react: '>=16.8' - react-dom: '>=16.8' + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: history: 5.3.0 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 - react-router: 6.3.0_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-router: 6.3.0_react@18.2.0 dev: false - /react-router/6.3.0_react@18.1.0: + /react-router/6.3.0_react@18.2.0: resolution: {integrity: sha512-7Wh1DzVQ+tlFjkeo+ujvjSqSJmkt1+8JO+T5xklPlgrh70y7ogx75ODRW0ThWhY7S+6yEDks8TYrtQe/aoboBQ==} peerDependencies: - react: '>=16.8' + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: history: 5.3.0 - react: 18.1.0 + react: 18.2.0 dev: false - /react-style-singleton/2.2.1_cbpnieqasrszcwkqeh5i7z7nse: + /react-style-singleton/2.2.1_luyos4mouogwq6z3wafb3re4ce: resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} engines: {node: '>=10'} peerDependencies: '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: '*' peerDependenciesMeta: '@types/react': optional: true + react: + optional: true dependencies: - '@types/react': 18.0.12 + '@types/react': 18.0.14 get-nonce: 1.0.1 invariant: 2.2.4 - react: 18.1.0 + react: 18.2.0 tslib: 2.4.0 dev: false - /react-transition-group/4.4.2_ef5jwxihqo6n7gxfmzogljlgcm: + /react-transition-group/4.4.2_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg==} peerDependencies: - react: '>=16.6.0' - react-dom: '>=16.6.0' + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: '@babel/runtime': 7.18.3 dom-helpers: 5.2.1 loose-envify: 1.4.0 prop-types: 15.8.1 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 dev: false - /react-universal-interface/0.6.2_react@18.1.0+tslib@2.4.0: + /react-universal-interface/0.6.2_react@18.2.0+tslib@2.4.0: resolution: {integrity: sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==} peerDependencies: react: '*' tslib: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - react: 18.1.0 + react: 18.2.0 tslib: 2.4.0 dev: false - /react-use/17.4.0_ef5jwxihqo6n7gxfmzogljlgcm: + /react-use/17.4.0_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q==} peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: '@types/js-cookie': 2.2.7 '@xobotyi/scrollbar-width': 1.9.5 @@ -11045,10 +11900,10 @@ packages: fast-deep-equal: 3.1.3 fast-shallow-equal: 1.0.0 js-cookie: 2.2.1 - nano-css: 5.3.5_ef5jwxihqo6n7gxfmzogljlgcm - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 - react-universal-interface: 0.6.2_react@18.1.0+tslib@2.4.0 + nano-css: 5.3.5_biqbaboplfbrettd7655fr4n2y + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-universal-interface: 0.6.2_react@18.2.0+tslib@2.4.0 resize-observer-polyfill: 1.5.1 screenfull: 5.2.0 set-harmonic-interval: 1.0.1 @@ -11057,8 +11912,8 @@ packages: tslib: 2.4.0 dev: false - /react/18.1.0: - resolution: {integrity: sha512-4oL8ivCz5ZEPyclFQXaNksK3adutVS8l2xzZU0cqEFrE9Sb7fC0EFK5uEk74wIreL1DERyjvsU915j1pcT2uEQ==} + /react/18.2.0: + resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} engines: {node: '>=0.10.0'} dependencies: loose-envify: 1.4.0 @@ -11549,8 +12404,8 @@ packages: xmlchars: 2.2.0 dev: true - /scheduler/0.22.0: - resolution: {integrity: sha512-6QAm1BgQI88NPYymgGQLCZgvep4FyePDWFpXVK+zNSUgHwlqpJy8VEh8Et0KxTACS4VWwMousBElAZOH9nkkoQ==} + /scheduler/0.23.0: + resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} dependencies: loose-envify: 1.4.0 dev: false @@ -11837,18 +12692,23 @@ packages: resolution: {integrity: sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==} dev: true - /spinners-react/1.0.7_zlkrlo2xsersbascmmsr65fm34: + /spinners-react/1.0.7_fzknh3pugl53jp7xsetxkg5ani: resolution: {integrity: sha512-Xcgpc7Ybm6HOrpCVJjbH1G/NV852HaV4Zc9T1sJ2+S2hn05lGiBZS1dBOKGLc1kp8wv2sd3wtt94I/NNqDjs3Q==} peerDependencies: '@types/react': ^16.x || ^17.x || ^18.x '@types/react-dom': ^16.x || ^17.x || ^18.x - react: ^16.x || ^17.x || ^18.x - react-dom: ^16.x || ^17.x || ^18.x + react: '*' + react-dom: '*' + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: - '@types/react': 18.0.12 + '@types/react': 18.0.14 '@types/react-dom': 18.0.5 - react: 18.1.0 - react-dom: 18.1.0_react@18.1.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 dev: false /split-string/3.1.0: @@ -12173,8 +13033,8 @@ packages: string-width: 3.1.0 dev: true - /tailwindcss/3.1.2_ts-node@10.8.1: - resolution: {integrity: sha512-yJ6L5s1U5AeS5g7HHy212zdQfjwD426FBfm59pet/JsyneuZuD4C2W7PpJEg4ppisiB21uLqtNagv8KXury3+Q==} + /tailwindcss/3.1.4_ts-node@10.8.1: + resolution: {integrity: sha512-NrxbFV4tYsga/hpWbRyUfIaBrNMXDxx5BsHgBS4v5tlyjf+sDsgBg5m9OxjrXIqAS/uR9kicxLKP+bEHI7BSeQ==} engines: {node: '>=12.13.0'} hasBin: true dependencies: @@ -12403,20 +13263,20 @@ packages: resolution: {integrity: sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==} dev: false - /ts-essentials/7.0.3_typescript@4.7.3: + /ts-essentials/7.0.3_typescript@4.7.4: resolution: {integrity: sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ==} peerDependencies: typescript: '>=3.7.0' dependencies: - typescript: 4.7.3 + typescript: 4.7.4 dev: false - /ts-essentials/9.1.2_typescript@4.7.3: + /ts-essentials/9.1.2_typescript@4.7.4: resolution: {integrity: sha512-EaSmXsAhEiirrTY1Oaa7TSpei9dzuCuFPmjKRJRPamERYtfaGS8/KpOSbjergLz/Y76/aZlV9i/krgzsuWEBbg==} peerDependencies: typescript: '>=4.1.0' dependencies: - typescript: 4.7.3 + typescript: 4.7.4 dev: false /ts-interface-checker/0.1.13: @@ -12476,7 +13336,7 @@ packages: yargs-parser: 20.2.9 dev: true - /ts-node/10.8.1_f5eqjuxkorpjvs4z7mviievvou: + /ts-node/10.8.1_qiyc72axg2v44xl4yovan2v55u: resolution: {integrity: sha512-Wwsnao4DQoJsN034wePSg5nZiw4YKXf56mPIAeD6wVmiv+RytNSWqc2f3fKvcUoV+Yn2+yocD71VOfQHbmVX4g==} hasBin: true peerDependencies: @@ -12495,14 +13355,14 @@ packages: '@tsconfig/node12': 1.0.9 '@tsconfig/node14': 1.0.1 '@tsconfig/node16': 1.0.2 - '@types/node': 17.0.41 + '@types/node': 18.0.0 acorn: 8.7.1 acorn-walk: 8.2.0 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 4.7.3 + typescript: 4.7.4 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 @@ -12673,7 +13533,7 @@ packages: - ts-node dev: true - /tsup/6.1.2_typescript@4.7.3: + /tsup/6.1.2_typescript@4.7.4: resolution: {integrity: sha512-Hw4hKDHaAQkm2eVavlArEOrAPA93bziRDamdfwaNs0vXQdUUFfItvUWY0L/F6oQQMVh6GvjQq1+HpDXw8UKtPA==} engines: {node: '>=14'} hasBin: true @@ -12703,7 +13563,7 @@ packages: source-map: 0.8.0-beta.0 sucrase: 3.21.0 tree-kill: 1.2.2 - typescript: 4.7.3 + typescript: 4.7.4 transitivePeerDependencies: - supports-color - ts-node @@ -12719,14 +13579,14 @@ packages: typescript: 3.9.10 dev: true - /tsutils/3.21.0_typescript@4.7.3: + /tsutils/3.21.0_typescript@4.7.4: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 4.7.3 + typescript: 4.7.4 dev: false /tunnel-agent/0.6.0: @@ -12905,17 +13765,17 @@ packages: engines: {node: '>=12.20'} dev: false - /typechain-target-fuels/0.0.0-master-3caba861: - resolution: {integrity: sha512-BEbIcc7O0PBZP8M03tEpIOanvvGup1xDrgs8+dFH6g5uYoB5aLSOe7s/gKHG1LUgqxKCO/5L/AfKq4absE1s3Q==} + /typechain-target-fuels/0.0.0-master-b32f29b9: + resolution: {integrity: sha512-NhwT8BVJeoPXmfLFnHquqjPTNHz6WvXls5qEJibZherhao/s/NLEciz1EmFB8bI9FMBF9Yp91eXRosMYpdn00A==} dependencies: - ts-essentials: 9.1.2_typescript@4.7.3 - typechain: 8.1.0_typescript@4.7.3 - typescript: 4.7.3 + ts-essentials: 9.1.2_typescript@4.7.4 + typechain: 8.1.0_typescript@4.7.4 + typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: false - /typechain/8.1.0_typescript@4.7.3: + /typechain/8.1.0_typescript@4.7.4: resolution: {integrity: sha512-5jToLgKTjHdI1VKqs/K8BLYy42Sr3o8bV5ojh4MnR9ExHO83cyyUdw+7+vMJCpKXUiVUvARM4qmHTFuyaCMAZQ==} hasBin: true peerDependencies: @@ -12928,10 +13788,10 @@ packages: js-sha3: 0.8.0 lodash: 4.17.21 mkdirp: 1.0.4 - prettier: 2.6.2 + prettier: 2.7.1 ts-command-line-args: 2.3.1 - ts-essentials: 7.0.3_typescript@4.7.3 - typescript: 4.7.3 + ts-essentials: 7.0.3_typescript@4.7.4 + typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: false @@ -12952,6 +13812,12 @@ packages: resolution: {integrity: sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA==} engines: {node: '>=4.2.0'} hasBin: true + dev: true + + /typescript/4.7.4: + resolution: {integrity: sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==} + engines: {node: '>=4.2.0'} + hasBin: true /typical/4.0.0: resolution: {integrity: sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==} @@ -13040,6 +13906,12 @@ packages: engines: {node: '>=8'} dev: true + /updates/13.1.0: + resolution: {integrity: sha512-DT6S4seyJGtal6kQI7REVAVmriRGsoy9D6lGmZsLzo2zX6FWezPaLOMG2mRT3jsh76f1s5jWrIG6mZTEnDVJ4g==} + engines: {node: '>= 14'} + hasBin: true + dev: true + /uri-js/4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: @@ -13058,56 +13930,65 @@ packages: resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==} dev: true - /use-callback-ref/1.3.0_cbpnieqasrszcwkqeh5i7z7nse: + /use-callback-ref/1.3.0_luyos4mouogwq6z3wafb3re4ce: resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} engines: {node: '>=10'} peerDependencies: '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: '*' peerDependenciesMeta: '@types/react': optional: true + react: + optional: true dependencies: - '@types/react': 18.0.12 - react: 18.1.0 + '@types/react': 18.0.14 + react: 18.2.0 tslib: 2.4.0 dev: false - /use-isomorphic-layout-effect/1.1.2_cbpnieqasrszcwkqeh5i7z7nse: + /use-isomorphic-layout-effect/1.1.2_luyos4mouogwq6z3wafb3re4ce: resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: '*' peerDependenciesMeta: '@types/react': optional: true + react: + optional: true dependencies: - '@types/react': 18.0.12 - react: 18.1.0 + '@types/react': 18.0.14 + react: 18.2.0 dev: false - /use-sidecar/1.1.2_cbpnieqasrszcwkqeh5i7z7nse: + /use-sidecar/1.1.2_luyos4mouogwq6z3wafb3re4ce: resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} engines: {node: '>=10'} peerDependencies: '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: '*' peerDependenciesMeta: '@types/react': optional: true + react: + optional: true dependencies: - '@types/react': 18.0.12 + '@types/react': 18.0.14 detect-node-es: 1.1.0 - react: 18.1.0 + react: 18.2.0 tslib: 2.4.0 dev: false - /use-sync-external-store/1.1.0_react@18.1.0: + /use-sync-external-store/1.1.0_react@18.2.0: resolution: {integrity: sha512-SEnieB2FPKEVne66NpXPd1Np4R1lTNKfjuy3XdIoPQKYBAFdzbzSZlSn1KJZUiihQLQC5Znot4SBz1EOTBwQAQ==} peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: '*' + peerDependenciesMeta: + react: + optional: true dependencies: - react: 18.1.0 + react: 18.2.0 dev: false /use/3.1.1: @@ -13116,7 +13997,7 @@ packages: dev: true /util-deprecate/1.0.2: - resolution: {integrity: sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=} + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} /uuid/3.4.0: resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} @@ -13199,7 +14080,7 @@ packages: stylus: optional: true dependencies: - esbuild: 0.14.43 + esbuild: 0.14.45 postcss: 8.4.14 resolve: 1.22.0 rollup: 2.75.6 diff --git a/scripts/update-deps.sh b/scripts/update-deps.sh new file mode 100755 index 00000000..f3350abe --- /dev/null +++ b/scripts/update-deps.sh @@ -0,0 +1,3 @@ +BLACKLIST=swayswap-scripts,@swayswap/test-utils,@swayswap/config,fuels,typechain-target-fuels +pnpm -r exec updates -e $BLACKLIST -u +pnpm install From 742e1db54c4d4de388d4be04033043126177f913 Mon Sep 17 00:00:00 2001 From: bing Date: Thu, 23 Jun 2022 01:16:03 +0800 Subject: [PATCH 04/21] style: bump tx feedback 5s -> 8s (#313) bump toast duration 5s -> 8s --- packages/app/src/systems/Core/utils/feedback.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/app/src/systems/Core/utils/feedback.tsx b/packages/app/src/systems/Core/utils/feedback.tsx index 87a759cd..17fde28b 100644 --- a/packages/app/src/systems/Core/utils/feedback.tsx +++ b/packages/app/src/systems/Core/utils/feedback.tsx @@ -35,7 +35,7 @@ export function txFeedback( <> {txMsg} {txLink} , - { duration: 5000 } + { duration: 8000 } ); await onSuccess(); return; From 6002c4598c2467076c08f97dc03ca638e1f7644c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Est=C3=A1cio=20=7C=20stacio=2Eeth?= Date: Wed, 22 Jun 2022 17:36:31 -0300 Subject: [PATCH 05/21] chore: fix typo (#317) --- packages/app/src/systems/Swap/components/SwapPreview.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/app/src/systems/Swap/components/SwapPreview.tsx b/packages/app/src/systems/Swap/components/SwapPreview.tsx index 7397acaf..75415b17 100644 --- a/packages/app/src/systems/Swap/components/SwapPreview.tsx +++ b/packages/app/src/systems/Swap/components/SwapPreview.tsx @@ -58,7 +58,7 @@ export function SwapPreview({
      - + Date: Wed, 22 Jun 2022 17:45:17 -0300 Subject: [PATCH 06/21] feat: add eth and token amount on init pool action (#318) Co-authored-by: John Adler --- .github/workflows/deploy-contracts.yml | 6 ++++++ packages/app/scripts/contracts-init/initializePool.ts | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy-contracts.yml b/.github/workflows/deploy-contracts.yml index 797e5e95..9e44e4b0 100644 --- a/.github/workflows/deploy-contracts.yml +++ b/.github/workflows/deploy-contracts.yml @@ -17,6 +17,12 @@ on: gas_price: description: 'Min gas price required from the provider' type: number + token_amount: + description: 'Token amount to be used on pool initialization' + type: string + eth_amount: + description: 'Eth amount to be used on pool initialization' + type: string initiate_supply: description: 'Should initialize the pool?' required: true diff --git a/packages/app/scripts/contracts-init/initializePool.ts b/packages/app/scripts/contracts-init/initializePool.ts index 1c971ba7..99e19f38 100644 --- a/packages/app/scripts/contracts-init/initializePool.ts +++ b/packages/app/scripts/contracts-init/initializePool.ts @@ -11,7 +11,7 @@ export async function initializePool( overrides: Overrides ) { const wallet = tokenContract.wallet!; - const tokenAmount = BigInt(TOKEN_AMOUNT || '2000000000000000'); + const tokenAmount = BigInt(TOKEN_AMOUNT || '1200000000000000'); const ethAmount = BigInt(ETH_AMOUNT || '1000500000000'); const address = { value: wallet.address, From 57ceccd3db08d89fc6a27b41b77876660b04e4a1 Mon Sep 17 00:00:00 2001 From: Pedro Nauck Date: Wed, 22 Jun 2022 18:28:08 -0300 Subject: [PATCH 07/21] refactor: twitter share feature (#316) * refactor: improve twitter dialog * refactor: add FaucetDialog and useFaucetDialog * chore: add ActionsWidget component with faucet and share button * feat: add share button on actions widget * fix: coin input value when display type is text --- packages/app/cypress/e2e/App.cy.ts | 3 -- .../{faucet-widget.css => actions-widget.css} | 38 +++++++++------ packages/app/src/styles/components/header.css | 1 + .../app/src/styles/components/main-layout.css | 7 +-- packages/app/src/styles/index.css | 11 +++-- .../systems/Core/components/ActionsWidget.tsx | 36 +++++++++++++++ .../src/systems/Core/components/CoinInput.tsx | 23 +++------- .../src/systems/Core/components/Header.tsx | 10 ++-- .../systems/Core/components/MainLayout.tsx | 4 +- .../app/src/systems/Core/components/index.tsx | 1 + packages/app/src/systems/Core/utils/math.ts | 3 -- .../Faucet/components/FaucetDialog.tsx | 36 +++++++++++++++ .../Faucet/components/FaucetWidget.tsx | 46 ------------------- .../src/systems/Faucet/components/index.tsx | 2 +- .../app/src/systems/Faucet/hooks/index.ts | 1 + .../systems/Faucet/hooks/useFaucetDialog.tsx | 13 ++++++ .../app/src/systems/Swap/pages/SwapPage.tsx | 4 -- .../Tweet/components/TwitterDialog.tsx | 29 +++--------- .../systems/Tweet/hooks/useTwitterDialog.ts | 26 ++++------- .../app/src/systems/UI/components/Dialog.tsx | 7 ++- 20 files changed, 153 insertions(+), 148 deletions(-) rename packages/app/src/styles/components/{faucet-widget.css => actions-widget.css} (58%) create mode 100644 packages/app/src/systems/Core/components/ActionsWidget.tsx create mode 100644 packages/app/src/systems/Faucet/components/FaucetDialog.tsx delete mode 100644 packages/app/src/systems/Faucet/components/FaucetWidget.tsx create mode 100644 packages/app/src/systems/Faucet/hooks/useFaucetDialog.tsx diff --git a/packages/app/cypress/e2e/App.cy.ts b/packages/app/cypress/e2e/App.cy.ts index dcb71a28..aa22347d 100644 --- a/packages/app/cypress/e2e/App.cy.ts +++ b/packages/app/cypress/e2e/App.cy.ts @@ -80,9 +80,6 @@ describe('End-to-end Test: 😁 Happy Path', () => { cy.getByAriaLabel('Swap button').click(); cy.contains('Swap made successfully!'); - // Dismiss twitter popup - cy.contains('button', 'No thanks').click(); - // validate remove liquidity cy.contains('button', 'Pool').click(); cy.contains('button', 'Remove liquidity').click(); diff --git a/packages/app/src/styles/components/faucet-widget.css b/packages/app/src/styles/components/actions-widget.css similarity index 58% rename from packages/app/src/styles/components/faucet-widget.css rename to packages/app/src/styles/components/actions-widget.css index c2fca399..d260a894 100644 --- a/packages/app/src/styles/components/faucet-widget.css +++ b/packages/app/src/styles/components/actions-widget.css @@ -1,17 +1,33 @@ @layer components { - .faucetWidget { - @apply fixed bottom-0 p-4 pt-0; + .actionsWidget { + @apply flex items-center gap-1 p-4; - & > button { - @apply bg-gray-800 rounded-full; + @media (min-width: 834px) { + @apply p-6 fixed bottom-0 left-0; } } - .faucetWidget--tour { - @apply fixed bottom-5 left-5 outline-none; + .actionsWidget--btn { + @apply px-4 bg-gray-800 rounded-full h-10; } - .faucetWidget--dialog { + .actionsWidget--shareBtn { + @apply px-3 gap-0 transition-all ease-linear; + + & .content { + @apply w-0 opacity-0; + } + + &:hover { + @apply px-4 gap-2; + } + + &:hover .content { + @apply w-[auto] opacity-100; + } + } + + .faucetDialog { @apply min-w-[auto]; & .card { @@ -23,14 +39,6 @@ } } - .faucetWidget--formRow { - @apply mt-3; - } - - .faucetWidget--label { - @apply mb-2 flex text-sm; - } - .faucetCaptcha { @apply mt-4 mx-6 flex items-center justify-center; } diff --git a/packages/app/src/styles/components/header.css b/packages/app/src/styles/components/header.css index 0c135aa2..6c2243c5 100644 --- a/packages/app/src/styles/components/header.css +++ b/packages/app/src/styles/components/header.css @@ -22,6 +22,7 @@ grid-area: 1 / 1 / 2 / 2; } .header--wallet { + @apply flex items-center gap-1; place-self: end; grid-area: 1 / 1 / 2 / 3; } diff --git a/packages/app/src/styles/components/main-layout.css b/packages/app/src/styles/components/main-layout.css index a88fa9f9..c585b4bb 100644 --- a/packages/app/src/styles/components/main-layout.css +++ b/packages/app/src/styles/components/main-layout.css @@ -2,11 +2,8 @@ .mainLayout { @apply flex flex-col; @apply h-screen text-gray-100 overflow-hidden; - - @media (min-width: 600px) { - @apply grid; - grid-template-rows: auto 1fr; - } + @apply grid; + grid-template-rows: auto 1fr auto; } .mainLayout--wrapper { @apply flex justify-center items-start p-4 pb-16 sm:pt-14 overflow-y-auto; diff --git a/packages/app/src/styles/index.css b/packages/app/src/styles/index.css index e4448693..4ebe9218 100644 --- a/packages/app/src/styles/index.css +++ b/packages/app/src/styles/index.css @@ -5,18 +5,19 @@ @import "./components/accordion.css"; @import "./components/button.css"; @import "./components/card.css"; -@import "./components/coin-input.css"; -@import "./components/coin-selector.css"; @import "./components/dialog.css"; -@import "./components/faucet-widget.css"; -@import "./components/header.css"; @import "./components/input.css"; -@import "./components/main-layout.css"; @import "./components/popover.css"; @import "./components/tooltip.css"; @import "./components/toast.css"; + +@import "./components/header.css"; +@import "./components/coin-input.css"; +@import "./components/coin-selector.css"; +@import "./components/main-layout.css"; @import "./components/welcome-page.css"; @import "./components/home-page.css"; +@import "./components/actions-widget.css"; @import "tailwindcss/utilities"; @import "./utilities.css"; diff --git a/packages/app/src/systems/Core/components/ActionsWidget.tsx b/packages/app/src/systems/Core/components/ActionsWidget.tsx new file mode 100644 index 00000000..661fc735 --- /dev/null +++ b/packages/app/src/systems/Core/components/ActionsWidget.tsx @@ -0,0 +1,36 @@ +import { BsTwitter } from "react-icons/bs"; +import { FaFaucet } from "react-icons/fa"; + +import { FaucetDialog, useFaucetDialog } from "~/systems/Faucet"; +import { TwitterDialog, useTwitterDialog } from "~/systems/Tweet"; +import { Button } from "~/systems/UI"; + +export function ActionsWidget() { + const twitterDialog = useTwitterDialog(); + const faucetDialog = useFaucetDialog(); + + return ( +
      + + + + +
      + ); +} diff --git a/packages/app/src/systems/Core/components/CoinInput.tsx b/packages/app/src/systems/Core/components/CoinInput.tsx index 9d10bb65..adad7920 100644 --- a/packages/app/src/systems/Core/components/CoinInput.tsx +++ b/packages/app/src/systems/Core/components/CoinInput.tsx @@ -10,7 +10,6 @@ import { parseUnits, toBigInt, MAX_U64_VALUE, - parseToFormattedNumber, ZERO, } from "../utils"; @@ -166,19 +165,11 @@ export function useCoinInput({ }; } -function getRightValue(value: string, displayType: string) { - if (displayType === "text") return parseToFormattedNumber(value); - - switch (value) { - case "0.0": - return "0"; - - case ".": - return "0."; - - default: - return value; - } +function getRightValue(value: string) { + if (process.env.NODE_ENV === "test" && !value) return null; + if (value === "0.0") return "0"; + if (value === ".") return "0."; + return value; } type CoinInputProps = Omit & @@ -232,14 +223,14 @@ export const CoinInput = forwardRef( getInputRef={ref} allowNegative={false} defaultValue={initialValue} - value={getRightValue(value || "", displayType)} + value={getRightValue(value || "")} displayType={displayType} isAllowed={isAllowed} onChange={(e: React.ChangeEvent) => { onChange?.(e.target.value); setValue(e.target.value); }} - decimalScale={DECIMAL_UNITS} + decimalScale={displayType === "text" ? 4 : DECIMAL_UNITS} placeholder="0" className="coinInput--input" thousandSeparator={false} diff --git a/packages/app/src/systems/Core/components/Header.tsx b/packages/app/src/systems/Core/components/Header.tsx index 2101baf5..3a8e3b9f 100644 --- a/packages/app/src/systems/Core/components/Header.tsx +++ b/packages/app/src/systems/Core/components/Header.tsx @@ -61,11 +61,6 @@ export const Header = () => { height={40} width={40} /> - {wallet && ( -
      - -
      - )} {wallet && (
      @@ -88,6 +83,11 @@ export const Header = () => {
      )} + {wallet && ( +
      + +
      + )}
); }; diff --git a/packages/app/src/systems/Core/components/MainLayout.tsx b/packages/app/src/systems/Core/components/MainLayout.tsx index 81b4bce9..a4a87dd7 100644 --- a/packages/app/src/systems/Core/components/MainLayout.tsx +++ b/packages/app/src/systems/Core/components/MainLayout.tsx @@ -8,7 +8,7 @@ import { useWallet } from "../hooks"; import { ErrorBoundary } from "./ErrorBoundary"; import { Header } from "./Header"; -import { FaucetWidget } from "~/systems/Faucet"; +import { ActionsWidget } from "~/systems/Core"; import { Skeleton } from "~/systems/UI"; type MainLayoutProps = { @@ -33,8 +33,8 @@ export function MainLayout({ children }: MainLayoutProps) { )}
+ {wallet && !ctx?.justContent && } - {wallet && !ctx?.justContent && } ); } diff --git a/packages/app/src/systems/Core/components/index.tsx b/packages/app/src/systems/Core/components/index.tsx index 6bd0be55..2d86f928 100644 --- a/packages/app/src/systems/Core/components/index.tsx +++ b/packages/app/src/systems/Core/components/index.tsx @@ -1,3 +1,4 @@ +export * from "./ActionsWidget"; export * from "./AnimatedPage"; export * from "./AssetItem"; export * from "./CoinInput"; diff --git a/packages/app/src/systems/Core/utils/math.ts b/packages/app/src/systems/Core/utils/math.ts index 17798009..3a9c33a4 100644 --- a/packages/app/src/systems/Core/utils/math.ts +++ b/packages/app/src/systems/Core/utils/math.ts @@ -58,9 +58,6 @@ export function parseToFormattedNumber( precision: number = DECIMAL_UNITS ) { let val = value; - if (typeof value === 'string') { - return parseFloat(val as string).toFixed(FIXED_UNITS); - } if (typeof value === 'number') { val = BigInt(Math.trunc(value)); } diff --git a/packages/app/src/systems/Faucet/components/FaucetDialog.tsx b/packages/app/src/systems/Faucet/components/FaucetDialog.tsx new file mode 100644 index 00000000..72ae6cae --- /dev/null +++ b/packages/app/src/systems/Faucet/components/FaucetDialog.tsx @@ -0,0 +1,36 @@ +import toast from "react-hot-toast"; +import { FaFaucet } from "react-icons/fa"; + +import { useFaucetDialog } from "../hooks"; +import { useFaucet } from "../hooks/useFaucet"; + +import { FaucetApp } from "./FaucetApp"; + +import { Card, Dialog } from "~/systems/UI"; + +export function FaucetDialog() { + const faucet = useFaucet(); + const dialog = useFaucetDialog(); + return ( + + + + + Faucet + +
+ Click the button below to receive {faucet.faucetAmount} test ETH to + your wallet. +
+ { + toast.success("Test ETH successfully fauceted!"); + dialog.close(); + }} + /> +
+
+
+ ); +} diff --git a/packages/app/src/systems/Faucet/components/FaucetWidget.tsx b/packages/app/src/systems/Faucet/components/FaucetWidget.tsx deleted file mode 100644 index 68ed7f37..00000000 --- a/packages/app/src/systems/Faucet/components/FaucetWidget.tsx +++ /dev/null @@ -1,46 +0,0 @@ -import toast from "react-hot-toast"; -import { FaFaucet } from "react-icons/fa"; - -import { useFaucet } from "../hooks"; - -import { FaucetApp } from "./FaucetApp"; - -import { Button, Card, Dialog, useDialog } from "~/systems/UI"; - -export function FaucetWidget() { - const dialog = useDialog(); - const faucet = useFaucet(); - - function handleClickFaucet() { - return dialog.openButtonProps.onPress(); - } - - return ( -
- - - - - - Faucet - -
- Click the button below to receive {faucet.faucetAmount} test ETH - to your wallet. -
- { - toast.success("Test ETH successfully fauceted!"); - dialog.close(); - }} - /> -
-
-
-
- ); -} diff --git a/packages/app/src/systems/Faucet/components/index.tsx b/packages/app/src/systems/Faucet/components/index.tsx index 92c07682..608bac51 100644 --- a/packages/app/src/systems/Faucet/components/index.tsx +++ b/packages/app/src/systems/Faucet/components/index.tsx @@ -1,2 +1,2 @@ export * from "./FaucetApp"; -export * from "./FaucetWidget"; +export * from "./FaucetDialog"; diff --git a/packages/app/src/systems/Faucet/hooks/index.ts b/packages/app/src/systems/Faucet/hooks/index.ts index 27c436fc..1b218f56 100644 --- a/packages/app/src/systems/Faucet/hooks/index.ts +++ b/packages/app/src/systems/Faucet/hooks/index.ts @@ -1,2 +1,3 @@ export * from './useCaptcha'; export * from './useFaucet'; +export * from './useFaucetDialog'; diff --git a/packages/app/src/systems/Faucet/hooks/useFaucetDialog.tsx b/packages/app/src/systems/Faucet/hooks/useFaucetDialog.tsx new file mode 100644 index 00000000..7f08274f --- /dev/null +++ b/packages/app/src/systems/Faucet/hooks/useFaucetDialog.tsx @@ -0,0 +1,13 @@ +import { atom, useAtom } from "jotai"; + +import { useDialog } from "~/systems/UI"; + +const dialogAtom = atom(false); + +export function useFaucetDialog() { + const [opened, setOpened] = useAtom(dialogAtom); + return useDialog({ + isOpen: opened, + onOpenChange: setOpened, + }); +} diff --git a/packages/app/src/systems/Swap/pages/SwapPage.tsx b/packages/app/src/systems/Swap/pages/SwapPage.tsx index 0a064faa..afb03fbe 100644 --- a/packages/app/src/systems/Swap/pages/SwapPage.tsx +++ b/packages/app/src/systems/Swap/pages/SwapPage.tsx @@ -29,7 +29,6 @@ import { import { useTransactionCost } from "~/systems/Core/hooks/useTransactionCost"; import { txFeedback } from "~/systems/Core/utils/feedback"; import { usePoolInfo, useUserPositions } from "~/systems/Pool"; -import { TwitterDialog, useTwitterDialog } from "~/systems/Tweet"; import { Button, Card } from "~/systems/UI"; import type { PreviewInfo } from "~/types/contracts/ExchangeContractAbi"; @@ -56,7 +55,6 @@ export function SwapPage() { const balances = useBalances(); const setHasSwapped = useSetAtom(swapHasSwappedAtom); const { poolRatio } = useUserPositions(); - const { open: openTwitterDialog } = useTwitterDialog(); const { isLoading } = useQuery( [ @@ -127,13 +125,11 @@ export function SwapPage() { async function handleSuccess() { setHasSwapped(true); - openTwitterDialog(); await balances.refetch(); } return ( - diff --git a/packages/app/src/systems/Tweet/components/TwitterDialog.tsx b/packages/app/src/systems/Tweet/components/TwitterDialog.tsx index dad1a4e8..d731e582 100644 --- a/packages/app/src/systems/Tweet/components/TwitterDialog.tsx +++ b/packages/app/src/systems/Tweet/components/TwitterDialog.tsx @@ -1,8 +1,6 @@ -import { useEffect } from "react"; - import { useTwitterDialog } from "../hooks/useTwitterDialog"; -import { Button, Dialog, Link, useDialog } from "~/systems/UI"; +import { Button, Dialog, Link } from "~/systems/UI"; const tweetText = `I'm using #SwaySwap, a blazingly fast DEX built on Fuel @fuellabs_\nhttps://fuellabs.github.io/swayswap`; const tweetLink = `https://twitter.com/intent/tweet?text=${encodeURIComponent( @@ -10,36 +8,21 @@ const tweetLink = `https://twitter.com/intent/tweet?text=${encodeURIComponent( )}`; export function TwitterDialog() { - const dialog = useDialog(); - const { isOpen, close } = useTwitterDialog(); - - useEffect(() => { - dialog.setOpen(isOpen); - }, [isOpen]); + const dialog = useTwitterDialog(); function shareTweet() { setTimeout(() => { - close(); + dialog.close(); }, 500); } - function handleSkip() { - close(); - } - return ( - +

💚 Share that you're using SwaySwap on Twitter.

- + diff --git a/packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts b/packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts index a2f1a8b1..166a6b17 100644 --- a/packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts +++ b/packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts @@ -1,23 +1,13 @@ import { atom, useAtom } from 'jotai'; -const TWITTER_DIALOG_KEY = 'swayswap-share-twitter-dialog'; -const openTwitterAtom = atom(localStorage.getItem(TWITTER_DIALOG_KEY) === 'true'); +import { useDialog } from '~/systems/UI'; -export function useTwitterDialog() { - const [open, setOpen] = useAtom(openTwitterAtom); +const dialogAtom = atom(false); - return { - open: () => { - const currentState = localStorage.getItem(TWITTER_DIALOG_KEY); - if (currentState !== 'false') { - setOpen(true); - localStorage.setItem(TWITTER_DIALOG_KEY, String(true)); - } - }, - close: () => { - setOpen(false); - localStorage.setItem(TWITTER_DIALOG_KEY, String(false)); - }, - isOpen: open, - }; +export function useTwitterDialog() { + const [opened, setOpened] = useAtom(dialogAtom); + return useDialog({ + isOpen: opened, + onOpenChange: setOpened, + }); } diff --git a/packages/app/src/systems/UI/components/Dialog.tsx b/packages/app/src/systems/UI/components/Dialog.tsx index 8ca1e960..ac687ddc 100644 --- a/packages/app/src/systems/UI/components/Dialog.tsx +++ b/packages/app/src/systems/UI/components/Dialog.tsx @@ -11,6 +11,7 @@ import { import type { OverlayTriggerState } from "@react-stately/overlays"; import { useOverlayTriggerState } from "@react-stately/overlays"; import type { AriaDialogProps } from "@react-types/dialog"; +import type { OverlayTriggerProps } from "@react-types/overlays"; import cx from "classnames"; import { createContext, useContext, useRef } from "react"; import type { FC, ReactNode } from "react"; @@ -137,8 +138,10 @@ function DialogContent({ children, className, onClose }: DialogContentProps) { ); } -export function useDialog() { - const state = useOverlayTriggerState({}); +type DialogOptions = OverlayTriggerProps; + +export function useDialog(opts: DialogOptions = {}) { + const state = useOverlayTriggerState(opts); const openButtonRef = useRef(null); const closeButtonRef = useRef(null); From cbee984942cf82547e3a2f6f67d832e83d6bae37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Est=C3=A1cio=20=7C=20stacio=2Eeth?= Date: Wed, 22 Jun 2022 18:55:03 -0300 Subject: [PATCH 08/21] feat: update contract ids on gh release (#319) --- .github/workflows/gh-pages.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 4ce00738..2c2819eb 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -40,8 +40,8 @@ jobs: CI: false PUBLIC_URL: "/${{ github.event.repository.name }}" VITE_FUEL_PROVIDER_URL: "https://node.swayswap.io/graphql" - VITE_CONTRACT_ID: "0x4d7e56f79ad160ecd8f0da0833edd62044026bdab65275fa3a34e6a855b96ccc" - VITE_TOKEN_ID: "0xe3ee9322336a734296dd53afe9b90b1bfc7c716762844669b7895ca9ad438b88" + VITE_CONTRACT_ID: "0x859863e191275ed34940c1ee827c7531b387a775104afba350166ee90c30987c" + VITE_TOKEN_ID: "0x9a92f01a55c59e8a3a7860acac1264a1015470e6c868b2ad6e148f4ba7757f73" run: | pnpm build From 96a1d544ff5ace8a9a151a116ee31dfe55cb58cd Mon Sep 17 00:00:00 2001 From: Pedro Nauck Date: Wed, 22 Jun 2022 20:10:44 -0300 Subject: [PATCH 09/21] refactor: share button link direct to twitter (#321) * refactor: share button link direct to twitter * chore: change tweet text --- .../src/styles/components/actions-widget.css | 5 ++ .../systems/Core/components/ActionsWidget.tsx | 28 ++++++----- .../Tweet/components/TwitterDialog.tsx | 47 ------------------- .../systems/Tweet/hooks/useTwitterDialog.ts | 13 ----- packages/app/src/systems/Tweet/index.ts | 2 - 5 files changed, 20 insertions(+), 75 deletions(-) delete mode 100644 packages/app/src/systems/Tweet/components/TwitterDialog.tsx delete mode 100644 packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts delete mode 100644 packages/app/src/systems/Tweet/index.ts diff --git a/packages/app/src/styles/components/actions-widget.css b/packages/app/src/styles/components/actions-widget.css index d260a894..5d601722 100644 --- a/packages/app/src/styles/components/actions-widget.css +++ b/packages/app/src/styles/components/actions-widget.css @@ -5,6 +5,11 @@ @media (min-width: 834px) { @apply p-6 fixed bottom-0 left-0; } + + & a, + & a:hover { + @apply no-underline; + } } .actionsWidget--btn { diff --git a/packages/app/src/systems/Core/components/ActionsWidget.tsx b/packages/app/src/systems/Core/components/ActionsWidget.tsx index 661fc735..0665c9b8 100644 --- a/packages/app/src/systems/Core/components/ActionsWidget.tsx +++ b/packages/app/src/systems/Core/components/ActionsWidget.tsx @@ -2,11 +2,14 @@ import { BsTwitter } from "react-icons/bs"; import { FaFaucet } from "react-icons/fa"; import { FaucetDialog, useFaucetDialog } from "~/systems/Faucet"; -import { TwitterDialog, useTwitterDialog } from "~/systems/Tweet"; -import { Button } from "~/systems/UI"; +import { Button, Link } from "~/systems/UI"; + +const tweetText = `I'm using #SwaySwap, a blazingly fast DEX on the Fuel devnet @fuellabs_\nhttps://fuellabs.github.io/swayswap`; +const tweetLink = `https://twitter.com/intent/tweet?text=${encodeURIComponent( + tweetText +)}`; export function ActionsWidget() { - const twitterDialog = useTwitterDialog(); const faucetDialog = useFaucetDialog(); return ( @@ -20,16 +23,15 @@ export function ActionsWidget() { Faucet - - + + +
); diff --git a/packages/app/src/systems/Tweet/components/TwitterDialog.tsx b/packages/app/src/systems/Tweet/components/TwitterDialog.tsx deleted file mode 100644 index d731e582..00000000 --- a/packages/app/src/systems/Tweet/components/TwitterDialog.tsx +++ /dev/null @@ -1,47 +0,0 @@ -import { useTwitterDialog } from "../hooks/useTwitterDialog"; - -import { Button, Dialog, Link } from "~/systems/UI"; - -const tweetText = `I'm using #SwaySwap, a blazingly fast DEX built on Fuel @fuellabs_\nhttps://fuellabs.github.io/swayswap`; -const tweetLink = `https://twitter.com/intent/tweet?text=${encodeURIComponent( - tweetText -)}`; - -export function TwitterDialog() { - const dialog = useTwitterDialog(); - - function shareTweet() { - setTimeout(() => { - dialog.close(); - }, 500); - } - - return ( - - -

- 💚 Share that you're using SwaySwap on Twitter. -

- - - - -
-
- ); -} diff --git a/packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts b/packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts deleted file mode 100644 index 166a6b17..00000000 --- a/packages/app/src/systems/Tweet/hooks/useTwitterDialog.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { atom, useAtom } from 'jotai'; - -import { useDialog } from '~/systems/UI'; - -const dialogAtom = atom(false); - -export function useTwitterDialog() { - const [opened, setOpened] = useAtom(dialogAtom); - return useDialog({ - isOpen: opened, - onOpenChange: setOpened, - }); -} diff --git a/packages/app/src/systems/Tweet/index.ts b/packages/app/src/systems/Tweet/index.ts deleted file mode 100644 index ee580440..00000000 --- a/packages/app/src/systems/Tweet/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './components/TwitterDialog'; -export * from './hooks/useTwitterDialog'; From d7820516ce89731c83b4582c4ac6dca42fe3cd13 Mon Sep 17 00:00:00 2001 From: John Adler Date: Wed, 22 Jun 2022 21:30:05 -0400 Subject: [PATCH 10/21] chore: remove redundant docs link in header (#324) Remove redundant docs link in header. --- packages/app/src/systems/Home/components/Header.tsx | 6 ------ 1 file changed, 6 deletions(-) diff --git a/packages/app/src/systems/Home/components/Header.tsx b/packages/app/src/systems/Home/components/Header.tsx index 9db27bfb..56d3e416 100644 --- a/packages/app/src/systems/Home/components/Header.tsx +++ b/packages/app/src/systems/Home/components/Header.tsx @@ -19,12 +19,6 @@ export function Header() { Github - - Docs -
); } From c7ca8ca0fa350fe07028200032e32ddbea0a8742 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Est=C3=A1cio=20=7C=20stacio=2Eeth?= Date: Wed, 22 Jun 2022 23:11:28 -0300 Subject: [PATCH 12/21] feat: add more contrast to home text (#329) --- packages/app/src/styles/components/home-page.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/app/src/styles/components/home-page.css b/packages/app/src/styles/components/home-page.css index 08fad6dd..7d736fc4 100644 --- a/packages/app/src/styles/components/home-page.css +++ b/packages/app/src/styles/components/home-page.css @@ -17,13 +17,13 @@ } .homePage--hero { - @apply p-4 lg:p-10 text-gray-100 max-w-[500px] lg:max-w-[700px]; + @apply p-4 lg:p-10 text-gray-50 max-w-[500px] lg:max-w-[700px]; h1 { @apply text-3xl sm:text-4xl font-bold font-display; } p { - @apply text-gray-300 my-6; + @apply text-gray-100 my-6; } } } From 54802a792d52407345639f4511284a015497618a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Est=C3=A1cio=20=7C=20stacio=2Eeth?= Date: Wed, 22 Jun 2022 23:17:34 -0300 Subject: [PATCH 13/21] feat: make logo clickable (#327) --- packages/app/src/styles/components/header.css | 6 +++--- packages/app/src/systems/Core/components/Header.tsx | 6 ++++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/app/src/styles/components/header.css b/packages/app/src/styles/components/header.css index 6c2243c5..1fed4975 100644 --- a/packages/app/src/styles/components/header.css +++ b/packages/app/src/styles/components/header.css @@ -23,7 +23,7 @@ } .header--wallet { @apply flex items-center gap-1; - place-self: end; + place-self: center end; grid-area: 1 / 1 / 2 / 3; } .header--nav { @@ -39,7 +39,7 @@ grid-area: 1 / 1 / 2 / 2; } .header--wallet { - place-self: end; + place-self: center end; grid-area: 1 / 4 / 2 / 9; } .header--nav { @@ -58,7 +58,7 @@ grid-area: 1 / 1 / 2 / 2; } .header--wallet { - place-self: end; + place-self: center end; grid-area: 1 / 4 / 2 / 9; } .header--nav { diff --git a/packages/app/src/systems/Core/components/Header.tsx b/packages/app/src/systems/Core/components/Header.tsx index 3a8e3b9f..27a65465 100644 --- a/packages/app/src/systems/Core/components/Header.tsx +++ b/packages/app/src/systems/Core/components/Header.tsx @@ -56,10 +56,12 @@ export const Header = () => { return (
navigate("/")} src={relativeUrl("/fuel-logo-512x512.png")} alt="swayswap" - height={40} - width={40} + className="cursor-pointer" + height={46} + width={46} /> {wallet && (
From 4f119805f7ce0e4c7203b7a09d2972f77e30b70f Mon Sep 17 00:00:00 2001 From: John Adler Date: Thu, 23 Jun 2022 09:46:55 -0400 Subject: [PATCH 14/21] chore: Revert "chore: remove launch app button on home" (#330) Revert "chore: remove launch app button on home (#325)" This reverts commit 9cb751d9ad5ba0e4e8e4e8c2ff730f485cbcaf2a. --- packages/app/src/systems/Home/components/HomeHero.tsx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/app/src/systems/Home/components/HomeHero.tsx b/packages/app/src/systems/Home/components/HomeHero.tsx index 6ff02f79..3a075dcf 100644 --- a/packages/app/src/systems/Home/components/HomeHero.tsx +++ b/packages/app/src/systems/Home/components/HomeHero.tsx @@ -1,6 +1,10 @@ -import { Link } from "~/systems/UI"; +import { useNavigate } from "react-router-dom"; + +import { Button, Link } from "~/systems/UI"; +import { Pages } from "~/types"; export function HomeHero() { + const navigate = useNavigate(); return (

@@ -24,6 +28,9 @@ export function HomeHero() { scaling beyond layer-2s and monolithic blockchain design. #BeyondMonolithic

+

); } From 3278050b616b4798758dc05dd88f5207af9a362c Mon Sep 17 00:00:00 2001 From: Luiz Felipe Bolsoni Gomes <8636507+LuizAsFight@users.noreply.github.com> Date: Thu, 23 Jun 2022 16:29:16 -0300 Subject: [PATCH 15/21] feat: loading button size (#335) --- packages/app/src/systems/UI/components/Button.tsx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/app/src/systems/UI/components/Button.tsx b/packages/app/src/systems/UI/components/Button.tsx index cd90ee49..f4de2630 100644 --- a/packages/app/src/systems/UI/components/Button.tsx +++ b/packages/app/src/systems/UI/components/Button.tsx @@ -18,6 +18,12 @@ export type ButtonProps = AriaButtonProps<"button"> & { isReadOnly?: boolean; }; +const SPINNER_SIZE = { + sm: 16, + md: 22, + lg: 28, +}; + export const Button = forwardRef( ( { @@ -68,7 +74,7 @@ export const Button = forwardRef( > {isLoading ? ( From f696780e3150797c3a78d292d3f4007e42dea178 Mon Sep 17 00:00:00 2001 From: Luiz Felipe Bolsoni Gomes <8636507+LuizAsFight@users.noreply.github.com> Date: Thu, 23 Jun 2022 16:39:48 -0300 Subject: [PATCH 16/21] feat: avoid multiple error notifications (#336) --- packages/app/src/systems/Core/utils/queryClient.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/app/src/systems/Core/utils/queryClient.tsx b/packages/app/src/systems/Core/utils/queryClient.tsx index eaf7d984..5d9e89de 100644 --- a/packages/app/src/systems/Core/utils/queryClient.tsx +++ b/packages/app/src/systems/Core/utils/queryClient.tsx @@ -20,6 +20,7 @@ function handleError(error: any) { const msg = error.message; toast.error(msg.includes("Panic") ? panicError(msg) : msg, { duration: 100000000, + id: msg, }); } From 7a6473c95984d98ac286ef706d0f27083a9a79d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Est=C3=A1cio=20=7C=20stacio=2Eeth?= Date: Thu, 23 Jun 2022 18:03:58 -0300 Subject: [PATCH 17/21] fix: increase deadline (#341) --- packages/app/src/config.ts | 2 +- packages/app/src/systems/Swap/utils/queries.ts | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/app/src/config.ts b/packages/app/src/config.ts index f7801be9..a6c7cc20 100644 --- a/packages/app/src/config.ts +++ b/packages/app/src/config.ts @@ -18,7 +18,7 @@ export const SLIPPAGE_TOLERANCE = 0.005; /** Small network fee */ export const NETWORK_FEE = 1; /** Default deadline */ -export const DEADLINE = 5000; +export const DEADLINE = 99999999999; /** Max presentation units to avoid show 9 decimals on screen */ export const FIXED_UNITS = 3; /** Min gas price required from the fuel-core */ diff --git a/packages/app/src/systems/Swap/utils/queries.ts b/packages/app/src/systems/Swap/utils/queries.ts index 28fe086f..b4488993 100644 --- a/packages/app/src/systems/Swap/utils/queries.ts +++ b/packages/app/src/systems/Swap/utils/queries.ts @@ -1,6 +1,7 @@ import type { SwapState } from '../types'; import { ActiveInput } from '../types'; +import { DEADLINE } from '~/config'; import { COIN_ETH } from '~/systems/Core'; import type { TransactionCost } from '~/systems/Core/utils/gas'; import { getOverrides } from '~/systems/Core/utils/gas'; @@ -57,7 +58,6 @@ export const swapTokens = async ( { coinFrom, direction, amount }: SwapState, txCost: TransactionCost ) => { - const DEADLINE = 1000; if (direction === ActiveInput.to && amount) { const forwardAmount = await getSwapWithMaximumRequiredAmount( contract, @@ -96,7 +96,6 @@ export const swapTokens = async ( }; export const queryNetworkFee = (contract: ExchangeContractAbi, direction?: ActiveInput) => { - const DEADLINE = 1000; const directionValue = direction || ActiveInput.from; if (directionValue === ActiveInput.to) { return contract.prepareCall.swap_with_maximum(1, DEADLINE, { From 741db319b9efd1b58a4ccbe7b9931dbbdb16f49c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Est=C3=A1cio=20=7C=20stacio=2Eeth?= Date: Thu, 23 Jun 2022 19:34:01 -0300 Subject: [PATCH 18/21] fix: get current blockheight to add on deadline (#342) * feat: get current blockheight * fix: add await on get deadline * chore: fix lint --- packages/app/src/config.ts | 2 +- .../systems/Core/hooks/useTransactionCost.ts | 7 +++++-- packages/app/src/systems/Core/utils/chain.ts | 11 +++++++++++ packages/app/src/systems/Core/utils/index.ts | 1 + .../src/systems/Pool/hooks/useAddLiquidity.ts | 6 +++--- packages/app/src/systems/Pool/utils/queries.ts | 11 +++++++---- packages/app/src/systems/Swap/utils/queries.ts | 17 ++++++++++------- 7 files changed, 38 insertions(+), 17 deletions(-) create mode 100644 packages/app/src/systems/Core/utils/chain.ts diff --git a/packages/app/src/config.ts b/packages/app/src/config.ts index a6c7cc20..c2437064 100644 --- a/packages/app/src/config.ts +++ b/packages/app/src/config.ts @@ -18,7 +18,7 @@ export const SLIPPAGE_TOLERANCE = 0.005; /** Small network fee */ export const NETWORK_FEE = 1; /** Default deadline */ -export const DEADLINE = 99999999999; +export const DEADLINE = 1000; /** Max presentation units to avoid show 9 decimals on screen */ export const FIXED_UNITS = 3; /** Min gas price required from the fuel-core */ diff --git a/packages/app/src/systems/Core/hooks/useTransactionCost.ts b/packages/app/src/systems/Core/hooks/useTransactionCost.ts index dc17d182..81bc27e4 100644 --- a/packages/app/src/systems/Core/hooks/useTransactionCost.ts +++ b/packages/app/src/systems/Core/hooks/useTransactionCost.ts @@ -7,9 +7,12 @@ import { emptyTransactionCost, getTransactionCost } from '../utils/gas'; import { useEthBalance } from './useEthBalance'; +type ContractCallFuncPromise = () => Promise; +type ContractCallFunc = () => ContractCall; + export function useTransactionCost( queryKey: unknown[], - request: () => ContractCall, + request: ContractCallFunc | ContractCallFuncPromise, options?: Omit, 'queryKey' | 'queryFn'> ) { const ethBalance = useEthBalance(); @@ -20,7 +23,7 @@ export function useTransactionCost( const { data } = useQuery( queryKey, - async () => getTransactionCost(request()), + async () => getTransactionCost(await request()), options ); diff --git a/packages/app/src/systems/Core/utils/chain.ts b/packages/app/src/systems/Core/utils/chain.ts new file mode 100644 index 00000000..ea915c95 --- /dev/null +++ b/packages/app/src/systems/Core/utils/chain.ts @@ -0,0 +1,11 @@ +import type { Contract } from 'fuels'; + +import { toBigInt } from './math'; + +import { DEADLINE } from '~/config'; + +export async function getDeadline(contract: Contract, deadline?: bigint) { + const blockHeight = await contract.wallet!.provider.getBlockNumber(); + const nexDeadline = blockHeight + (deadline || toBigInt(DEADLINE)); + return nexDeadline; +} diff --git a/packages/app/src/systems/Core/utils/index.ts b/packages/app/src/systems/Core/utils/index.ts index 2ae95f41..bfcc29cb 100644 --- a/packages/app/src/systems/Core/utils/index.ts +++ b/packages/app/src/systems/Core/utils/index.ts @@ -4,3 +4,4 @@ export * from './constants'; export * from './math'; export * from './queryClient'; export * from './helpers'; +export * from './chain'; diff --git a/packages/app/src/systems/Pool/hooks/useAddLiquidity.ts b/packages/app/src/systems/Pool/hooks/useAddLiquidity.ts index d0a83d79..e2c70ef5 100644 --- a/packages/app/src/systems/Pool/hooks/useAddLiquidity.ts +++ b/packages/app/src/systems/Pool/hooks/useAddLiquidity.ts @@ -5,9 +5,8 @@ import { useNavigate } from 'react-router-dom'; import { useUserPositions } from './useUserPositions'; -import { DEADLINE } from '~/config'; import type { UseCoinInput } from '~/systems/Core'; -import { useContract, toBigInt } from '~/systems/Core'; +import { getDeadline, useContract, toBigInt } from '~/systems/Core'; import { getOverrides } from '~/systems/Core/utils/gas'; import type { Coin } from '~/types'; @@ -74,9 +73,10 @@ export function useAddLiquidity({ ); setStage(2); // Create liquidity pool + const deadline = await getDeadline(contract); const liquidityTokens = await contract.submit.add_liquidity( 1, - DEADLINE, + deadline, getOverrides({ variableOutputs: 2, gasLimit: toBigInt(1500000), diff --git a/packages/app/src/systems/Pool/utils/queries.ts b/packages/app/src/systems/Pool/utils/queries.ts index 3f25a03a..ecb9450f 100644 --- a/packages/app/src/systems/Pool/utils/queries.ts +++ b/packages/app/src/systems/Pool/utils/queries.ts @@ -1,6 +1,7 @@ import type { Contract } from 'fuels'; -import { CONTRACT_ID, DEADLINE } from '~/config'; +import { CONTRACT_ID } from '~/config'; +import { getDeadline } from '~/systems/Core'; import type { TransactionCost } from '~/systems/Core/utils/gas'; import { getOverrides } from '~/systems/Core/utils/gas'; @@ -8,8 +9,9 @@ export enum PoolQueries { RemoveLiquidityNetworkFee = 'RemoveLiquidity-networkFee', } -export function prepareRemoveLiquidity(contract: Contract) { - return contract.prepareCall.remove_liquidity(1, 1, DEADLINE, { +export async function prepareRemoveLiquidity(contract: Contract) { + const deadline = await getDeadline(contract); + return contract.prepareCall.remove_liquidity(1, 1, deadline, { forward: [1, CONTRACT_ID], variableOutputs: 2, gasLimit: 100_000_000, @@ -21,10 +23,11 @@ export async function submitRemoveLiquidity( amount: bigint, txCost: TransactionCost ) { + const deadline = await getDeadline(contract); return contract.submit.remove_liquidity( 1, 1, - DEADLINE, + deadline, getOverrides({ forward: [amount, CONTRACT_ID], variableOutputs: 2, diff --git a/packages/app/src/systems/Swap/utils/queries.ts b/packages/app/src/systems/Swap/utils/queries.ts index b4488993..725864c7 100644 --- a/packages/app/src/systems/Swap/utils/queries.ts +++ b/packages/app/src/systems/Swap/utils/queries.ts @@ -1,8 +1,7 @@ import type { SwapState } from '../types'; import { ActiveInput } from '../types'; -import { DEADLINE } from '~/config'; -import { COIN_ETH } from '~/systems/Core'; +import { COIN_ETH, getDeadline } from '~/systems/Core'; import type { TransactionCost } from '~/systems/Core/utils/gas'; import { getOverrides } from '~/systems/Core/utils/gas'; import type { ExchangeContractAbi } from '~/types/contracts'; @@ -58,6 +57,8 @@ export const swapTokens = async ( { coinFrom, direction, amount }: SwapState, txCost: TransactionCost ) => { + const deadline = await getDeadline(contract); + if (direction === ActiveInput.to && amount) { const forwardAmount = await getSwapWithMaximumRequiredAmount( contract, @@ -69,7 +70,7 @@ export const swapTokens = async ( } return contract.submitResult.swap_with_maximum( amount, - DEADLINE, + deadline, getOverrides({ forward: [forwardAmount.amount, coinFrom.assetId], gasLimit: txCost.total, @@ -85,7 +86,7 @@ export const swapTokens = async ( return contract.submitResult.swap_with_minimum( minValue.amount, - DEADLINE, + deadline, getOverrides({ forward: [amount, coinFrom.assetId], gasLimit: txCost.total, @@ -95,16 +96,18 @@ export const swapTokens = async ( } }; -export const queryNetworkFee = (contract: ExchangeContractAbi, direction?: ActiveInput) => { +export const queryNetworkFee = async (contract: ExchangeContractAbi, direction?: ActiveInput) => { const directionValue = direction || ActiveInput.from; + const deadline = await getDeadline(contract); + if (directionValue === ActiveInput.to) { - return contract.prepareCall.swap_with_maximum(1, DEADLINE, { + return contract.prepareCall.swap_with_maximum(1, deadline, { forward: [1, COIN_ETH], variableOutputs: 2, gasLimit: 1000000, }); } - return contract.prepareCall.swap_with_minimum(1, DEADLINE, { + return contract.prepareCall.swap_with_minimum(1, deadline, { forward: [1, COIN_ETH], variableOutputs: 1, gasLimit: 1000000, From 0ccf012244a73bf28703e0ccdb40180967392d40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Est=C3=A1cio=20=7C=20stacio=2Eeth?= Date: Thu, 23 Jun 2022 21:43:09 -0300 Subject: [PATCH 19/21] feat: improve height controll to avoid content hidden and colissions (#339) * feat: improve height controll to avoid content hidden and colissions * refact: clean code and fix some spaces --- packages/app/src/styles/base.css | 4 ++-- .../app/src/styles/components/actions-widget.css | 2 +- packages/app/src/styles/components/card.css | 4 ++-- packages/app/src/styles/components/header.css | 8 +++++++- packages/app/src/styles/components/home-page.css | 5 +++++ .../app/src/styles/components/main-layout.css | 10 +++++++--- .../app/src/styles/components/welcome-page.css | 16 +++++++++++++--- packages/app/src/styles/utilities.css | 8 ++++++++ .../app/src/systems/Core/components/Header.tsx | 2 -- .../src/systems/Core/components/MainLayout.tsx | 2 +- .../src/systems/Core/components/TokenIcon.tsx | 2 +- packages/app/src/systems/Mint/pages/MintPage.tsx | 2 +- packages/app/src/systems/Swap/pages/SwapPage.tsx | 2 +- 13 files changed, 49 insertions(+), 18 deletions(-) diff --git a/packages/app/src/styles/base.css b/packages/app/src/styles/base.css index fbaebba5..666d6bb1 100644 --- a/packages/app/src/styles/base.css +++ b/packages/app/src/styles/base.css @@ -7,8 +7,8 @@ body { } body, -#root { - min-height: 100vh; +#root, +.header { background-color: #23262d; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 304 304' width='304' height='304'%3E%3Cpath fill='%23444a56' fill-opacity='0.03' d='M44.1 224a5 5 0 1 1 0 2H0v-2h44.1zm160 48a5 5 0 1 1 0 2H82v-2h122.1zm57.8-46a5 5 0 1 1 0-2H304v2h-42.1zm0 16a5 5 0 1 1 0-2H304v2h-42.1zm6.2-114a5 5 0 1 1 0 2h-86.2a5 5 0 1 1 0-2h86.2zm-256-48a5 5 0 1 1 0 2H0v-2h12.1zm185.8 34a5 5 0 1 1 0-2h86.2a5 5 0 1 1 0 2h-86.2zM258 12.1a5 5 0 1 1-2 0V0h2v12.1zm-64 208a5 5 0 1 1-2 0v-54.2a5 5 0 1 1 2 0v54.2zm48-198.2V80h62v2h-64V21.9a5 5 0 1 1 2 0zm16 16V64h46v2h-48V37.9a5 5 0 1 1 2 0zm-128 96V208h16v12.1a5 5 0 1 1-2 0V210h-16v-76.1a5 5 0 1 1 2 0zm-5.9-21.9a5 5 0 1 1 0 2H114v48H85.9a5 5 0 1 1 0-2H112v-48h12.1zm-6.2 130a5 5 0 1 1 0-2H176v-74.1a5 5 0 1 1 2 0V242h-60.1zm-16-64a5 5 0 1 1 0-2H114v48h10.1a5 5 0 1 1 0 2H112v-48h-10.1zM66 284.1a5 5 0 1 1-2 0V274H50v30h-2v-32h18v12.1zM236.1 176a5 5 0 1 1 0 2H226v94h48v32h-2v-30h-48v-98h12.1zm25.8-30a5 5 0 1 1 0-2H274v44.1a5 5 0 1 1-2 0V146h-10.1zm-64 96a5 5 0 1 1 0-2H208v-80h16v-14h-42.1a5 5 0 1 1 0-2H226v18h-16v80h-12.1zm86.2-210a5 5 0 1 1 0 2H272V0h2v32h10.1zM98 101.9V146H53.9a5 5 0 1 1 0-2H96v-42.1a5 5 0 1 1 2 0zM53.9 34a5 5 0 1 1 0-2H80V0h2v34H53.9zm60.1 3.9V66H82v64H69.9a5 5 0 1 1 0-2H80V64h32V37.9a5 5 0 1 1 2 0zM101.9 82a5 5 0 1 1 0-2H128V37.9a5 5 0 1 1 2 0V82h-28.1zm16-64a5 5 0 1 1 0-2H146v44.1a5 5 0 1 1-2 0V18h-26.1zm102.2 270a5 5 0 1 1 0 2H98v14h-2v-16h124.1zM242 149.9V160h16v34h-16v62h48v48h-2v-46h-48v-66h16v-30h-16v-12.1a5 5 0 1 1 2 0zM53.9 18a5 5 0 1 1 0-2H64V2H48V0h18v18H53.9zm112 32a5 5 0 1 1 0-2H192V0h50v2h-48v48h-28.1zm-48-48a5 5 0 0 1-9.8-2h2.07a3 3 0 1 0 5.66 0H178v34h-18V21.9a5 5 0 1 1 2 0V32h14V2h-58.1zm0 96a5 5 0 1 1 0-2H137l32-32h39V21.9a5 5 0 1 1 2 0V66h-40.17l-32 32H117.9zm28.1 90.1a5 5 0 1 1-2 0v-76.51L175.59 80H224V21.9a5 5 0 1 1 2 0V82h-49.59L146 112.41v75.69zm16 32a5 5 0 1 1-2 0v-99.51L184.59 96H300.1a5 5 0 0 1 3.9-3.9v2.07a3 3 0 0 0 0 5.66v2.07a5 5 0 0 1-3.9-3.9H185.41L162 121.41v98.69zm-144-64a5 5 0 1 1-2 0v-3.51l48-48V48h32V0h2v50H66v55.41l-48 48v2.69zM50 53.9v43.51l-48 48V208h26.1a5 5 0 1 1 0 2H0v-65.41l48-48V53.9a5 5 0 1 1 2 0zm-16 16V89.41l-34 34v-2.82l32-32V69.9a5 5 0 1 1 2 0zM12.1 32a5 5 0 1 1 0 2H9.41L0 43.41V40.6L8.59 32h3.51zm265.8 18a5 5 0 1 1 0-2h18.69l7.41-7.41v2.82L297.41 50H277.9zm-16 160a5 5 0 1 1 0-2H288v-71.41l16-16v2.82l-14 14V210h-28.1zm-208 32a5 5 0 1 1 0-2H64v-22.59L40.59 194H21.9a5 5 0 1 1 0-2H41.41L66 216.59V242H53.9zm150.2 14a5 5 0 1 1 0 2H96v-56.6L56.6 162H37.9a5 5 0 1 1 0-2h19.5L98 200.6V256h106.1zm-150.2 2a5 5 0 1 1 0-2H80v-46.59L48.59 178H21.9a5 5 0 1 1 0-2H49.41L82 208.59V258H53.9zM34 39.8v1.61L9.41 66H0v-2h8.59L32 40.59V0h2v39.8zM2 300.1a5 5 0 0 1 3.9 3.9H3.83A3 3 0 0 0 0 302.17V256h18v48h-2v-46H2v42.1zM34 241v63h-2v-62H0v-2h34v1zM17 18H0v-2h16V0h2v18h-1zm273-2h14v2h-16V0h2v16zm-32 273v15h-2v-14h-14v14h-2v-16h18v1zM0 92.1A5.02 5.02 0 0 1 6 97a5 5 0 0 1-6 4.9v-2.07a3 3 0 1 0 0-5.66V92.1zM80 272h2v32h-2v-32zm37.9 32h-2.07a3 3 0 0 0-5.66 0h-2.07a5 5 0 0 1 9.8 0zM5.9 0A5.02 5.02 0 0 1 0 5.9V3.83A3 3 0 0 0 3.83 0H5.9zm294.2 0h2.07A3 3 0 0 0 304 3.83V5.9a5 5 0 0 1-3.9-5.9zm3.9 300.1v2.07a3 3 0 0 0-1.83 1.83h-2.07a5 5 0 0 1 3.9-3.9zM97 100a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-48 32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32 48a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16-64a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 96a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-144a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-96 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm96 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16-64a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-32 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM49 36a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-32 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM33 68a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-48a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 240a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16-64a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm80-176a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32 48a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm112 176a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-16 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM17 180a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0-32a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM17 84a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm32 64a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm16-16a3 3 0 1 0 0-6 3 3 0 0 0 0 6z'%3E%3C/path%3E%3C/svg%3E"); } diff --git a/packages/app/src/styles/components/actions-widget.css b/packages/app/src/styles/components/actions-widget.css index 5d601722..b1216e97 100644 --- a/packages/app/src/styles/components/actions-widget.css +++ b/packages/app/src/styles/components/actions-widget.css @@ -1,6 +1,6 @@ @layer components { .actionsWidget { - @apply flex items-center gap-1 p-4; + @apply flex gap-1 mt-6 self-start flex-1 items-end pb-0; @media (min-width: 834px) { @apply p-6 fixed bottom-0 left-0; diff --git a/packages/app/src/styles/components/card.css b/packages/app/src/styles/components/card.css index 6a8eae0c..f7f1a6fb 100644 --- a/packages/app/src/styles/components/card.css +++ b/packages/app/src/styles/components/card.css @@ -1,9 +1,9 @@ @layer components { .card { @apply bg-gray-800 rounded-xl py-3; - min-width: calc(100vw - 40px); + min-width: 100%; - @media (min-width: 450px) { + @media (min-width: 640px) { min-width: 450px; } } diff --git a/packages/app/src/styles/components/header.css b/packages/app/src/styles/components/header.css index 1fed4975..3a1a6f8f 100644 --- a/packages/app/src/styles/components/header.css +++ b/packages/app/src/styles/components/header.css @@ -1,6 +1,6 @@ @layer components { .header { - @apply sticky grid p-4 py-3 sm:py-4; + @apply sticky top-0 w-full grid p-4 pb-0; } .header--navContainer { @apply px-1 gap-1 flex bg-gray-800 rounded-xl sm:rounded-3xl; @@ -20,6 +20,8 @@ } .header img { grid-area: 1 / 1 / 2 / 2; + height: 40px; + width: 40px; } .header--wallet { @apply flex items-center gap-1; @@ -37,6 +39,8 @@ } .header img { grid-area: 1 / 1 / 2 / 2; + height: 46px; + width: 46px; } .header--wallet { place-self: center end; @@ -56,6 +60,8 @@ } .header img { grid-area: 1 / 1 / 2 / 2; + height: 46px; + width: 46px; } .header--wallet { place-self: center end; diff --git a/packages/app/src/styles/components/home-page.css b/packages/app/src/styles/components/home-page.css index 7d736fc4..ad61b403 100644 --- a/packages/app/src/styles/components/home-page.css +++ b/packages/app/src/styles/components/home-page.css @@ -2,6 +2,11 @@ .homePage { @apply p-6 flex flex-col h-[100vh] justify-between bg-cover; background-image: url("/lp-bg.jpg"); + + @media (max-width: 640px) { + @apply mobile-fit-screen; + height: auto; + } } .homePage--header { diff --git a/packages/app/src/styles/components/main-layout.css b/packages/app/src/styles/components/main-layout.css index c585b4bb..4c2a2923 100644 --- a/packages/app/src/styles/components/main-layout.css +++ b/packages/app/src/styles/components/main-layout.css @@ -2,12 +2,16 @@ .mainLayout { @apply flex flex-col; @apply h-screen text-gray-100 overflow-hidden; - @apply grid; - grid-template-rows: auto 1fr auto; + + @media (max-width: 640px) { + @apply mobile-fit-screen; + height: auto; + } } .mainLayout--wrapper { - @apply flex justify-center items-start p-4 pb-16 sm:pt-14 overflow-y-auto; + @apply flex flex-1 flex-col items-center p-4 pt-10 sm:pt-16 overflow-y-auto; } + .mainLayout-errorContent { @apply w-[30rem] flex-1 rounded-xl p-4 m-2; } diff --git a/packages/app/src/styles/components/welcome-page.css b/packages/app/src/styles/components/welcome-page.css index c1142ee6..950edd9e 100644 --- a/packages/app/src/styles/components/welcome-page.css +++ b/packages/app/src/styles/components/welcome-page.css @@ -6,6 +6,11 @@ @media (min-width: 1024px) { grid-template-columns: 300px 1fr; } + + @media (max-width: 640px) { + @apply mobile-fit-screen; + min-height: inherit; + } } .welcomePage--content { @apply relative m-8 grid place-items-center max-h-[100vh]; @@ -13,6 +18,10 @@ @media (max-width: 640px) { @apply m-0 my-4; } + + @media (max-height: 500px) { + @apply m-0 my-4; + } } /* WelcomeSidebar @@ -84,16 +93,17 @@ WelcomeStep */ .welcomeStep { - @apply max-w-[350px] text-center text-gray-300; + @apply max-w-[350px] text-center text-gray-300 pb-6; h2 { @apply text-white text-2xl mb-4; } img { @apply mx-auto mb-5; + min-height: 100px; - @media (max-width: 640px) { - @apply max-w-[180px]; + @media (max-height: 700px) { + max-height: calc(100vh / 3); } } } diff --git a/packages/app/src/styles/utilities.css b/packages/app/src/styles/utilities.css index a9ec0891..a76bc357 100644 --- a/packages/app/src/styles/utilities.css +++ b/packages/app/src/styles/utilities.css @@ -13,4 +13,12 @@ .inner-shadow { box-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.2); } + + .mobile-fit-screen { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + } } diff --git a/packages/app/src/systems/Core/components/Header.tsx b/packages/app/src/systems/Core/components/Header.tsx index 27a65465..e3d09404 100644 --- a/packages/app/src/systems/Core/components/Header.tsx +++ b/packages/app/src/systems/Core/components/Header.tsx @@ -60,8 +60,6 @@ export const Header = () => { src={relativeUrl("/fuel-logo-512x512.png")} alt="swayswap" className="cursor-pointer" - height={46} - width={46} /> {wallet && (
diff --git a/packages/app/src/systems/Core/components/MainLayout.tsx b/packages/app/src/systems/Core/components/MainLayout.tsx index a4a87dd7..97f70e58 100644 --- a/packages/app/src/systems/Core/components/MainLayout.tsx +++ b/packages/app/src/systems/Core/components/MainLayout.tsx @@ -32,8 +32,8 @@ export function MainLayout({ children }: MainLayoutProps) { children )} + {wallet && !ctx?.justContent && }
- {wallet && !ctx?.justContent && } ); diff --git a/packages/app/src/systems/Core/components/TokenIcon.tsx b/packages/app/src/systems/Core/components/TokenIcon.tsx index bfe145fc..3908d335 100644 --- a/packages/app/src/systems/Core/components/TokenIcon.tsx +++ b/packages/app/src/systems/Core/components/TokenIcon.tsx @@ -4,7 +4,7 @@ import type { Coin } from "~/types"; const style = { icon: `inline-flex rounded-full border-2 border-transparent`, - iconLast: `last:ml-[-10px] last:z-10 border-gray-800`, + iconLast: `last:ml-[-10px] last:z-1 border-gray-800`, }; type TokenIconProps = { diff --git a/packages/app/src/systems/Mint/pages/MintPage.tsx b/packages/app/src/systems/Mint/pages/MintPage.tsx index b674f50e..25b37c54 100644 --- a/packages/app/src/systems/Mint/pages/MintPage.tsx +++ b/packages/app/src/systems/Mint/pages/MintPage.tsx @@ -23,7 +23,7 @@ export function MintPage() { return ( - + Mint diff --git a/packages/app/src/systems/Swap/pages/SwapPage.tsx b/packages/app/src/systems/Swap/pages/SwapPage.tsx index afb03fbe..04b7ddf4 100644 --- a/packages/app/src/systems/Swap/pages/SwapPage.tsx +++ b/packages/app/src/systems/Swap/pages/SwapPage.tsx @@ -130,7 +130,7 @@ export function SwapPage() { return ( - + Swap From 64faa1a90acfffef2f62b9aa68b35aa9261f1106 Mon Sep 17 00:00:00 2001 From: Pedro Nauck Date: Thu, 23 Jun 2022 22:29:45 -0300 Subject: [PATCH 20/21] feat: add tx links for add/remove liquidity (#338) * chore: update cypress and e2e tests * feat: add tx links on add/remove liquidity --- .github/workflows/pr.yaml | 12 +-- .../app/src/systems/Core/utils/feedback.tsx | 34 ++++---- .../src/systems/Pool/hooks/useAddLiquidity.ts | 84 +++++++++---------- .../systems/Pool/pages/RemoveLiquidity.tsx | 35 ++++---- .../app/src/systems/Pool/utils/queries.ts | 2 +- 5 files changed, 79 insertions(+), 88 deletions(-) diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index d18ad64e..183f2c9d 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -108,7 +108,7 @@ jobs: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - + # Make github action to use the latest version of # docker compose without it docker compose down # has issues with memory nil pointer @@ -125,7 +125,11 @@ jobs: - name: Setup scripts run: | pnpm scripts:setup - + + - name: Run test + run: | + pnpm ci:test:coverage + # using same dependencies from cypress/browsers:node16.5.0-chrome97-ff96 ... # not using directly the container because we still need ubuntu-latest preset - name: Install Cypress Dependencies @@ -174,7 +178,3 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} DEBUG: "cypress:server:*" NODE_ENV: "test" - - - name: Run test - run: | - pnpm ci:test:coverage diff --git a/packages/app/src/systems/Core/utils/feedback.tsx b/packages/app/src/systems/Core/utils/feedback.tsx index 17fde28b..ec178f9b 100644 --- a/packages/app/src/systems/Core/utils/feedback.tsx +++ b/packages/app/src/systems/Core/utils/feedback.tsx @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import type { TransactionResult } from "fuels"; import toast from "react-hot-toast"; @@ -10,34 +11,39 @@ export function getBlockExplorerLink(path: string) { )}`; } +type TxLinkProps = { + id?: string; +}; + +export function TxLink({ id }: TxLinkProps) { + return ( +

+ + View it on Fuel Explorer + +

+ ); +} + export function txFeedback( txMsg: string, - onSuccess: () => void | Promise + onSuccess: (data: TransactionResult) => void | Promise ) { - // eslint-disable-next-line @typescript-eslint/no-explicit-any return async (data: TransactionResult | undefined) => { - const txLink = ( -

- - View it on Fuel Explorer - -

- ); + const txLink = ; /** * Show a toast success message if status.type === 'success' */ if (data?.status.type === "success") { + await onSuccess(data); toast.success( <> - {txMsg} {txLink} + {" "} + {txMsg} {txLink}{" "} , { duration: 8000 } ); - await onSuccess(); return; } diff --git a/packages/app/src/systems/Pool/hooks/useAddLiquidity.ts b/packages/app/src/systems/Pool/hooks/useAddLiquidity.ts index e2c70ef5..d84410c6 100644 --- a/packages/app/src/systems/Pool/hooks/useAddLiquidity.ts +++ b/packages/app/src/systems/Pool/hooks/useAddLiquidity.ts @@ -1,4 +1,5 @@ -import { useEffect, useState } from 'react'; +/* eslint-disable @typescript-eslint/no-explicit-any */ +import { useEffect, useMemo, useState } from 'react'; import toast from 'react-hot-toast'; import { useMutation } from 'react-query'; import { useNavigate } from 'react-router-dom'; @@ -7,6 +8,7 @@ import { useUserPositions } from './useUserPositions'; import type { UseCoinInput } from '~/systems/Core'; import { getDeadline, useContract, toBigInt } from '~/systems/Core'; +import { txFeedback } from '~/systems/Core/utils/feedback'; import { getOverrides } from '~/systems/Core/utils/gas'; import type { Coin } from '~/types'; @@ -25,11 +27,11 @@ export function useAddLiquidity({ coinTo, onSettle, }: UseAddLiquidityProps) { - const [errorsCreatePull, setErrorsCreatePull] = useState([]); const contract = useContract()!; const [stage, setStage] = useState(0); const navigate = useNavigate(); const { poolRatio } = useUserPositions(); + // Add liquidity is a multi step process // Trying to calculate gas fee on add_liquidity // is a very inaccurate without the two deposits @@ -38,6 +40,7 @@ export function useAddLiquidity({ // the local tx measures with a + 50% margin to avoid issues // TODO: https://github.com/FuelLabs/swayswap-demo/issues/42 const networkFee = toBigInt(10); + const successMsg = poolRatio ? 'Added liquidity to the pool.' : 'New pool created.'; useEffect(() => { fromInput.setGasFee(networkFee); @@ -74,7 +77,7 @@ export function useAddLiquidity({ setStage(2); // Create liquidity pool const deadline = await getDeadline(contract); - const liquidityTokens = await contract.submit.add_liquidity( + return contract.submitResult.add_liquidity( 1, deadline, getOverrides({ @@ -82,50 +85,43 @@ export function useAddLiquidity({ gasLimit: toBigInt(1500000), }) ); - setStage(3); - - return liquidityTokens; }, { - onSuccess: (liquidityTokens) => { - if (liquidityTokens) { - toast.success(poolRatio ? 'Added liquidity to the pool.' : 'New pool created.'); - fromInput.setAmount(BigInt(0)); - toInput.setAmount(BigInt(0)); - navigate('../'); - } else { - toast.error( - `Error when trying to ${poolRatio ? 'add liquidity to' : 'create'} this pool.` - ); - } - }, - // eslint-disable-next-line @typescript-eslint/no-explicit-any - onError: (e: any) => { - const errors = e?.response?.errors; - - if (errors?.length) { - if (errors[0].message === 'enough coins could not be found') { - toast.error( - `Not enough balance in your wallet to ${ - poolRatio ? 'add liquidity to' : 'create' - } this pool.` - ); - } - } else { - toast.error( - `Error when trying to ${poolRatio ? 'add liquidity to' : 'create'} this pool.` - ); - } - }, - onSettled: async () => { - onSettle?.(); - navigate('../'); - setStage(0); - }, + onSuccess: txFeedback(successMsg, handleSuccess), + onError: handleError, + onSettled: handleSettled, } ); - const validateCreatePool = () => { + function handleSuccess() { + fromInput.setAmount(BigInt(0)); + toInput.setAmount(BigInt(0)); + navigate('../'); + } + + function handleError(e: any) { + const errors = e?.response?.errors; + + if (errors?.length) { + if (errors[0].message === 'enough coins could not be found') { + toast.error( + `Not enough balance in your wallet to ${ + poolRatio ? 'add liquidity to' : 'create' + } this pool.` + ); + } + } else { + toast.error(`Error when trying to ${poolRatio ? 'add liquidity to' : 'create'} this pool.`); + } + } + + async function handleSettled() { + onSettle?.(); + navigate('../'); + setStage(0); + } + + const errorsCreatePull = useMemo(() => { const errors = []; if (!fromInput.amount) { @@ -142,10 +138,6 @@ export function useAddLiquidity({ } return errors; - }; - - useEffect(() => { - setErrorsCreatePull(validateCreatePool()); }, [ fromInput.amount, toInput.amount, diff --git a/packages/app/src/systems/Pool/pages/RemoveLiquidity.tsx b/packages/app/src/systems/Pool/pages/RemoveLiquidity.tsx index 6e29a325..2475622c 100644 --- a/packages/app/src/systems/Pool/pages/RemoveLiquidity.tsx +++ b/packages/app/src/systems/Pool/pages/RemoveLiquidity.tsx @@ -1,5 +1,4 @@ -import { useEffect, useState } from "react"; -import toast from "react-hot-toast"; +import { useMemo } from "react"; import { useMutation } from "react-query"; import { useNavigate } from "react-router-dom"; @@ -24,11 +23,12 @@ import { } from "~/systems/Core"; import { CoinBalance } from "~/systems/Core/components/CoinBalance"; import { useTransactionCost } from "~/systems/Core/hooks/useTransactionCost"; +import { txFeedback } from "~/systems/Core/utils/feedback"; +import { getTransactionCost } from "~/systems/Core/utils/gas"; import { Button, Card } from "~/systems/UI"; export function RemoveLiquidityPage() { const navigate = useNavigate(); - const [errors, setErrors] = useState([]); const contract = useContract()!; const balances = useBalances(); const ethBalance = useEthBalance(); @@ -47,29 +47,26 @@ export function RemoveLiquidityPage() { if (!amount) { throw new Error('"amount" is required'); } - if (!txCost.total) return; + const contractCall = await prepareRemoveLiquidity(contract); + const nextTxCost = await getTransactionCost(contractCall); // TODO: Add way to set min_eth and min_tokens // https://github.com/FuelLabs/swayswap/issues/55 - await submitRemoveLiquidity(contract, amount, txCost); + return submitRemoveLiquidity(contract, amount, nextTxCost); }, - { - onSuccess: async () => { - toast.success("Liquidity removed successfully!"); - tokenInput.setAmount(ZERO); - await balances.refetch(); - navigate("../"); - }, - onError: (error: Error) => { - toast.error(error.message); - }, - } + { onSuccess: txFeedback("Liquidity removed successfully!", handleSuccess) } ); + async function handleSuccess() { + tokenInput.setAmount(ZERO); + await balances.refetch(); + navigate("../"); + } + if (!liquidityToken) { return null; } - const validateRemoveLiquidity = () => { + const errors = useMemo(() => { const errorList = []; if (!tokenInput.amount) { @@ -80,10 +77,6 @@ export function RemoveLiquidityPage() { } return errorList; - }; - - useEffect(() => { - setErrors(validateRemoveLiquidity()); }, [tokenInput.amount, tokenInput.hasEnoughBalance]); const hasEnoughBalance = (ethBalance.raw || ZERO) > txCost.fee; diff --git a/packages/app/src/systems/Pool/utils/queries.ts b/packages/app/src/systems/Pool/utils/queries.ts index ecb9450f..1833271b 100644 --- a/packages/app/src/systems/Pool/utils/queries.ts +++ b/packages/app/src/systems/Pool/utils/queries.ts @@ -24,7 +24,7 @@ export async function submitRemoveLiquidity( txCost: TransactionCost ) { const deadline = await getDeadline(contract); - return contract.submit.remove_liquidity( + return contract.submitResult.remove_liquidity( 1, 1, deadline, From 1d7512607c7d40d0d11926469511d4bceb332a90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Est=C3=A1cio=20=7C=20stacio=2Eeth?= Date: Fri, 24 Jun 2022 15:01:52 -0300 Subject: [PATCH 21/21] fix: change css to be compatible with safari on ios 14 (#345) * fix: change css to be compatible with safari on ios 14 * fix: invert button on mobile * chore: add inputmode decimal --- packages/app/src/styles/components/button.css | 2 +- packages/app/src/styles/components/home-page.css | 11 ++++++++++- .../app/src/styles/components/welcome-page.css | 4 ++-- .../app/src/systems/Core/components/CoinInput.tsx | 1 + .../app/src/systems/Core/components/TokenIcon.tsx | 14 +++++++++++++- .../src/systems/Faucet/components/FaucetApp.tsx | 2 +- .../app/src/systems/Home/components/Header.tsx | 7 +------ .../app/src/systems/UI/components/InvertButton.tsx | 2 +- .../systems/Welcome/components/CreateWallet.tsx | 7 ++++++- .../src/systems/Welcome/components/WelcomeDone.tsx | 1 + 10 files changed, 37 insertions(+), 14 deletions(-) diff --git a/packages/app/src/styles/components/button.css b/packages/app/src/styles/components/button.css index a73456d2..a17463b8 100644 --- a/packages/app/src/styles/components/button.css +++ b/packages/app/src/styles/components/button.css @@ -1,6 +1,6 @@ @layer components { .button { - @apply appearance-none transition-main inline-flex items-center rounded-xl gap-2; + @apply appearance-none transition-main grid grid-flow-col items-center rounded-xl gap-2; @apply border focus-ring btn-active cursor-pointer; &[aria-disabled="true"] { diff --git a/packages/app/src/styles/components/home-page.css b/packages/app/src/styles/components/home-page.css index ad61b403..3d9f033b 100644 --- a/packages/app/src/styles/components/home-page.css +++ b/packages/app/src/styles/components/home-page.css @@ -11,10 +11,19 @@ .homePage--header { @apply flex justify-between font-semibold; + + img { + height: 46px; + width: 46px; + } } .homePage--menu { - @apply flex items-center gap-4 lg:gap-6 text-lg; + @apply flex items-center text-lg; + + > * { + @apply ml-4 lg:ml-6; + } & a { @apply text-gray-200; diff --git a/packages/app/src/styles/components/welcome-page.css b/packages/app/src/styles/components/welcome-page.css index 950edd9e..a585a8b2 100644 --- a/packages/app/src/styles/components/welcome-page.css +++ b/packages/app/src/styles/components/welcome-page.css @@ -1,7 +1,7 @@ @layer components { .welcomePage--layout { @apply text-gray-100 min-h-screen; - @apply grid gap-8; + @apply grid gap-8 h-full; @media (min-width: 1024px) { grid-template-columns: 300px 1fr; @@ -112,7 +112,7 @@ */ .stepsIndicator { @apply absolute bottom-0 left-[50%] -translate-x-1/2; - @apply flex gap-4; + @apply grid grid-cols-3 gap-4 sm:gap-2; li { @apply bg-gray-500 w-16 h-2 rounded-full; diff --git a/packages/app/src/systems/Core/components/CoinInput.tsx b/packages/app/src/systems/Core/components/CoinInput.tsx index adad7920..3c52484f 100644 --- a/packages/app/src/systems/Core/components/CoinInput.tsx +++ b/packages/app/src/systems/Core/components/CoinInput.tsx @@ -220,6 +220,7 @@ export const CoinInput = forwardRef( @@ -23,11 +28,18 @@ export function TokenIcon({ coinFrom, coinTo, size = 20 }: TokenIconProps) { alt={coinFrom.name} height={size} width={size} + style={dimensionStyle} /> {coinTo && ( - {coinTo.name} + {coinTo.name} )}
diff --git a/packages/app/src/systems/Faucet/components/FaucetApp.tsx b/packages/app/src/systems/Faucet/components/FaucetApp.tsx index bff25f34..2108c7e4 100644 --- a/packages/app/src/systems/Faucet/components/FaucetApp.tsx +++ b/packages/app/src/systems/Faucet/components/FaucetApp.tsx @@ -43,7 +43,7 @@ export function FaucetApp({ isButtonFull, onSuccess }: FaucetAppProps) { isFull={isButtonFull} size="lg" variant="primary" - className="mt-5" + className="mt-5 mx-auto" isLoading={faucet.mutation.isLoading} onPress={() => faucet.handleFaucet(captcha.value)} {...(captcha.needToShow && { isDisabled: !captcha.value })} diff --git a/packages/app/src/systems/Home/components/Header.tsx b/packages/app/src/systems/Home/components/Header.tsx index 56d3e416..ced6e6f3 100644 --- a/packages/app/src/systems/Home/components/Header.tsx +++ b/packages/app/src/systems/Home/components/Header.tsx @@ -9,12 +9,7 @@ export function Header() { const navigate = useNavigate(); return (
- swayswap + swayswap