From b9b87c3c7088413a31d643d5914f7898c9290f68 Mon Sep 17 00:00:00 2001 From: Majorfi Date: Fri, 12 Jan 2024 17:23:02 +0100 Subject: [PATCH] build: bump --- package.json | 77 +- src/components/AddressLike.tsx | 1 - src/components/AmountInput.tsx | 73 + src/components/Banner.tsx | 41 - src/components/Dropdown.tsx | 205 ++ src/components/Header.tsx | 2 +- src/components/ImageWithFallback.tsx | 42 + src/components/Meta.tsx | 170 ++ src/components/Pagination.tsx | 84 + src/components/Renderable.tsx | 2 +- src/components/yToast.tsx | 1 - src/contexts/WithYearn.tsx | 2 - src/contexts/useUI.tsx | 2 +- src/contexts/useWeb3.tsx | 2 +- src/hooks/useInjectedWallet.tsx | 2 +- src/icons/IconChevron.tsx | 15 +- src/icons/IconChevronPlain.tsx | 20 + src/icons/IconPaginationArrow.tsx | 29 + src/icons/chains/IconArbitrumChain.tsx | 54 - src/icons/chains/IconAvalancheChain.tsx | 28 - src/icons/chains/IconBNBChain.tsx | 39 - src/icons/chains/IconBaseChain.tsx | 36 - src/icons/chains/IconCantoChain.tsx | 38 - src/icons/chains/IconCronosChain.tsx | 38 - src/icons/chains/IconEtherumChain.tsx | 50 - src/icons/chains/IconFantomChain.tsx | 26 - src/icons/chains/IconFuseChain.tsx | 38 - src/icons/chains/IconKavaChain.tsx | 41 - src/icons/chains/IconMetisChain.tsx | 38 - src/icons/chains/IconMoonbeamChain.tsx | 38 - src/icons/chains/IconMoonriverChain.tsx | 38 - src/icons/chains/IconOptimismChain.tsx | 30 - src/icons/chains/IconPolygonChain.tsx | 49 - src/icons/chains/IconPolygonZkEVMChain.tsx | 49 - src/icons/chains/IconZkSyncChain.tsx | 38 - src/types/contexts.ts | 2 - src/utils/abi/curveBribeV2.abi.tsx | 101 + src/utils/abi/curveBribeV3.abi.tsx | 495 +++ src/utils/abi/curveBribeV3Helper.abi.tsx | 12 + ...dleInputChangeEventValue.ts => handler.ts} | 26 +- src/utils/partners.ts | 29 - src/utils/performBatchedUpdates.ts | 7 - src/utils/schemas/coinGeckoSchemas.ts | 5 + src/utils/schemas/curveSchemas.ts | 95 + src/utils/schemas/yDaemonEarnedSchema.ts | 37 + .../schemas/yDaemonGaugeRewardsFeedSchema.ts | 19 + src/utils/schemas/yDaemonPricesSchema copy.ts | 10 + src/utils/schemas/yDaemonPricesSchema.ts | 4 +- src/utils/schemas/yDaemonTokenListBalances.ts | 38 + src/utils/schemas/yDaemonTokensSchema.ts | 19 + src/utils/schemas/yDaemonVaultsSchemas.ts | 193 ++ src/utils/web3/transaction.ts | 8 +- tailwind.config.cjs | 12 +- tsconfig.tests.json | 4 - yarn.lock | 2660 +++++++++-------- 55 files changed, 3215 insertions(+), 1999 deletions(-) create mode 100644 src/components/AmountInput.tsx delete mode 100644 src/components/Banner.tsx create mode 100644 src/components/Dropdown.tsx create mode 100755 src/components/ImageWithFallback.tsx create mode 100644 src/components/Meta.tsx create mode 100644 src/components/Pagination.tsx create mode 100755 src/icons/IconChevronPlain.tsx create mode 100755 src/icons/IconPaginationArrow.tsx delete mode 100755 src/icons/chains/IconArbitrumChain.tsx delete mode 100755 src/icons/chains/IconAvalancheChain.tsx delete mode 100755 src/icons/chains/IconBNBChain.tsx delete mode 100755 src/icons/chains/IconBaseChain.tsx delete mode 100755 src/icons/chains/IconCantoChain.tsx delete mode 100755 src/icons/chains/IconCronosChain.tsx delete mode 100755 src/icons/chains/IconEtherumChain.tsx delete mode 100755 src/icons/chains/IconFantomChain.tsx delete mode 100755 src/icons/chains/IconFuseChain.tsx delete mode 100755 src/icons/chains/IconKavaChain.tsx delete mode 100755 src/icons/chains/IconMetisChain.tsx delete mode 100755 src/icons/chains/IconMoonbeamChain.tsx delete mode 100755 src/icons/chains/IconMoonriverChain.tsx delete mode 100755 src/icons/chains/IconOptimismChain.tsx delete mode 100755 src/icons/chains/IconPolygonChain.tsx delete mode 100755 src/icons/chains/IconPolygonZkEVMChain.tsx delete mode 100755 src/icons/chains/IconZkSyncChain.tsx create mode 100755 src/utils/abi/curveBribeV2.abi.tsx create mode 100755 src/utils/abi/curveBribeV3.abi.tsx create mode 100755 src/utils/abi/curveBribeV3Helper.abi.tsx rename src/utils/{handlers/handleInputChangeEventValue.ts => handler.ts} (59%) delete mode 100755 src/utils/partners.ts delete mode 100755 src/utils/performBatchedUpdates.ts create mode 100644 src/utils/schemas/coinGeckoSchemas.ts create mode 100644 src/utils/schemas/curveSchemas.ts create mode 100644 src/utils/schemas/yDaemonEarnedSchema.ts create mode 100644 src/utils/schemas/yDaemonGaugeRewardsFeedSchema.ts create mode 100644 src/utils/schemas/yDaemonPricesSchema copy.ts create mode 100644 src/utils/schemas/yDaemonTokenListBalances.ts create mode 100644 src/utils/schemas/yDaemonTokensSchema.ts create mode 100644 src/utils/schemas/yDaemonVaultsSchemas.ts delete mode 100755 tsconfig.tests.json diff --git a/package.json b/package.json index a64e7669..56938f97 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@yearn-finance/web-lib", - "version": "3.0.86", + "version": "3.0.92", "main": "./dist/index.js", "types": "./dist/index.d.js", "files": [ @@ -8,7 +8,7 @@ ], "type": "module", "engines": { - "node": ">=14" + "node": ">=18" }, "scripts": { "dev": "tsc --watch", @@ -25,67 +25,70 @@ "export": "tsc && next build && next export -o ipfs" }, "dependencies": { - "@babel/core": "^7.23.5", - "@commitlint/cli": "^18.4.3", - "@commitlint/config-conventional": "^18.4.3", - "@headlessui/react": "^1.7.17", + "@headlessui/react": "^1.7.18", "@rainbow-me/rainbowkit": "^1.3.0", - "@react-hookz/web": "^23.1.0", + "@react-hookz/web": "^24.0.2", "@tailwindcss/forms": "^0.5.7", - "@tailwindcss/typography": "^0.5.10", "@total-typescript/ts-reset": "^0.5.1", "@wagmi/chains": "1.8.0", "@wagmi/core": "^1.4.7", - "axios": "^1.6.2", - "bun-types": "^1.0.15", + "@yearn-finance/web-lib": "^3.0.78", + "bun-types": "^1.0.22", "dayjs": "^1.11.10", - "eslint-config-next": "^14.0.3", - "eslint-config-prettier": "^9.1.0", - "eslint-plugin-brackets": ">= 0.1.3", - "eslint-plugin-react-hooks": "^4.6.0", "ethers": "5.7.2", "eventemitter3": "^5.0.1", "graphql": "^16.8.1", - "graphql-request": "^6.1.0", - "husky": "^8.0.3", - "lint-staged": "^15.1.0", - "next": "^14.0.3", - "nprogress": "^0.2.0", - "prettier": "^3.1.0", + "lint-staged": "^15.2.0", + "next": "^14.0.4", + "next-seo": "^6.4.0", + "prettier": "^3.1.1", "react-hot-toast": "2.4.1", - "sass": "^1.69.5", - "sharp": "^0.33.0", - "stylelint": "^15.11.0", - "stylelint-config-standard": "^34.0.0", - "tailwindcss": "^3.3.5", - "viem": "^1.19.11", + "react-paginate": "^8.2.0", + "sass": "^1.69.7", + "stylelint": "^16.1.0", + "tailwindcss": "^3.4.1", + "viem": "^1.19.9", "wagmi": "^1.4.7", "zod": "^3.22.4" }, "devDependencies": { - "@types/jest": "^29.5.10", - "@types/node": "^20.10.0", + "@babel/core": "^7.23.7", + "@commitlint/cli": "^18.4.4", + "@commitlint/config-conventional": "^18.4.4", + "@tailwindcss/typography": "^0.5.10", + "@types/jest": "^29.5.11", + "@types/node": "^20.11.0", "@types/nprogress": "^0.2.3", - "@types/react": "^18.2.39", - "@types/react-dom": "^18.2.17", - "@typescript-eslint/eslint-plugin": "^6.13.1", - "@typescript-eslint/parser": "^6.13.1", + "@types/react": "^18.2.47", + "@types/react-dom": "^18.2.18", + "@typescript-eslint/eslint-plugin": "^6.18.1", + "@typescript-eslint/parser": "^6.18.1", "autoprefixer": "^10.4.16", + "axios": "^1.6.5", "bump": "^0.2.5", - "eslint": "^8.55.0", + "eslint": "^8.56.0", + "eslint-config-next": "^14.0.4", + "eslint-config-prettier": "^9.1.0", "eslint-import-resolver-typescript": "^3.6.1", - "eslint-plugin-import": "^2.29.0", + "eslint-plugin-brackets": ">= 0.1.3", + "eslint-plugin-import": "^2.29.1", "eslint-plugin-react": "^7.33.2", + "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-simple-import-sort": "^10.0.0", - "eslint-plugin-tailwindcss": "^3.13.0", + "eslint-plugin-tailwindcss": "^3.13.1", "eslint-plugin-unused-imports": "^3.0.0", + "graphql-request": "^6.1.0", + "husky": "^8.0.3", "jest": "^29.7.0", - "postcss-nesting": "^12.0.1", + "nprogress": "^0.2.0", + "postcss-nesting": "^12.0.2", "react": "18.2.0", "react-dom": "18.2.0", + "sharp": "^0.33.2", + "stylelint-config-standard": "^36.0.0", "ts-jest": "^29.1.1", "tsup": "^8.0.1", - "typescript": "^5.3.2" + "typescript": "^5.3.3" }, "peerDependencies": { "@rainbow-me/rainbowkit": "1.3.0", diff --git a/src/components/AddressLike.tsx b/src/components/AddressLike.tsx index 5b8374d1..2778207f 100644 --- a/src/components/AddressLike.tsx +++ b/src/components/AddressLike.tsx @@ -1,4 +1,3 @@ -import React from 'react'; import {useEnsName} from 'wagmi'; import {cl} from '../utils/cl.js'; diff --git a/src/components/AmountInput.tsx b/src/components/AmountInput.tsx new file mode 100644 index 00000000..72a2a9ae --- /dev/null +++ b/src/components/AmountInput.tsx @@ -0,0 +1,73 @@ +import {Renderable} from './Renderable.js'; + +import type {ReactElement} from 'react'; +import type {TNormalizedBN} from '../utils/format.bigNumber.js'; + +type TAmountInputProps = { + amount: TNormalizedBN; + maxAmount?: TNormalizedBN; + maxLabel?: string; + label?: string; + placeholder?: string; + legend?: string | ReactElement; + error?: string; + disabled?: boolean; + loading?: boolean; + onAmountChange?: (amount: string) => void; + onLegendClick?: () => void; + onMaxClick?: () => void; +}; + +export function AmountInput({ + amount, + maxAmount, + label, + placeholder, + legend, + error, + disabled, + loading, + onAmountChange, + onLegendClick, + onMaxClick +}: TAmountInputProps): ReactElement { + return ( +
+ {label &&

{label}

} +
+ onAmountChange(e.target.value) : undefined} + placeholder={loading ? '' : placeholder ?? '0'} + disabled={disabled} + /> + + + +
+ + + {error ?? legend} + + +
+ ); +} diff --git a/src/components/Banner.tsx b/src/components/Banner.tsx deleted file mode 100644 index 1c288cdc..00000000 --- a/src/components/Banner.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import React from 'react'; - -import {IconAlertWarning} from '../icons/IconAlertWarning.js'; -import {IconCross} from '../icons/IconCross.js'; -import {cl} from '../utils/cl.js'; - -import type {ReactElement} from 'react'; - -type TBannerProps = { - content: string; - type: 'error' | 'warning' | 'success' | 'info'; - onClose: () => void; -}; - -export function Banner({content, type, onClose}: TBannerProps): ReactElement { - const colorClassName = getClassName(type); - - return ( -
- -

{content}

- -
- ); -} - -function getClassName(type: TBannerProps['type']): string { - switch (type) { - case 'error': - return 'bg-[#C73203] text-[#FFFFFF]'; - case 'warning': - return 'bg-[#FFDC53] text-[#000000]'; - case 'success': - return 'bg-[#00796D] text-[#FFFFFF]'; - default: - return 'bg-[#0657F9] text-[#FFFFFF]'; - } -} diff --git a/src/components/Dropdown.tsx b/src/components/Dropdown.tsx new file mode 100644 index 00000000..71fc4f16 --- /dev/null +++ b/src/components/Dropdown.tsx @@ -0,0 +1,205 @@ +import {Fragment, useState} from 'react'; +import {Combobox, Transition} from '@headlessui/react'; +import {useThrottledState} from '@react-hookz/web'; + +import {IconChevron} from '../icons/IconChevron.js'; +import {cl} from '../utils/cl.js'; +import {ImageWithFallback} from './ImageWithFallback.js'; + +import type {ReactElement} from 'react'; + +const DropdownOption = (option: TDropdownOption): ReactElement => { + const {label, description, icon} = option; + return ( + + {({active}): ReactElement => ( +
+ {icon && ( +
+ +
+ )} +
+

{label}

+ {description && ( +

+ {description} +

+ )} +
+
+ )} +
+ ); +}; + +const DropdownEmpty = ({isSearching}: {isSearching: boolean}): ReactElement => { + if (!isSearching) { + return ( +
+
+

{'Nothing found.'}

+
+
+ ); + } + + return ( +
+
+ +
+
+ ); +}; + +export type TDropdownOption = { + id: string; + label: string; + description?: string; + icon?: string; +}; + +export type TDropdownProps = { + selected?: TDropdownOption; + options: TDropdownOption[]; + onChange?: (selected: TDropdownOption) => void; + label?: string; + legend?: string; + isDisabled?: boolean; + className?: string; +}; + +export const Dropdown = ({ + selected, + options, + onChange, + label, + legend, + isDisabled, + className +}: TDropdownProps): ReactElement => { + const [isOpen, set_isOpen] = useThrottledState(false, 400); + const [search, set_search] = useState(''); + + const isSearching = search !== ''; + const filteredOptions = isSearching + ? options.filter(({label}): boolean => label.toLowerCase().includes(search.toLowerCase())) + : options; + + return ( +
+
+ {label &&

{label}

} +
+ {isOpen ? ( +
{ + e.stopPropagation(); + e.preventDefault(); + set_isOpen(false); + }} + /> + ) : null} + { + if (onChange) { + onChange(option); + } + set_isOpen(false); + }} + disabled={isDisabled}> + <> + set_isOpen((state: boolean): boolean => !state)} + className={cl( + 'flex h-10 w-full items-center justify-between p-2 text-base md:px-3', + isDisabled ? 'bg-neutral-300 text-neutral-600' : 'bg-neutral-0 text-neutral-900' + )}> +
+ {selected?.icon && ( +
+ +
+ )} +

+ option?.label ?? '-'} + spellCheck={false} + onChange={(event): void => { + set_isOpen(true); + set_search(event.target.value); + }} + /> +

+
+
+ +
+
+ { + set_isOpen(false); + set_search(''); + }}> + + {filteredOptions.length === 0 ? ( + + ) : ( + filteredOptions.map( + ({id, label, description, icon}): ReactElement => ( + + ) + ) + )} + + + +
+
+ {legend &&

{legend}

} +
+
+ ); +}; diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 2248bddf..be52ad8e 100755 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -1,4 +1,4 @@ -import React, {cloneElement, Fragment, useEffect, useMemo, useState} from 'react'; +import {cloneElement, Fragment, useEffect, useMemo, useState} from 'react'; import assert from 'assert'; import {useConnect, usePublicClient} from 'wagmi'; import {Listbox, Transition} from '@headlessui/react'; diff --git a/src/components/ImageWithFallback.tsx b/src/components/ImageWithFallback.tsx new file mode 100755 index 00000000..cfa50307 --- /dev/null +++ b/src/components/ImageWithFallback.tsx @@ -0,0 +1,42 @@ +import {useState} from 'react'; +import Image from 'next/image.js'; +import {useUpdateEffect} from '@react-hookz/web'; + +import {cl} from '../utils/cl.js'; + +import type {ImageProps} from 'next/image.js'; +import type {CSSProperties, ReactElement} from 'react'; + +type TImageWithFallback = ImageProps & { + smWidth?: number; + smHeight?: number; +}; +export function ImageWithFallback(props: TImageWithFallback): ReactElement { + const {alt, src, smWidth, smHeight, ...rest} = props; + const [imageSrc, set_imageSrc] = useState(`${src}?fallback=true`); + const [imageStyle, set_imageStyle] = useState({}); + + useUpdateEffect((): void => { + set_imageSrc(`${src}?fallback=true`); + set_imageStyle({}); + }, [src]); + + return ( + {alt} { + set_imageSrc('/placeholder.png'); + set_imageStyle({filter: 'opacity(0.2)'}); + }} + {...rest} + /> + ); +} diff --git a/src/components/Meta.tsx b/src/components/Meta.tsx new file mode 100644 index 00000000..b1ec02e3 --- /dev/null +++ b/src/components/Meta.tsx @@ -0,0 +1,170 @@ +import Head from 'next/head'; +import {DefaultSeo} from 'next-seo'; + +import type {ReactElement} from 'react'; + +function Meta({meta}: {meta: any}): ReactElement { + return ( + <> + + {meta.name} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ); +} + +export default Meta; diff --git a/src/components/Pagination.tsx b/src/components/Pagination.tsx new file mode 100644 index 00000000..a186b02a --- /dev/null +++ b/src/components/Pagination.tsx @@ -0,0 +1,84 @@ +import ReactPaginate from 'react-paginate'; + +import {IconPaginationArrow} from '../icons/IconPaginationArrow.js'; + +import type {ReactElement} from 'react'; + +type TProps = { + range: [from: number, to: number]; + pageCount: number; + numberOfItems: number; + onPageChange: (selectedItem: {selected: number}) => void; +}; + +export function Pagination(props: TProps): ReactElement { + const { + range: [from, to], + pageCount, + numberOfItems, + onPageChange + } = props; + + return ( + <> +
+ + {'Previous'} + + + {'Next'} + +
+
+
+ + {'Showing '} + {from} + {' to '} + {to} + {' of'} {numberOfItems} {'results'} + +
+ + } + nextLabel={ + + } + /> +
+
+ + ); +} diff --git a/src/components/Renderable.tsx b/src/components/Renderable.tsx index 98e72960..6d27c3ec 100644 --- a/src/components/Renderable.tsx +++ b/src/components/Renderable.tsx @@ -1,4 +1,4 @@ -import React, {Fragment} from 'react'; +import {Fragment} from 'react'; import type {ReactElement, ReactNode} from 'react'; diff --git a/src/components/yToast.tsx b/src/components/yToast.tsx index 279417eb..de4fbb4f 100644 --- a/src/components/yToast.tsx +++ b/src/components/yToast.tsx @@ -1,4 +1,3 @@ -import React from 'react'; import {toast as toastMaster, useToasterStore} from 'react-hot-toast'; import {IconAlertCritical} from '../icons/IconAlertCritical.js'; diff --git a/src/contexts/WithYearn.tsx b/src/contexts/WithYearn.tsx index 319134a6..a6cd966a 100755 --- a/src/contexts/WithYearn.tsx +++ b/src/contexts/WithYearn.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import {SettingsContextApp} from './useSettings.js'; import {UIContextApp} from './useUI.js'; import {Web3ContextApp} from './useWeb3.js'; diff --git a/src/contexts/useUI.tsx b/src/contexts/useUI.tsx index 7a9d66c9..38c1f0e9 100755 --- a/src/contexts/useUI.tsx +++ b/src/contexts/useUI.tsx @@ -1,4 +1,4 @@ -import React, {createContext, Fragment, useCallback, useContext, useMemo, useRef} from 'react'; +import {createContext, Fragment, useCallback, useContext, useMemo, useRef} from 'react'; import {toast, ToastBar, Toaster} from 'react-hot-toast'; // eslint-disable-next-line import/no-named-as-default import NProgress from 'nprogress'; diff --git a/src/contexts/useWeb3.tsx b/src/contexts/useWeb3.tsx index cff8fa76..1612926a 100755 --- a/src/contexts/useWeb3.tsx +++ b/src/contexts/useWeb3.tsx @@ -1,4 +1,4 @@ -import React, {createContext, useCallback, useContext, useMemo, useState} from 'react'; +import {createContext, useCallback, useContext, useMemo, useState} from 'react'; import assert from 'assert'; import { configureChains, diff --git a/src/hooks/useInjectedWallet.tsx b/src/hooks/useInjectedWallet.tsx index 4a3eed34..0f5e71ce 100644 --- a/src/hooks/useInjectedWallet.tsx +++ b/src/hooks/useInjectedWallet.tsx @@ -1,4 +1,4 @@ -import React, {useMemo} from 'react'; +import {useMemo} from 'react'; import {IconWalletCoinbase} from '../icons/IconWalletCoinbase.js'; import {IconWalletFrame} from '../icons/IconWalletFrame.js'; diff --git a/src/icons/IconChevron.tsx b/src/icons/IconChevron.tsx index 87375bf8..72044e72 100755 --- a/src/icons/IconChevron.tsx +++ b/src/icons/IconChevron.tsx @@ -1,22 +1,21 @@ -import React from 'react'; - import type {ReactElement} from 'react'; export function IconChevron(props: React.SVGProps): ReactElement { return ( + fill={'none'} + xmlns={'http://www.w3.org/2000/svg'}> ); diff --git a/src/icons/IconChevronPlain.tsx b/src/icons/IconChevronPlain.tsx new file mode 100755 index 00000000..680fd77a --- /dev/null +++ b/src/icons/IconChevronPlain.tsx @@ -0,0 +1,20 @@ +import type {ReactElement} from 'react'; + +export function IconChevronPlain(props: React.SVGProps): ReactElement { + return ( + + + + ); +} diff --git a/src/icons/IconPaginationArrow.tsx b/src/icons/IconPaginationArrow.tsx new file mode 100755 index 00000000..807654c8 --- /dev/null +++ b/src/icons/IconPaginationArrow.tsx @@ -0,0 +1,29 @@ +import React from 'react'; + +import type {ReactElement} from 'react'; + +export function IconPaginationArrow(props: React.SVGProps): ReactElement { + return ( + + + + + + ); +} diff --git a/src/icons/chains/IconArbitrumChain.tsx b/src/icons/chains/IconArbitrumChain.tsx deleted file mode 100755 index 3c13e6eb..00000000 --- a/src/icons/chains/IconArbitrumChain.tsx +++ /dev/null @@ -1,54 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconArbitrumChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconAvalancheChain.tsx b/src/icons/chains/IconAvalancheChain.tsx deleted file mode 100755 index fa62afb0..00000000 --- a/src/icons/chains/IconAvalancheChain.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconAvalancheChain(props: React.SVGProps): ReactElement { - return ( - - - - - ); -} diff --git a/src/icons/chains/IconBNBChain.tsx b/src/icons/chains/IconBNBChain.tsx deleted file mode 100755 index f5f74122..00000000 --- a/src/icons/chains/IconBNBChain.tsx +++ /dev/null @@ -1,39 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconBNBChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconBaseChain.tsx b/src/icons/chains/IconBaseChain.tsx deleted file mode 100755 index 10fdd115..00000000 --- a/src/icons/chains/IconBaseChain.tsx +++ /dev/null @@ -1,36 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconBaseChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconCantoChain.tsx b/src/icons/chains/IconCantoChain.tsx deleted file mode 100755 index c1a92080..00000000 --- a/src/icons/chains/IconCantoChain.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconCantoChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconCronosChain.tsx b/src/icons/chains/IconCronosChain.tsx deleted file mode 100755 index fbf1bacc..00000000 --- a/src/icons/chains/IconCronosChain.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconCronosChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconEtherumChain.tsx b/src/icons/chains/IconEtherumChain.tsx deleted file mode 100755 index e0b88d2c..00000000 --- a/src/icons/chains/IconEtherumChain.tsx +++ /dev/null @@ -1,50 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconEtherumChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconFantomChain.tsx b/src/icons/chains/IconFantomChain.tsx deleted file mode 100755 index 0e865b46..00000000 --- a/src/icons/chains/IconFantomChain.tsx +++ /dev/null @@ -1,26 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconFantomChain(props: React.SVGProps): ReactElement { - return ( - - - - - ); -} diff --git a/src/icons/chains/IconFuseChain.tsx b/src/icons/chains/IconFuseChain.tsx deleted file mode 100755 index 789c2047..00000000 --- a/src/icons/chains/IconFuseChain.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconFuseChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconKavaChain.tsx b/src/icons/chains/IconKavaChain.tsx deleted file mode 100755 index 9c7664d6..00000000 --- a/src/icons/chains/IconKavaChain.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconKavaChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconMetisChain.tsx b/src/icons/chains/IconMetisChain.tsx deleted file mode 100755 index 87565a25..00000000 --- a/src/icons/chains/IconMetisChain.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconMetisChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconMoonbeamChain.tsx b/src/icons/chains/IconMoonbeamChain.tsx deleted file mode 100755 index ef06decc..00000000 --- a/src/icons/chains/IconMoonbeamChain.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconMoonbeamChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconMoonriverChain.tsx b/src/icons/chains/IconMoonriverChain.tsx deleted file mode 100755 index 434d5af7..00000000 --- a/src/icons/chains/IconMoonriverChain.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconMoonriverChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconOptimismChain.tsx b/src/icons/chains/IconOptimismChain.tsx deleted file mode 100755 index 4c42329e..00000000 --- a/src/icons/chains/IconOptimismChain.tsx +++ /dev/null @@ -1,30 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconOptimismChain(props: React.SVGProps): ReactElement { - return ( - - - - - ); -} diff --git a/src/icons/chains/IconPolygonChain.tsx b/src/icons/chains/IconPolygonChain.tsx deleted file mode 100755 index 0a23b959..00000000 --- a/src/icons/chains/IconPolygonChain.tsx +++ /dev/null @@ -1,49 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconPolygonChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconPolygonZkEVMChain.tsx b/src/icons/chains/IconPolygonZkEVMChain.tsx deleted file mode 100755 index 5890fe3e..00000000 --- a/src/icons/chains/IconPolygonZkEVMChain.tsx +++ /dev/null @@ -1,49 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconPolygonZkEVMChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - - - - - ); -} diff --git a/src/icons/chains/IconZkSyncChain.tsx b/src/icons/chains/IconZkSyncChain.tsx deleted file mode 100755 index a70adcef..00000000 --- a/src/icons/chains/IconZkSyncChain.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import React from 'react'; - -import type {ReactElement} from 'react'; - -export function IconZkSyncChain(props: React.SVGProps): ReactElement { - return ( - - - - - - - - - - - - ); -} diff --git a/src/types/contexts.ts b/src/types/contexts.ts index bfb09676..de7cb187 100755 --- a/src/types/contexts.ts +++ b/src/types/contexts.ts @@ -1,6 +1,5 @@ import type {ReactNode} from 'react'; import type {Connector} from 'wagmi'; -import type {TPartnersInfo} from '../utils/partners.js'; import type {TAddress} from './index.js'; export type TSettingsBase = { @@ -48,7 +47,6 @@ export type TWeb3Context = { isWalletLedger: boolean; hasProvider: boolean; provider?: Connector; - currentPartner?: TPartnersInfo; onConnect: () => Promise; onSwitchChain: (newChainID: number) => void; openLoginModal: () => void; diff --git a/src/utils/abi/curveBribeV2.abi.tsx b/src/utils/abi/curveBribeV2.abi.tsx new file mode 100755 index 00000000..b5eba89b --- /dev/null +++ b/src/utils/abi/curveBribeV2.abi.tsx @@ -0,0 +1,101 @@ +export const CURVE_BRIBE_V2_ABI = [ + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'} + ], + name: 'active_period', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: 'gauge', type: 'address'}, + {internalType: 'address', name: 'reward_token', type: 'address'}, + {internalType: 'uint256', name: 'amount', type: 'uint256'} + ], + name: 'add_reward_amount', + outputs: [{internalType: 'bool', name: '', type: 'bool'}], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: 'gauge', type: 'address'}, + {internalType: 'address', name: 'reward_token', type: 'address'} + ], + name: 'claim_reward', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: 'user', type: 'address'}, + {internalType: 'address', name: 'gauge', type: 'address'}, + {internalType: 'address', name: 'reward_token', type: 'address'} + ], + name: 'claim_reward', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: 'user', type: 'address'}, + {internalType: 'address', name: 'gauge', type: 'address'}, + {internalType: 'address', name: 'reward_token', type: 'address'} + ], + name: 'claimable', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: 'reward', type: 'address'}], + name: 'gauges_per_reward', + outputs: [{internalType: 'address[]', name: '', type: 'address[]'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'} + ], + name: 'last_user_claim', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'} + ], + name: 'reward_per_token', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: 'gauge', type: 'address'}], + name: 'rewards_per_gauge', + outputs: [{internalType: 'address[]', name: '', type: 'address[]'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: 'user', type: 'address'}, + {internalType: 'address', name: 'gauge', type: 'address'}, + {internalType: 'address', name: 'reward_token', type: 'address'} + ], + name: 'tokens_for_bribe', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + } +] as const; diff --git a/src/utils/abi/curveBribeV3.abi.tsx b/src/utils/abi/curveBribeV3.abi.tsx new file mode 100755 index 00000000..e0e6fdc6 --- /dev/null +++ b/src/utils/abi/curveBribeV3.abi.tsx @@ -0,0 +1,495 @@ +export const CURVE_BRIBE_V3_ABI = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address' + } + ], + name: 'Blacklisted', + type: 'event' + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'owner', + type: 'address' + } + ], + name: 'ChangeOwner', + type: 'event' + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address' + }, + { + indexed: false, + internalType: 'address', + name: 'recipient', + type: 'address' + } + ], + name: 'ClearRewardRecipient', + type: 'event' + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'fee', + type: 'uint256' + } + ], + name: 'FeeUpdated', + type: 'event' + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'gauge', + type: 'address' + }, + { + indexed: true, + internalType: 'address', + name: 'reward_token', + type: 'address' + } + ], + name: 'NewTokenReward', + type: 'event' + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'gauge', + type: 'address' + }, + { + indexed: true, + internalType: 'uint256', + name: 'period', + type: 'uint256' + }, + { + indexed: false, + internalType: 'uint256', + name: 'bias', + type: 'uint256' + }, + { + indexed: false, + internalType: 'uint256', + name: 'blacklisted_bias', + type: 'uint256' + } + ], + name: 'PeriodUpdated', + type: 'event' + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address' + } + ], + name: 'RemovedFromBlacklist', + type: 'event' + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'briber', + type: 'address' + }, + { + indexed: true, + internalType: 'address', + name: 'gauge', + type: 'address' + }, + { + indexed: true, + internalType: 'address', + name: 'reward_token', + type: 'address' + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256' + }, + { + indexed: false, + internalType: 'uint256', + name: 'fee', + type: 'uint256' + } + ], + name: 'RewardAdded', + type: 'event' + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address' + }, + { + indexed: true, + internalType: 'address', + name: 'gauge', + type: 'address' + }, + { + indexed: true, + internalType: 'address', + name: 'reward_token', + type: 'address' + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256' + } + ], + name: 'RewardClaimed', + type: 'event' + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address' + }, + { + indexed: false, + internalType: 'address', + name: 'recipient', + type: 'address' + } + ], + name: 'SetRewardRecipient', + type: 'event' + }, + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'uint256', name: '', type: 'uint256'} + ], + name: '_gauges_per_reward', + outputs: [{internalType: 'address', name: '', type: 'address'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'} + ], + name: '_rewards_in_gauge', + outputs: [{internalType: 'bool', name: '', type: 'bool'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'uint256', name: '', type: 'uint256'} + ], + name: '_rewards_per_gauge', + outputs: [{internalType: 'address', name: '', type: 'address'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [], + name: 'accept_owner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'} + ], + name: 'active_period', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: 'gauge', type: 'address'}, + {internalType: 'address', name: 'reward_token', type: 'address'}, + {internalType: 'uint256', name: 'amount', type: 'uint256'} + ], + name: 'add_reward_amount', + outputs: [{internalType: 'bool', name: '', type: 'bool'}], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: '_user', type: 'address'}], + name: 'add_to_blacklist', + outputs: [], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: 'gauge', type: 'address'}, + {internalType: 'address', name: 'reward_token', type: 'address'} + ], + name: 'claim_reward', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: 'user', type: 'address'}, + {internalType: 'address', name: 'gauge', type: 'address'}, + {internalType: 'address', name: 'reward_token', type: 'address'} + ], + name: 'claim_reward_for', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [ + {internalType: 'address[]', name: '_users', type: 'address[]'}, + {internalType: 'address[]', name: '_gauges', type: 'address[]'}, + { + internalType: 'address[]', + name: '_reward_tokens', + type: 'address[]' + } + ], + name: 'claim_reward_for_many', + outputs: [{internalType: 'uint256[]', name: 'amounts', type: 'uint256[]'}], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: 'user', type: 'address'}, + {internalType: 'address', name: 'gauge', type: 'address'}, + {internalType: 'address', name: 'reward_token', type: 'address'} + ], + name: 'claimable', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'} + ], + name: 'claims_per_gauge', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [], + name: 'clear_recipient', + outputs: [], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [], + name: 'current_period', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [], + name: 'fee_percent', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [], + name: 'fee_recipient', + outputs: [{internalType: 'address', name: '', type: 'address'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: 'reward', type: 'address'}], + name: 'gauges_per_reward', + outputs: [{internalType: 'address[]', name: '', type: 'address[]'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [], + name: 'get_blacklist', + outputs: [{internalType: 'address[]', name: '_blacklist', type: 'address[]'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: 'gauge', type: 'address'}], + name: 'get_blacklisted_bias', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + { + internalType: 'address', + name: 'address_to_check', + type: 'address' + } + ], + name: 'is_blacklisted', + outputs: [{internalType: 'bool', name: '', type: 'bool'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'} + ], + name: 'last_user_claim', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: '', type: 'address'}], + name: 'next_claim_time', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [], + name: 'owner', + outputs: [{internalType: 'address', name: '', type: 'address'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [], + name: 'pending_owner', + outputs: [{internalType: 'address', name: '', type: 'address'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: '_user', type: 'address'}], + name: 'remove_from_blacklist', + outputs: [], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'} + ], + name: 'reward_per_gauge', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [ + {internalType: 'address', name: '', type: 'address'}, + {internalType: 'address', name: '', type: 'address'} + ], + name: 'reward_per_token', + outputs: [{internalType: 'uint256', name: '', type: 'uint256'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: '', type: 'address'}], + name: 'reward_recipient', + outputs: [{internalType: 'address', name: '', type: 'address'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: 'gauge', type: 'address'}], + name: 'rewards_per_gauge', + outputs: [{internalType: 'address[]', name: '', type: 'address[]'}], + stateMutability: 'view', + type: 'function' + }, + { + inputs: [{internalType: 'uint256', name: '_percent', type: 'uint256'}], + name: 'set_fee_percent', + outputs: [], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: '_recipient', type: 'address'}], + name: 'set_fee_recipient', + outputs: [], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: '_new_owner', type: 'address'}], + name: 'set_owner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function' + }, + { + inputs: [{internalType: 'address', name: '_recipient', type: 'address'}], + name: 'set_recipient', + outputs: [], + stateMutability: 'nonpayable', + type: 'function' + } +] as const; diff --git a/src/utils/abi/curveBribeV3Helper.abi.tsx b/src/utils/abi/curveBribeV3Helper.abi.tsx new file mode 100755 index 00000000..f598a9e0 --- /dev/null +++ b/src/utils/abi/curveBribeV3Helper.abi.tsx @@ -0,0 +1,12 @@ +export const CURVE_BRIBE_V3_HELPER_ABI = [ + { + inputs: [ + {internalType: 'address', name: 'gauge', type: 'address'}, + {internalType: 'address', name: 'reward_token', type: 'address'} + ], + name: 'getNewRewardPerToken', + outputs: [{internalType: 'uint256', name: 'newRewards', type: 'uint256'}], + stateMutability: 'nonpayable', + type: 'function' + } +] as const; diff --git a/src/utils/handlers/handleInputChangeEventValue.ts b/src/utils/handler.ts similarity index 59% rename from src/utils/handlers/handleInputChangeEventValue.ts rename to src/utils/handler.ts index 57d83bb6..fdbc7644 100644 --- a/src/utils/handlers/handleInputChangeEventValue.ts +++ b/src/utils/handler.ts @@ -1,6 +1,6 @@ -import {parseUnits} from '../format.bigNumber.js'; +import {parseUnits} from './format.bigNumber.js'; -import type {TNormalizedBN} from '../format.bigNumber.js'; +import type {TNormalizedBN} from './format.bigNumber.js'; export function handleInputChangeEventValue(e: React.ChangeEvent, decimals?: number): TNormalizedBN { const {valueAsNumber, value} = e.target; @@ -29,4 +29,24 @@ export function handleInputChangeEventValue(e: React.ChangeEvent void): void { - unstable_batchedUpdates((): void => { - callback(); - }); -} diff --git a/src/utils/schemas/coinGeckoSchemas.ts b/src/utils/schemas/coinGeckoSchemas.ts new file mode 100644 index 00000000..1c3f8244 --- /dev/null +++ b/src/utils/schemas/coinGeckoSchemas.ts @@ -0,0 +1,5 @@ +import {z} from 'zod'; + +export const coinGeckoPricesSchema = z.record(z.string(), z.object({usd: z.number()})); + +export type TCoinGeckoPrices = z.infer; diff --git a/src/utils/schemas/curveSchemas.ts b/src/utils/schemas/curveSchemas.ts new file mode 100644 index 00000000..7a4a1727 --- /dev/null +++ b/src/utils/schemas/curveSchemas.ts @@ -0,0 +1,95 @@ +import {z} from 'zod'; + +import {toAddress} from '../address.js'; + +export const curveWeeklyFeesSchema = z.object({ + success: z.boolean().optional(), + data: z.object({ + weeklyFeesTable: z + .object({ + date: z.string(), + ts: z.number(), + rawFees: z.number() + }) + .array() + .optional() + .nullable(), + totalFees: z.object({ + fees: z.number() + }) + }), + generatedTimeMs: z.number().optional() +}); + +const curveGaugeSchema = z.object({ + poolUrls: z + .object({ + swap: z.string().array().optional().nullable(), + deposit: z.string().array().optional().nullable(), + withdraw: z.string().array().optional().nullable() + }) + .optional(), + swap: z.string().optional().transform(toAddress), + swap_token: z.string().optional().transform(toAddress), + name: z.string(), + shortName: z.string().optional(), + gauge: z.string().optional().transform(toAddress), + swap_data: z.object({virtual_price: z.string().or(z.number().optional())}).optional(), + gauge_data: z + .object({ + inflation_rate: z.number().or(z.string()).optional().default('0'), + working_supply: z.string().optional() + }) + .optional(), + gauge_controller: z + .object({ + gauge_relative_weight: z.string().optional(), + get_gauge_weight: z.string().optional(), + inflation_rate: z.number().or(z.string()).optional().default('0') + }) + .optional(), + factory: z.boolean(), + side_chain: z.boolean().optional(), + is_killed: z.boolean().optional(), + hasNoCrv: z.boolean().optional(), + type: z.string().optional(), + lpTokenPrice: z.number().nullable().optional(), + rewardPerGauge: z.string().array().optional() +}); + +export const curveAllGaugesSchema = z.object({ + success: z.boolean().optional(), + data: z.record(z.string(), curveGaugeSchema), + generatedTimeMs: z.number().optional() +}); + +export const curveGaugeFromYearnSchema = z.object({ + gauge_name: z.string(), + gauge_address: z.string().optional().transform(toAddress), + pool_address: z.string().optional().transform(toAddress), + pool_coins: z + .object({ + name: z.string().optional(), + address: z.string().transform(toAddress), + error: z.string().optional() + }) + .array() + .optional(), + lp_token: z.string().optional().transform(toAddress), + weight: z.string().optional().default('0'), + inflation_rate: z.string().or(z.number()).optional().default('0'), + working_supply: z.string().default('0'), + apy: z.object({ + type: z.string(), + gross_apr: z.number().default(0), + net_apy: z.number().default(0) + }) +}); + +export const curveGaugesFromYearnSchema = curveGaugeFromYearnSchema.array(); + +export type TCurveWeeklyFees = z.infer; +export type TCurveGauge = z.infer; +export type TCurveAllGauges = z.infer; +export type TCurveGaugeFromYearn = z.infer; +export type TCurveGaugesFromYearn = z.infer; diff --git a/src/utils/schemas/yDaemonEarnedSchema.ts b/src/utils/schemas/yDaemonEarnedSchema.ts new file mode 100644 index 00000000..af143f93 --- /dev/null +++ b/src/utils/schemas/yDaemonEarnedSchema.ts @@ -0,0 +1,37 @@ +import {z} from 'zod'; + +import {addressSchema} from './addressSchema.js'; + +export const yDaemonSingleEarnedSchema = z.object({ + earned: z.record( + addressSchema, + z.object({ + realizedGains: z.string(), + realizedGainsUSD: z.number(), + unrealizedGains: z.string(), + unrealizedGainsUSD: z.number() + }) + ), + totalRealizedGainsUSD: z.number(), + totalUnrealizedGainsUSD: z.number() +}); + +export const yDaemonEarnedSchema = z.object({ + earned: z.record( + z.string(), + z.record( + addressSchema, + z.object({ + realizedGains: z.string(), + realizedGainsUSD: z.number(), + unrealizedGains: z.string(), + unrealizedGainsUSD: z.number() + }) + ) + ), + totalRealizedGainsUSD: z.number(), + totalUnrealizedGainsUSD: z.number() +}); + +export type TYDaemonEarnedSingle = z.infer; +export type TYDaemonEarned = z.infer; diff --git a/src/utils/schemas/yDaemonGaugeRewardsFeedSchema.ts b/src/utils/schemas/yDaemonGaugeRewardsFeedSchema.ts new file mode 100644 index 00000000..a410eefe --- /dev/null +++ b/src/utils/schemas/yDaemonGaugeRewardsFeedSchema.ts @@ -0,0 +1,19 @@ +import {z} from 'zod'; + +import {addressSchema} from './addressSchema.js'; + +export const yDaemonGaugeRewardSchema = z.object({ + amount: z.string(), + briber: addressSchema, + gauge: addressSchema, + rewardToken: addressSchema, + txHash: z.string(), + timestamp: z.number(), + blockNumber: z.number() +}); + +export const yDaemonGaugeRewardsFeedSchema = z.array(yDaemonGaugeRewardSchema); + +export type TYDaemonGaugeReward = z.infer; + +export type TYDaemonGaugeRewardsFeed = z.infer; diff --git a/src/utils/schemas/yDaemonPricesSchema copy.ts b/src/utils/schemas/yDaemonPricesSchema copy.ts new file mode 100644 index 00000000..9980feac --- /dev/null +++ b/src/utils/schemas/yDaemonPricesSchema copy.ts @@ -0,0 +1,10 @@ +import {z} from 'zod'; +import {addressSchema} from '@yearn-finance/web-lib/utils/schemas/addressSchema'; + +export const yDaemonPriceSchema = z.string(); +export const yDaemonPricesSchema = z.record(addressSchema, yDaemonPriceSchema); +export const yDaemonPricesChainSchema = z.record(z.string(), yDaemonPricesSchema); + +export type TYDaemonPrice = z.infer; +export type TYDaemonPrices = z.infer; +export type TYDaemonPricesChain = z.infer; diff --git a/src/utils/schemas/yDaemonPricesSchema.ts b/src/utils/schemas/yDaemonPricesSchema.ts index fd9b0a85..51bdf14c 100644 --- a/src/utils/schemas/yDaemonPricesSchema.ts +++ b/src/utils/schemas/yDaemonPricesSchema.ts @@ -3,9 +3,9 @@ import {z} from 'zod'; import {addressSchema} from './addressSchema.js'; export const yDaemonPriceSchema = z.string(); - export const yDaemonPricesSchema = z.record(addressSchema, yDaemonPriceSchema); +export const yDaemonPricesChainSchema = z.record(z.string(), yDaemonPricesSchema); export type TYDaemonPrice = z.infer; - export type TYDaemonPrices = z.infer; +export type TYDaemonPricesChain = z.infer; diff --git a/src/utils/schemas/yDaemonTokenListBalances.ts b/src/utils/schemas/yDaemonTokenListBalances.ts new file mode 100644 index 00000000..a0766585 --- /dev/null +++ b/src/utils/schemas/yDaemonTokenListBalances.ts @@ -0,0 +1,38 @@ +import {z} from 'zod'; + +import {addressSchema} from './addressSchema.js'; + +import type {TDict, TNDict} from '../../types/index.js'; + +const SOLVER = [ + 'Vanilla', + 'PartnerContract', + 'ChainCoin', + 'InternalMigration', + 'OptimismBooster', + 'Cowswap', + 'Portals', + 'Wido', + 'None' +] as const; + +export const Solver = z.enum(SOLVER); + +export type TSolver = z.infer; + +const yDaemonTokenListBalance = z.object({ + chainID: z.number().optional(), + decimals: z.number(), + address: z.string(), + name: z.string(), + symbol: z.string(), + logoURI: z.string().optional(), + balance: z.string().optional(), + price: z.string().optional(), + supportedZaps: Solver.array().optional() +}); + +export const _yDaemonTokenListBalances = z.record(addressSchema, yDaemonTokenListBalance); +export const yDaemonTokenListBalances = z.record(z.string(), _yDaemonTokenListBalances); +export type TYDaemonTokenListBalances = TNDict>>; +export type TSupportedZaps = z.infer; diff --git a/src/utils/schemas/yDaemonTokensSchema.ts b/src/utils/schemas/yDaemonTokensSchema.ts new file mode 100644 index 00000000..dfa25b43 --- /dev/null +++ b/src/utils/schemas/yDaemonTokensSchema.ts @@ -0,0 +1,19 @@ +import {z} from 'zod'; + +import {addressSchema} from './addressSchema.js'; + +export const yDaemonTokenSchema = z.object({ + address: addressSchema, + name: z.string(), + symbol: z.string(), + decimals: z.number(), + isVault: z.boolean(), + underlyingTokens: z.array(addressSchema).optional() +}); + +export const yDaemonTokensSchema = z.record(addressSchema, yDaemonTokenSchema); +export const yDaemonTokensChainSchema = z.record(z.string(), yDaemonTokensSchema); + +export type TYDaemonToken = z.infer; +export type TYDaemonTokens = z.infer; +export type TYDaemonTokensChain = z.infer; diff --git a/src/utils/schemas/yDaemonVaultsSchemas.ts b/src/utils/schemas/yDaemonVaultsSchemas.ts new file mode 100644 index 00000000..29ac6415 --- /dev/null +++ b/src/utils/schemas/yDaemonVaultsSchemas.ts @@ -0,0 +1,193 @@ +import {z} from 'zod'; + +import {toAddress} from '../address.js'; +import {toBigInt} from '../format.bigNumber.js'; +import {addressSchema} from './addressSchema.js'; + +const yDaemonVaultStrategySchema = z.object({ + address: addressSchema, + name: z.string(), + description: z.string().optional().default(''), + details: z + .object({ + totalDebt: z.string(), + totalLoss: z.string(), + totalGain: z.string(), + performanceFee: z.number(), + lastReport: z.number(), + debtRatio: z.number().optional() + }) + .optional(), // Optional for migratable + risk: z + .object({ + riskScore: z.number(), + riskGroup: z.string(), + riskDetails: z.object({ + TVLImpact: z.number(), + auditScore: z.number(), + codeReviewScore: z.number(), + complexityScore: z.number(), + longevityImpact: z.number(), + protocolSafetyScore: z.number(), + teamKnowledgeScore: z.number(), + testingScore: z.number() + }), + allocation: z.object({ + status: z.string(), + currentTVL: z.number().or(z.null()), + availableTVL: z.number(), + currentAmount: z.number().or(z.null()), + availableAmount: z.number().or(z.null()) + }) + }) + .optional() // Optional for migratable +}); + +export const yDaemonVaultTokenSchema = z.object({ + address: addressSchema, + name: z.string(), + symbol: z.string(), + description: z.string(), + decimals: z.number() +}); + +export const yDaemonVaultSchema = z.object({ + address: addressSchema, + version: z.string(), + type: z + .literal('Automated') + .or(z.literal('Automated Yearn Vault')) + .or(z.literal('Experimental')) + .or(z.literal('Experimental Yearn Vault')) + .or(z.literal('Standard')) + .or(z.literal('Yearn Vault')) + .default('Standard') + .catch('Standard'), + kind: z + .literal('Legacy') + .or(z.literal('Multi Strategy')) + .or(z.literal('Single Strategy')) + .default('Legacy') + .catch('Legacy'), + symbol: z.string(), + name: z.string(), + description: z.string().default('').catch(''), + category: z + .literal('Curve') + .or(z.literal('Volatile')) + .or(z.literal('Balancer')) + .or(z.literal('Stablecoin')) + .or(z.literal('Velodrome')) + .or(z.literal('Boosted')) + .or(z.literal('Aerodrome')) + .default('Volatile') + .catch('Volatile'), + decimals: z.number(), + chainID: z.number(), + token: yDaemonVaultTokenSchema, + tvl: z.object({ + totalAssets: z + .string() + .default('0') + .catch('0') + .transform((val): bigint => toBigInt(val)), + tvl: z.number().default(0).catch(0), + price: z.number().default(0).catch(0) + }), + apr: z.object({ + type: z.string().min(1).default('unknown').catch('unknown'), + netAPR: z.number().default(0).catch(0), + fees: z + .object({ + performance: z.number().default(0).catch(0), + withdrawal: z.number().default(0).catch(0), + management: z.number().default(0).catch(0), + keepCRV: z.number().default(0).catch(0), + keepVelo: z.number().default(0).catch(0), + cvxKeepCRV: z.number().default(0).catch(0) + }) + .default({}), + extra: z + .object({ + stakingRewardsAPR: z.number().default(0).catch(0) + }) + .default({}), + points: z + .object({ + weekAgo: z.number().default(0).catch(0), + monthAgo: z.number().default(0).catch(0), + inception: z.number().default(0).catch(0) + }) + .default({}), + forwardAPR: z + .object({ + type: z.string().default('unknown').catch('unknown'), + netAPR: z.number().default(0).catch(0), + composite: z + .object({ + boost: z.number().default(0).catch(0), + poolAPY: z.number().default(0).catch(0), + boostedAPR: z.number().default(0).catch(0), + baseAPR: z.number().default(0).catch(0), + cvxAPR: z.number().default(0).catch(0), + rewardsAPR: z.number().default(0).catch(0), + v3OracleCurrentAPR: z.number().default(0).catch(0), + v3OracleStratRatioAPR: z.number().default(0).catch(0) + }) + .default({}) + }) + .default({}) + }), + featuringScore: z.number().default(0).catch(0), + retired: z.boolean().default(false).catch(false), + boosted: z.boolean().default(false).catch(false), + strategies: z.array(yDaemonVaultStrategySchema).nullable().default([]), + staking: z + .object({ + address: addressSchema, + available: z.boolean().default(false).catch(false) + }) + .default({ + address: toAddress(''), + available: false + }) + .catch({ + address: toAddress(''), + available: false + }), + migration: z.object({ + available: z.boolean(), + address: addressSchema, + contract: addressSchema + }), + info: z.object({ + sourceURL: z.string().optional().default('').catch('') + }) +}); + +export const yDaemonVaultsSchema = z.array(yDaemonVaultSchema); +export const yDaemonVaultHarvestSchema = z.object({ + vaultAddress: addressSchema.optional(), + strategyAddress: addressSchema.optional(), + txHash: z.string().optional(), + timestamp: z.string(), + profit: z.string(), + profitValue: z.number().optional(), + loss: z.string(), + lossValue: z.number().optional() +}); +export const yDaemonVaultHarvestsSchema = z.array(yDaemonVaultHarvestSchema); + +export type TYDaemonVault = z.infer; +export type TYDaemonVaultStrategy = z.infer; +export type TYDaemonVaults = z.infer; +export type TYDaemonVaultHarvest = z.infer; +export type TYDaemonVaultHarvests = z.infer; +export type TYDaemonVaultTokenSchema = z.infer; + +export const isStandardVault = (vault: TYDaemonVault): boolean => + vault.type === 'Standard' || vault.type === 'Yearn Vault'; +export const isAutomatedVault = (vault: TYDaemonVault): boolean => + vault.type === 'Automated' || vault.type === 'Automated Yearn Vault'; +export const isExperimentalVault = (vault: TYDaemonVault): boolean => + vault.type === 'Experimental' || vault.type === 'Experimental Yearn Vault'; diff --git a/src/utils/web3/transaction.ts b/src/utils/web3/transaction.ts index 8d21a6e2..b3c7ec84 100755 --- a/src/utils/web3/transaction.ts +++ b/src/utils/web3/transaction.ts @@ -8,7 +8,7 @@ import type {Connector} from 'wagmi'; import type {PrepareWriteContractResult} from '@wagmi/core'; const timeout = 3000; -const defaultTxStatus = {none: true, pending: false, success: false, error: false}; +export const defaultTxStatus = {none: true, pending: false, success: false, error: false}; const errorTxStatus = {none: false, pending: false, success: false, error: true}; const pendingTxStatus = {none: false, pending: true, success: false, error: false}; const successTxStatus = {none: false, pending: false, success: true, error: false}; @@ -30,7 +30,7 @@ export type TTxResponse = { error?: BaseError | unknown; }; -class Transaction { +export class Transaction { provider: Connector; onStatus: React.Dispatch>; options?: {shouldIgnoreSuccessTxStatusChange: boolean}; @@ -95,7 +95,7 @@ class Transaction { } } -async function handleTx(config: PrepareWriteContractResult): Promise { +export async function handleTx(config: PrepareWriteContractResult): Promise { try { const {hash} = await writeContract(config.request); const receipt = await waitForTransaction({ @@ -108,5 +108,3 @@ async function handleTx(config: PrepareWriteContractResult): Promise= 0.1.3" + eslint-plugin-react-hooks "^4.6.0" + ethers "5.7.2" + eventemitter3 "^5.0.1" + graphql "^16.8.1" + graphql-request "^6.1.0" + husky "^8.0.3" + lint-staged "^15.1.0" + next "^14.0.3" + nprogress "^0.2.0" + prettier "^3.1.0" + react-hot-toast "2.4.1" + sass "^1.69.5" + sharp "^0.33.0" + stylelint "^15.11.0" + stylelint-config-standard "^34.0.0" + tailwindcss "^3.3.5" + viem "^1.19.11" + wagmi "^1.4.7" + zod "^3.22.4" + JSONStream@^1.3.5: version "1.3.5" resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" @@ -2795,10 +2895,10 @@ acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn@^8.10.0, acorn@^8.9.0: - version "8.11.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.2.tgz#ca0d78b51895be5390a5903c5b3bdcdaf78ae40b" - integrity sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w== +acorn@^8.11.3, acorn@^8.9.0: + version "8.11.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" + integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== aes-js@3.0.0: version "3.0.0" @@ -2810,18 +2910,13 @@ aes-js@^3.1.2: resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.1.2.tgz#db9aabde85d5caabbfc0d4f2a4446960f627146a" integrity sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ== -agentkeepalive@^4.3.0: +agentkeepalive@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.5.0.tgz#2673ad1389b3c418c5a20c5d7364f93ca04be923" integrity sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew== dependencies: humanize-ms "^1.2.1" -ahocorasick@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/ahocorasick/-/ahocorasick-1.0.2.tgz#9eee93aef9d02bfb476d9b648d9b7a40ef2fd500" - integrity sha512-hCOfMzbFx5IDutmWLAt6MZwOUjIfSM9G9FyVxytmE4Rs/5YDPWQrD/+IR1w+FweD9H2oOZEnv36TmkjhNURBVA== - ajv@^6.12.4: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" @@ -2849,12 +2944,12 @@ ansi-escapes@^4.2.1: dependencies: type-fest "^0.21.3" -ansi-escapes@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-5.0.0.tgz#b6a0caf0eef0c41af190e9a749e0c00ec04bb2a6" - integrity sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA== +ansi-escapes@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-6.2.0.tgz#8a13ce75286f417f1963487d86ba9f90dccf9947" + integrity sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw== dependencies: - type-fest "^1.0.2" + type-fest "^3.0.0" ansi-regex@^5.0.1: version "5.0.1" @@ -2885,7 +2980,7 @@ ansi-styles@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== -ansi-styles@^6.0.0, ansi-styles@^6.1.0: +ansi-styles@^6.0.0, ansi-styles@^6.1.0, ansi-styles@^6.2.1: version "6.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== @@ -2903,11 +2998,6 @@ anymatch@^3.0.3, anymatch@^3.1.3, anymatch@~3.1.2: normalize-path "^3.0.0" picomatch "^2.0.4" -arch@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/arch/-/arch-2.2.0.tgz#1bc47818f305764f23ab3306b0bfc086c5a29d11" - integrity sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ== - arg@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" @@ -3077,12 +3167,12 @@ axe-core@=4.7.0: resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.7.0.tgz#34ba5a48a8b564f67e103f0aa5768d76e15bbbbf" integrity sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ== -axios@^1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.6.2.tgz#de67d42c755b571d3e698df1b6504cde9b0ee9f2" - integrity sha512-7i24Ri4pmDRfJTR7LDBhsOTtcm+9kjX5WiY1X3wIisx6G9So3pfMkEiU7emUBe46oceVImccTEM3k6C5dbVW8A== +axios@^1.6.2, axios@^1.6.5: + version "1.6.5" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.6.5.tgz#2c090da14aeeab3770ad30c3a1461bc970fb0cd8" + integrity sha512-Ii012v05KEVuUoFWmMW/UQv9aRIc3ZwkWDcM+h5Il8izZCtRVpDUfwpoFf7eOtajT3QiGR4yDUx7lPqHJULgbg== dependencies: - follow-redirects "^1.15.0" + follow-redirects "^1.15.4" form-data "^4.0.0" proxy-from-env "^1.1.0" @@ -3236,6 +3326,13 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + dependencies: + balanced-match "^1.0.0" + braces@^3.0.2, braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" @@ -3248,14 +3345,14 @@ brorand@^1.1.0: resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== -browserslist@^4.21.10, browserslist@^4.21.9: - version "4.22.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619" - integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ== +browserslist@^4.21.10, browserslist@^4.22.2: + version "4.22.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.2.tgz#704c4943072bd81ea18997f3bd2180e89c77874b" + integrity sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A== dependencies: - caniuse-lite "^1.0.30001541" - electron-to-chromium "^1.4.535" - node-releases "^2.0.13" + caniuse-lite "^1.0.30001565" + electron-to-chromium "^1.4.601" + node-releases "^2.0.14" update-browserslist-db "^1.0.13" bs-logger@0.x: @@ -3304,10 +3401,14 @@ bump@^0.2.5: resolved "https://registry.yarnpkg.com/bump/-/bump-0.2.5.tgz#16d5567b75e77ea6597a805c10294c578495b47b" integrity sha512-d4CZYvcP317+twjo7PhGd+EptYjvw83itgaxbJtJnHE64qH29qMtqAQ5vb3x3Su7WuaPjow88GBgp0FDBxbm8w== -bun-types@^1.0.15: - version "1.0.15" - resolved "https://registry.yarnpkg.com/bun-types/-/bun-types-1.0.15.tgz#6905c697627a1690f23512986c47260330f48c3d" - integrity sha512-XkEvWLV1JIhcVIpf2Lu6FXnZUxRUkQVJmgY+VT7os6Tk5X1nkXx11q4Rtu6txsqpDJZfUeZXblnnD59K+6wsVA== +bun-types@^1.0.15, bun-types@^1.0.22: + version "1.0.22" + resolved "https://registry.yarnpkg.com/bun-types/-/bun-types-1.0.22.tgz#b329f2dd8fa5933c24ac161aa4b41f8e95c0bdd6" + integrity sha512-JxmXAx6cXb37+rMsn30WRXlz9lbPFR9rQE78hNSoy5wJ8m/nUktkmHpo7xZb/YKDds23ifxWLjDtyni9MeXLgw== + dependencies: + "@types/node" "*" + "@types/ws" "*" + undici-types "^5.26.4" bundle-require@^4.0.0: version "4.0.2" @@ -3376,10 +3477,10 @@ camelcase@^6.2.0, camelcase@^6.3.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001406, caniuse-lite@^1.0.30001538, caniuse-lite@^1.0.30001541: - version "1.0.30001565" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz#a528b253c8a2d95d2b415e11d8b9942acc100c4f" - integrity sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w== +caniuse-lite@^1.0.30001406, caniuse-lite@^1.0.30001538, caniuse-lite@^1.0.30001565: + version "1.0.30001576" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001576.tgz#893be772cf8ee6056d6c1e2d07df365b9ec0a5c4" + integrity sha512-ff5BdakGe2P3SQsMsiqmt1Lc8221NR1VzHj5jXN5vBny9A6fpze94HiVV/n7XRosOlsShJcvMv5mdnpjOGCEgg== chalk@5.3.0: version "5.3.0" @@ -3428,7 +3529,7 @@ ci-info@^3.2.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== -citty@^0.1.3, citty@^0.1.4: +citty@^0.1.5: version "0.1.5" resolved "https://registry.yarnpkg.com/citty/-/citty-0.1.5.tgz#fe37ceae5dc764af75eb2fece99d2bf527ea4e50" integrity sha512-AS7n5NSc0OQVMV9v6wt3ByujNIrne0/cTjiC2MYqhvao57VNfiuVksTSr2p17nVOhEr2KtqiAkGwHcgMC/qUuQ== @@ -3447,27 +3548,27 @@ cli-cursor@^4.0.0: dependencies: restore-cursor "^4.0.0" -cli-truncate@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389" - integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA== +cli-truncate@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-4.0.0.tgz#6cc28a2924fee9e25ce91e973db56c7066e6172a" + integrity sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA== dependencies: slice-ansi "^5.0.0" - string-width "^5.0.0" + string-width "^7.0.0" client-only@0.0.1, client-only@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1" integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA== -clipboardy@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/clipboardy/-/clipboardy-3.0.0.tgz#f3876247404d334c9ed01b6f269c11d09a5e3092" - integrity sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg== +clipboardy@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/clipboardy/-/clipboardy-4.0.0.tgz#e73ced93a76d19dd379ebf1f297565426dffdca1" + integrity sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w== dependencies: - arch "^2.2.0" - execa "^5.1.1" - is-wsl "^2.2.0" + execa "^8.0.1" + is-wsl "^3.1.0" + is64bit "^2.0.0" cliui@^6.0.0: version "6.0.0" @@ -3487,10 +3588,10 @@ cliui@^8.0.1: strip-ansi "^6.0.1" wrap-ansi "^7.0.0" -clsx@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188" - integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA== +clsx@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.0.tgz#e851283bcb5c80ee7608db18487433f7b23f77cb" + integrity sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg== clsx@^1.1.0: version "1.2.1" @@ -3660,6 +3761,16 @@ cosmiconfig@^8.2.0, cosmiconfig@^8.3.6: parse-json "^5.2.0" path-type "^4.0.0" +cosmiconfig@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-9.0.0.tgz#34c3fc58287b915f3ae905ab6dc3de258b55ad9d" + integrity sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg== + dependencies: + env-paths "^2.2.1" + import-fresh "^3.3.0" + js-yaml "^4.1.0" + parse-json "^5.2.0" + create-jest@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/create-jest/-/create-jest-29.7.0.tgz#a355c5b3cb1e1af02ba177fe7afd7feee49a5320" @@ -3680,7 +3791,7 @@ cross-fetch@^3.1.4, cross-fetch@^3.1.5: dependencies: node-fetch "^2.6.12" -cross-spawn@^7.0.2, cross-spawn@^7.0.3: +cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -3702,10 +3813,10 @@ css-tree@^2.3.1: mdn-data "2.0.30" source-map-js "^1.0.1" -css-what@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.1.0.tgz#3f7b707aadf633baf62c2ceb8579b545bb40f7fe" - integrity sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw== +css-what@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" + integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== cssesc@^3.0.0: version "3.0.0" @@ -3713,9 +3824,9 @@ cssesc@^3.0.0: integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== csstype@^3.0.2, csstype@^3.0.7: - version "3.1.2" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" - integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== + version "3.1.3" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== damerau-levenshtein@^1.0.8: version "1.0.8" @@ -3779,7 +3890,7 @@ deep-is@^0.1.3: resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== -deep-object-diff@^1.1.0: +deep-object-diff@^1.1.9: version "1.1.9" resolved "https://registry.yarnpkg.com/deep-object-diff/-/deep-object-diff-1.1.9.tgz#6df7ef035ad6a0caa44479c536ed7b02570f4595" integrity sha512-Rn+RuwkmkDwCi2/oXOFS9Gsr5lJZu/yTGpK7wAaAIE75CC+LCGEZHpY6VQJa/RoJcrmaA/docWJZvYohlNkWPA== @@ -3798,7 +3909,7 @@ define-data-property@^1.0.1, define-data-property@^1.1.1: gopd "^1.0.1" has-property-descriptors "^1.0.0" -define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0, define-properties@^1.2.1: +define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== @@ -3807,10 +3918,10 @@ define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0, de has-property-descriptors "^1.0.0" object-keys "^1.1.1" -defu@^6.1.2, defu@^6.1.3: - version "6.1.3" - resolved "https://registry.yarnpkg.com/defu/-/defu-6.1.3.tgz#6d7f56bc61668e844f9f593ace66fd67ef1205fd" - integrity sha512-Vy2wmG3NTkmHNg/kzpuvHhkqeIx3ODWqasgCRbKtbXEN0G+HpEEv9BtJLp7ZG1CZloFaC41Ah3ZFbq7aqCqMeQ== +defu@^6.1.3, defu@^6.1.4: + version "6.1.4" + resolved "https://registry.yarnpkg.com/defu/-/defu-6.1.4.tgz#4e0c9cf9ff68fe5f3d7f2765cc1a012dfdcb0479" + integrity sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg== delay@^5.0.0: version "5.0.0" @@ -3925,10 +4036,10 @@ eastasianwidth@^0.2.0: resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== -electron-to-chromium@^1.4.535: - version "1.4.596" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.596.tgz#6752d1aa795d942d49dfc5d3764d6ea283fab1d7" - integrity sha512-zW3zbZ40Icb2BCWjm47nxwcFGYlIgdXkAx85XDO7cyky9J4QQfq8t0W19/TLZqq3JPQXtlv8BPIGmfa9Jb4scg== +electron-to-chromium@^1.4.601: + version "1.4.629" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.629.tgz#9cbffe1b08a5627b6a25118360f7fd3965416caf" + integrity sha512-5UUkr3k3CZ/k+9Sw7vaaIMyOzMC0XbPyprKI3n0tbKDqkzTDOjK4izm7DxlkueRMim6ZZQ1ja9F7hoFVplHihA== elliptic@6.5.4: version "6.5.4" @@ -3948,6 +4059,11 @@ emittery@^0.13.1: resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== +emoji-regex@^10.3.0: + version "10.3.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.3.0.tgz#76998b9268409eb3dae3de989254d456e70cfe23" + integrity sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw== + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -3978,6 +4094,11 @@ enhanced-resolve@^5.12.0: graceful-fs "^4.2.4" tapable "^2.2.0" +env-paths@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== + error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -4088,32 +4209,33 @@ es6-promisify@^5.0.0: es6-promise "^4.0.3" esbuild@^0.19.2: - version "0.19.8" - resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.19.8.tgz#ad05b72281d84483fa6b5345bd246c27a207b8f1" - integrity sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w== + version "0.19.11" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.19.11.tgz#4a02dca031e768b5556606e1b468fe72e3325d96" + integrity sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA== optionalDependencies: - "@esbuild/android-arm" "0.19.8" - "@esbuild/android-arm64" "0.19.8" - "@esbuild/android-x64" "0.19.8" - "@esbuild/darwin-arm64" "0.19.8" - "@esbuild/darwin-x64" "0.19.8" - "@esbuild/freebsd-arm64" "0.19.8" - "@esbuild/freebsd-x64" "0.19.8" - "@esbuild/linux-arm" "0.19.8" - "@esbuild/linux-arm64" "0.19.8" - "@esbuild/linux-ia32" "0.19.8" - "@esbuild/linux-loong64" "0.19.8" - "@esbuild/linux-mips64el" "0.19.8" - "@esbuild/linux-ppc64" "0.19.8" - "@esbuild/linux-riscv64" "0.19.8" - "@esbuild/linux-s390x" "0.19.8" - "@esbuild/linux-x64" "0.19.8" - "@esbuild/netbsd-x64" "0.19.8" - "@esbuild/openbsd-x64" "0.19.8" - "@esbuild/sunos-x64" "0.19.8" - "@esbuild/win32-arm64" "0.19.8" - "@esbuild/win32-ia32" "0.19.8" - "@esbuild/win32-x64" "0.19.8" + "@esbuild/aix-ppc64" "0.19.11" + "@esbuild/android-arm" "0.19.11" + "@esbuild/android-arm64" "0.19.11" + "@esbuild/android-x64" "0.19.11" + "@esbuild/darwin-arm64" "0.19.11" + "@esbuild/darwin-x64" "0.19.11" + "@esbuild/freebsd-arm64" "0.19.11" + "@esbuild/freebsd-x64" "0.19.11" + "@esbuild/linux-arm" "0.19.11" + "@esbuild/linux-arm64" "0.19.11" + "@esbuild/linux-ia32" "0.19.11" + "@esbuild/linux-loong64" "0.19.11" + "@esbuild/linux-mips64el" "0.19.11" + "@esbuild/linux-ppc64" "0.19.11" + "@esbuild/linux-riscv64" "0.19.11" + "@esbuild/linux-s390x" "0.19.11" + "@esbuild/linux-x64" "0.19.11" + "@esbuild/netbsd-x64" "0.19.11" + "@esbuild/openbsd-x64" "0.19.11" + "@esbuild/sunos-x64" "0.19.11" + "@esbuild/win32-arm64" "0.19.11" + "@esbuild/win32-ia32" "0.19.11" + "@esbuild/win32-x64" "0.19.11" escalade@^3.1.1: version "3.1.1" @@ -4135,12 +4257,12 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -eslint-config-next@^14.0.3: - version "14.0.3" - resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-14.0.3.tgz#7a01d23e4ff143ef87b520fab9efc440fa5879f3" - integrity sha512-IKPhpLdpSUyKofmsXUfrvBC49JMUTdeaD8ZIH4v9Vk0sC1X6URTuTJCLtA0Vwuj7V/CQh0oISuSTvNn5//Buew== +eslint-config-next@^14.0.3, eslint-config-next@^14.0.4: + version "14.0.4" + resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-14.0.4.tgz#7cd2c0a3b310203d41cf0dbf9d31f9b0a6235b4a" + integrity sha512-9/xbOHEQOmQtqvQ1UsTQZpnA7SlDMBtuKJ//S4JnoyK3oGLhILKXdBgu/UO7lQo/2xOykQULS1qQ6p2+EpHgAQ== dependencies: - "@next/eslint-plugin-next" "14.0.3" + "@next/eslint-plugin-next" "14.0.4" "@rushstack/eslint-patch" "^1.3.3" "@typescript-eslint/parser" "^5.4.2 || ^6.0.0" eslint-import-resolver-node "^0.3.6" @@ -4191,10 +4313,10 @@ eslint-module-utils@^2.7.4, eslint-module-utils@^2.8.0: dependencies: lodash "^4.17.2" -eslint-plugin-import@^2.28.1, eslint-plugin-import@^2.29.0: - version "2.29.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.29.0.tgz#8133232e4329ee344f2f612885ac3073b0b7e155" - integrity sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg== +eslint-plugin-import@^2.28.1, eslint-plugin-import@^2.29.1: + version "2.29.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz#d45b37b5ef5901d639c15270d74d46d161150643" + integrity sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw== dependencies: array-includes "^3.1.7" array.prototype.findlastindex "^1.2.3" @@ -4212,7 +4334,7 @@ eslint-plugin-import@^2.28.1, eslint-plugin-import@^2.29.0: object.groupby "^1.0.1" object.values "^1.1.7" semver "^6.3.1" - tsconfig-paths "^3.14.2" + tsconfig-paths "^3.15.0" eslint-plugin-jsx-a11y@^6.7.1: version "6.8.0" @@ -4268,10 +4390,10 @@ eslint-plugin-simple-import-sort@^10.0.0: resolved "https://registry.yarnpkg.com/eslint-plugin-simple-import-sort/-/eslint-plugin-simple-import-sort-10.0.0.tgz#cc4ceaa81ba73252427062705b64321946f61351" integrity sha512-AeTvO9UCMSNzIHRkg8S6c3RPy5YEwKWSQPx3DYghLedo2ZQxowPFLGDN1AZ2evfg6r6mjBSZSLxLFsWSu3acsw== -eslint-plugin-tailwindcss@^3.13.0: - version "3.13.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-tailwindcss/-/eslint-plugin-tailwindcss-3.13.0.tgz#60858cdc8888da2deda5f200c1b163b211c4b8fa" - integrity sha512-Fcep4KDRLWaK3KmkQbdyKHG0P4GdXFmXdDaweTIPcgOP60OOuWFbh1++dufRT28Q4zpKTKaHwTsXPJ4O/EjU2Q== +eslint-plugin-tailwindcss@^3.13.1: + version "3.13.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-tailwindcss/-/eslint-plugin-tailwindcss-3.13.1.tgz#40b26aa7cbde3dfe55b1a343258b5b495628dc06" + integrity sha512-2Nlgr9doO6vFAG9w4iGU0sspWXuzypfng10HTF+dFS2NterhweWtgdRvf/f7aaoOUUxVZM8wMIXzazrZ7CxyeA== dependencies: fast-glob "^3.2.5" postcss "^8.4.4" @@ -4301,15 +4423,15 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -eslint@^8.55.0: - version "8.55.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.55.0.tgz#078cb7b847d66f2c254ea1794fa395bf8e7e03f8" - integrity sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA== +eslint@^8.56.0: + version "8.56.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.56.0.tgz#4957ce8da409dc0809f99ab07a1b94832ab74b15" + integrity sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.6.1" "@eslint/eslintrc" "^2.1.4" - "@eslint/js" "8.55.0" + "@eslint/js" "8.56.0" "@humanwhocodes/config-array" "^0.11.13" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" @@ -4477,7 +4599,7 @@ events@^3.3.0: resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== -execa@8.0.1: +execa@8.0.1, execa@^8.0.1: version "8.0.1" resolved "https://registry.yarnpkg.com/execa/-/execa-8.0.1.tgz#51f6a5943b580f963c3ca9c6321796db8cc39b8c" integrity sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg== @@ -4492,7 +4614,7 @@ execa@8.0.1: signal-exit "^4.1.0" strip-final-newline "^3.0.0" -execa@^5.0.0, execa@^5.1.1: +execa@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== @@ -4533,7 +4655,7 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@^3.2.5, fast-glob@^3.2.9, fast-glob@^3.3.0, fast-glob@^3.3.1: +fast-glob@^3.2.5, fast-glob@^3.2.9, fast-glob@^3.3.0, fast-glob@^3.3.1, fast-glob@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -4575,9 +4697,9 @@ fastest-levenshtein@^1.0.16: integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg== fastq@^1.6.0: - version "1.15.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" - integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== + version "1.16.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.16.0.tgz#83b9a9375692db77a822df081edb6a9cf6839320" + integrity sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA== dependencies: reusify "^1.0.4" @@ -4602,6 +4724,13 @@ file-entry-cache@^7.0.0: dependencies: flat-cache "^3.2.0" +file-entry-cache@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f" + integrity sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ== + dependencies: + flat-cache "^4.0.0" + file-uri-to-path@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" @@ -4644,15 +4773,24 @@ flat-cache@^3.0.4, flat-cache@^3.2.0: keyv "^4.5.3" rimraf "^3.0.2" +flat-cache@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-4.0.0.tgz#d12437636f83bb8a12b8f300c36fd1614e1c7224" + integrity sha512-EryKbCE/wxpxKniQlyas6PY1I9vwtF3uCBweX+N8KYTCn3Y12RTGtQAJ/bd5pl7kxUAc8v/R3Ake/N17OZiFqA== + dependencies: + flatted "^3.2.9" + keyv "^4.5.4" + rimraf "^5.0.5" + flatted@^3.2.9: version "3.2.9" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.9.tgz#7eb4c67ca1ba34232ca9d2d93e9886e611ad7daf" integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ== -follow-redirects@^1.15.0: - version "1.15.3" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a" - integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q== +follow-redirects@^1.15.4: + version "1.15.5" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.5.tgz#54d4d6d062c0fa7d9d17feb008461550e3ba8020" + integrity sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw== for-each@^0.3.3: version "0.3.3" @@ -4661,6 +4799,14 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" +foreground-child@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.1.1.tgz#1d173e776d75d2772fed08efe4a0de1ea1b12d0d" + integrity sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^4.0.1" + form-data@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" @@ -4675,15 +4821,6 @@ fraction.js@^4.3.6: resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== -fs-extra@^11.0.0: - version "11.2.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.2.0.tgz#e70e17dfad64232287d01929399e0ea7c86b0e5b" - integrity sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -4724,6 +4861,11 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== +get-east-asian-width@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz#5e6ebd9baee6fb8b7b6bd505221065f0cd91f64e" + integrity sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA== + get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.2.tgz#281b7622971123e1ef4b3c90fd7539306da93f3b" @@ -4744,10 +4886,10 @@ get-package-type@^0.1.0: resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== -get-port-please@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/get-port-please/-/get-port-please-3.1.1.tgz#2556623cddb4801d823c0a6a15eec038abb483be" - integrity sha512-3UBAyM3u4ZBVYDsxOQfJDxEa6XTbpBDrOjp4mf7ExFRt5BKs/QywQQiJsh2B+hxcZLSapWqCRvElUe8DnKcFHA== +get-port-please@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/get-port-please/-/get-port-please-3.1.2.tgz#502795e56217128e4183025c89a48c71652f4e49" + integrity sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ== get-stream@^6.0.0: version "6.0.1" @@ -4804,18 +4946,6 @@ glob-to-regexp@^0.4.1: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@7.1.6: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - glob@7.1.7: version "7.1.7" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" @@ -4828,6 +4958,17 @@ glob@7.1.7: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^10.3.10, glob@^10.3.7: + version "10.3.10" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b" + integrity sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g== + dependencies: + foreground-child "^3.1.0" + jackspeak "^2.3.5" + minimatch "^9.0.1" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-scurry "^1.10.1" + glob@^7.1.3, glob@^7.1.4: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" @@ -4869,9 +5010,9 @@ globals@^11.1.0: integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== globals@^13.19.0: - version "13.23.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.23.0.tgz#ef31673c926a0976e1f61dab4dca57e0c0a8af02" - integrity sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA== + version "13.24.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171" + integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== dependencies: type-fest "^0.20.2" @@ -4911,7 +5052,7 @@ gopd@^1.0.1: dependencies: get-intrinsic "^1.1.3" -graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.9: +graceful-fs@^4.1.2, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.9: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -4934,10 +5075,10 @@ graphql@^16.8.1: resolved "https://registry.yarnpkg.com/graphql/-/graphql-16.8.1.tgz#1930a965bef1170603702acdb68aedd3f3cf6f07" integrity sha512-59LZHPdGZVh695Ud9lRzPBVTtlX9ZCV150Er2W43ro37wVof0ctenSaskPPjN7lVTIN8mSZt8PHUNKZuNQUuxw== -h3@^1.8.1, h3@^1.8.2: - version "1.9.0" - resolved "https://registry.yarnpkg.com/h3/-/h3-1.9.0.tgz#c5f512a93026df9837db6f30c9ef51135dd46752" - integrity sha512-+F3ZqrNV/CFXXfZ2lXBINHi+rM4Xw3CDC5z2CDK3NMPocjonKipGLLDSkrqY9DOrioZNPTIdDMWfQKm//3X2DA== +h3@^1.10.0, h3@^1.8.2: + version "1.10.0" + resolved "https://registry.yarnpkg.com/h3/-/h3-1.10.0.tgz#55ac36deb6e250ada5ff1940b6324bc6acc4085f" + integrity sha512-Tw1kcIC+AeimwRmviiObaD5EB430Yt+lTgOxLJxNr96Vd/fGRu04EF7aKfOAcpwKCI+U2JlbxOLhycD86p3Ciw== dependencies: cookie-es "^1.0.0" defu "^6.1.3" @@ -4946,7 +5087,7 @@ h3@^1.8.1, h3@^1.8.2: radix3 "^1.1.0" ufo "^1.3.2" uncrypto "^0.1.3" - unenv "^1.7.4" + unenv "^1.8.0" hard-rejection@^2.1.0: version "2.1.0" @@ -5089,7 +5230,7 @@ ieee754@^1.2.1: resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -ignore@^5.2.0, ignore@^5.2.4: +ignore@^5.2.0, ignore@^5.2.4, ignore@^5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.0.tgz#67418ae40d34d6999c95ff56016759c718c82f78" integrity sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg== @@ -5264,10 +5405,10 @@ is-date-object@^1.0.1, is-date-object@^1.0.5: dependencies: has-tostringtag "^1.0.0" -is-docker@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" - integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== +is-docker@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200" + integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ== is-extglob@^2.1.1: version "2.1.1" @@ -5291,6 +5432,13 @@ is-fullwidth-code-point@^4.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88" integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ== +is-fullwidth-code-point@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-5.0.0.tgz#9609efced7c2f97da7b60145ef481c787c7ba704" + integrity sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA== + dependencies: + get-east-asian-width "^1.0.0" + is-generator-fn@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" @@ -5310,6 +5458,13 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" +is-inside-container@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-inside-container/-/is-inside-container-1.0.0.tgz#e81fba699662eb31dbdaf26766a61d4814717ea4" + integrity sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA== + dependencies: + is-docker "^3.0.0" + is-map@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127" @@ -5435,12 +5590,19 @@ is-weakset@^2.0.1: call-bind "^1.0.2" get-intrinsic "^1.1.1" -is-wsl@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== +is-wsl@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-3.1.0.tgz#e1c657e39c10090afcbedec61720f6b924c3cbd2" + integrity sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw== + dependencies: + is-inside-container "^1.0.0" + +is64bit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is64bit/-/is64bit-2.0.0.tgz#198c627cbcb198bbec402251f88e5e1a51236c07" + integrity sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw== dependencies: - is-docker "^2.0.0" + system-architecture "^0.1.0" isarray@^2.0.5: version "2.0.5" @@ -5452,6 +5614,14 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== +isomorphic-unfetch@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz#87341d5f4f7b63843d468438128cb087b7c3e98f" + integrity sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q== + dependencies: + node-fetch "^2.6.1" + unfetch "^4.2.0" + isomorphic-ws@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz#55fd4cd6c5e6491e76dc125938dd863f5cd4f2dc" @@ -5526,6 +5696,15 @@ iterator.prototype@^1.1.2: reflect.getprototypeof "^1.0.4" set-function-name "^2.0.1" +jackspeak@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" + integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + jayson@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/jayson/-/jayson-4.1.0.tgz#60dc946a85197317f2b1439d672a8b0a99cea2f9" @@ -5902,7 +6081,7 @@ jest@^29.7.0: import-local "^3.0.2" jest-cli "^29.7.0" -jiti@^1.19.1, jiti@^1.20.0: +jiti@^1.19.1, jiti@^1.21.0: version "1.21.0" resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d" integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q== @@ -6002,15 +6181,6 @@ jsonc-parser@^3.2.0: resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== -jsonfile@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" - integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== - dependencies: - universalify "^2.0.0" - optionalDependencies: - graceful-fs "^4.1.6" - jsonparse@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" @@ -6035,7 +6205,7 @@ keccak@^3.0.1: node-gyp-build "^4.2.0" readable-stream "^3.6.0" -keyv@^4.5.3: +keyv@^4.5.3, keyv@^4.5.4: version "4.5.4" resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== @@ -6087,71 +6257,71 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" -lilconfig@2.1.0, lilconfig@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" - integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== - -lilconfig@^3.0.0: +lilconfig@3.0.0, lilconfig@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.0.0.tgz#f8067feb033b5b74dab4602a5f5029420be749bc" integrity sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g== +lilconfig@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" + integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== + lines-and-columns@^1.1.6: version "1.2.4" resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== -lint-staged@^15.1.0: - version "15.1.0" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.1.0.tgz#c0f8e4d96ac3c09beac5c76d08524d6000c207b4" - integrity sha512-ZPKXWHVlL7uwVpy8OZ7YQjYDAuO5X4kMh0XgZvPNxLcCCngd0PO5jKQyy3+s4TL2EnHoIXIzP1422f/l3nZKMw== +lint-staged@^15.1.0, lint-staged@^15.2.0: + version "15.2.0" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.0.tgz#3111534ca58096a3c8f70b044b6e7fe21b36f859" + integrity sha512-TFZzUEV00f+2YLaVPWBWGAMq7So6yQx+GG8YRMDeOEIf95Zn5RyiLMsEiX4KTNl9vq/w+NqRJkLA1kPIo15ufQ== dependencies: chalk "5.3.0" commander "11.1.0" debug "4.3.4" execa "8.0.1" - lilconfig "2.1.0" - listr2 "7.0.2" + lilconfig "3.0.0" + listr2 "8.0.0" micromatch "4.0.5" pidtree "0.6.0" string-argv "0.3.2" yaml "2.3.4" listhen@^1.5.5: - version "1.5.5" - resolved "https://registry.yarnpkg.com/listhen/-/listhen-1.5.5.tgz#58915512af70f770aa3e9fb19367adf479bb58c4" - integrity sha512-LXe8Xlyh3gnxdv4tSjTjscD1vpr/2PRpzq8YIaMJgyKzRG8wdISlWVWnGThJfHnlJ6hmLt2wq1yeeix0TEbuoA== + version "1.5.6" + resolved "https://registry.yarnpkg.com/listhen/-/listhen-1.5.6.tgz#8dc8cdccef225e39c69bcc6f6bd704447b499b51" + integrity sha512-gTpEJhT5L85L0bFgmu+Boqu5rP4DwDtEb4Exq5gdQUxWRwx4jbzdInZkmyLONo5EwIcQB0k7ZpWlpCDPdL77EQ== dependencies: "@parcel/watcher" "^2.3.0" "@parcel/watcher-wasm" "2.3.0" - citty "^0.1.4" - clipboardy "^3.0.0" + citty "^0.1.5" + clipboardy "^4.0.0" consola "^3.2.3" - defu "^6.1.2" - get-port-please "^3.1.1" - h3 "^1.8.1" + defu "^6.1.4" + get-port-please "^3.1.2" + h3 "^1.10.0" http-shutdown "^1.2.2" - jiti "^1.20.0" + jiti "^1.21.0" mlly "^1.4.2" node-forge "^1.3.1" pathe "^1.1.1" - std-env "^3.4.3" - ufo "^1.3.0" - untun "^0.1.2" + std-env "^3.7.0" + ufo "^1.3.2" + untun "^0.1.3" uqr "^0.1.2" -listr2@7.0.2: - version "7.0.2" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-7.0.2.tgz#3aa3e1549dfaf3c57ab5eeaba754da3b87f33063" - integrity sha512-rJysbR9GKIalhTbVL2tYbF2hVyDnrf7pFUZBwjPaMIdadYHmeT+EVi/Bu3qd7ETQPahTotg2WRCatXwRBW554g== +listr2@8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.0.0.tgz#aa7c230995f8ce378585f7c96c0c6d1cefa4700d" + integrity sha512-u8cusxAcyqAiQ2RhYvV7kRKNLgUvtObIbhOX2NCXqvp1UU32xIg5CT22ykS2TPKJXZWJwtK3IKLiqAGlGNE+Zg== dependencies: - cli-truncate "^3.1.0" + cli-truncate "^4.0.0" colorette "^2.0.20" eventemitter3 "^5.0.1" - log-update "^5.0.1" + log-update "^6.0.0" rfdc "^1.3.0" - wrap-ansi "^8.1.0" + wrap-ansi "^9.0.0" lit-element@^3.3.0: version "3.3.3" @@ -6287,16 +6457,16 @@ lodash@*, lodash@^4.17.15, lodash@^4.17.2: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -log-update@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-5.0.1.tgz#9e928bf70cb183c1f0c9e91d9e6b7115d597ce09" - integrity sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw== +log-update@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-6.0.0.tgz#0ddeb7ac6ad658c944c1de902993fce7c33f5e59" + integrity sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw== dependencies: - ansi-escapes "^5.0.0" + ansi-escapes "^6.2.0" cli-cursor "^4.0.0" - slice-ansi "^5.0.0" - strip-ansi "^7.0.1" - wrap-ansi "^8.0.1" + slice-ansi "^7.0.0" + strip-ansi "^7.1.0" + wrap-ansi "^9.0.0" loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" @@ -6305,7 +6475,7 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" -lru-cache@^10.0.2: +lru-cache@^10.0.2, "lru-cache@^9.1.1 || ^10.0.0": version "10.1.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.1.0.tgz#2098d41c2dc56500e6c88584aa656c84de7d0484" integrity sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag== @@ -6398,6 +6568,11 @@ meow@^12.0.1: resolved "https://registry.yarnpkg.com/meow/-/meow-12.1.1.tgz#e558dddbab12477b69b2e9a2728c327f191bace6" integrity sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw== +meow@^13.0.0: + version "13.1.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-13.1.0.tgz#62995b0e8c3951739fe6e0a4becdd4d0df23eb37" + integrity sha512-o5R/R3Tzxq0PJ3v3qcQJtSvSE9nKOLSAaDuuoMzDVuGTwHdccMWcYomh9Xolng2tjT6O/Y83d+0coVGof6tqmA== + meow@^8.0.0: version "8.1.2" resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" @@ -6480,6 +6655,13 @@ minimalistic-crypto-utils@^1.0.1: resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== +minimatch@9.0.3, minimatch@^9.0.1: + version "9.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" + integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== + dependencies: + brace-expansion "^2.0.1" + minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -6501,15 +6683,25 @@ minimist@^1.2.0, minimist@^1.2.6: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": + version "7.0.4" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" + integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== + mlly@^1.2.0, mlly@^1.4.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.4.2.tgz#7cf406aa319ff6563d25da6b36610a93f2a8007e" - integrity sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg== + version "1.5.0" + resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.5.0.tgz#8428a4617d54cc083d3009030ac79739a0e5447a" + integrity sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ== dependencies: - acorn "^8.10.0" - pathe "^1.1.1" + acorn "^8.11.3" + pathe "^1.1.2" pkg-types "^1.0.3" - ufo "^1.3.0" + ufo "^1.3.2" + +modern-ahocorasick@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/modern-ahocorasick/-/modern-ahocorasick-1.0.1.tgz#dec373444f51b5458ac05216a8ec376e126dd283" + integrity sha512-yoe+JbhTClckZ67b2itRtistFKf8yPYelHLc7e5xAwtNAXxM6wJTUx2C7QeVSJFDzKT7bCIFyBVybPMKvmB9AA== motion@10.16.2: version "10.16.2" @@ -6552,7 +6744,7 @@ mz@^2.7.0: object-assign "^4.0.1" thenify-all "^1.0.0" -nanoid@^3.3.6: +nanoid@^3.3.6, nanoid@^3.3.7: version "3.3.7" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== @@ -6567,28 +6759,34 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -next@^14.0.3: - version "14.0.3" - resolved "https://registry.yarnpkg.com/next/-/next-14.0.3.tgz#8d801a08eaefe5974203d71092fccc463103a03f" - integrity sha512-AbYdRNfImBr3XGtvnwOxq8ekVCwbFTv/UJoLwmaX89nk9i051AEY4/HAWzU0YpaTDw8IofUpmuIlvzWF13jxIw== +next-seo@^6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/next-seo/-/next-seo-6.4.0.tgz#05a75b8acae881f856eb690b1f66b5e8741aa16e" + integrity sha512-XQFxkOL2hw0YE+P100HbI3EAvcludlHPxuzMgaIjKb7kPK0CvjGvLFjd9hszZFEDc5oiQkGFA8+cuWcnip7eYA== + +next@^14.0.3, next@^14.0.4: + version "14.0.4" + resolved "https://registry.yarnpkg.com/next/-/next-14.0.4.tgz#bf00b6f835b20d10a5057838fa2dfced1d0d84dc" + integrity sha512-qbwypnM7327SadwFtxXnQdGiKpkuhaRLE2uq62/nRul9cj9KhQ5LhHmlziTNqUidZotw/Q1I9OjirBROdUJNgA== dependencies: - "@next/env" "14.0.3" + "@next/env" "14.0.4" "@swc/helpers" "0.5.2" busboy "1.6.0" caniuse-lite "^1.0.30001406" + graceful-fs "^4.2.11" postcss "8.4.31" styled-jsx "5.1.1" watchpack "2.4.0" optionalDependencies: - "@next/swc-darwin-arm64" "14.0.3" - "@next/swc-darwin-x64" "14.0.3" - "@next/swc-linux-arm64-gnu" "14.0.3" - "@next/swc-linux-arm64-musl" "14.0.3" - "@next/swc-linux-x64-gnu" "14.0.3" - "@next/swc-linux-x64-musl" "14.0.3" - "@next/swc-win32-arm64-msvc" "14.0.3" - "@next/swc-win32-ia32-msvc" "14.0.3" - "@next/swc-win32-x64-msvc" "14.0.3" + "@next/swc-darwin-arm64" "14.0.4" + "@next/swc-darwin-x64" "14.0.4" + "@next/swc-linux-arm64-gnu" "14.0.4" + "@next/swc-linux-arm64-musl" "14.0.4" + "@next/swc-linux-x64-gnu" "14.0.4" + "@next/swc-linux-x64-musl" "14.0.4" + "@next/swc-win32-arm64-msvc" "14.0.4" + "@next/swc-win32-ia32-msvc" "14.0.4" + "@next/swc-win32-x64-msvc" "14.0.4" node-addon-api@^2.0.0: version "2.0.2" @@ -6600,12 +6798,12 @@ node-addon-api@^7.0.0: resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-7.0.0.tgz#8136add2f510997b3b94814f4af1cce0b0e3962e" integrity sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA== -node-fetch-native@^1.4.0, node-fetch-native@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/node-fetch-native/-/node-fetch-native-1.4.1.tgz#5a336e55b4e1b1e72b9927da09fecd2b374c9be5" - integrity sha512-NsXBU0UgBxo2rQLOeWNZqS3fvflWePMECr8CoSWoSTqCqGbVVsvl9vZu1HfQicYN0g5piV9Gh8RTEvo/uP752w== +node-fetch-native@^1.4.0, node-fetch-native@^1.4.1, node-fetch-native@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/node-fetch-native/-/node-fetch-native-1.6.1.tgz#f95c74917d3cebc794cdae0cd2a9c7594aad0cb4" + integrity sha512-bW9T/uJDPAJB2YNYEpWzE54U5O3MQidXsOyTfnbKYtTtFexRvGzb1waphBN4ZwP6EcIvYYEOwW0b72BpAqydTw== -node-fetch@^2.6.12: +node-fetch@^2.6.1, node-fetch@^2.6.12, node-fetch@^2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== @@ -6618,19 +6816,19 @@ node-forge@^1.3.1: integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== node-gyp-build@^4.2.0, node-gyp-build@^4.3.0: - version "4.7.1" - resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.7.1.tgz#cd7d2eb48e594874053150a9418ac85af83ca8f7" - integrity sha512-wTSrZ+8lsRRa3I3H8Xr65dLWSgCvY2l4AOnaeKdPA9TB/WYMPaTcrzf3rXvFoVvjKNVnu0CcWSx54qq9GKRUYg== + version "4.8.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.0.tgz#3fee9c1731df4581a3f9ead74664369ff00d26dd" + integrity sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og== node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-releases@^2.0.13: - version "2.0.13" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" - integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== +node-releases@^2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" + integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== normalize-package-data@^2.5.0: version "2.5.0" @@ -6670,9 +6868,9 @@ npm-run-path@^4.0.1: path-key "^3.0.0" npm-run-path@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00" - integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q== + version "5.2.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.2.0.tgz#224cdd22c755560253dd71b83a1ef2f758b2e955" + integrity sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg== dependencies: path-key "^4.0.0" @@ -6702,12 +6900,12 @@ object-keys@^1.1.1: integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object.assign@^4.1.4: - version "4.1.4" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" - integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== + version "4.1.5" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" + integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" + call-bind "^1.0.5" + define-properties "^1.2.1" has-symbols "^1.0.3" object-keys "^1.1.1" @@ -6883,15 +7081,23 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-scurry@^1.10.1: + version "1.10.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.1.tgz#9ba6bf5aa8500fe9fd67df4f0d9483b2b0bfc698" + integrity sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ== + dependencies: + lru-cache "^9.1.1 || ^10.0.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-type@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -pathe@^1.1.0, pathe@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.1.tgz#1dd31d382b974ba69809adc9a7a347e65d84829a" - integrity sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q== +pathe@^1.1.0, pathe@^1.1.1, pathe@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec" + integrity sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ== picocolors@^1.0.0: version "1.0.0" @@ -7010,12 +7216,12 @@ postcss-nested@^6.0.1: dependencies: postcss-selector-parser "^6.0.11" -postcss-nesting@^12.0.1: - version "12.0.1" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-12.0.1.tgz#abb76d15dfd59a9f7d03b4464f53b60a4d3795c4" - integrity sha512-6LCqCWP9pqwXw/njMvNK0hGY44Fxc4B2EsGbn6xDcxbNRzP8GYoxT7yabVVMLrX3quqOJ9hg2jYMsnkedOf8pA== +postcss-nesting@^12.0.2: + version "12.0.2" + resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-12.0.2.tgz#cb92061347db3e7c38c174c97cb01feff2eef439" + integrity sha512-63PpJHSeNs93S3ZUIyi+7kKx4JqOIEJ6QYtG3x+0qA4J03+4n0iwsyA1GAHyWxsHYljQS4/4ZK1o2sMi70b5wQ== dependencies: - "@csstools/selector-specificity" "^3.0.0" + "@csstools/selector-specificity" "^3.0.1" postcss-selector-parser "^6.0.13" postcss-resolve-nested-selector@^0.1.1: @@ -7028,6 +7234,11 @@ postcss-safe-parser@^6.0.0: resolved "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz#bb4c29894171a94bc5c996b9a30317ef402adaa1" integrity sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ== +postcss-safe-parser@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-7.0.0.tgz#6273d4e5149e286db5a45bc6cf6eafcad464014a" + integrity sha512-ovehqRNVCpuFzbXoTb4qLtyzK3xn3t/CUBxOs8LsnQjQrShaB4lKiHoVqY8ANaC0hBMHq5QVWk77rwGklFUDrg== + postcss-selector-parser@6.0.10: version "6.0.10" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz#79b61e2c0d1bfc2602d549e11d0876256f8df88d" @@ -7037,9 +7248,9 @@ postcss-selector-parser@6.0.10: util-deprecate "^1.0.2" postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.13: - version "6.0.13" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b" - integrity sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ== + version "6.0.15" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz#11cc2b21eebc0b99ea374ffb9887174855a01535" + integrity sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw== dependencies: cssesc "^3.0.0" util-deprecate "^1.0.2" @@ -7049,7 +7260,7 @@ postcss-value-parser@^4.0.0, postcss-value-parser@^4.2.0: resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== -postcss@8.4.31, postcss@^8.4.23, postcss@^8.4.28, postcss@^8.4.4: +postcss@8.4.31: version "8.4.31" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d" integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== @@ -7058,20 +7269,29 @@ postcss@8.4.31, postcss@^8.4.23, postcss@^8.4.28, postcss@^8.4.4: picocolors "^1.0.0" source-map-js "^1.0.2" +postcss@^8.4.23, postcss@^8.4.28, postcss@^8.4.32, postcss@^8.4.4: + version "8.4.33" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.33.tgz#1378e859c9f69bf6f638b990a0212f43e2aaa742" + integrity sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg== + dependencies: + nanoid "^3.3.7" + picocolors "^1.0.0" + source-map-js "^1.0.2" + preact@^10.12.0, preact@^10.5.9: - version "10.19.2" - resolved "https://registry.yarnpkg.com/preact/-/preact-10.19.2.tgz#841797620dba649aaac1f8be42d37c3202dcea8b" - integrity sha512-UA9DX/OJwv6YwP9Vn7Ti/vF80XL+YA5H2l7BpCtUr3ya8LWHFzpiO5R+N7dN16ujpIxhekRFuOOF82bXX7K/lg== + version "10.19.3" + resolved "https://registry.yarnpkg.com/preact/-/preact-10.19.3.tgz#7a7107ed2598a60676c943709ea3efb8aaafa899" + integrity sha512-nHHTeFVBTHRGxJXKkKu5hT8C/YWBkPso4/Gad6xuj5dbptt9iF9NZr9pHbPhBrnT2klheu7mHTxTZ/LjwJiEiQ== prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.1.0.tgz#c6d16474a5f764ea1a4a373c593b779697744d5e" - integrity sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw== +prettier@^3.1.0, prettier@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.1.1.tgz#6ba9f23165d690b6cbdaa88cb0807278f7019848" + integrity sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw== pretty-format@^29.0.0, pretty-format@^29.7.0: version "29.7.0" @@ -7095,7 +7315,7 @@ prompts@^2.0.1: kleur "^3.0.3" sisteransi "^1.0.5" -prop-types@^15.8.1: +prop-types@^15, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== @@ -7124,16 +7344,6 @@ pure-rand@^6.0.0: resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.4.tgz#50b737f6a925468679bff00ad20eade53f37d5c7" integrity sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA== -qrcode@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/qrcode/-/qrcode-1.5.0.tgz#95abb8a91fdafd86f8190f2836abbfc500c72d1b" - integrity sha512-9MgRpgVc+/+47dFvQeD6U2s0Z92EsKzcHogtum4QB+UNd025WOJSHvn/hjk9xmzj7Stj95CyUAs31mrjxliEsQ== - dependencies: - dijkstrajs "^1.0.1" - encode-utf8 "^1.0.3" - pngjs "^5.0.0" - yargs "^15.3.1" - qrcode@1.5.3, qrcode@^1.5.1: version "1.5.3" resolved "https://registry.yarnpkg.com/qrcode/-/qrcode-1.5.3.tgz#03afa80912c0dccf12bc93f615a535aad1066170" @@ -7228,7 +7438,14 @@ react-is@^18.0.0: resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== -react-remove-scroll-bar@^2.3.3: +react-paginate@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/react-paginate/-/react-paginate-8.2.0.tgz#947c3dcb444a6c16c1bcf8361871aa135baa3dcd" + integrity sha512-sJCz1PW+9PNIjUSn919nlcRVuleN2YPoFBOvL+6TPgrH/3lwphqiSOgdrLafLdyLDxsgK+oSgviqacF4hxsDIw== + dependencies: + prop-types "^15" + +react-remove-scroll-bar@^2.3.4: version "2.3.4" resolved "https://registry.yarnpkg.com/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.4.tgz#53e272d7a5cb8242990c7f144c44d8bd8ab5afd9" integrity sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A== @@ -7236,12 +7453,12 @@ react-remove-scroll-bar@^2.3.3: react-style-singleton "^2.2.1" tslib "^2.0.0" -react-remove-scroll@2.5.4: - version "2.5.4" - resolved "https://registry.yarnpkg.com/react-remove-scroll/-/react-remove-scroll-2.5.4.tgz#afe6491acabde26f628f844b67647645488d2ea0" - integrity sha512-xGVKJJr0SJGQVirVFAUZ2k1QLyO6m+2fy0l8Qawbp5Jgrv3DeLalrfMNBFSlmz5kriGGzsVBtGVnf4pTKIhhWA== +react-remove-scroll@2.5.7: + version "2.5.7" + resolved "https://registry.yarnpkg.com/react-remove-scroll/-/react-remove-scroll-2.5.7.tgz#15a1fd038e8497f65a695bf26a4a57970cac1ccb" + integrity sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA== dependencies: - react-remove-scroll-bar "^2.3.3" + react-remove-scroll-bar "^2.3.4" react-style-singleton "^2.2.1" tslib "^2.1.0" use-callback-ref "^1.3.0" @@ -7370,9 +7587,9 @@ reflect.getprototypeof@^1.0.4: which-builtin-type "^1.1.3" regenerator-runtime@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz#5e19d68eb12d486f797e15a3c6a918f7cec5eb45" - integrity sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA== + version "0.14.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" + integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== regexp.prototype.flags@^1.5.0, regexp.prototype.flags@^1.5.1: version "1.5.1" @@ -7475,29 +7692,39 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" +rimraf@^5.0.5: + version "5.0.5" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.5.tgz#9be65d2d6e683447d2e9013da2bf451139a61ccf" + integrity sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A== + dependencies: + glob "^10.3.7" + rollup@^4.0.2: - version "4.6.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.6.0.tgz#4f966f6dd3f6bafd01b864d68ba078d308b864fa" - integrity sha512-R8i5Her4oO1LiMQ3jKf7MUglYV/mhQ5g5OKeld5CnkmPdIGo79FDDQYqPhq/PCVuTQVuxsWgIbDy9F+zdHn80w== + version "4.9.5" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.9.5.tgz#62999462c90f4c8b5d7c38fc7161e63b29101b05" + integrity sha512-E4vQW0H/mbNMw2yLSqJyjtkHY9dslf/p0zuT1xehNRqUTBOFMqEjguDvqhXr7N7r/4ttb2jr4T41d3dncmIgbQ== + dependencies: + "@types/estree" "1.0.5" optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.6.0" - "@rollup/rollup-android-arm64" "4.6.0" - "@rollup/rollup-darwin-arm64" "4.6.0" - "@rollup/rollup-darwin-x64" "4.6.0" - "@rollup/rollup-linux-arm-gnueabihf" "4.6.0" - "@rollup/rollup-linux-arm64-gnu" "4.6.0" - "@rollup/rollup-linux-arm64-musl" "4.6.0" - "@rollup/rollup-linux-x64-gnu" "4.6.0" - "@rollup/rollup-linux-x64-musl" "4.6.0" - "@rollup/rollup-win32-arm64-msvc" "4.6.0" - "@rollup/rollup-win32-ia32-msvc" "4.6.0" - "@rollup/rollup-win32-x64-msvc" "4.6.0" + "@rollup/rollup-android-arm-eabi" "4.9.5" + "@rollup/rollup-android-arm64" "4.9.5" + "@rollup/rollup-darwin-arm64" "4.9.5" + "@rollup/rollup-darwin-x64" "4.9.5" + "@rollup/rollup-linux-arm-gnueabihf" "4.9.5" + "@rollup/rollup-linux-arm64-gnu" "4.9.5" + "@rollup/rollup-linux-arm64-musl" "4.9.5" + "@rollup/rollup-linux-riscv64-gnu" "4.9.5" + "@rollup/rollup-linux-x64-gnu" "4.9.5" + "@rollup/rollup-linux-x64-musl" "4.9.5" + "@rollup/rollup-win32-arm64-msvc" "4.9.5" + "@rollup/rollup-win32-ia32-msvc" "4.9.5" + "@rollup/rollup-win32-x64-msvc" "4.9.5" fsevents "~2.3.2" rpc-websockets@^7.5.1: - version "7.8.0" - resolved "https://registry.yarnpkg.com/rpc-websockets/-/rpc-websockets-7.8.0.tgz#1bcf571f65c51803e81f0824e9540a0da35a5287" - integrity sha512-AStkq6KDvSAmA4WiwlK1pDvj/33BWmExTATUokC0v+NhWekXSTNzXS5OGXeYwq501/pj6lBZMofg/h4dx4/tCg== + version "7.9.0" + resolved "https://registry.yarnpkg.com/rpc-websockets/-/rpc-websockets-7.9.0.tgz#a3938e16d6f134a3999fdfac422a503731bf8973" + integrity sha512-DwKewQz1IUA5wfLvgM8wDpPRcr+nWSxuFxx5CbrI2z/MyyZ4nXLM86TvIA+cI1ZAdqC8JIBR1mZR55dzaLU+Hw== dependencies: "@babel/runtime" "^7.17.2" eventemitter3 "^4.0.7" @@ -7537,12 +7764,12 @@ safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safe-regex-test@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" - integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA== + version "1.0.2" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.2.tgz#3ba32bdb3ea35f940ee87e5087c60ee786c3f6c5" + integrity sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ== dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.3" + call-bind "^1.0.5" + get-intrinsic "^1.2.2" is-regex "^1.1.4" safe-stable-stringify@^2.1.0: @@ -7550,10 +7777,10 @@ safe-stable-stringify@^2.1.0: resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz#138c84b6f6edb3db5f8ef3ef7115b8f55ccbf886" integrity sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g== -sass@^1.69.5: - version "1.69.5" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.69.5.tgz#23e18d1c757a35f2e52cc81871060b9ad653dfde" - integrity sha512-qg2+UCJibLr2LCVOt3OlPhr/dqVHWOa9XtZf2OjbLs/T4VPSJ00udtgJxH3neXZm+QqX8B+3cU7RaLqp1iVfcQ== +sass@^1.69.5, sass@^1.69.7: + version "1.69.7" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.69.7.tgz#6e7e1c8f51e8162faec3e9619babc7da780af3b7" + integrity sha512-rzj2soDeZ8wtE2egyLXgOOHQvaC2iosZrkF6v3EUG+tBwEvhqUCzm0VP3k9gHF9LXbSrRhT5SksoI56Iw8NPnQ== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0" @@ -7620,34 +7847,34 @@ sha.js@^2.4.11: inherits "^2.0.1" safe-buffer "^5.0.1" -sharp@^0.33.0: - version "0.33.0" - resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.33.0.tgz#95f77cda3684522e210ab55a167dad6cb5fbfe4f" - integrity sha512-99DZKudjm/Rmz+M0/26t4DKpXyywAOJaayGS9boEn7FvgtG0RYBi46uPE2c+obcJRtA3AZa0QwJot63gJQ1F0Q== +sharp@^0.33.0, sharp@^0.33.2: + version "0.33.2" + resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.33.2.tgz#fcd52f2c70effa8a02160b1bfd989a3de55f2dfb" + integrity sha512-WlYOPyyPDiiM07j/UO+E720ju6gtNtHjEGg5vovUk1Lgxyjm2LFO+37Nt/UI3MMh2l6hxTWQWi7qk3cXJTutcQ== dependencies: color "^4.2.3" detect-libc "^2.0.2" semver "^7.5.4" optionalDependencies: - "@img/sharp-darwin-arm64" "0.33.0" - "@img/sharp-darwin-x64" "0.33.0" - "@img/sharp-libvips-darwin-arm64" "1.0.0" - "@img/sharp-libvips-darwin-x64" "1.0.0" - "@img/sharp-libvips-linux-arm" "1.0.0" - "@img/sharp-libvips-linux-arm64" "1.0.0" - "@img/sharp-libvips-linux-s390x" "1.0.0" - "@img/sharp-libvips-linux-x64" "1.0.0" - "@img/sharp-libvips-linuxmusl-arm64" "1.0.0" - "@img/sharp-libvips-linuxmusl-x64" "1.0.0" - "@img/sharp-linux-arm" "0.33.0" - "@img/sharp-linux-arm64" "0.33.0" - "@img/sharp-linux-s390x" "0.33.0" - "@img/sharp-linux-x64" "0.33.0" - "@img/sharp-linuxmusl-arm64" "0.33.0" - "@img/sharp-linuxmusl-x64" "0.33.0" - "@img/sharp-wasm32" "0.33.0" - "@img/sharp-win32-ia32" "0.33.0" - "@img/sharp-win32-x64" "0.33.0" + "@img/sharp-darwin-arm64" "0.33.2" + "@img/sharp-darwin-x64" "0.33.2" + "@img/sharp-libvips-darwin-arm64" "1.0.1" + "@img/sharp-libvips-darwin-x64" "1.0.1" + "@img/sharp-libvips-linux-arm" "1.0.1" + "@img/sharp-libvips-linux-arm64" "1.0.1" + "@img/sharp-libvips-linux-s390x" "1.0.1" + "@img/sharp-libvips-linux-x64" "1.0.1" + "@img/sharp-libvips-linuxmusl-arm64" "1.0.1" + "@img/sharp-libvips-linuxmusl-x64" "1.0.1" + "@img/sharp-linux-arm" "0.33.2" + "@img/sharp-linux-arm64" "0.33.2" + "@img/sharp-linux-s390x" "0.33.2" + "@img/sharp-linux-x64" "0.33.2" + "@img/sharp-linuxmusl-arm64" "0.33.2" + "@img/sharp-linuxmusl-x64" "0.33.2" + "@img/sharp-wasm32" "0.33.2" + "@img/sharp-win32-ia32" "0.33.2" + "@img/sharp-win32-x64" "0.33.2" shebang-command@^2.0.0: version "2.0.0" @@ -7714,6 +7941,14 @@ slice-ansi@^5.0.0: ansi-styles "^6.0.0" is-fullwidth-code-point "^4.0.0" +slice-ansi@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-7.1.0.tgz#cd6b4655e298a8d1bdeb04250a433094b347b9a9" + integrity sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg== + dependencies: + ansi-styles "^6.2.1" + is-fullwidth-code-point "^5.0.0" + sonic-boom@^2.2.1: version "2.8.0" resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-2.8.0.tgz#c1def62a77425090e6ad7516aad8eb402e047611" @@ -7806,10 +8041,10 @@ standard-as-callback@^2.1.0: resolved "https://registry.yarnpkg.com/standard-as-callback/-/standard-as-callback-2.1.0.tgz#8953fc05359868a77b5b9739a665c5977bb7df45" integrity sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A== -std-env@^3.4.3: - version "3.5.0" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.5.0.tgz#83010c9e29bd99bf6f605df87c19012d82d63b97" - integrity sha512-JGUEaALvL0Mf6JCfYnJOTcobY+Nc7sG/TemDRBqCA0wEr4DER7zDchaaixTlmOxAjG1uRJmX82EQcxwTQTkqVA== +std-env@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2" + integrity sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg== stream-browserify@^3.0.0: version "3.0.0" @@ -7820,9 +8055,9 @@ stream-browserify@^3.0.0: readable-stream "^3.5.0" stream-shift@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" - integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== + version "1.0.2" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.2.tgz#548bff71c92322e1ade886979f7f67c0723eb9e4" + integrity sha512-rV4Bovi9xx0BFzOb/X0B2GqoIjvqPCttZdu0Wgtx2Dxkj7ETyWl9gmqJ4EutWRLvtZWm8dxE+InQZX1IryZn/w== streamsearch@^1.1.0: version "1.1.0" @@ -7847,7 +8082,7 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -7856,7 +8091,7 @@ string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -string-width@^5.0.0, string-width@^5.0.1: +string-width@^5.0.1, string-width@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== @@ -7865,6 +8100,15 @@ string-width@^5.0.0, string-width@^5.0.1: emoji-regex "^9.2.2" strip-ansi "^7.0.1" +string-width@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-7.0.0.tgz#14aa1b7aaa126d5b64fa79d3c894da8a9650ba06" + integrity sha512-GPQHj7row82Hjo9hKZieKcHIhaAIKOJvFSIZXuCU9OASVZrMNUaZuz++SPVrBjnLsnk4k+z9f2EIypgxf2vNFw== + dependencies: + emoji-regex "^10.3.0" + get-east-asian-width "^1.0.0" + strip-ansi "^7.1.0" + string.prototype.matchall@^4.0.8: version "4.0.10" resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz#a1553eb532221d4180c51581d6072cd65d1ee100" @@ -7914,14 +8158,14 @@ string_decoder@^1.1.1: dependencies: safe-buffer "~5.2.0" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" -strip-ansi@^7.0.1: +strip-ansi@^7.0.1, strip-ansi@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== @@ -7984,6 +8228,11 @@ stylelint-config-recommended@^13.0.0: resolved "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-13.0.0.tgz#c48a358cc46b629ea01f22db60b351f703e00597" integrity sha512-EH+yRj6h3GAe/fRiyaoO2F9l9Tgg50AOFhaszyfov9v6ayXJ1IkSHwTxd7lB48FmOeSGDPLjatjO11fJpmarkQ== +stylelint-config-recommended@^14.0.0: + version "14.0.0" + resolved "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-14.0.0.tgz#b395c7014838d2aaca1755eebd914d0bb5274994" + integrity sha512-jSkx290CglS8StmrLp2TxAppIajzIBZKYm3IxT89Kg6fGlxbPiTiyH9PS5YUuVAFwaJLl1ikiXX0QWjI0jmgZQ== + stylelint-config-standard@^34.0.0: version "34.0.0" resolved "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-34.0.0.tgz#309f3c48118a02aae262230c174282e40e766cf4" @@ -7991,6 +8240,13 @@ stylelint-config-standard@^34.0.0: dependencies: stylelint-config-recommended "^13.0.0" +stylelint-config-standard@^36.0.0: + version "36.0.0" + resolved "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-36.0.0.tgz#6704c044d611edc12692d4a5e37b039a441604d4" + integrity sha512-3Kjyq4d62bYFp/Aq8PMKDwlgUyPU4nacXsjDLWJdNPRUgpuxALu1KnlAHIj36cdtxViVhXexZij65yM0uNIHug== + dependencies: + stylelint-config-recommended "^14.0.0" + stylelint@^15.11.0: version "15.11.0" resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-15.11.0.tgz#3ff8466f5f5c47362bc7c8c9d382741c58bc3292" @@ -8037,14 +8293,58 @@ stylelint@^15.11.0: table "^6.8.1" write-file-atomic "^5.0.1" +stylelint@^16.1.0: + version "16.1.0" + resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-16.1.0.tgz#d289c36b0dd344a65c55897d636b3b8b213dc908" + integrity sha512-Sh1rRV0lN1qxz/QsuuooLWsIZ/ona7NKw/fRZd6y6PyXYdD2W0EAzJ8yJcwSx4Iw/muz0CF09VZ+z4EiTAcKmg== + dependencies: + "@csstools/css-parser-algorithms" "^2.4.0" + "@csstools/css-tokenizer" "^2.2.2" + "@csstools/media-query-list-parser" "^2.1.6" + "@csstools/selector-specificity" "^3.0.1" + balanced-match "^2.0.0" + colord "^2.9.3" + cosmiconfig "^9.0.0" + css-functions-list "^3.2.1" + css-tree "^2.3.1" + debug "^4.3.4" + fast-glob "^3.3.2" + fastest-levenshtein "^1.0.16" + file-entry-cache "^8.0.0" + global-modules "^2.0.0" + globby "^11.1.0" + globjoin "^0.1.4" + html-tags "^3.3.1" + ignore "^5.3.0" + imurmurhash "^0.1.4" + is-plain-object "^5.0.0" + known-css-properties "^0.29.0" + mathml-tag-names "^2.1.3" + meow "^13.0.0" + micromatch "^4.0.5" + normalize-path "^3.0.0" + picocolors "^1.0.0" + postcss "^8.4.32" + postcss-resolve-nested-selector "^0.1.1" + postcss-safe-parser "^7.0.0" + postcss-selector-parser "^6.0.13" + postcss-value-parser "^4.2.0" + resolve-from "^5.0.0" + string-width "^4.2.3" + strip-ansi "^7.1.0" + supports-hyperlinks "^3.0.0" + svg-tags "^1.0.0" + table "^6.8.1" + write-file-atomic "^5.0.1" + sucrase@^3.20.3, sucrase@^3.32.0: - version "3.34.0" - resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.34.0.tgz#1e0e2d8fcf07f8b9c3569067d92fbd8690fb576f" - integrity sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw== + version "3.35.0" + resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.35.0.tgz#57f17a3d7e19b36d8995f06679d121be914ae263" + integrity sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA== dependencies: "@jridgewell/gen-mapping" "^0.3.2" commander "^4.0.0" - glob "7.1.6" + glob "^10.3.10" lines-and-columns "^1.1.6" mz "^2.7.0" pirates "^4.0.1" @@ -8099,6 +8399,11 @@ svg-tags@^1.0.0: resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764" integrity sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA== +system-architecture@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/system-architecture/-/system-architecture-0.1.0.tgz#71012b3ac141427d97c67c56bc7921af6bff122d" + integrity sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA== + table@^6.8.1: version "6.8.1" resolved "https://registry.yarnpkg.com/table/-/table-6.8.1.tgz#ea2b71359fe03b017a5fbc296204471158080bdf" @@ -8110,10 +8415,10 @@ table@^6.8.1: string-width "^4.2.3" strip-ansi "^6.0.1" -tailwindcss@^3.3.5: - version "3.3.5" - resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-3.3.5.tgz#22a59e2fbe0ecb6660809d9cc5f3976b077be3b8" - integrity sha512-5SEZU4J7pxZgSkv7FP1zY8i2TIAOooNZ1e/OGtxIEv6GltpoiXUqWvLy89+a10qYTB1N5Ifkuw9lqQkN9sscvA== +tailwindcss@^3.3.5, tailwindcss@^3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-3.4.1.tgz#f512ca5d1dd4c9503c7d3d28a968f1ad8f5c839d" + integrity sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA== dependencies: "@alloc/quick-lru" "^5.2.0" arg "^5.0.2" @@ -8273,10 +8578,10 @@ ts-jest@^29.1.1: semver "^7.5.3" yargs-parser "^21.0.1" -tsconfig-paths@^3.14.2: - version "3.14.2" - resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz#6e32f1f79412decd261f92d633a9dc1cfa99f088" - integrity sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g== +tsconfig-paths@^3.15.0: + version "3.15.0" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4" + integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== dependencies: "@types/json5" "^0.0.29" json5 "^1.0.2" @@ -8350,11 +8655,16 @@ type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -type-fest@^1.0.1, type-fest@^1.0.2, type-fest@^1.2.1, type-fest@^1.2.2: +type-fest@^1.0.1, type-fest@^1.2.1, type-fest@^1.2.2: version "1.4.0" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== +type-fest@^3.0.0: + version "3.13.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-3.13.1.tgz#bb744c1f0678bea7543a2d1ec24e83e68e8c8706" + integrity sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g== + typed-array-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60" @@ -8401,12 +8711,12 @@ typedarray-to-buffer@3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@^5.3.2: - version "5.3.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.2.tgz#00d1c7c1c46928c5845c1ee8d0cc2791031d4c43" - integrity sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ== +typescript@^5.3.3: + version "5.3.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.3.tgz#b3ce6ba258e72e6305ba66f5c9b452aaee3ffe37" + integrity sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw== -ua-parser-js@^1.0.35: +ua-parser-js@^1.0.37: version "1.0.37" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.37.tgz#b5dc7b163a5c1f0c510b08446aed4da92c46373f" integrity sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ== @@ -8438,26 +8748,31 @@ uncrypto@^0.1.3: resolved "https://registry.yarnpkg.com/uncrypto/-/uncrypto-0.1.3.tgz#e1288d609226f2d02d8d69ee861fa20d8348ef2b" integrity sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q== +undici-types@^5.26.4: + version "5.28.2" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.28.2.tgz#6d86278547d81c2cad72425cf275e8dfbaa8bc42" + integrity sha512-W71OLwDqzIO0d3k07qg1xc7d4cX8SsSwuCO4bQ4V7ITwduXXie/lcImofabP5VV+NvuvSe8ovKvHVJcizVc1JA== + undici-types@~5.26.4: version "5.26.5" resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== -unenv@^1.7.4: - version "1.8.0" - resolved "https://registry.yarnpkg.com/unenv/-/unenv-1.8.0.tgz#0f860d5278405700bd95d47b23bc01f3a735d68c" - integrity sha512-uIGbdCWZfhRRmyKj1UioCepQ0jpq638j/Cf0xFTn4zD1nGJ2lSdzYHLzfdXN791oo/0juUiSWW1fBklXMTsuqg== +unenv@^1.8.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/unenv/-/unenv-1.9.0.tgz#469502ae85be1bd3a6aa60f810972b1a904ca312" + integrity sha512-QKnFNznRxmbOF1hDgzpqrlIf6NC5sbZ2OJ+5Wl3OX8uM+LUJXbj4TXvLJCtwbPTmbMHCLIz6JLKNinNsMShK9g== dependencies: consola "^3.2.3" defu "^6.1.3" mime "^3.0.0" - node-fetch-native "^1.4.1" + node-fetch-native "^1.6.1" pathe "^1.1.1" -universalify@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" - integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== +unfetch@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" + integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== unstorage@^1.9.0: version "1.10.1" @@ -8476,12 +8791,12 @@ unstorage@^1.9.0: ofetch "^1.3.3" ufo "^1.3.1" -untun@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/untun/-/untun-0.1.2.tgz#fa42a62ae24c1c5c6f3209692a2b0e1f573f1353" - integrity sha512-wLAMWvxfqyTiBODA1lg3IXHQtjggYLeTK7RnSfqtOXixWJ3bAa2kK/HHmOOg19upteqO3muLvN6O/icbyQY33Q== +untun@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/untun/-/untun-0.1.3.tgz#5d10dee37a3a5737ff03d158be877dae0a0e58a6" + integrity sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ== dependencies: - citty "^0.1.3" + citty "^0.1.5" consola "^3.2.3" pathe "^1.1.1" @@ -8506,9 +8821,9 @@ uri-js@^4.2.2: punycode "^2.1.0" use-callback-ref@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/use-callback-ref/-/use-callback-ref-1.3.0.tgz#772199899b9c9a50526fedc4993fc7fa1f7e32d5" - integrity sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w== + version "1.3.1" + resolved "https://registry.yarnpkg.com/use-callback-ref/-/use-callback-ref-1.3.1.tgz#9be64c3902cbd72b07fe55e56408ae3a26036fd0" + integrity sha512-Lg4Vx1XZQauB42Hw3kK7JM6yjVjgFmFC5/Ab797s79aARomD2nEErc4mCgM8EZrARLmmbWpi5DGCadmK50DcAQ== dependencies: tslib "^2.0.0" @@ -8578,24 +8893,10 @@ valtio@1.11.2: proxy-compare "2.5.1" use-sync-external-store "1.2.0" -viem@^1.0.0: - version "1.19.9" - resolved "https://registry.yarnpkg.com/viem/-/viem-1.19.9.tgz#a11f3ad4a3323994ebd2010dbc659d1a2b12e583" - integrity sha512-Sf9U2x4jU0S/FALqYypcspWOGene0NZyD470oUripNhE0Ta6uOE/OgE4toTDVfRxov8qw0JFinr/wPGxYE3+HQ== - dependencies: - "@adraffy/ens-normalize" "1.10.0" - "@noble/curves" "1.2.0" - "@noble/hashes" "1.3.2" - "@scure/bip32" "1.3.2" - "@scure/bip39" "1.2.1" - abitype "0.9.8" - isows "1.0.3" - ws "8.13.0" - -viem@^1.19.11: - version "1.19.11" - resolved "https://registry.yarnpkg.com/viem/-/viem-1.19.11.tgz#de4ee7537ee036894bd818aa316a8faecaf017e9" - integrity sha512-dbsXEWDBZkByuzJXAs/e01j7dpUJ5ICF5WcyntFwf8Y97n5vnC/91lAleSa6DA5V4WJvYZbhDpYeTctsMAQnhA== +viem@^1.0.0, viem@^1.19.11, viem@^1.19.9, viem@^1.6.0: + version "1.21.4" + resolved "https://registry.yarnpkg.com/viem/-/viem-1.21.4.tgz#883760e9222540a5a7e0339809202b45fe6a842d" + integrity sha512-BNVYdSaUjeS2zKQgPs+49e5JKocfo60Ib2yiXOWBT6LuVxY1I/6fFX3waEtpXvL1Xn4qu+BVitVtMh9lyThyhQ== dependencies: "@adraffy/ens-normalize" "1.10.0" "@noble/curves" "1.2.0" @@ -8607,14 +8908,14 @@ viem@^1.19.11: ws "8.13.0" wagmi@^1.4.7: - version "1.4.7" - resolved "https://registry.yarnpkg.com/wagmi/-/wagmi-1.4.7.tgz#4236007e3d01359c4281cce34b7884ddcae3fa02" - integrity sha512-/k8gA9S6RnwU6Qroxs630jAFvRIx+DSKpCP1owgAEGWc7D2bAJHljwRSCRTGENz48HyJ4V3R7KYV1yImxPvM3A== + version "1.4.13" + resolved "https://registry.yarnpkg.com/wagmi/-/wagmi-1.4.13.tgz#dc8dc077c7c2195877d7e33477b0417f5d2add4f" + integrity sha512-AScVYFjqNt1wMgL99Bob7MLdhoTZ3XKiOZL5HVBdy4W1sh7QodA3gQ8IsmTuUrQ7oQaTxjiXEhwg7sWNrPBvJA== dependencies: "@tanstack/query-sync-storage-persister" "^4.27.1" "@tanstack/react-query" "^4.28.0" "@tanstack/react-query-persist-client" "^4.28.0" - "@wagmi/core" "1.4.7" + "@wagmi/core" "1.4.13" abitype "0.8.7" use-sync-external-store "^1.2.0" @@ -8729,25 +9030,25 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -wrap-ansi@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" - integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" string-width "^4.1.0" strip-ansi "^6.0.0" -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== dependencies: ansi-styles "^4.0.0" string-width "^4.1.0" strip-ansi "^6.0.0" -wrap-ansi@^8.0.1, wrap-ansi@^8.1.0: +wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== @@ -8756,6 +9057,15 @@ wrap-ansi@^8.0.1, wrap-ansi@^8.1.0: string-width "^5.0.1" strip-ansi "^7.0.1" +wrap-ansi@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-9.0.0.tgz#1a3dc8b70d85eeb8398ddfb1e4a02cd186e58b3e" + integrity sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q== + dependencies: + ansi-styles "^6.2.1" + string-width "^7.0.0" + strip-ansi "^7.1.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -8793,9 +9103,9 @@ ws@^7.4.5, ws@^7.5.1: integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== ws@^8.5.0: - version "8.14.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.14.2.tgz#6c249a806eb2db7a20d26d51e7709eab7b2e6c7f" - integrity sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g== + version "8.16.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.16.0.tgz#d1cd774f36fbc07165066a60e40323eab6446fd4" + integrity sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ== xtend@^4.0.1: version "4.0.2"