diff --git a/cspell.json b/cspell.json index 16fb37fd5caf..358e934fe04a 100644 --- a/cspell.json +++ b/cspell.json @@ -398,6 +398,7 @@ "txreceipt", "txts", "uaddr", + "uipd", "unauthenticate", "unitoken", "unlocklock", diff --git a/packages/icons/general/AccountBalanceWallet.tsx b/packages/icons/general/AccountBalanceWallet.tsx new file mode 100644 index 000000000000..633b6b84fa08 --- /dev/null +++ b/packages/icons/general/AccountBalanceWallet.tsx @@ -0,0 +1,35 @@ +import { createPaletteAwareIcon } from '../utils' + +export const AccountBalanceWalletIcon = createPaletteAwareIcon( + 'AccountBalanceWalletIcon', + + + + + , + + + + + , + undefined, + '0 0 27 26', +) diff --git a/packages/icons/general/LinkOut.tsx b/packages/icons/general/LinkOut.tsx index 5fa992219d78..ef93901c61b6 100644 --- a/packages/icons/general/LinkOut.tsx +++ b/packages/icons/general/LinkOut.tsx @@ -5,38 +5,18 @@ export const LinkOutIcon: typeof SvgIcon = createPaletteAwareIcon( 'LinkOutIcon', - - , - - , undefined, - '0 0 20 20', + '0 0 16 16', ) diff --git a/packages/icons/general/WarningTriangle.tsx b/packages/icons/general/WarningTriangle.tsx new file mode 100644 index 000000000000..bf55726eaf34 --- /dev/null +++ b/packages/icons/general/WarningTriangle.tsx @@ -0,0 +1,24 @@ +import { createIcon } from '../utils' + +export const WarningTriangleIcon = createIcon( + 'WarningTriangleIcon', + + + + + , + '0 0 20 20', +) diff --git a/packages/icons/general/index.ts b/packages/icons/general/index.ts index ab163735207e..acd428050559 100644 --- a/packages/icons/general/index.ts +++ b/packages/icons/general/index.ts @@ -94,6 +94,7 @@ export * from './Verified' export * from './Pin' export * from './Selected' export * from './Cram' +export * from './AccountBalanceWallet' export * from './TriangleWarning' export * from './OpenSeaColoredIcon' export * from './Collectible' @@ -115,5 +116,6 @@ export * from './CircleLoading' export * from './AddUser' export * from './PopupRestore' export * from './Direct' +export * from './WarningTriangle' export * from './Furucombo' export * from './CryptoArt' diff --git a/packages/mask/package.json b/packages/mask/package.json index 70aceed244cd..25d28a0b9d5a 100644 --- a/packages/mask/package.json +++ b/packages/mask/package.json @@ -97,6 +97,7 @@ "millify": "^4.0.0", "next-tick": "^1.0.0", "opensea-js": "^1.2.7", + "pure-react-carousel": "^1.28.1", "promievent": "^0.1.4", "protobufjs": "^6.11.2", "react-dnd": "^16.0.1", diff --git a/packages/mask/shared-ui/locales/en-US.json b/packages/mask/shared-ui/locales/en-US.json index a557b3a1aad2..60953b29f574 100644 --- a/packages/mask/shared-ui/locales/en-US.json +++ b/packages/mask/shared-ui/locales/en-US.json @@ -30,6 +30,12 @@ "add_nft_contract_search_hint": "Search NFT Contract Symbol Name or Address", "applications": "Applications", "application_settings": "Application Settings", + "application_tooltip_hint_sns_persona_unmatched": "Twitter ID verified persona({{currentSNSConnectedPersonaPublicKey}}) is not consistent with your current persona({{currentPersonaPublicKey}}). Please switch to persona({{currentSNSConnectedPersonaPublicKey}}) and try again.", + "application_tooltip_hint_verify": "Please verify your social account", + "application_tooltip_hint_create_persona": "Please create your persona and use it", + "application_tooltip_hint_connect_persona": "Please connect your persona", + "application_tooltip_hint_connect_wallet": "Please connect your wallet", + "application_tooltip_hint_switch_to_evm_wallet": "Please switch to EVM wallets", "application_settings_tab_app_list": "APP list", "application_settings_tab_plug_in_switch": "Plug-in switch", "application_settings_tab_plug_app-list-unlisted": "Unlisted", @@ -214,9 +220,8 @@ "wallet_balance": "Balance", "wallet_balance_eth": "Balance(ETH)", "wallet_new": "New Wallet", - "wallets": "Wallets", - "wallet_status_pending": "Pending", - "wallet_status_pending_clear_all": "Clear all", + "wallet_status_pending": "Pending{{plural}}", + "wallet_status_pending_clear_all": "Clear All", "wallet_status_pending_clear": "Clear", "wallet_status_button_change": "Change", "wallet_status_button_copy_address": "Copy Address", @@ -303,7 +308,7 @@ "plugin_wallet_on_create": "Create Wallet", "plugin_wallet_on_connect": "Connect Wallet", "plugin_wallet_wrong_network": "Wrong Network", - "plugin_wallet_pending_transactions": "{{count}} Pending", + "plugin_wallet_pending_transactions": "{{count}} Pending{{plural}}", "plugin_wallet_import_wallet": "Import Wallet", "plugin_wallet_select_provider_dialog_title": "Connect Wallet", "plugin_wallet_qr_code_with_wallet_connect": "Scan QR code with a WalletConnect-compatible wallet", @@ -330,6 +335,7 @@ "plugin_red_packet_erc20_tab_title": "Token", "plugin_red_packet_erc721_tab_title": "Collectibles", "plugin_red_packet_name": "Lucky Drop", + "plugin_red_packet_recommend_feature_description": "Surpirse your social friends with Lucky Drop", "plugin_red_packet_description": "Gift crypto or NFTs to any users, first come, first served.", "plugin_red_packet_erc721_insufficient_balance": "Insufficient Balance", "plugin_red_packet_details": "Lucky Drop Details", @@ -1092,7 +1098,6 @@ "plugin_artblocks_share_no_official_account": "I just purchased a beautiful piece of art from '{{name}}' collection for {{price}} {{symbol}}. Welcome to join.", "plugin_tips_disconnect_introduction": "Are you going to disconnect {{persona}} from wallet {{address}}?", "plugin_tips_not_evm_alert": "The tips feature currently supports only EVM chains. Support for other chains will be added in the future.", - "plugin_tips_sns_persona_unmatched": "Twitter ID verified persona({{currentSNSConnectedPersonaPublicKey}}) is not consistent with your current persona({{currentPersonaPublicKey}}). Please switch to persona({{currentSNSConnectedPersonaPublicKey}}) and try again.", "plugin_artblocks_description": "Artblocks allow you to pick a style that you like, pay for the work, and a randomly generated version of the content is created by an algorithm and sent to your Ethereum account.", "plugin_artblocks_name": "Artblocks", "plugin_dhedge_description": "Decentralized hedge funds on Ethereum and Polygon (Matic).", diff --git a/packages/mask/shared-ui/locales/ja-JP.json b/packages/mask/shared-ui/locales/ja-JP.json index 2c5d7be892b3..6081f4b17caf 100644 --- a/packages/mask/shared-ui/locales/ja-JP.json +++ b/packages/mask/shared-ui/locales/ja-JP.json @@ -73,7 +73,6 @@ "wallet_rename": "ウォレット名を変更", "wallet_balance": "残高", "wallet_new": "新規ウォレット名", - "wallets": "ウォレット", "wallet_status_button_change": "変更", "wallet_status_button_copy_address": "アドレスをコピー", "wallet_transfer_to_address": "宛先のアドレス", diff --git a/packages/mask/shared-ui/locales/ko-KR.json b/packages/mask/shared-ui/locales/ko-KR.json index 09f707ec80b8..d6032b444735 100644 --- a/packages/mask/shared-ui/locales/ko-KR.json +++ b/packages/mask/shared-ui/locales/ko-KR.json @@ -154,7 +154,6 @@ "plugin_airdrop_nft_claim_failed": "토큰 수령이 실패되었습니다", "wallet_balance": "잔액", "wallet_new": "새로운 월렛", - "wallets": "월렛", "wallet_status_button_change": "바꾸기", "wallet_status_button_copy_address": "주소 복사", "wallet_transfer_to_address": "주소", diff --git a/packages/mask/shared-ui/locales/qya-AA.json b/packages/mask/shared-ui/locales/qya-AA.json index 6ebcafbc80b3..7bf6bbbaf226 100644 --- a/packages/mask/shared-ui/locales/qya-AA.json +++ b/packages/mask/shared-ui/locales/qya-AA.json @@ -29,6 +29,7 @@ "add_token": "crwdns3983:0crwdne3983:0", "add_nft_contract_search_hint": "crwdns8123:0crwdne8123:0", "applications": "crwdns9513:0crwdne9513:0", + "application_tooltip_hint_sns_persona_unmatched": "crwdns16428:0{{currentSNSConnectedPersonaPublicKey}}crwdnd16428:0{{currentPersonaPublicKey}}crwdnd16428:0{{currentSNSConnectedPersonaPublicKey}}crwdne16428:0", "application_settings": "crwdns16220:0crwdne16220:0", "application_settings_tab_app_list": "crwdns16222:0crwdne16222:0", "application_settings_tab_plug_in_switch": "crwdns16224:0crwdne16224:0", @@ -1088,7 +1089,6 @@ "plugin_artblocks_share_no_official_account": "crwdns14524:0{{name}}crwdnd14524:0{{price}}crwdnd14524:0{{symbol}}crwdne14524:0", "plugin_tips_disconnect_introduction": "crwdns16410:0{{persona}}crwdnd16410:0{{address}}crwdne16410:0", "plugin_tips_not_evm_alert": "crwdns16414:0crwdne16414:0", - "plugin_tips_sns_persona_unmatched": "crwdns16428:0{{currentSNSConnectedPersonaPublicKey}}crwdnd16428:0{{currentPersonaPublicKey}}crwdnd16428:0{{currentSNSConnectedPersonaPublicKey}}crwdne16428:0", "plugin_artblocks_description": "crwdns16264:0crwdne16264:0", "plugin_artblocks_name": "crwdns16266:0crwdne16266:0", "plugin_dhedge_description": "crwdns16268:0crwdne16268:0", diff --git a/packages/mask/shared-ui/locales/zh-CN.json b/packages/mask/shared-ui/locales/zh-CN.json index 3fa03d05ddae..e24719227be6 100644 --- a/packages/mask/shared-ui/locales/zh-CN.json +++ b/packages/mask/shared-ui/locales/zh-CN.json @@ -209,7 +209,6 @@ "wallet_balance": "余额", "wallet_balance_eth": "余额(ETH)", "wallet_new": "新建钱包", - "wallets": "钱包", "wallet_status_button_change": "切换", "wallet_status_button_copy_address": "复制地址", "wallet_transfer_account": "转账账户", diff --git a/packages/mask/shared-ui/locales/zh-TW.json b/packages/mask/shared-ui/locales/zh-TW.json index f133b27d943b..80e050e83125 100644 --- a/packages/mask/shared-ui/locales/zh-TW.json +++ b/packages/mask/shared-ui/locales/zh-TW.json @@ -137,7 +137,6 @@ "wallet_balance": "餘額", "wallet_balance_eth": "餘額(ETH)", "wallet_new": "新錢包", - "wallets": "錢包", "wallet_status_button_change": "更改", "wallet_status_button_copy_address": "複製地址", "wallet_transfer_receiving_account": "接收地址", diff --git a/packages/mask/src/components/CompositionDialog/Composition.tsx b/packages/mask/src/components/CompositionDialog/Composition.tsx index 875ddcc1158d..196c0dc6bea0 100644 --- a/packages/mask/src/components/CompositionDialog/Composition.tsx +++ b/packages/mask/src/components/CompositionDialog/Composition.tsx @@ -1,7 +1,7 @@ import { useCallback, useEffect, useState, useRef } from 'react' import { DialogContent } from '@mui/material' import { DialogStackingProvider } from '@masknet/theme' -import { activatedSocialNetworkUI, globalUIState } from '../../social-network' +import { activatedSocialNetworkUI } from '../../social-network' import { MaskMessages, useI18N } from '../../utils' import { CrossIsolationMessages } from '@masknet/shared-base' import { useRecipientsList } from './useRecipientsList' @@ -20,7 +20,6 @@ export interface PostDialogProps { let openOnInitAnswered = false export function Composition({ type = 'timeline', requireClipboardPermission }: PostDialogProps) { const { t } = useI18N() - const currentIdentity = useCurrentIdentity()?.identifier /** @deprecated */ const { value: hasLocalKey } = useAsync( @@ -56,12 +55,7 @@ export function Composition({ type = 'timeline', requireClipboardPermission }: P useEffect(() => { return CrossIsolationMessages.events.requestComposition.on(({ reason, open, content, options }) => { - if ( - (reason !== 'reply' && reason !== type) || - (reason === 'reply' && type === 'popup') || - globalUIState.profiles.value.length <= 0 - ) - return + if ((reason !== 'reply' && reason !== type) || (reason === 'reply' && type === 'popup')) return setOpen(open) setReason(reason) if (content) UI.current?.setMessage(content) diff --git a/packages/mask/src/components/CompositionDialog/useSubmit.ts b/packages/mask/src/components/CompositionDialog/useSubmit.ts index a64d6af351a3..3e87e8c4a03c 100644 --- a/packages/mask/src/components/CompositionDialog/useSubmit.ts +++ b/packages/mask/src/components/CompositionDialog/useSubmit.ts @@ -17,7 +17,6 @@ export function useSubmit(onClose: () => void, reason: 'timeline' | 'popup' | 'r return useCallback( async (info: SubmitComposition) => { const { content, encode, target } = info - const currentProfile = globalUIState.profiles.value?.[0].identifier const _encrypted = await Services.Crypto.encryptTo(content, target, whoAmI?.identifier ?? currentProfile) diff --git a/packages/mask/src/components/DataSource/usePersonaAgainstSNSConnectStatus.ts b/packages/mask/src/components/DataSource/usePersonaAgainstSNSConnectStatus.ts new file mode 100644 index 000000000000..146f28b92f5b --- /dev/null +++ b/packages/mask/src/components/DataSource/usePersonaAgainstSNSConnectStatus.ts @@ -0,0 +1,34 @@ +import type { PersonaInformation, NextIDPlatform } from '@masknet/shared-base' +import { useAsyncRetry } from 'react-use' +import { useMemo } from 'react' +import Services from '../../extension/service' +import { activatedSocialNetworkUI } from '../../social-network' +import { useLastRecognizedIdentity } from './useActivatedUI' +import { useMyPersonas } from './useMyPersonas' +import { useSetupGuideStatusState } from './useNextID' + +export function usePersonaAgainstSNSConnectStatus() { + const ui = activatedSocialNetworkUI + const platform = ui.configuration.nextIDConfig?.platform as NextIDPlatform + const lastState = useSetupGuideStatusState() + const lastRecognized = useLastRecognizedIdentity() + const username = useMemo(() => { + return lastState.username || lastRecognized.identifier?.userId + }, [lastState, lastRecognized]) + const personas = useMyPersonas() + + return useAsyncRetry(async () => { + const checkSNSConnectToCurrentPersona = (persona: PersonaInformation) => + username ? persona.linkedProfiles.some((x) => x.identifier.userId === username) : false + const currentPersonaIdentifier = await Services.Settings.getCurrentPersonaIdentifier() + const currentPersona = (await Services.Identity.queryOwnedPersonaInformation(true)).find( + (x) => x.identifier === currentPersonaIdentifier, + ) + const currentSNSConnectedPersona = personas.find(checkSNSConnectToCurrentPersona) + return { + isSNSConnectToCurrentPersona: currentPersona ? checkSNSConnectToCurrentPersona(currentPersona) : false, + currentPersonaPublicKey: currentPersona?.identifier.rawPublicKey, + currentSNSConnectedPersonaPublicKey: currentSNSConnectedPersona?.identifier.rawPublicKey, + } + }, [platform, username, ui, personas]) +} diff --git a/packages/mask/src/components/InjectedComponents/ToolboxUnstyled.tsx b/packages/mask/src/components/InjectedComponents/ToolboxUnstyled.tsx index 2f6303e1c2b9..c2e6530ba5df 100644 --- a/packages/mask/src/components/InjectedComponents/ToolboxUnstyled.tsx +++ b/packages/mask/src/components/InjectedComponents/ToolboxUnstyled.tsx @@ -22,7 +22,7 @@ import { useWeb3State, useReverseAddress, } from '@masknet/plugin-infra/web3' -import { useCallback, useEffect, useMemo } from 'react' +import { useCallback, useEffect } from 'react' import { WalletIcon } from '@masknet/shared' import { useRemoteControlledDialog } from '@masknet/shared-base-ui' import { WalletMessages } from '../../plugins/Wallet/messages' @@ -30,10 +30,9 @@ import { useI18N } from '../../utils' import { hasNativeAPI, nativeAPI } from '../../../shared/native-rpc' import { useRecentTransactions } from '../../plugins/Wallet/hooks/useRecentTransactions' import GuideStep from '../GuideStep' -import { MaskFilledIcon } from '../../resources/MaskIcon' +import { AccountBalanceWalletIcon } from '@masknet/icons' import { makeStyles } from '@masknet/theme' import FiberManualRecordIcon from '@mui/icons-material/FiberManualRecord' -import { usePersonaConnectStatus } from '../DataSource/usePersonaConnectStatus' import { NextIDVerificationStatus, useNextIDConnectStatus } from '../DataSource/useNextID' const useStyles = makeStyles()((theme) => ({ @@ -82,8 +81,54 @@ export interface ToolboxHintProps { iconSize?: number badgeSize?: number mini?: boolean + category: 'wallet' | 'application' } export function ToolboxHintUnstyled(props: ToolboxHintProps) { + return props.category === 'wallet' ? : +} + +function ToolboxHintForApplication(props: ToolboxHintProps) { + const { + ListItemButton = MuiListItemButton, + Container = 'div', + Typography = MuiTypography, + iconSize = 24, + mini, + ListItemText = MuiListItemText, + } = props + const { classes } = useStyles() + const { t } = useI18N() + const { openDialog } = useRemoteControlledDialog(WalletMessages.events.ApplicationDialogUpdated) + return ( + + + + {mini ? null : ( + + {t('mask_network')} + + } + /> + )} + + + ) +} + +function ToolboxHintForWallet(props: ToolboxHintProps) { const { t } = useI18N() const nextIDConnectStatus = useNextIDConnectStatus() const { @@ -101,18 +146,8 @@ export function ToolboxHintUnstyled(props: ToolboxHintProps) { const networkDescriptor = useNetworkDescriptor() const providerDescriptor = useProviderDescriptor() - const personaConnectStatus = usePersonaConnectStatus() - - const title = useMemo(() => { - return !personaConnectStatus.hasPersona - ? t('create_persona') - : !personaConnectStatus.connected - ? t('connect_persona') - : walletTitle - }, [personaConnectStatus, walletTitle, t]) useEffect(() => { - if (personaConnectStatus.action) return const { status, isVerified, action } = nextIDConnectStatus if (isVerified || status === NextIDVerificationStatus.WaitingLocalConnect) return if (action) { @@ -120,15 +155,11 @@ export function ToolboxHintUnstyled(props: ToolboxHintProps) { } }, [nextIDConnectStatus.status]) - const onClick = () => { - personaConnectStatus.action ? personaConnectStatus.action() : openWallet() - } - return ( <> - + {isWalletValid ? ( ) : ( - + )} {mini ? null : ( @@ -151,7 +182,7 @@ export function ToolboxHintUnstyled(props: ToolboxHintProps) { justifyContent: 'space-between', alignItems: 'center', }}> - {title} + {walletTitle} {shouldDisplayChainIndicator ? ( {t('plugin_wallet_pending_transactions', { count: pendingTransactions.length, + plural: pendingTransactions.length > 1 ? 's' : '', })} @@ -215,8 +250,8 @@ function useToolbox() { const openWallet = useCallback(() => { if (hasNativeAPI) return nativeAPI?.api.misc_openCreateWalletView() - return openWalletStatusDialog() - }, [openWalletStatusDialog, hasNativeAPI]) + return isWalletValid ? openWalletStatusDialog() : openSelectProviderDialog() + }, [openWalletStatusDialog, openSelectProviderDialog, isWalletValid, hasNativeAPI]) const walletTitle = renderButtonText() diff --git a/packages/mask/src/components/shared/ApplicationBoard.tsx b/packages/mask/src/components/shared/ApplicationBoard.tsx index 11fb208088c2..d2f469ef9d60 100644 --- a/packages/mask/src/components/shared/ApplicationBoard.tsx +++ b/packages/mask/src/components/shared/ApplicationBoard.tsx @@ -1,30 +1,22 @@ -import { useState, useMemo, useCallback } from 'react' +import { useContext, createContext, PropsWithChildren, useMemo, useCallback, useEffect } from 'react' import { makeStyles, getMaskColor } from '@masknet/theme' -import { Typography, useTheme } from '@mui/material' +import { Typography } from '@mui/material' import { useChainId } from '@masknet/web3-shared-evm' import { useActivatedPluginsSNSAdaptor } from '@masknet/plugin-infra/content-script' -import { useCurrentWeb3NetworkPluginID, useAccount } from '@masknet/plugin-infra/web3' -import { - EMPTY_LIST, - NextIDPlatform, - CrossIsolationMessages, - formatPersonaPublicKey, - PersonaInformation, -} from '@masknet/shared-base' +import { useCurrentWeb3NetworkPluginID, useAccount, NetworkPluginID } from '@masknet/plugin-infra/web3' +import { EMPTY_LIST, CrossIsolationMessages, formatPersonaPublicKey } from '@masknet/shared-base' import { getCurrentSNSNetwork } from '../../social-network-adaptor/utils' import { activatedSocialNetworkUI } from '../../social-network' import { useI18N } from '../../utils' -import { ApplicationSettingDialog } from './ApplicationSettingDialog' import { Application, getUnlistedApp } from './ApplicationSettingPluginList' +import { ApplicationRecommendArea } from './ApplicationRecommendArea' import { useRemoteControlledDialog } from '@masknet/shared-base-ui' -import { useAsync } from 'react-use' -import Services from '../../extension/service' -import { NextIDProof } from '@masknet/web3-providers' -import { useLastRecognizedIdentity } from '../DataSource/useActivatedUI' -import { useSetupGuideStatusState } from '../DataSource/useNextID' -import { useMyPersonas } from '../DataSource/useMyPersonas' +import { useNextIDConnectStatus } from '../DataSource/useNextID' +import { usePersonaConnectStatus } from '../DataSource/usePersonaConnectStatus' +import { usePersonaAgainstSNSConnectStatus } from '../DataSource/usePersonaAgainstSNSConnectStatus' import { WalletMessages } from '../../plugins/Wallet/messages' import { PersonaContext } from '../../extension/popups/pages/Personas/hooks/usePersonaContext' +import { MaskMessages } from '../../../shared' const useStyles = makeStyles<{ shouldScroll: boolean }>()((theme, props) => { const smallQuery = `@media (max-width: ${theme.breakpoints.values.sm}px)` @@ -36,10 +28,10 @@ const useStyles = makeStyles<{ shouldScroll: boolean }>()((theme, props) => { overflowY: 'auto', overflowX: 'hidden', gridTemplateRows: '100px', - gridGap: theme.spacing(2), + gridGap: 10, justifyContent: 'space-between', - height: 340, - width: props.shouldScroll ? 575 : 560, + height: 320, + width: props.shouldScroll ? 575 : 562, '::-webkit-scrollbar': { backgroundColor: 'transparent', width: 20, @@ -59,6 +51,7 @@ const useStyles = makeStyles<{ shouldScroll: boolean }>()((theme, props) => { }, }, subTitle: { + cursor: 'default', fontSize: 18, lineHeight: '24px', fontWeight: 600, @@ -70,17 +63,6 @@ const useStyles = makeStyles<{ shouldScroll: boolean }>()((theme, props) => { justifyContent: 'center', alignItems: 'center', }, - header: { - display: 'flex', - justifyContent: 'space-between', - alignItems: 'center', - marginBottom: 11.5, - }, - settingIcon: { - height: 24, - width: 24, - cursor: 'pointer', - }, placeholderWrapper: { display: 'flex', justifyContent: 'center', @@ -91,36 +73,58 @@ const useStyles = makeStyles<{ shouldScroll: boolean }>()((theme, props) => { placeholder: { color: getMaskColor(theme).textLight, }, + recommendFeatureAppListWrapper: { + display: 'flex', + overflowX: 'scroll', + margin: '0px 2px 4px 2px', + padding: '8px 2px 0 2px', + '&::-webkit-scrollbar': { + display: 'none', + }, + }, + carousel: { + height: 130, + overflowX: 'scroll', + overscrollBehavior: 'contain', + '& .carousel__slider': { + padding: '8px 2px 0px', + overscrollBehavior: 'contain', + overflowX: 'scroll', + '&::-webkit-scrollbar': { + display: 'none', + }, + }, + }, } }) -export function ApplicationBoard() { + +interface Props { + closeDialog(): void +} + +export function ApplicationBoard(props: Props) { return ( - + + + ) } -function ApplicationBoardContent() { - const theme = useTheme() + +function ApplicationBoardContent(props: Props) { const { t } = useI18N() - const [openSettings, setOpenSettings] = useState(false) const snsAdaptorPlugins = useActivatedPluginsSNSAdaptor('any') const currentWeb3Network = useCurrentWeb3NetworkPluginID() const chainId = useChainId() const account = useAccount() const currentSNSNetwork = getCurrentSNSNetwork(activatedSocialNetworkUI.networkIdentifier) - const SettingIconDarkModeUrl = new URL('./assets/settings_dark_mode.png', import.meta.url).toString() - const SettingIconLightModeUrl = new URL('./assets/settings_light_mode.png', import.meta.url).toString() const applicationList = useMemo( () => snsAdaptorPlugins .reduce((acc, cur) => { if (!cur.ApplicationEntries) return acc const currentWeb3NetworkSupportedChainIds = cur.enableRequirement.web3?.[currentWeb3Network] - const isWeb3Enabled = Boolean( - currentWeb3NetworkSupportedChainIds === undefined || - currentWeb3NetworkSupportedChainIds.supportedChainIds?.includes(chainId), - ) const isWalletConnectedRequired = currentWeb3NetworkSupportedChainIds !== undefined const currentSNSIsSupportedNetwork = cur.enableRequirement.networks.networks[currentSNSNetwork] const isSNSEnabled = currentSNSIsSupportedNetwork === undefined || currentSNSIsSupportedNetwork @@ -129,8 +133,14 @@ function ApplicationBoardContent() { cur.ApplicationEntries.map((x) => { return { entry: x, - enabled: isSNSEnabled && (account ? isWeb3Enabled : !isWalletConnectedRequired), + enabled: isSNSEnabled, pluginId: cur.ID, + isWalletConnectedRequired: !account && isWalletConnectedRequired, + isWalletConnectedEVMRequired: Boolean( + account && + currentWeb3Network !== NetworkPluginID.PLUGIN_EVM && + isWalletConnectedRequired, + ), } }) ?? EMPTY_LIST, ) @@ -142,26 +152,22 @@ function ApplicationBoardContent() { .filter((x) => Boolean(x.entry.RenderEntryComponent)), [snsAdaptorPlugins, currentWeb3Network, chainId, account], ) - const listedAppList = applicationList.filter((x) => !getUnlistedApp(x)) + + const recommendFeatureAppList = applicationList.filter((x) => x.entry.recommendFeature) + + const listedAppList = applicationList.filter((x) => !x.entry.recommendFeature).filter((x) => !getUnlistedApp(x)) const { classes } = useStyles({ shouldScroll: listedAppList.length > 12 }) return ( <> -
- {t('applications')} - setOpenSettings(true)} - /> -
+ {listedAppList.length > 0 ? (
{listedAppList.map((application) => ( - + ))}
) : ( @@ -171,91 +177,139 @@ function ApplicationBoardContent() { )} - {openSettings ? ( - setOpenSettings(false)} /> - ) : null} ) } -interface RenderEntryComponentWrapperProps { - application: Application +function RenderEntryComponent({ application }: { application: Application }) { + const Entry = application.entry.RenderEntryComponent! + const { t } = useI18N() + const { openDialog: openSelectProviderDialog } = useRemoteControlledDialog( + WalletMessages.events.selectProviderDialogUpdated, + ) + const { closeDialog: closeApplicationBoard } = useRemoteControlledDialog( + WalletMessages.events.ApplicationDialogUpdated, + ) + const ApplicationEntryStatus = useContext(ApplicationEntryStatusContext) + + // #region entry disabled + const disabled = useMemo(() => { + if (!application.enabled) return true + + if (application.entry.nextIdRequired) { + return Boolean( + ApplicationEntryStatus.isNextIDVerify === undefined || + (!ApplicationEntryStatus.isSNSConnectToCurrentPersona && ApplicationEntryStatus.isPersonaConnected), + ) + } else { + return false + } + }, [application, ApplicationEntryStatus]) + // #endregion + + // #region entry click effect + const createOrConnectPersona = useCallback(() => { + closeApplicationBoard() + ApplicationEntryStatus.personaConnectAction?.() + }, [ApplicationEntryStatus]) + + const verifyPersona = useCallback(() => { + closeApplicationBoard() + CrossIsolationMessages.events.verifyNextID.sendToAll(undefined) + }, []) + + const clickHandler = (() => { + if (application.isWalletConnectedRequired || application.isWalletConnectedEVMRequired) + return openSelectProviderDialog + if (!application.entry.nextIdRequired) return + if (ApplicationEntryStatus.isPersonaConnected === false || ApplicationEntryStatus.isPersonaCreated === false) + return createOrConnectPersona + if (ApplicationEntryStatus.shouldVerifyNextId) return verifyPersona + return + })() + + // #endregion + + // #region tooltip hint + const tooltipHint = (() => { + if (application.isWalletConnectedRequired) return t('application_tooltip_hint_connect_wallet') + if (application.isWalletConnectedEVMRequired) return t('application_tooltip_hint_switch_to_evm_wallet') + if (!application.entry.nextIdRequired) return + if (ApplicationEntryStatus.isPersonaCreated === false && !disabled) + return t('application_tooltip_hint_create_persona') + if (ApplicationEntryStatus.isPersonaConnected === false && !disabled) + return t('application_tooltip_hint_connect_persona') + if (ApplicationEntryStatus.shouldVerifyNextId && !disabled) return t('application_tooltip_hint_verify') + if (ApplicationEntryStatus.shouldDisplayTooltipHint) + return t('application_tooltip_hint_sns_persona_unmatched', { + currentPersonaPublicKey: formatPersonaPublicKey( + ApplicationEntryStatus.currentPersonaPublicKey ?? '', + 4, + ), + currentSNSConnectedPersonaPublicKey: formatPersonaPublicKey( + ApplicationEntryStatus.currentSNSConnectedPersonaPublicKey ?? '', + 4, + ), + }) + return + })() + // #endregion + + return } -function RenderEntryComponentWrapper({ application }: RenderEntryComponentWrapperProps) { - const RenderEntryComponent = application.entry.RenderEntryComponent! - return application.entry.nextIdRequired ? ( - - ) : ( - - ) +interface ApplicationEntryStatusContextProps { + isPersonaConnected: boolean | undefined + isPersonaCreated: boolean | undefined + isNextIDVerify: boolean | undefined + isSNSConnectToCurrentPersona: boolean | undefined + shouldDisplayTooltipHint: boolean | undefined + shouldVerifyNextId: boolean | undefined + currentPersonaPublicKey: string | undefined + currentSNSConnectedPersonaPublicKey: string | undefined + personaConnectAction: (() => void) | undefined } -function RenderEntryComponentWithNextIDRequired({ application }: RenderEntryComponentWrapperProps) { - const ui = activatedSocialNetworkUI - const { t } = useI18N() - const platform = ui.configuration.nextIDConfig?.platform as NextIDPlatform - const lastState = useSetupGuideStatusState() - const { currentPersona } = PersonaContext.useContainer() - const lastRecognized = useLastRecognizedIdentity() - const username = useMemo(() => { - return lastState.username || lastRecognized.identifier?.userId - }, [lastState, lastRecognized]) - const personas = useMyPersonas() +const ApplicationEntryStatusContext = createContext({ + isPersonaConnected: undefined, + isPersonaCreated: undefined, + isNextIDVerify: undefined, + isSNSConnectToCurrentPersona: undefined, + shouldDisplayTooltipHint: undefined, + shouldVerifyNextId: undefined, + currentPersonaPublicKey: undefined, + currentSNSConnectedPersonaPublicKey: undefined, + personaConnectAction: undefined, +}) - const checkSNSConnectToCurrentPersona = useCallback((persona: PersonaInformation) => { - if (!username) return undefined - return persona.linkedProfiles.some((x) => x.identifier.userId === username) - }, []) +function ApplicationEntryStatusProvider(props: PropsWithChildren<{}>) { + const personaConnectStatus = usePersonaConnectStatus() + const nextIDConnectStatus = useNextIDConnectStatus() - const { value: ApplicationCurrentStatus } = useAsync(async () => { - const currentPersonaIdentifier = await Services.Settings.getCurrentPersonaIdentifier() - const currentPersona = (await Services.Identity.queryOwnedPersonaInformation(true)).find( - (x) => x.identifier === currentPersonaIdentifier, - ) - const currentSNSConnectedPersona = personas.find(checkSNSConnectToCurrentPersona) - return { - isSNSConnectToCurrentPersona: currentPersona ? checkSNSConnectToCurrentPersona(currentPersona) : false, - isNextIDVerify: username - ? await NextIDProof.queryIsBound(currentPersona?.identifier.publicKeyAsHex ?? '', platform, username) - : false, - currentPersonaPublicKey: currentPersona?.identifier.rawPublicKey, - currentSNSConnectedPersonaPublicKey: currentSNSConnectedPersona?.identifier.rawPublicKey, - } - }, [platform, username, ui, personas, currentPersona]) - const { - isNextIDVerify, - isSNSConnectToCurrentPersona, - currentPersonaPublicKey, - currentSNSConnectedPersonaPublicKey, - } = ApplicationCurrentStatus ?? {} - const { closeDialog } = useRemoteControlledDialog(WalletMessages.events.walletStatusDialogUpdated) + const { value: ApplicationCurrentStatus, retry } = usePersonaAgainstSNSConnectStatus() - const onNextIdVerify = useCallback(() => { - closeDialog() - CrossIsolationMessages.events.verifyNextID.sendToAll(undefined) + useEffect(() => { + return MaskMessages.events.currentPersonaIdentifier.on(retry) }, []) - if (!application.entry.RenderEntryComponent) return null + const { isSNSConnectToCurrentPersona, currentPersonaPublicKey, currentSNSConnectedPersonaPublicKey } = + ApplicationCurrentStatus ?? {} - const RenderEntryComponent = application.entry.RenderEntryComponent - const shouldVerifyNextId = Boolean(!isNextIDVerify && ApplicationCurrentStatus) - const shouldDisplayTooltipHint = ApplicationCurrentStatus?.isSNSConnectToCurrentPersona === false return ( - + + {props.children} + ) } diff --git a/packages/mask/src/components/shared/ApplicationBoardDialog.tsx b/packages/mask/src/components/shared/ApplicationBoardDialog.tsx new file mode 100644 index 000000000000..f08ee4338f41 --- /dev/null +++ b/packages/mask/src/components/shared/ApplicationBoardDialog.tsx @@ -0,0 +1,69 @@ +import { DialogContent, useTheme } from '@mui/material' +import { useState, useCallback } from 'react' +import { ApplicationSettingDialog } from './ApplicationSettingDialog' +import { makeStyles } from '@masknet/theme' +import { InjectedDialog } from '@masknet/shared' +import { CrossIsolationMessages } from '@masknet/shared-base' +import { useRemoteControlledDialog } from '@masknet/shared-base-ui' +import { ApplicationBoard } from './ApplicationBoard' +import { WalletMessages } from '../../plugins/Wallet/messages' +import { useI18N } from '../../utils' + +const useStyles = makeStyles()((theme) => { + return { + content: { + padding: theme.spacing(1.5, 2, 2), + height: 470, + overflow: 'hidden', + }, + settingIcon: { + height: 24, + width: 24, + cursor: 'pointer', + }, + } +}) + +export function ApplicationBoardDialog() { + const theme = useTheme() + const { classes } = useStyles() + const { t } = useI18N() + const [openSettings, setOpenSettings] = useState(false) + + const { open, closeDialog: _closeDialog } = useRemoteControlledDialog( + WalletMessages.events.ApplicationDialogUpdated, + ) + + const closeDialog = useCallback(() => { + _closeDialog() + CrossIsolationMessages.events.requestComposition.sendToLocal({ + reason: 'timeline', + open: false, + }) + }, []) + + const SettingIconDarkModeUrl = new URL('./assets/settings_dark_mode.png', import.meta.url).toString() + const SettingIconLightModeUrl = new URL('./assets/settings_light_mode.png', import.meta.url).toString() + + return ( + setOpenSettings(true)} + /> + }> + + + {openSettings ? ( + setOpenSettings(false)} /> + ) : null} + + + ) +} diff --git a/packages/mask/src/components/shared/ApplicationRecommendArea.tsx b/packages/mask/src/components/shared/ApplicationRecommendArea.tsx new file mode 100644 index 000000000000..3d9cfc982b02 --- /dev/null +++ b/packages/mask/src/components/shared/ApplicationRecommendArea.tsx @@ -0,0 +1,74 @@ +import { Box } from '@mui/material' +import { useState } from 'react' +import { makeStyles } from '@masknet/theme' +import type { Application } from './ApplicationSettingPluginList' +import { CarouselProvider, Slider, Slide } from 'pure-react-carousel' + +const useStyles = makeStyles()(() => { + return { + recommendFeatureAppListWrapper: { + display: 'flex', + overflowX: 'scroll', + margin: '0px 2px 4px 2px', + padding: '8px 2px 0 2px', + '&::-webkit-scrollbar': { + display: 'none', + }, + }, + carousel: { + height: 130, + overflowX: 'scroll', + overscrollBehavior: 'contain', + '& .carousel__slider': { + padding: '8px 2px 0px', + overscrollBehavior: 'contain', + overflowX: 'scroll', + '&::-webkit-scrollbar': { + display: 'none', + }, + }, + }, + } +}) + +interface Props { + recommendFeatureAppList: Application[] + RenderEntryComponent: (props: { application: Application }) => JSX.Element +} + +export function ApplicationRecommendArea(props: Props) { + const { recommendFeatureAppList, RenderEntryComponent } = props + const { classes } = useStyles() + const [isPlaying, setIsPlaying] = useState(true) + + return ( + <> + + {recommendFeatureAppList.length > 2 ? ( + + setIsPlaying((e.target as HTMLDivElement).scrollLeft === 0)}> + {recommendFeatureAppList.map((application, i) => ( + + + + ))} + + + ) : ( + + {recommendFeatureAppList.map((application) => ( + + ))} + + )} + + ) +} diff --git a/packages/mask/src/components/shared/ApplicationSettingPluginList.tsx b/packages/mask/src/components/shared/ApplicationSettingPluginList.tsx index 96570a3fdfc3..05c06cf29b63 100644 --- a/packages/mask/src/components/shared/ApplicationSettingPluginList.tsx +++ b/packages/mask/src/components/shared/ApplicationSettingPluginList.tsx @@ -10,6 +10,8 @@ export interface Application { entry: Plugin.SNSAdaptor.ApplicationEntry pluginId: string enabled?: boolean + isWalletConnectedRequired?: boolean + isWalletConnectedEVMRequired?: boolean } // #region kv storage @@ -85,7 +87,9 @@ export function ApplicationSettingPluginList() { .reduce((acc, cur) => { if (!cur.ApplicationEntries) return acc return acc.concat( - cur.ApplicationEntries.filter((x) => x.appBoardSortingDefaultPriority).map((x) => { + cur.ApplicationEntries.filter( + (x) => x.appBoardSortingDefaultPriority && !x.recommendFeature, + ).map((x) => { return { entry: x, pluginId: cur.ID, diff --git a/packages/mask/src/components/shared/WalletStatusBox/TransactionList.tsx b/packages/mask/src/components/shared/WalletStatusBox/TransactionList.tsx index cd328e98de8d..3e729c601caa 100644 --- a/packages/mask/src/components/shared/WalletStatusBox/TransactionList.tsx +++ b/packages/mask/src/components/shared/WalletStatusBox/TransactionList.tsx @@ -11,7 +11,7 @@ import { useChainId, useWeb3, } from '@masknet/web3-shared-evm' -import { Button, Grid, GridProps, Link, List, ListItem, ListProps, Stack, Typography } from '@mui/material' +import { Grid, GridProps, Link, List, ListItem, ListProps, Stack, Typography } from '@mui/material' import classnames from 'classnames' import format from 'date-fns/format' import { noop } from 'lodash-unified' @@ -31,6 +31,7 @@ const useStyles = makeStyles()((theme) => ({ listItem: { height: 54, backgroundColor: theme.palette.background.paper, + padding: theme.spacing(1, 1), '&:nth-child(even)': { backgroundColor: theme.palette.background.default, }, @@ -53,21 +54,23 @@ const useStyles = makeStyles()((theme) => ({ fontSize: 14, display: 'flex', alignItems: 'center', - padding: theme.spacing(0, 0.5), color: theme.palette.text.primary, boxSizing: 'border-box', }, link: { + display: 'flex', fill: 'none', }, linkIcon: { fill: 'none', - width: 12, - height: 12, + width: 16, + height: 16, marginLeft: theme.spacing(0.5), }, clear: { fontSize: 14, + color: theme.palette.primary.main, + cursor: 'pointer', }, })) @@ -144,7 +147,7 @@ const Transaction: FC = ({ chainId, transaction: tx, onClear = className={classes.methodName} title={functionName || ''} variant="body1" - component="strong"> + fontWeight={500}> {functionName} @@ -167,15 +170,15 @@ const Transaction: FC = ({ chainId, transaction: tx, onClear = - + {statusTextMap[txStatus]} - + {txStatus === TransactionStatusType.NOT_DEPEND ? ( - + ) : null} diff --git a/packages/mask/src/components/shared/WalletStatusBox/index.tsx b/packages/mask/src/components/shared/WalletStatusBox/index.tsx index 1cdbf4f68bcc..a3c6c864fb4e 100644 --- a/packages/mask/src/components/shared/WalletStatusBox/index.tsx +++ b/packages/mask/src/components/shared/WalletStatusBox/index.tsx @@ -90,18 +90,11 @@ const useStyles = makeStyles<{ isDashboard: boolean }>()((theme, { isDashboard } statusBox: { position: 'relative', }, - transactionList: { - zIndex: 999, - position: 'absolute', - left: 0, - right: 0, - top: 88, - padding: 0, - }, })) interface WalletStatusBox { isDashboard?: boolean disableChange?: boolean + showPendingTransaction?: boolean } export function WalletStatusBox(props: WalletStatusBox) { const { t } = useI18N() @@ -142,73 +135,80 @@ export function WalletStatusBox(props: WalletStatusBox) { const { summary: pendingSummary, transactionList } = usePendingTransactions() return account ? ( -
- -
-
- {providerType !== ProviderType.MaskWallet ? ( - - {domain && Utils?.formatDomainName - ? Utils.formatDomainName(domain) - : providerDescriptor?.name} - - ) : ( - <> + <> +
+ +
+
+ {providerType !== ProviderType.MaskWallet ? ( - {wallet?.name ?? providerDescriptor?.name} + {domain && Utils?.formatDomainName + ? Utils.formatDomainName(domain) + : providerDescriptor?.name} - {domain && Utils?.formatDomainName ? ( - {Utils.formatDomainName(domain)} - ) : null} - - )} + ) : ( + <> + + {wallet?.name ?? providerDescriptor?.name} + + {domain && Utils?.formatDomainName ? ( + {Utils.formatDomainName(domain)} + ) : null} + + )} +
+
+ + + + + + + + + +
-
- - - - - - - - - + + {!props.disableChange && ( +
+ +
+ )} +
+ {props.showPendingTransaction ? ( +
{pendingSummary} + {transactionList}
-
-
{transactionList}
- {!props.disableChange && ( -
- -
- )} -
+ ) : null} + ) : (
+ ) : null} - - ) +
+ ) : null const transactionList = ( -
- {showRecentTransactions && transactions.length ? ( - { - setMeltedTxHashes((list) => [...list, tx.hash]) - removeRecentTx(tx.hash) - }} - /> - ) : null} -
+ { + setMeltedTxHashes((list) => [...list, tx.hash]) + removeRecentTx(tx.hash) + }} + /> ) return { summary, transactionList } diff --git a/packages/mask/src/components/shared/assets/react-carousel.es.css b/packages/mask/src/components/shared/assets/react-carousel.es.css new file mode 100644 index 000000000000..6791b4cc66cd --- /dev/null +++ b/packages/mask/src/components/shared/assets/react-carousel.es.css @@ -0,0 +1,152 @@ +.buttonBack___1mlaL, +.buttonFirst___2rhFr, +.buttonLast___2yuh0, +.buttonNext___2mOCa, +.buttonNext___3Lm3s, +.dot___3c3SI { + cursor: pointer; +} +.image___xtQGH { + display: block; + width: 100%; + height: 100%; +} +.spinner___27VUp { + position: absolute; + top: calc(50% - 15px); + left: calc(50% - 15px); + width: 30px; + height: 30px; + animation-name: spin___S3UuE; + animation-duration: 1s; + animation-timing-function: linear; + animation-iteration-count: infinite; + border: 4px solid #a9a9a9; + border-top-color: #000; + border-radius: 30px; +} +@keyframes spin___S3UuE { + 0% { + transform: rotate(0deg); + } + to { + transform: rotate(1turn); + } +} +.container___2O72F { + position: relative; + overflow: hidden; + height: 100%; + width: 100%; +} +.overlay___IV4qY { + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + opacity: 0; + cursor: zoom-in; + transition: opacity 0.3s, transform 0.3s; +} +.hover___MYy31, +.loading___1pvNI, +.zoom___3kqYk { + opacity: 1; +} +.imageLoadingSpinnerContainer___3UIPD { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + background-color: #f4f4f4; +} +.slide___3-Nqo { + position: relative; + display: block; + box-sizing: border-box; + height: 0; + margin: 0; + list-style-type: none; +} +.slide___3-Nqo:focus { + outline: none !important; +} +.slideHorizontal___1NzNV { + float: left; +} +[dir='rtl'] .slideHorizontal___1NzNV { + direction: rtl; + transform: scaleX(-1); +} +.slideInner___2mfX9 { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +} +.focusRing___1airF { + position: absolute; + top: 5px; + right: 5px; + bottom: 5px; + left: 5px; + pointer-events: none; + outline-width: 5px; + outline-style: solid; + outline-color: Highlight; +} +@media (-webkit-min-device-pixel-ratio: 0) { + .focusRing___1airF { + outline-style: auto; + outline-color: -webkit-focus-ring-color; + } +} +.horizontalSlider___281Ls { + position: relative; + overflow: hidden; + height: 130px; +} +[dir='rtl'] .horizontalSlider___281Ls { + direction: ltr; + transform: scaleX(-1); +} +.horizontalSliderTray___1L-0W { + overflow: hidden; + width: 100%; +} +.verticalSlider___34ZFD { + position: relative; + overflow: hidden; +} +.verticalSliderTray___267D8 { + overflow: hidden; +} +.verticalTray___12Key { + float: left; +} +.verticalSlideTrayWrap___2nO7o { + overflow: hidden; +} +.sliderTray___-vHFQ { + display: block; + list-style: none; + padding: 0; + margin: 0; +} +.sliderAnimation___300FY { + transition: transform 0.5s; + transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1); + will-change: transform; +} +.masterSpinnerContainer___1Z6hB { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + background-color: #f4f4f4; +} +/*# sourceMappingURL=react-carousel.es.css.map */ diff --git a/packages/mask/src/plugins/FindTruman/SNSAdaptor/index.tsx b/packages/mask/src/plugins/FindTruman/SNSAdaptor/index.tsx index 6428faeb38ae..d623af5cede9 100644 --- a/packages/mask/src/plugins/FindTruman/SNSAdaptor/index.tsx +++ b/packages/mask/src/plugins/FindTruman/SNSAdaptor/index.tsx @@ -94,15 +94,15 @@ const sns: Plugin.SNSAdaptor.Definition = { const name = return { ApplicationEntryID: base.ID, - RenderEntryComponent({ disabled }) { + RenderEntryComponent(EntryComponentProps) { const [open, setOpen] = useState(false) return ( <> setOpen(true)} + onClick={EntryComponentProps.onClick ?? (() => setOpen(true))} /> setOpen(false)} /> diff --git a/packages/mask/src/plugins/ITO/SNSAdaptor/CompositionDialog.tsx b/packages/mask/src/plugins/ITO/SNSAdaptor/CompositionDialog.tsx index 828e95446a95..518da764ab4a 100644 --- a/packages/mask/src/plugins/ITO/SNSAdaptor/CompositionDialog.tsx +++ b/packages/mask/src/plugins/ITO/SNSAdaptor/CompositionDialog.tsx @@ -79,8 +79,8 @@ export function CompositionDialog(props: CompositionDialogProps) { const [fillSettings, fillState, fillCallback, resetFillCallback] = useFillCallback(poolSettings) // #endregion - const { closeDialog: closeWalletStatusDialog } = useRemoteControlledDialog( - WalletMessages.events.walletStatusDialogUpdated, + const { closeDialog: closeApplicationBoardDialog } = useRemoteControlledDialog( + WalletMessages.events.ApplicationDialogUpdated, ) const { setDialog: setTransactionDialog } = useRemoteControlledDialog( @@ -179,7 +179,7 @@ export function CompositionDialog(props: CompositionDialogProps) { if (payload) attachMetadata(ITO_MetaKey_2, payloadDetail) else dropMetadata(ITO_MetaKey_2) - closeWalletStatusDialog() + closeApplicationBoardDialog() props.onConfirm(payload) // storing the created pool in DB, it helps retrieve the pool password later PluginITO_RPC.discoverPool('', payload) diff --git a/packages/mask/src/plugins/ITO/SNSAdaptor/index.tsx b/packages/mask/src/plugins/ITO/SNSAdaptor/index.tsx index 0deda21d38fa..ced13737427a 100644 --- a/packages/mask/src/plugins/ITO/SNSAdaptor/index.tsx +++ b/packages/mask/src/plugins/ITO/SNSAdaptor/index.tsx @@ -66,20 +66,22 @@ const sns: Plugin.SNSAdaptor.Definition = { const name = return { ApplicationEntryID: base.ID, - RenderEntryComponent({ disabled }) { + RenderEntryComponent(EntryComponentProps) { return ( - CrossIsolationMessages.events.requestComposition.sendToLocal({ - reason: 'timeline', - open: true, - options: { - startupPlugin: base.ID, - }, - }) + onClick={ + EntryComponentProps.onClick ?? + (() => + CrossIsolationMessages.events.requestComposition.sendToLocal({ + reason: 'timeline', + open: true, + options: { + startupPlugin: base.ID, + }, + })) } /> ) @@ -99,15 +101,15 @@ const sns: Plugin.SNSAdaptor.Definition = { const name = return { ApplicationEntryID: `${base.ID}_claim`, - RenderEntryComponent({ disabled }) { + RenderEntryComponent(EntryComponentProps) { const [open, setOpen] = useState(false) return ( <> setOpen(true)} + {...EntryComponentProps} + onClick={EntryComponentProps.onClick ?? (() => setOpen(true))} /> setOpen(false)} /> diff --git a/packages/mask/src/plugins/Pets/SNSAdaptor/PetSetDialog.tsx b/packages/mask/src/plugins/Pets/SNSAdaptor/PetSetDialog.tsx index e90abeef3149..41b3e294de67 100644 --- a/packages/mask/src/plugins/Pets/SNSAdaptor/PetSetDialog.tsx +++ b/packages/mask/src/plugins/Pets/SNSAdaptor/PetSetDialog.tsx @@ -1,6 +1,6 @@ import { useState, useMemo, ReactNode } from 'react' import { useTimeout } from 'react-use' -import { isSameAddress } from '@masknet/web3-shared-evm' +import { isSameAddress, ChainId } from '@masknet/web3-shared-evm' import { makeStyles, useStylesExtends, useCustomSnackbar, ShadowRootPopper } from '@masknet/theme' import { useValueRef } from '@masknet/shared-base-ui' import { @@ -24,6 +24,7 @@ import { useUser, useNFTs, useNFTsExtra } from '../hooks' import { useI18N } from '../../../utils' import { ImageLoader } from './ImageLoader' import { petShowSettings } from '../settings' +import { EthereumChainBoundary } from '../../../web3/UI/EthereumChainBoundary' const useStyles = makeStyles()((theme) => ({ desBox: { @@ -301,17 +302,25 @@ export function PetSetDialog({ configNFTs, onClose }: PetSetDialogProps) { label={t('plugin_pets_dialog_check_title')} sx={{ marginTop: '4px' }} /> - - {t('plugin_pets_dialog_btn')} - + + + {t('plugin_pets_dialog_btn')} + + {t('plugin_pets_dialog_created')} {t('plugin_pets_dialog_powered')} diff --git a/packages/mask/src/plugins/Pets/SNSAdaptor/index.tsx b/packages/mask/src/plugins/Pets/SNSAdaptor/index.tsx index b927d91fa51c..6ff2c8752464 100644 --- a/packages/mask/src/plugins/Pets/SNSAdaptor/index.tsx +++ b/packages/mask/src/plugins/Pets/SNSAdaptor/index.tsx @@ -24,10 +24,17 @@ const sns: Plugin.SNSAdaptor.Definition = { const name = return { ApplicationEntryID: base.ID, - RenderEntryComponent({ disabled }) { + RenderEntryComponent(EntryComponentProps) { const { openDialog } = useRemoteControlledDialog(PluginPetMessages.events.essayDialogUpdated) - return + return ( + + ) }, appBoardSortingDefaultPriority: 11, marketListSortingPriority: 12, diff --git a/packages/mask/src/plugins/Pets/base.tsx b/packages/mask/src/plugins/Pets/base.tsx index c4809a2d8cd5..732ca96c2691 100644 --- a/packages/mask/src/plugins/Pets/base.tsx +++ b/packages/mask/src/plugins/Pets/base.tsx @@ -1,4 +1,6 @@ import { CurrentSNSNetwork, Plugin } from '@masknet/plugin-infra' +import { NetworkPluginID } from '@masknet/plugin-infra/web3' +import { ChainId } from '@masknet/web3-shared-evm' import { PetsPluginID } from './constants' export const base: Plugin.Shared.Definition = { @@ -11,7 +13,21 @@ export const base: Plugin.Shared.Definition = { enableRequirement: { architecture: { app: false, web: true }, networks: { type: 'opt-in', networks: { [CurrentSNSNetwork.Twitter]: true } }, - + web3: { + [NetworkPluginID.PLUGIN_EVM]: { + supportedChainIds: [ + ChainId.Mainnet, + ChainId.BSC, + ChainId.Matic, + ChainId.Arbitrum, + ChainId.xDai, + ChainId.Fantom, + ChainId.Avalanche, + ChainId.Aurora, + ChainId.Conflux, + ], + }, + }, target: 'stable', }, } diff --git a/packages/mask/src/plugins/RedPacket/SNSAdaptor/NftRedPacketHistoryItem.tsx b/packages/mask/src/plugins/RedPacket/SNSAdaptor/NftRedPacketHistoryItem.tsx index 601a68d5dcf4..286a4d520610 100644 --- a/packages/mask/src/plugins/RedPacket/SNSAdaptor/NftRedPacketHistoryItem.tsx +++ b/packages/mask/src/plugins/RedPacket/SNSAdaptor/NftRedPacketHistoryItem.tsx @@ -156,14 +156,14 @@ export const NftRedPacketHistoryItem: FC = memo( computed: { canSend, isPasswordValid }, } = useNftAvailabilityComputed(account, history.payload) const { value: contractDetailed } = useERC721ContractDetailed(history.token_contract.address) - const { closeDialog: closeWalletStatusDialog } = useRemoteControlledDialog( - WalletMessages.events.walletStatusDialogUpdated, + const { closeDialog: closeApplicationBoardDialog } = useRemoteControlledDialog( + WalletMessages.events.ApplicationDialogUpdated, ) const handleSend = useCallback(() => { if (!(canSend && contractDetailed && isPasswordValid)) return onSend(history, contractDetailed) - closeWalletStatusDialog() - }, [onSend, closeWalletStatusDialog, canSend, history, contractDetailed, isPasswordValid]) + closeApplicationBoardDialog() + }, [onSend, closeApplicationBoardDialog, canSend, history, contractDetailed, isPasswordValid]) const { value: redpacketStatus } = useAvailabilityNftRedPacket(history.rpid, account) const bitStatusList = redpacketStatus diff --git a/packages/mask/src/plugins/RedPacket/SNSAdaptor/RedPacketDialog.tsx b/packages/mask/src/plugins/RedPacket/SNSAdaptor/RedPacketDialog.tsx index 8457677e9851..c4845962538e 100644 --- a/packages/mask/src/plugins/RedPacket/SNSAdaptor/RedPacketDialog.tsx +++ b/packages/mask/src/plugins/RedPacket/SNSAdaptor/RedPacketDialog.tsx @@ -94,8 +94,8 @@ export default function RedPacketDialog(props: RedPacketDialogProps) { const currentIdentity = useCurrentIdentity() const senderName = currentIdentity?.identifier.userId ?? currentIdentity?.linkedPersona?.nickname - const { closeDialog: closeWalletStatusDialog } = useRemoteControlledDialog( - WalletMessages.events.walletStatusDialogUpdated, + const { closeDialog: closeApplicationBoardDialog } = useRemoteControlledDialog( + WalletMessages.events.ApplicationDialogUpdated, ) const onCreateOrSelect = useCallback( async (payload: RedPacketJSONPayload) => { @@ -118,7 +118,7 @@ export default function RedPacketDialog(props: RedPacketDialogProps) { attachMetadata(RedPacketMetaKey, payload) } else dropMetadata(RedPacketMetaKey) onClose() - closeWalletStatusDialog() + closeApplicationBoardDialog() }, [onClose, chainId, senderName], ) diff --git a/packages/mask/src/plugins/RedPacket/SNSAdaptor/RedpacketNftConfirmDialog.tsx b/packages/mask/src/plugins/RedPacket/SNSAdaptor/RedpacketNftConfirmDialog.tsx index 164b3b9a87de..a2a13866c536 100644 --- a/packages/mask/src/plugins/RedPacket/SNSAdaptor/RedpacketNftConfirmDialog.tsx +++ b/packages/mask/src/plugins/RedPacket/SNSAdaptor/RedpacketNftConfirmDialog.tsx @@ -178,8 +178,8 @@ export function RedpacketNftConfirmDialog(props: RedpacketNftConfirmDialogProps) contract.address, tokenIdList, ) - const { closeDialog: closeWalletStatusDialog } = useRemoteControlledDialog( - WalletMessages.events.walletStatusDialogUpdated, + const { closeDialog: closeApplicationBoardDialog } = useRemoteControlledDialog( + WalletMessages.events.ApplicationDialogUpdated, ) const isSending = [TransactionStateType.WAIT_FOR_CONFIRMING, TransactionStateType.HASH].includes(createState.type) @@ -200,7 +200,7 @@ export function RedpacketNftConfirmDialog(props: RedpacketNftConfirmDialogProps) privateKey, chainId: contract.chainId, }) - closeWalletStatusDialog() + closeApplicationBoardDialog() }, [duration, message, senderName, contract, privateKey, txid], ) diff --git a/packages/mask/src/plugins/RedPacket/SNSAdaptor/index.tsx b/packages/mask/src/plugins/RedPacket/SNSAdaptor/index.tsx index c277bfc6cf09..eb4848d13401 100644 --- a/packages/mask/src/plugins/RedPacket/SNSAdaptor/index.tsx +++ b/packages/mask/src/plugins/RedPacket/SNSAdaptor/index.tsx @@ -95,22 +95,29 @@ const sns: Plugin.SNSAdaptor.Definition = { (() => { const icon = const name = + const recommendFeature = { + description: , + backgroundGradient: 'linear-gradient(180.54deg, #FF9A9E 0.71%, #FECFEF 98.79%, #FECFEF 99.78%)', + } return { ApplicationEntryID: base.ID, - RenderEntryComponent({ disabled }) { + RenderEntryComponent(EntryComponentProps) { return ( - CrossIsolationMessages.events.requestComposition.sendToLocal({ - reason: 'timeline', - open: true, - options: { - startupPlugin: base.ID, - }, - }) + onClick={ + EntryComponentProps.onClick ?? + (() => + CrossIsolationMessages.events.requestComposition.sendToLocal({ + reason: 'timeline', + open: true, + options: { + startupPlugin: base.ID, + }, + })) } /> ) @@ -123,6 +130,7 @@ const sns: Plugin.SNSAdaptor.Definition = { tutorialLink: 'https://realmasknetwork.notion.site/Gift-token-NFTs-to-your-friends-Support-ETH-BSC-and-Polygon-0a71fd421aae4563bd07caa3e2129e5b', category: 'dapp', + recommendFeature, } })(), ], diff --git a/packages/mask/src/plugins/Savings/SNSAdaptor/index.tsx b/packages/mask/src/plugins/Savings/SNSAdaptor/index.tsx index 76d3fec27d70..2683744563f4 100644 --- a/packages/mask/src/plugins/Savings/SNSAdaptor/index.tsx +++ b/packages/mask/src/plugins/Savings/SNSAdaptor/index.tsx @@ -15,15 +15,15 @@ const sns: Plugin.SNSAdaptor.Definition = { const name = return { ApplicationEntryID: base.ID, - RenderEntryComponent({ disabled }) { + RenderEntryComponent(EntryComponentProps) { const [open, setOpen] = useState(false) return ( <> setOpen(true)} + onClick={EntryComponentProps.onClick ?? (() => setOpen(true))} /> setOpen(false)} /> diff --git a/packages/mask/src/plugins/Trader/SNSAdaptor/index.tsx b/packages/mask/src/plugins/Trader/SNSAdaptor/index.tsx index 9f9b676b6bc7..e08bf1693929 100644 --- a/packages/mask/src/plugins/Trader/SNSAdaptor/index.tsx +++ b/packages/mask/src/plugins/Trader/SNSAdaptor/index.tsx @@ -29,10 +29,17 @@ const sns: Plugin.SNSAdaptor.Definition = { const name = return { ApplicationEntryID: base.ID, - RenderEntryComponent({ disabled }) { + RenderEntryComponent(EntryComponentProps) { const { openDialog } = useRemoteControlledDialog(PluginTraderMessages.swapDialogUpdated) - return + return ( + + ) }, appBoardSortingDefaultPriority: 9, marketListSortingPriority: 5, diff --git a/packages/mask/src/plugins/Transak/SNSAdaptor/index.tsx b/packages/mask/src/plugins/Transak/SNSAdaptor/index.tsx index 0f8af57ac6b9..17c21b451749 100644 --- a/packages/mask/src/plugins/Transak/SNSAdaptor/index.tsx +++ b/packages/mask/src/plugins/Transak/SNSAdaptor/index.tsx @@ -19,10 +19,17 @@ const sns: Plugin.SNSAdaptor.Definition = { const name = return { ApplicationEntryID: base.ID, - RenderEntryComponent({ disabled }) { + RenderEntryComponent(EntryComponentProps) { const { openDialog } = useRemoteControlledDialog(PluginTransakMessages.buyTokenDialogUpdated) - return + return ( + + ) }, appBoardSortingDefaultPriority: 10, marketListSortingPriority: 6, diff --git a/packages/mask/src/plugins/Wallet/SNSAdaptor/ConnectWalletDialog/ConnectionProgress.tsx b/packages/mask/src/plugins/Wallet/SNSAdaptor/ConnectWalletDialog/ConnectionProgress.tsx index 3e8f484df2f4..48e377ee54f3 100644 --- a/packages/mask/src/plugins/Wallet/SNSAdaptor/ConnectWalletDialog/ConnectionProgress.tsx +++ b/packages/mask/src/plugins/Wallet/SNSAdaptor/ConnectWalletDialog/ConnectionProgress.tsx @@ -2,6 +2,7 @@ import type { AsyncStateRetry } from 'react-use/lib/useAsyncRetry' import { Box, Card, CircularProgress, Typography, Paper, Link } from '@mui/material' import { useStylesExtends, makeStyles, MaskColorVar } from '@masknet/theme' import { ImageIcon } from '@masknet/shared' +import { WarningTriangleIcon } from '@masknet/icons' import { NetworkPluginID, useProviderDescriptor } from '@masknet/plugin-infra/web3' import { ProviderType, @@ -11,7 +12,6 @@ import { } from '@masknet/web3-shared-evm' import ActionButton from '../../../../extension/options-page/DashboardComponents/ActionButton' import { useI18N } from '../../../../utils' -import { FlashIcon } from '../../../../resources/FlashIcon' import { Trans } from 'react-i18next' const useStyles = makeStyles()((theme) => ({ @@ -25,17 +25,17 @@ const useStyles = makeStyles()((theme) => ({ flexWrap: 'nowrap', alignItems: 'center', marginTop: 10, - backgroundColor: MaskColorVar.errorBackground, + backgroundColor: MaskColorVar.warningBackground, padding: theme.spacing(2, 0, 2, 1.5), borderRadius: 8, }, tipContentText: { - color: MaskColorVar.redMain, + color: MaskColorVar.warning, fontSize: 12, marginLeft: 10, }, tipLink: { - color: MaskColorVar.redMain, + color: MaskColorVar.warning, textDecoration: 'underline', }, error: { @@ -97,7 +97,7 @@ export function ConnectionProgress(props: ConnectionProgressProps) { - + ({ content: { @@ -66,9 +65,7 @@ export function WalletStatusDialog(props: WalletStatusDialogProps) { return ( - {t('wallets')} - - {!props.isDashboard && } + {!chainIdValid ? ( diff --git a/packages/mask/src/plugins/Wallet/SNSAdaptor/index.tsx b/packages/mask/src/plugins/Wallet/SNSAdaptor/index.tsx index 25751a58a88b..61aac56e2886 100644 --- a/packages/mask/src/plugins/Wallet/SNSAdaptor/index.tsx +++ b/packages/mask/src/plugins/Wallet/SNSAdaptor/index.tsx @@ -12,6 +12,7 @@ import { WalletRiskWarningDialog } from './RiskWarningDialog' import { GasSettingDialog } from './GasSettingDialog' import { TransactionSnackbar } from './TransactionSnackbar' import { RestoreLegacyWalletDialog } from './RestoreLegacyWalletDialog' +import { ApplicationBoardDialog } from '../../../components/shared/ApplicationBoardDialog' const sns: Plugin.SNSAdaptor.Definition = { ...base, @@ -24,6 +25,7 @@ const sns: Plugin.SNSAdaptor.Definition = { + diff --git a/packages/mask/src/social-network-adaptor/facebook.com/injection/Toolbar.tsx b/packages/mask/src/social-network-adaptor/facebook.com/injection/Toolbar.tsx index 02d4ee6675d8..0271d175348d 100644 --- a/packages/mask/src/social-network-adaptor/facebook.com/injection/Toolbar.tsx +++ b/packages/mask/src/social-network-adaptor/facebook.com/injection/Toolbar.tsx @@ -3,8 +3,10 @@ import { createReactRootShadowed } from '../../../utils/shadow-root/renderInShad import { startWatch } from '../../../utils/watcher' import { toolBoxInSideBarSelector } from '../utils/selector' import { ToolboxAtFacebook } from './ToolbarUI' -export function injectToolboxHintAtFacebook(signal: AbortSignal) { +export function injectToolboxHintAtFacebook(signal: AbortSignal, category: 'wallet' | 'application') { const watcher = new MutationObserverWatcher(toolBoxInSideBarSelector()) startWatch(watcher, signal) - createReactRootShadowed(watcher.firstDOMProxy.afterShadow, { signal }).render() + createReactRootShadowed(watcher.firstDOMProxy.afterShadow, { signal }).render( + , + ) } diff --git a/packages/mask/src/social-network-adaptor/facebook.com/injection/ToolbarUI.tsx b/packages/mask/src/social-network-adaptor/facebook.com/injection/ToolbarUI.tsx index 0c37fe697914..da7d3003887c 100644 --- a/packages/mask/src/social-network-adaptor/facebook.com/injection/ToolbarUI.tsx +++ b/packages/mask/src/social-network-adaptor/facebook.com/injection/ToolbarUI.tsx @@ -23,7 +23,7 @@ const Icon = styled(ListItemIcon)` } ` -export function ToolboxAtFacebook() { +export function ToolboxAtFacebook(props: { category: 'wallet' | 'application' }) { const isSmall = useMediaQuery(`(max-height: ${fbBreakPoint}px)`) return ( ) } diff --git a/packages/mask/src/social-network-adaptor/minds.com/injection/ToolboxHint.tsx b/packages/mask/src/social-network-adaptor/minds.com/injection/ToolboxHint.tsx index 1b9eda499090..edda621ee3e8 100644 --- a/packages/mask/src/social-network-adaptor/minds.com/injection/ToolboxHint.tsx +++ b/packages/mask/src/social-network-adaptor/minds.com/injection/ToolboxHint.tsx @@ -4,8 +4,10 @@ import { startWatch } from '../../../utils/watcher' import { toolBoxInSideBarSelector } from '../utils/selector' import { ToolboxHintAtMinds } from './ToolboxHint_UI' -export function injectToolboxHintAtMinds(signal: AbortSignal) { +export function injectToolboxHintAtMinds(signal: AbortSignal, category: 'wallet' | 'application') { const watcher = new MutationObserverWatcher(toolBoxInSideBarSelector()) startWatch(watcher, signal) - createReactRootShadowed(watcher.firstDOMProxy.afterShadow, { signal }).render() + createReactRootShadowed(watcher.firstDOMProxy.afterShadow, { signal }).render( + , + ) } diff --git a/packages/mask/src/social-network-adaptor/minds.com/injection/ToolboxHint_UI.tsx b/packages/mask/src/social-network-adaptor/minds.com/injection/ToolboxHint_UI.tsx index b40102b29cbb..de15d87e68eb 100644 --- a/packages/mask/src/social-network-adaptor/minds.com/injection/ToolboxHint_UI.tsx +++ b/packages/mask/src/social-network-adaptor/minds.com/injection/ToolboxHint_UI.tsx @@ -40,7 +40,7 @@ const Icon = styled(ListItemIcon)` } ` -export function ToolboxHintAtMinds() { +export function ToolboxHintAtMinds(props: { category: 'wallet' | 'application' }) { const mini = useMediaQuery(`(max-width: ${mindsBreakPoint}px)`) return ( @@ -50,6 +50,7 @@ export function ToolboxHintAtMinds() { ListItemButton={Item} Typography={Text} ListItemIcon={Icon} + category={props.category} /> ) } diff --git a/packages/mask/src/social-network-adaptor/twitter.com/injection/ToolboxHint.tsx b/packages/mask/src/social-network-adaptor/twitter.com/injection/ToolboxHint.tsx index 6043bfa62af7..ce817fb80aa4 100644 --- a/packages/mask/src/social-network-adaptor/twitter.com/injection/ToolboxHint.tsx +++ b/packages/mask/src/social-network-adaptor/twitter.com/injection/ToolboxHint.tsx @@ -3,11 +3,12 @@ import { createReactRootShadowed } from '../../../utils/shadow-root/renderInShad import { sideBarProfileSelector, toolBoxInSideBarSelector } from '../utils/selector' import { startWatch } from '../../../utils/watcher' import { ProfileLinkAtTwitter, ToolboxHintAtTwitter } from './ToolboxHint_UI' -export function injectToolboxHintAtTwitter(signal: AbortSignal) { +export function injectToolboxHintAtTwitter(signal: AbortSignal, category: 'wallet' | 'application') { const watcher = new MutationObserverWatcher(toolBoxInSideBarSelector()) startWatch(watcher, signal) - createReactRootShadowed(watcher.firstDOMProxy.afterShadow, { signal }).render() - + createReactRootShadowed(watcher.firstDOMProxy.afterShadow, { signal }).render( + , + ) injectProfile(signal) } diff --git a/packages/mask/src/social-network-adaptor/twitter.com/injection/ToolboxHint_UI.tsx b/packages/mask/src/social-network-adaptor/twitter.com/injection/ToolboxHint_UI.tsx index bb80d716e12f..c15c32e1485d 100644 --- a/packages/mask/src/social-network-adaptor/twitter.com/injection/ToolboxHint_UI.tsx +++ b/packages/mask/src/social-network-adaptor/twitter.com/injection/ToolboxHint_UI.tsx @@ -35,7 +35,7 @@ const Icon = styled(ListItemIcon)` min-width: 0; ` -export function ToolboxHintAtTwitter() { +export function ToolboxHintAtTwitter(props: { category: 'wallet' | 'application' }) { const mini = useMediaQuery(`(max-width: ${twitterBreakPoint}px)`) return ( ) } diff --git a/packages/mask/src/social-network/types.ts b/packages/mask/src/social-network/types.ts index bc52eb26f5c0..30a79a892963 100644 --- a/packages/mask/src/social-network/types.ts +++ b/packages/mask/src/social-network/types.ts @@ -111,7 +111,7 @@ export namespace SocialNetworkUI { /** Add custom actions buttons to the post */ postActions?(signal: AbortSignal, author: PostInfo): void /** Inject a tool box that displayed in the navigation bar of the SNS */ - toolbox?(signal: AbortSignal): void + toolbox?(signal: AbortSignal, category: 'wallet' | 'application'): void /** Inject the UI that used to notify if the user has not completely setup the current network. */ setupPrompt?(signal: AbortSignal): void /** diff --git a/packages/mask/src/social-network/ui.ts b/packages/mask/src/social-network/ui.ts index dfb61ec3e4a5..aac67f5a4517 100644 --- a/packages/mask/src/social-network/ui.ts +++ b/packages/mask/src/social-network/ui.ts @@ -86,7 +86,10 @@ export async function activateSocialNetworkUIInner(ui_deferred: SocialNetworkUI. ui.collecting.currentVisitingIdentityProvider?.start(signal) ui.injection.pageInspector?.(signal) - if (Flags.toolbox_enabled) ui.injection.toolbox?.(signal) + if (Flags.toolbox_enabled) { + ui.injection.toolbox?.(signal, 'wallet') + ui.injection.toolbox?.(signal, 'application') + } ui.injection.setupPrompt?.(signal) ui.injection.newPostComposition?.start?.(signal) ui.injection.searchResult?.(signal) diff --git a/packages/plugin-infra/src/types.ts b/packages/plugin-infra/src/types.ts index d540f7c61004..99697cefb7ed 100644 --- a/packages/plugin-infra/src/types.ts +++ b/packages/plugin-infra/src/types.ts @@ -340,6 +340,14 @@ export namespace Plugin.SNSAdaptor { category?: 'dapp' | 'other' nextIdRequired?: boolean + + /** + * Display using an eye-catching card and unable to be unlisted. + */ + recommendFeature?: { + description: React.ReactNode + backgroundGradient: string + } } export interface ProfileIdentity { diff --git a/packages/plugins/CrossChainBridge/src/SNSAdaptor/index.tsx b/packages/plugins/CrossChainBridge/src/SNSAdaptor/index.tsx index c475a850f9dd..09511e7f3052 100644 --- a/packages/plugins/CrossChainBridge/src/SNSAdaptor/index.tsx +++ b/packages/plugins/CrossChainBridge/src/SNSAdaptor/index.tsx @@ -12,7 +12,7 @@ const sns: Plugin.SNSAdaptor.Definition = { ApplicationEntries: [ (() => { const icon = - const name = { i18nKey: '__plugin_name', fallback: 'Cross-bridge' } + const name = { i18nKey: '__plugin_name', fallback: 'Cross-chain' } return { ApplicationEntryID: base.ID, RenderEntryComponent({ disabled }) { diff --git a/packages/plugins/FileService/src/SNSAdaptor/MainDialog.tsx b/packages/plugins/FileService/src/SNSAdaptor/MainDialog.tsx index ade8addbd839..125fa03724cf 100644 --- a/packages/plugins/FileService/src/SNSAdaptor/MainDialog.tsx +++ b/packages/plugins/FileService/src/SNSAdaptor/MainDialog.tsx @@ -47,8 +47,8 @@ const FileServiceDialog: React.FC = (props) => { const [uploading, setUploading] = useState(false) const [selectedFileInfo, setSelectedFileInfo] = useState(null) const { attachMetadata, dropMetadata } = useCompositionContext() - const { closeDialog: closeWalletStatusDialog } = useRemoteControlledDialog( - WalletMessages.events.walletStatusDialogUpdated, + const { closeDialog: closeApplicationBoardDialog } = useRemoteControlledDialog( + WalletMessages.events.ApplicationDialogUpdated, ) const onInsert = () => { if (isNil(selectedFileInfo)) { @@ -59,7 +59,7 @@ const FileServiceDialog: React.FC = (props) => { } else { dropMetadata(META_KEY_2) } - closeWalletStatusDialog() + closeApplicationBoardDialog() props.onClose() } diff --git a/packages/plugins/Wallet/src/messages.ts b/packages/plugins/Wallet/src/messages.ts index aee2f2903031..2528125685fb 100644 --- a/packages/plugins/Wallet/src/messages.ts +++ b/packages/plugins/Wallet/src/messages.ts @@ -70,6 +70,10 @@ export type WalletStatusDialogEvent = { open: boolean } +export type ApplicationDialogEvent = { + open: boolean +} + export type GasSettingDialogEvent = { open: boolean gasLimit: number @@ -157,6 +161,11 @@ export interface WalletMessage { */ walletStatusDialogUpdated: WalletStatusDialogEvent + /** + * Application dialog + */ + ApplicationDialogUpdated: ApplicationDialogEvent + /** * Wallet status dialog */ diff --git a/packages/shared/src/UI/components/ApplicationEntry/index.tsx b/packages/shared/src/UI/components/ApplicationEntry/index.tsx index 02788bf9f241..17f93f2f71b8 100644 --- a/packages/shared/src/UI/components/ApplicationEntry/index.tsx +++ b/packages/shared/src/UI/components/ApplicationEntry/index.tsx @@ -1,8 +1,9 @@ import classNames from 'classnames' +import type { Plugin } from '@masknet/plugin-infra' import { makeStyles, ShadowRootTooltip } from '@masknet/theme' import { Typography } from '@mui/material' -const useStyles = makeStyles()((theme) => ({ +const useStyles = makeStyles<{ disabled: boolean }>()((theme, { disabled }) => ({ applicationBox: { display: 'flex', flexDirection: 'column', @@ -15,8 +16,9 @@ const useStyles = makeStyles()((theme) => ({ applicationBoxHover: { cursor: 'pointer', '&:hover': { - transform: 'scale(1.05) translateY(-4px)', - boxShadow: theme.palette.mode === 'light' ? '0px 10px 16px rgba(0, 0, 0, 0.1)' : 'none', + transform: 'scale(1.02) translateY(-2px)', + background: theme.palette.mode === 'light' ? theme.palette.common.white : theme.palette.common.black, + boxShadow: theme.palette.mode === 'light' ? '0px 5px 8px rgba(0, 0, 0, 0.05)' : 'none', }, }, applicationImg: { @@ -29,7 +31,7 @@ const useStyles = makeStyles()((theme) => ({ }, disabled: { opacity: 0.4, - cursor: 'default', + cursor: 'default !important', pointerEvent: 'none', }, iconWrapper: { @@ -38,20 +40,71 @@ const useStyles = makeStyles()((theme) => ({ height: 36, }, }, + recommendFeatureApplicationBox: { + width: 225, + minWidth: 225, + height: 97, + marginRight: 12, + cursor: 'pointer', + display: 'inline-flex', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + padding: 10, + borderRadius: 8, + }, + recommendFeatureAppIconWrapper: { + marginRight: 12, + '> *': { + width: 48, + height: 48, + }, + }, + recommendFeatureAppListItemName: { + fontSize: 14, + fontWeight: 500, + cursor: disabled ? 'default' : 'pointer', + color: theme.palette.common.white, + }, + recommendFeatureAppListItemDescription: { + fontSize: 12, + fontWeight: 500, + cursor: disabled ? 'default' : 'pointer', + color: theme.palette.common.white, + }, })) interface ApplicationEntryProps { icon: React.ReactNode title: React.ReactNode disabled?: boolean + recommendFeature?: Plugin.SNSAdaptor.ApplicationEntry['recommendFeature'] tooltipHint?: string onClick: () => void } export function ApplicationEntry(props: ApplicationEntryProps) { - const { title, onClick, disabled = false, icon, tooltipHint } = props - const { classes } = useStyles() - const jsx = ( + const { title, onClick, disabled = false, icon, tooltipHint, recommendFeature } = props + const { classes } = useStyles({ disabled }) + const jsx = recommendFeature ? ( +
{} : onClick}> +
{icon}
+
+ {title} + + {recommendFeature.description} + +
+
+ ) : (
{} : onClick}> diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index da17ef3ef9df..aa9db6a7ad7b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -420,6 +420,7 @@ importers: opensea-js: ^1.2.7 promievent: ^0.1.4 protobufjs: ^6.11.2 + pure-react-carousel: ^1.28.1 react-devtools-core: ^4.24.5 react-dnd: ^16.0.1 react-dnd-html5-backend: ^16.0.1 @@ -557,6 +558,7 @@ importers: opensea-js: 1.2.7 promievent: 0.1.5 protobufjs: 6.11.2 + pure-react-carousel: 1.28.1 react-dnd: 16.0.1_@types+node@17.0.31 react-dnd-html5-backend: 16.0.1 react-draggable: 4.4.4 @@ -1610,12 +1612,11 @@ packages: engines: {node: 4.x || >=6.0.0} dev: false - /@ampproject/remapping/2.2.0: - resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==} + /@ampproject/remapping/2.1.2: + resolution: {integrity: sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==} engines: {node: '>=6.0.0'} dependencies: - '@jridgewell/gen-mapping': 0.1.1 - '@jridgewell/trace-mapping': 0.3.10 + '@jridgewell/trace-mapping': 0.3.4 dev: true /@babel/code-frame/7.16.0: @@ -1629,7 +1630,7 @@ packages: resolution: {integrity: sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/highlight': 7.17.9 + '@babel/highlight': 7.16.10 /@babel/compat-data/7.16.8: resolution: {integrity: sha512-m7OkX0IdKLKPpBlJtF561YJal5y/jyI5fNfWbPxh2D/nbzzGI4qRyrD8xO2jB24u7l+5I2a43scCG2IrfjC50Q==} @@ -1656,10 +1657,10 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.16.7 - '@babel/generator': 7.17.9 + '@babel/generator': 7.17.10 '@babel/helper-module-transforms': 7.17.7 '@babel/helpers': 7.17.9 - '@babel/parser': 7.17.9 + '@babel/parser': 7.17.10 '@babel/template': 7.16.7 '@babel/traverse': 7.17.10 '@babel/types': 7.17.10 @@ -1679,7 +1680,7 @@ packages: resolution: {integrity: sha512-liKoppandF3ZcBnIYFjfSDHZLKdLHGJRkoWtG8zQyGJBQfIYobpnVGI5+pLBNtS6psFLDzyq8+h5HiVljW9PNA==} engines: {node: '>=6.9.0'} dependencies: - '@ampproject/remapping': 2.2.0 + '@ampproject/remapping': 2.1.2 '@babel/code-frame': 7.16.7 '@babel/generator': 7.17.10 '@babel/helper-compilation-targets': 7.17.10_@babel+core@7.17.10 @@ -1698,6 +1699,29 @@ packages: - supports-color dev: true + /@babel/core/7.17.9: + resolution: {integrity: sha512-5ug+SfZCpDAkVp9SFIZAzlW18rlzsOcJGaetCjkySnrXXDUw9AR8cDUm1iByTmdWM6yxX6/zycaV76w3YTF2gw==} + engines: {node: '>=6.9.0'} + dependencies: + '@ampproject/remapping': 2.1.2 + '@babel/code-frame': 7.16.7 + '@babel/generator': 7.17.9 + '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.9 + '@babel/helper-module-transforms': 7.17.7 + '@babel/helpers': 7.17.9 + '@babel/parser': 7.17.9 + '@babel/template': 7.16.7 + '@babel/traverse': 7.17.9 + '@babel/types': 7.17.0 + convert-source-map: 1.8.0 + debug: 4.3.4 + gensync: 1.0.0-beta.2 + json5: 2.2.1 + semver: 6.3.0 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/generator/7.16.8: resolution: {integrity: sha512-1ojZwE9+lOXzcWdWmO6TbUzDfqLD39CmEhN8+2cX9XkDo5yW1OpgfejfliysR2AWLpMamTiOiAp/mtroaymhpw==} engines: {node: '>=6.9.0'} @@ -1729,7 +1753,7 @@ packages: resolution: {integrity: sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.10 + '@babel/types': 7.17.0 dev: true /@babel/helper-builder-binary-assignment-operator-visitor/7.16.7: @@ -1788,6 +1812,22 @@ packages: semver: 6.3.0 dev: true + /@babel/helper-compilation-targets/7.17.7_@babel+core@7.17.9: + resolution: {integrity: sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/compat-data': 7.17.7 + '@babel/core': 7.17.9 + '@babel/helper-validator-option': 7.16.7 + browserslist: 4.20.2 + semver: 6.3.0 + dev: true + /@babel/helper-create-class-features-plugin/7.17.9_@babel+core@7.17.10: resolution: {integrity: sha512-kUjip3gruz6AJKOq5i3nC6CoCEEF/oHH3cp6tOZhB+IyyyPyW0g1Gfsxn3mkk6S08pIA2y8GQh609v9G/5sHVQ==} engines: {node: '>=6.9.0'} @@ -1809,6 +1849,27 @@ packages: - supports-color dev: true + /@babel/helper-create-class-features-plugin/7.17.9_@babel+core@7.17.9: + resolution: {integrity: sha512-kUjip3gruz6AJKOq5i3nC6CoCEEF/oHH3cp6tOZhB+IyyyPyW0g1Gfsxn3mkk6S08pIA2y8GQh609v9G/5sHVQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-annotate-as-pure': 7.16.7 + '@babel/helper-environment-visitor': 7.16.7 + '@babel/helper-function-name': 7.17.9 + '@babel/helper-member-expression-to-functions': 7.17.7 + '@babel/helper-optimise-call-expression': 7.16.7 + '@babel/helper-replace-supers': 7.16.7 + '@babel/helper-split-export-declaration': 7.16.7 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/helper-create-regexp-features-plugin/7.17.0_@babel+core@7.17.10: resolution: {integrity: sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA==} engines: {node: '>=6.9.0'} @@ -1823,6 +1884,20 @@ packages: regexpu-core: 5.0.1 dev: true + /@babel/helper-create-regexp-features-plugin/7.17.0_@babel+core@7.17.9: + resolution: {integrity: sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-annotate-as-pure': 7.16.7 + regexpu-core: 5.0.1 + dev: true + /@babel/helper-define-polyfill-provider/0.1.5_@babel+core@7.17.10: resolution: {integrity: sha512-nXuzCSwlJ/WKr8qxzW816gwyT6VZgiJG17zR40fou70yfAcqjoNyTLl/DQ+FExw5Hx5KNqshmN8Ldl/r2N7cTg==} peerDependencies: @@ -1832,10 +1907,31 @@ packages: optional: true dependencies: '@babel/core': 7.17.10 - '@babel/helper-compilation-targets': 7.17.10_@babel+core@7.17.10 + '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.10 '@babel/helper-module-imports': 7.16.7 '@babel/helper-plugin-utils': 7.16.7 - '@babel/traverse': 7.17.10 + '@babel/traverse': 7.17.9 + debug: 4.3.4 + lodash.debounce: 4.0.8 + resolve: 1.22.0 + semver: 6.3.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/helper-define-polyfill-provider/0.1.5_@babel+core@7.17.9: + resolution: {integrity: sha512-nXuzCSwlJ/WKr8qxzW816gwyT6VZgiJG17zR40fou70yfAcqjoNyTLl/DQ+FExw5Hx5KNqshmN8Ldl/r2N7cTg==} + peerDependencies: + '@babel/core': ^7.4.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.9 + '@babel/helper-module-imports': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/traverse': 7.17.9 debug: 4.3.4 lodash.debounce: 4.0.8 resolve: 1.22.0 @@ -1877,7 +1973,28 @@ packages: '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.10 '@babel/helper-module-imports': 7.16.7 '@babel/helper-plugin-utils': 7.16.7 - '@babel/traverse': 7.17.10 + '@babel/traverse': 7.17.9 + debug: 4.3.4 + lodash.debounce: 4.0.8 + resolve: 1.22.0 + semver: 6.3.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/helper-define-polyfill-provider/0.3.1_@babel+core@7.17.9: + resolution: {integrity: sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==} + peerDependencies: + '@babel/core': ^7.4.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.9 + '@babel/helper-module-imports': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/traverse': 7.17.9 debug: 4.3.4 lodash.debounce: 4.0.8 resolve: 1.22.0 @@ -1890,7 +2007,7 @@ packages: resolution: {integrity: sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.10 + '@babel/types': 7.16.8 /@babel/helper-explode-assignable-expression/7.16.7: resolution: {integrity: sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==} @@ -1913,7 +2030,7 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.16.7 - '@babel/types': 7.17.10 + '@babel/types': 7.17.0 dev: true /@babel/helper-get-function-arity/7.16.7: @@ -1933,7 +2050,7 @@ packages: resolution: {integrity: sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.10 + '@babel/types': 7.17.0 dev: true /@babel/helper-module-imports/7.16.0: @@ -1959,8 +2076,8 @@ packages: '@babel/helper-split-export-declaration': 7.16.7 '@babel/helper-validator-identifier': 7.16.7 '@babel/template': 7.16.7 - '@babel/traverse': 7.17.10 - '@babel/types': 7.17.10 + '@babel/traverse': 7.17.9 + '@babel/types': 7.17.0 transitivePeerDependencies: - supports-color dev: true @@ -1969,7 +2086,7 @@ packages: resolution: {integrity: sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.10 + '@babel/types': 7.17.0 dev: true /@babel/helper-plugin-utils/7.10.4: @@ -2003,8 +2120,8 @@ packages: '@babel/helper-environment-visitor': 7.16.7 '@babel/helper-member-expression-to-functions': 7.17.7 '@babel/helper-optimise-call-expression': 7.16.7 - '@babel/traverse': 7.17.10 - '@babel/types': 7.17.10 + '@babel/traverse': 7.17.9 + '@babel/types': 7.17.0 transitivePeerDependencies: - supports-color dev: true @@ -2020,14 +2137,14 @@ packages: resolution: {integrity: sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.10 + '@babel/types': 7.17.0 dev: true /@babel/helper-split-export-declaration/7.16.7: resolution: {integrity: sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.10 + '@babel/types': 7.16.8 /@babel/helper-validator-identifier/7.15.7: resolution: {integrity: sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==} @@ -2048,7 +2165,7 @@ packages: dependencies: '@babel/helper-function-name': 7.17.9 '@babel/template': 7.16.7 - '@babel/traverse': 7.17.10 + '@babel/traverse': 7.17.9 '@babel/types': 7.17.0 transitivePeerDependencies: - supports-color @@ -2059,8 +2176,8 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.16.7 - '@babel/traverse': 7.17.10 - '@babel/types': 7.17.10 + '@babel/traverse': 7.17.9 + '@babel/types': 7.17.0 transitivePeerDependencies: - supports-color dev: true @@ -2074,8 +2191,8 @@ packages: js-tokens: 4.0.0 dev: true - /@babel/highlight/7.17.9: - resolution: {integrity: sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==} + /@babel/highlight/7.16.10: + resolution: {integrity: sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-validator-identifier': 7.16.7 @@ -2092,6 +2209,12 @@ packages: resolution: {integrity: sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ==} engines: {node: '>=6.0.0'} hasBin: true + dev: true + + /@babel/parser/7.17.3: + resolution: {integrity: sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==} + engines: {node: '>=6.0.0'} + hasBin: true /@babel/parser/7.17.9: resolution: {integrity: sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==} @@ -2112,6 +2235,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw==} engines: {node: '>=6.9.0'} @@ -2127,6 +2263,21 @@ packages: '@babel/plugin-proposal-optional-chaining': 7.16.7_@babel+core@7.17.10 dev: true + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.13.0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.16.0 + '@babel/plugin-proposal-optional-chaining': 7.16.7_@babel+core@7.17.9 + dev: true + /@babel/plugin-proposal-async-generator-functions/7.16.8_@babel+core@7.17.10: resolution: {integrity: sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==} engines: {node: '>=6.9.0'} @@ -2144,6 +2295,23 @@ packages: - supports-color dev: true + /@babel/plugin-proposal-async-generator-functions/7.16.8_@babel+core@7.17.9: + resolution: {integrity: sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-remap-async-to-generator': 7.16.8 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.17.9 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/plugin-proposal-class-properties/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww==} engines: {node: '>=6.9.0'} @@ -2160,6 +2328,22 @@ packages: - supports-color dev: true + /@babel/plugin-proposal-class-properties/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-create-class-features-plugin': 7.17.9_@babel+core@7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/plugin-proposal-class-static-block/7.17.6_@babel+core@7.17.10: resolution: {integrity: sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA==} engines: {node: '>=6.9.0'} @@ -2177,6 +2361,23 @@ packages: - supports-color dev: true + /@babel/plugin-proposal-class-static-block/7.17.6_@babel+core@7.17.9: + resolution: {integrity: sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.12.0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-create-class-features-plugin': 7.17.9_@babel+core@7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.17.9 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/plugin-proposal-decorators/7.17.9_@babel+core@7.17.10: resolution: {integrity: sha512-EfH2LZ/vPa2wuPwJ26j+kYRkaubf89UlwxKXtxqEm57HrgSEYDB8t4swFP+p8LcI9yiP9ZRJJjo/58hS6BnaDA==} engines: {node: '>=6.9.0'} @@ -2197,8 +2398,8 @@ packages: - supports-color dev: true - /@babel/plugin-proposal-dynamic-import/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==} + /@babel/plugin-proposal-decorators/7.17.9_@babel+core@7.17.9: + resolution: {integrity: sha512-EfH2LZ/vPa2wuPwJ26j+kYRkaubf89UlwxKXtxqEm57HrgSEYDB8t4swFP+p8LcI9yiP9ZRJJjo/58hS6BnaDA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2206,13 +2407,19 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 + '@babel/helper-create-class-features-plugin': 7.17.9_@babel+core@7.17.9 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.17.10 + '@babel/helper-replace-supers': 7.16.7 + '@babel/helper-split-export-declaration': 7.16.7 + '@babel/plugin-syntax-decorators': 7.17.0_@babel+core@7.17.9 + charcodes: 0.2.0 + transitivePeerDependencies: + - supports-color dev: true - /@babel/plugin-proposal-export-default-from/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-+cENpW1rgIjExn+o5c8Jw/4BuH4eGKKYvkMB8/0ZxFQ9mC0t4z09VsPIwNg6waF69QYC81zxGeAsREGuqQoKeg==} + /@babel/plugin-proposal-dynamic-import/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2222,11 +2429,11 @@ packages: dependencies: '@babel/core': 7.17.10 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-export-default-from': 7.16.7_@babel+core@7.17.10 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.17.10 dev: true - /@babel/plugin-proposal-export-namespace-from/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==} + /@babel/plugin-proposal-dynamic-import/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2234,13 +2441,13 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.17.10 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.17.9 dev: true - /@babel/plugin-proposal-json-strings/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==} + /@babel/plugin-proposal-export-default-from/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-+cENpW1rgIjExn+o5c8Jw/4BuH4eGKKYvkMB8/0ZxFQ9mC0t4z09VsPIwNg6waF69QYC81zxGeAsREGuqQoKeg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2250,11 +2457,11 @@ packages: dependencies: '@babel/core': 7.17.10 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.17.10 + '@babel/plugin-syntax-export-default-from': 7.16.7_@babel+core@7.17.10 dev: true - /@babel/plugin-proposal-logical-assignment-operators/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==} + /@babel/plugin-proposal-export-default-from/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-+cENpW1rgIjExn+o5c8Jw/4BuH4eGKKYvkMB8/0ZxFQ9mC0t4z09VsPIwNg6waF69QYC81zxGeAsREGuqQoKeg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2262,13 +2469,13 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.17.10 + '@babel/plugin-syntax-export-default-from': 7.16.7_@babel+core@7.17.9 dev: true - /@babel/plugin-proposal-nullish-coalescing-operator/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==} + /@babel/plugin-proposal-export-namespace-from/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2278,11 +2485,11 @@ packages: dependencies: '@babel/core': 7.17.10 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.17.10 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.17.10 dev: true - /@babel/plugin-proposal-numeric-separator/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==} + /@babel/plugin-proposal-export-namespace-from/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2290,27 +2497,27 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.17.10 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.17.9 dev: true - /@babel/plugin-proposal-object-rest-spread/7.12.1_@babel+core@7.12.9: - resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==} + /@babel/plugin-proposal-json-strings/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.12.9 - '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.12.9 + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.17.10 dev: true - /@babel/plugin-proposal-object-rest-spread/7.17.3_@babel+core@7.17.10: - resolution: {integrity: sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw==} + /@babel/plugin-proposal-json-strings/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2318,16 +2525,13 @@ packages: '@babel/core': optional: true dependencies: - '@babel/compat-data': 7.17.7 - '@babel/core': 7.17.10 - '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.17.10 - '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.17.10 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.17.9 dev: true - /@babel/plugin-proposal-optional-catch-binding/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==} + /@babel/plugin-proposal-logical-assignment-operators/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2337,11 +2541,11 @@ packages: dependencies: '@babel/core': 7.17.10 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.17.10 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.17.10 dev: true - /@babel/plugin-proposal-optional-chaining/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==} + /@babel/plugin-proposal-logical-assignment-operators/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2349,14 +2553,13 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-skip-transparent-expression-wrappers': 7.16.0 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.17.10 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.17.9 dev: true - /@babel/plugin-proposal-private-methods/7.16.11_@babel+core@7.17.10: - resolution: {integrity: sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw==} + /@babel/plugin-proposal-nullish-coalescing-operator/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2365,14 +2568,12 @@ packages: optional: true dependencies: '@babel/core': 7.17.10 - '@babel/helper-create-class-features-plugin': 7.17.9_@babel+core@7.17.10 '@babel/helper-plugin-utils': 7.16.7 - transitivePeerDependencies: - - supports-color + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.17.10 dev: true - /@babel/plugin-proposal-private-property-in-object/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==} + /@babel/plugin-proposal-nullish-coalescing-operator/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2380,18 +2581,14 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 - '@babel/helper-annotate-as-pure': 7.16.7 - '@babel/helper-create-class-features-plugin': 7.17.9_@babel+core@7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.17.10 - transitivePeerDependencies: - - supports-color + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.17.9 dev: true - /@babel/plugin-proposal-unicode-property-regex/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==} - engines: {node: '>=4'} + /@babel/plugin-proposal-numeric-separator/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2399,48 +2596,57 @@ packages: optional: true dependencies: '@babel/core': 7.17.10 - '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.10 '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.17.10 dev: true - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.17.10: - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} + /@babel/plugin-proposal-numeric-separator/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.17.9 dev: true - /@babel/plugin-syntax-bigint/7.8.3_@babel+core@7.17.10: - resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==} + /@babel/plugin-proposal-object-rest-spread/7.12.1_@babel+core@7.12.9: + resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.12.9 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.12.9 + '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.12.9 dev: true - /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.17.10: - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} + /@babel/plugin-proposal-object-rest-spread/7.17.3_@babel+core@7.17.10: + resolution: {integrity: sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: + '@babel/compat-data': 7.17.7 '@babel/core': 7.17.10 + '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.10 '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.17.10 + '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.17.10 dev: true - /@babel/plugin-syntax-class-static-block/7.14.5_@babel+core@7.17.10: - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} + /@babel/plugin-proposal-object-rest-spread/7.17.3_@babel+core@7.17.9: + resolution: {integrity: sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2448,12 +2654,16 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/compat-data': 7.17.7 + '@babel/core': 7.17.9 + '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.9 '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.17.9 + '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.17.9 dev: true - /@babel/plugin-syntax-decorators/7.17.0_@babel+core@7.17.10: - resolution: {integrity: sha512-qWe85yCXsvDEluNP0OyeQjH63DlhAR3W7K9BxxU1MvbDb48tgBG+Ao6IJJ6smPDrrVzSQZrbF6donpkFBMcs3A==} + /@babel/plugin-proposal-optional-catch-binding/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2463,22 +2673,25 @@ packages: dependencies: '@babel/core': 7.17.10 '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.17.10 dev: true - /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.17.10: - resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} + /@babel/plugin-proposal-optional-catch-binding/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.17.9 dev: true - /@babel/plugin-syntax-export-default-from/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-4C3E4NsrLOgftKaTYTULhHsuQrGv3FHrBzOMDiS7UYKIpgGBkAdawg4h+EI8zPeK9M0fiIIh72hIwsI24K7MbA==} + /@babel/plugin-proposal-optional-chaining/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2488,22 +2701,27 @@ packages: dependencies: '@babel/core': 7.17.10 '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.16.0 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.17.10 dev: true - /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.17.10: - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} + /@babel/plugin-proposal-optional-chaining/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.16.0 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.17.9 dev: true - /@babel/plugin-syntax-flow/7.16.7: - resolution: {integrity: sha512-UDo3YGQO0jH6ytzVwgSLv9i/CzMcUjbKenL67dTrAZPPv6GFAtDhe6jqnvmoKzC/7htNTohhos+onPtDMqJwaQ==} + /@babel/plugin-proposal-private-methods/7.16.11_@babel+core@7.17.10: + resolution: {integrity: sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2511,11 +2729,15 @@ packages: '@babel/core': optional: true dependencies: + '@babel/core': 7.17.10 + '@babel/helper-create-class-features-plugin': 7.17.9_@babel+core@7.17.10 '@babel/helper-plugin-utils': 7.16.7 + transitivePeerDependencies: + - supports-color dev: true - /@babel/plugin-syntax-flow/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-UDo3YGQO0jH6ytzVwgSLv9i/CzMcUjbKenL67dTrAZPPv6GFAtDhe6jqnvmoKzC/7htNTohhos+onPtDMqJwaQ==} + /@babel/plugin-proposal-private-methods/7.16.11_@babel+core@7.17.9: + resolution: {integrity: sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2523,12 +2745,16 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 + '@babel/helper-create-class-features-plugin': 7.17.9_@babel+core@7.17.9 '@babel/helper-plugin-utils': 7.16.7 + transitivePeerDependencies: + - supports-color dev: true - /@babel/plugin-syntax-import-meta/7.10.4_@babel+core@7.17.10: - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} + /@babel/plugin-proposal-private-property-in-object/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2536,47 +2762,62 @@ packages: optional: true dependencies: '@babel/core': 7.17.10 + '@babel/helper-annotate-as-pure': 7.16.7 + '@babel/helper-create-class-features-plugin': 7.17.9_@babel+core@7.17.10 '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.17.10 + transitivePeerDependencies: + - supports-color dev: true - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.17.10: - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} + /@babel/plugin-proposal-private-property-in-object/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 + '@babel/helper-annotate-as-pure': 7.16.7 + '@babel/helper-create-class-features-plugin': 7.17.9_@babel+core@7.17.9 '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.17.9 + transitivePeerDependencies: + - supports-color dev: true - /@babel/plugin-syntax-jsx/7.12.1_@babel+core@7.12.9: - resolution: {integrity: sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==} + /@babel/plugin-proposal-unicode-property-regex/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==} + engines: {node: '>=4'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.12.9 + '@babel/core': 7.17.10 + '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.10 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-jsx/7.16.7: - resolution: {integrity: sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==} - engines: {node: '>=6.9.0'} + /@babel/plugin-proposal-unicode-property-regex/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==} + engines: {node: '>=4'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: + '@babel/core': 7.17.9 + '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.9 '@babel/helper-plugin-utils': 7.16.7 + dev: true - /@babel/plugin-syntax-jsx/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.17.10: + resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2587,20 +2828,20 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.17.10: - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} + /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.17.9: + resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.17.10: - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} + /@babel/plugin-syntax-bigint/7.8.3_@babel+core@7.17.10: + resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2611,8 +2852,8 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.17.10: - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} + /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.17.10: + resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2623,20 +2864,21 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.12.9: - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.17.9: + resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.12.9 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.17.10: - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + /@babel/plugin-syntax-class-static-block/7.14.5_@babel+core@7.17.10: + resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2647,20 +2889,22 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.17.10: - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} + /@babel/plugin-syntax-class-static-block/7.14.5_@babel+core@7.17.9: + resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.17.10: - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} + /@babel/plugin-syntax-decorators/7.17.0_@babel+core@7.17.10: + resolution: {integrity: sha512-qWe85yCXsvDEluNP0OyeQjH63DlhAR3W7K9BxxU1MvbDb48tgBG+Ao6IJJ6smPDrrVzSQZrbF6donpkFBMcs3A==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2671,8 +2915,8 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-private-property-in-object/7.14.5_@babel+core@7.17.10: - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} + /@babel/plugin-syntax-decorators/7.17.0_@babel+core@7.17.9: + resolution: {integrity: sha512-qWe85yCXsvDEluNP0OyeQjH63DlhAR3W7K9BxxU1MvbDb48tgBG+Ao6IJJ6smPDrrVzSQZrbF6donpkFBMcs3A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2680,13 +2924,12 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.17.10: - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.17.10: + resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2697,21 +2940,20 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-typescript/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.17.9: + resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-syntax-typescript/7.17.10_@babel+core@7.17.10: - resolution: {integrity: sha512-xJefea1DWXW09pW4Tm9bjwVlPDyYA2it3fWlmEjpYz6alPvTUjL0EOzNzI/FEOyI3r4/J7uVH5UqKgl1TQ5hqQ==} + /@babel/plugin-syntax-export-default-from/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-4C3E4NsrLOgftKaTYTULhHsuQrGv3FHrBzOMDiS7UYKIpgGBkAdawg4h+EI8zPeK9M0fiIIh72hIwsI24K7MbA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2723,8 +2965,8 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-transform-arrow-functions/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==} + /@babel/plugin-syntax-export-default-from/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-4C3E4NsrLOgftKaTYTULhHsuQrGv3FHrBzOMDiS7UYKIpgGBkAdawg4h+EI8zPeK9M0fiIIh72hIwsI24K7MbA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2732,13 +2974,12 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-transform-async-to-generator/7.16.8_@babel+core@7.17.10: - resolution: {integrity: sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.17.10: + resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2746,28 +2987,23 @@ packages: optional: true dependencies: '@babel/core': 7.17.10 - '@babel/helper-module-imports': 7.16.7 '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-remap-async-to-generator': 7.16.8 - transitivePeerDependencies: - - supports-color dev: true - /@babel/plugin-transform-block-scoped-functions/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.17.9: + resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-transform-block-scoping/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==} + /@babel/plugin-syntax-flow/7.16.7: + resolution: {integrity: sha512-UDo3YGQO0jH6ytzVwgSLv9i/CzMcUjbKenL67dTrAZPPv6GFAtDhe6jqnvmoKzC/7htNTohhos+onPtDMqJwaQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2775,12 +3011,11 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-transform-classes/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==} + /@babel/plugin-syntax-flow/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-UDo3YGQO0jH6ytzVwgSLv9i/CzMcUjbKenL67dTrAZPPv6GFAtDhe6jqnvmoKzC/7htNTohhos+onPtDMqJwaQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2789,21 +3024,11 @@ packages: optional: true dependencies: '@babel/core': 7.17.10 - '@babel/helper-annotate-as-pure': 7.16.7 - '@babel/helper-environment-visitor': 7.16.7 - '@babel/helper-function-name': 7.17.9 - '@babel/helper-optimise-call-expression': 7.16.7 '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-replace-supers': 7.16.7 - '@babel/helper-split-export-declaration': 7.16.7 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color dev: true - /@babel/plugin-transform-computed-properties/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-import-meta/7.10.4_@babel+core@7.17.10: + resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2814,9 +3039,8 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-transform-destructuring/7.17.7_@babel+core@7.17.10: - resolution: {integrity: sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.17.10: + resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: @@ -2827,35 +3051,32 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-transform-dotall-regex/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.17.9: + resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 - '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.10 + '@babel/core': 7.17.9 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-transform-duplicate-keys/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-jsx/7.12.1_@babel+core@7.12.9: + resolution: {integrity: sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==} peerDependencies: '@babel/core': ^7.0.0-0 peerDependenciesMeta: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.12.9 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-transform-exponentiation-operator/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==} + /@babel/plugin-syntax-jsx/7.16.7: + resolution: {integrity: sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2863,10 +3084,557 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.16.7 '@babel/helper-plugin-utils': 7.16.7 - dev: true + + /@babel/plugin-syntax-jsx/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-jsx/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.17.10: + resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.17.9: + resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.17.10: + resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.17.9: + resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.17.10: + resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.17.9: + resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.12.9: + resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.12.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.17.10: + resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.17.9: + resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.17.10: + resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.17.9: + resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.17.10: + resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.17.9: + resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-private-property-in-object/7.14.5_@babel+core@7.17.10: + resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-private-property-in-object/7.14.5_@babel+core@7.17.9: + resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.17.10: + resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.17.9: + resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-typescript/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-syntax-typescript/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-arrow-functions/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-arrow-functions/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-async-to-generator/7.16.8_@babel+core@7.17.10: + resolution: {integrity: sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-module-imports': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-remap-async-to-generator': 7.16.8 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/plugin-transform-async-to-generator/7.16.8_@babel+core@7.17.9: + resolution: {integrity: sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-module-imports': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-remap-async-to-generator': 7.16.8 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/plugin-transform-block-scoped-functions/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-block-scoped-functions/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-block-scoping/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-block-scoping/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-classes/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-annotate-as-pure': 7.16.7 + '@babel/helper-environment-visitor': 7.16.7 + '@babel/helper-function-name': 7.17.9 + '@babel/helper-optimise-call-expression': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-replace-supers': 7.16.7 + '@babel/helper-split-export-declaration': 7.16.7 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/plugin-transform-classes/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-annotate-as-pure': 7.16.7 + '@babel/helper-environment-visitor': 7.16.7 + '@babel/helper-function-name': 7.17.9 + '@babel/helper-optimise-call-expression': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-replace-supers': 7.16.7 + '@babel/helper-split-export-declaration': 7.16.7 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/plugin-transform-computed-properties/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-computed-properties/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-destructuring/7.17.7_@babel+core@7.17.10: + resolution: {integrity: sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-destructuring/7.17.7_@babel+core@7.17.9: + resolution: {integrity: sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-dotall-regex/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-dotall-regex/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-duplicate-keys/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-duplicate-keys/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-exponentiation-operator/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-exponentiation-operator/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + dev: true /@babel/plugin-transform-flow-strip-types/7.16.7: resolution: {integrity: sha512-mzmCq3cNsDpZZu9FADYYyfZJIOrSONmHcop2XEKPdBNMa4PDC4eEvcOvzZaCNcjKu72v0XQlA5y1g58aLRXdYg==} @@ -2908,6 +3676,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-for-of/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-function-name/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==} engines: {node: '>=6.9.0'} @@ -2923,6 +3704,21 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-function-name/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.9 + '@babel/helper-function-name': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-literals/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==} engines: {node: '>=6.9.0'} @@ -2936,6 +3732,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-literals/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-member-expression-literals/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==} engines: {node: '>=6.9.0'} @@ -2949,6 +3758,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-member-expression-literals/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-modules-amd/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==} engines: {node: '>=6.9.0'} @@ -2966,6 +3788,23 @@ packages: - supports-color dev: true + /@babel/plugin-transform-modules-amd/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-module-transforms': 7.17.7 + '@babel/helper-plugin-utils': 7.16.7 + babel-plugin-dynamic-import-node: 2.3.3 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/plugin-transform-modules-commonjs/7.17.9_@babel+core@7.17.10: resolution: {integrity: sha512-2TBFd/r2I6VlYn0YRTz2JdazS+FoUuQ2rIFHoAxtyP/0G3D82SBLaRq9rnUkpqlLg03Byfl/+M32mpxjO6KaPw==} engines: {node: '>=6.9.0'} @@ -2984,6 +3823,24 @@ packages: - supports-color dev: true + /@babel/plugin-transform-modules-commonjs/7.17.9_@babel+core@7.17.9: + resolution: {integrity: sha512-2TBFd/r2I6VlYn0YRTz2JdazS+FoUuQ2rIFHoAxtyP/0G3D82SBLaRq9rnUkpqlLg03Byfl/+M32mpxjO6KaPw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-module-transforms': 7.17.7 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-simple-access': 7.17.7 + babel-plugin-dynamic-import-node: 2.3.3 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/plugin-transform-modules-systemjs/7.17.8_@babel+core@7.17.10: resolution: {integrity: sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw==} engines: {node: '>=6.9.0'} @@ -3003,6 +3860,25 @@ packages: - supports-color dev: true + /@babel/plugin-transform-modules-systemjs/7.17.8_@babel+core@7.17.9: + resolution: {integrity: sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-hoist-variables': 7.16.7 + '@babel/helper-module-transforms': 7.17.7 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-validator-identifier': 7.16.7 + babel-plugin-dynamic-import-node: 2.3.3 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/plugin-transform-modules-umd/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==} engines: {node: '>=6.9.0'} @@ -3019,6 +3895,22 @@ packages: - supports-color dev: true + /@babel/plugin-transform-modules-umd/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-module-transforms': 7.17.7 + '@babel/helper-plugin-utils': 7.16.7 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/plugin-transform-named-capturing-groups-regex/7.16.8_@babel+core@7.17.10: resolution: {integrity: sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==} engines: {node: '>=6.9.0'} @@ -3032,6 +3924,19 @@ packages: '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.10 dev: true + /@babel/plugin-transform-named-capturing-groups-regex/7.16.8_@babel+core@7.17.9: + resolution: {integrity: sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.9 + dev: true + /@babel/plugin-transform-new-target/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==} engines: {node: '>=6.9.0'} @@ -3045,6 +3950,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-new-target/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-object-super/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==} engines: {node: '>=6.9.0'} @@ -3061,6 +3979,22 @@ packages: - supports-color dev: true + /@babel/plugin-transform-object-super/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-replace-supers': 7.16.7 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/plugin-transform-parameters/7.16.7_@babel+core@7.12.9: resolution: {integrity: sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==} engines: {node: '>=6.9.0'} @@ -3087,6 +4021,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-parameters/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-property-literals/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==} engines: {node: '>=6.9.0'} @@ -3100,6 +4047,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-property-literals/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-react-display-name/7.16.7: resolution: {integrity: sha512-qgIg8BcZgd0G/Cz916D5+9kqX0c7nPZyXaP8R2tLNN5tkyIZdG5fEwBrxwplzSnjC1jvQmyMNVwUCZPcbGY7Pg==} engines: {node: '>=6.9.0'} @@ -3125,6 +4085,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-react-display-name/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-qgIg8BcZgd0G/Cz916D5+9kqX0c7nPZyXaP8R2tLNN5tkyIZdG5fEwBrxwplzSnjC1jvQmyMNVwUCZPcbGY7Pg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-react-jsx-development/7.16.7: resolution: {integrity: sha512-RMvQWvpla+xy6MlBpPlrKZCMRs2AGiHOGHY3xRwl0pEeim348dDyxeH4xBsMPbIMhujeq7ihE702eM2Ew0Wo+A==} engines: {node: '>=6.9.0'} @@ -3150,6 +4123,19 @@ packages: '@babel/plugin-transform-react-jsx': 7.17.3_@babel+core@7.17.10 dev: true + /@babel/plugin-transform-react-jsx-development/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-RMvQWvpla+xy6MlBpPlrKZCMRs2AGiHOGHY3xRwl0pEeim348dDyxeH4xBsMPbIMhujeq7ihE702eM2Ew0Wo+A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/plugin-transform-react-jsx': 7.17.3_@babel+core@7.17.9 + dev: true + /@babel/plugin-transform-react-jsx/7.17.3: resolution: {integrity: sha512-9tjBm4O07f7mzKSIlEmPdiE6ub7kfIe6Cd+w+oQebpATfTQMAgW+YOuWxogbKVTulA+MEO7byMeIUtQ1z+z+ZQ==} engines: {node: '>=6.9.0'} @@ -3177,13 +4163,57 @@ packages: dependencies: '@babel/core': 7.17.10 '@babel/helper-annotate-as-pure': 7.16.7 - '@babel/helper-module-imports': 7.16.7 + '@babel/helper-module-imports': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-jsx': 7.16.7_@babel+core@7.17.10 + '@babel/types': 7.17.0 + dev: true + + /@babel/plugin-transform-react-jsx/7.17.3_@babel+core@7.17.9: + resolution: {integrity: sha512-9tjBm4O07f7mzKSIlEmPdiE6ub7kfIe6Cd+w+oQebpATfTQMAgW+YOuWxogbKVTulA+MEO7byMeIUtQ1z+z+ZQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-annotate-as-pure': 7.16.7 + '@babel/helper-module-imports': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-jsx': 7.16.7_@babel+core@7.17.9 + '@babel/types': 7.17.0 + dev: true + + /@babel/plugin-transform-react-pure-annotations/7.16.7: + resolution: {integrity: sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/helper-annotate-as-pure': 7.16.7 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + + /@babel/plugin-transform-react-pure-annotations/7.16.7_@babel+core@7.17.10: + resolution: {integrity: sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + '@babel/helper-annotate-as-pure': 7.16.7 '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-jsx': 7.16.7_@babel+core@7.17.10 - '@babel/types': 7.17.0 dev: true - /@babel/plugin-transform-react-pure-annotations/7.16.7: + /@babel/plugin-transform-react-pure-annotations/7.16.7_@babel+core@7.17.9: resolution: {integrity: sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA==} engines: {node: '>=6.9.0'} peerDependencies: @@ -3192,12 +4222,13 @@ packages: '@babel/core': optional: true dependencies: + '@babel/core': 7.17.9 '@babel/helper-annotate-as-pure': 7.16.7 '@babel/helper-plugin-utils': 7.16.7 dev: true - /@babel/plugin-transform-react-pure-annotations/7.16.7_@babel+core@7.17.10: - resolution: {integrity: sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA==} + /@babel/plugin-transform-regenerator/7.17.9_@babel+core@7.17.10: + resolution: {integrity: sha512-Lc2TfbxR1HOyn/c6b4Y/b6NHoTb67n/IoWLxTu4kC7h4KQnWlhCq2S8Tx0t2SVvv5Uu87Hs+6JEJ5kt2tYGylQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -3206,11 +4237,10 @@ packages: optional: true dependencies: '@babel/core': 7.17.10 - '@babel/helper-annotate-as-pure': 7.16.7 - '@babel/helper-plugin-utils': 7.16.7 + regenerator-transform: 0.15.0 dev: true - /@babel/plugin-transform-regenerator/7.17.9_@babel+core@7.17.10: + /@babel/plugin-transform-regenerator/7.17.9_@babel+core@7.17.9: resolution: {integrity: sha512-Lc2TfbxR1HOyn/c6b4Y/b6NHoTb67n/IoWLxTu4kC7h4KQnWlhCq2S8Tx0t2SVvv5Uu87Hs+6JEJ5kt2tYGylQ==} engines: {node: '>=6.9.0'} peerDependencies: @@ -3219,7 +4249,7 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 regenerator-transform: 0.15.0 dev: true @@ -3236,6 +4266,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-reserved-words/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-runtime/7.15.0_@babel+core@7.17.10: resolution: {integrity: sha512-sfHYkLGjhzWTq6xsuQ01oEsUYjkHRux9fW1iUA68dC7Qd8BS1Unq4aZ8itmQp95zUzIcyR2EbNMTzAicFj+guw==} engines: {node: '>=6.9.0'} @@ -3269,6 +4312,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-shorthand-properties/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-spread/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==} engines: {node: '>=6.9.0'} @@ -3283,6 +4339,20 @@ packages: '@babel/helper-skip-transparent-expression-wrappers': 7.16.0 dev: true + /@babel/plugin-transform-spread/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.16.0 + dev: true + /@babel/plugin-transform-sticky-regex/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==} engines: {node: '>=6.9.0'} @@ -3296,6 +4366,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-sticky-regex/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-template-literals/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==} engines: {node: '>=6.9.0'} @@ -3309,6 +4392,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-template-literals/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-typeof-symbol/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==} engines: {node: '>=6.9.0'} @@ -3322,6 +4418,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-typeof-symbol/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-typescript/7.16.8_@babel+core@7.17.10: resolution: {integrity: sha512-bHdQ9k7YpBDO2d0NVfkj51DpQcvwIzIusJ7mEUaMlbZq3Kt/U47j24inXZHQ5MDiYpCs+oZiwnXyKedE8+q7AQ==} engines: {node: '>=6.9.0'} @@ -3339,6 +4448,23 @@ packages: - supports-color dev: true + /@babel/plugin-transform-typescript/7.16.8_@babel+core@7.17.9: + resolution: {integrity: sha512-bHdQ9k7YpBDO2d0NVfkj51DpQcvwIzIusJ7mEUaMlbZq3Kt/U47j24inXZHQ5MDiYpCs+oZiwnXyKedE8+q7AQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-create-class-features-plugin': 7.17.9_@babel+core@7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-syntax-typescript': 7.16.7_@babel+core@7.17.9 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/plugin-transform-unicode-escapes/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==} engines: {node: '>=6.9.0'} @@ -3352,6 +4478,19 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-unicode-escapes/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/plugin-transform-unicode-regex/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==} engines: {node: '>=6.9.0'} @@ -3366,6 +4505,20 @@ packages: '@babel/helper-plugin-utils': 7.16.7 dev: true + /@babel/plugin-transform-unicode-regex/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + dev: true + /@babel/preset-env/7.16.11_@babel+core@7.17.10: resolution: {integrity: sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g==} engines: {node: '>=6.9.0'} @@ -3454,6 +4607,94 @@ packages: - supports-color dev: true + /@babel/preset-env/7.16.11_@babel+core@7.17.9: + resolution: {integrity: sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/compat-data': 7.17.7 + '@babel/core': 7.17.9 + '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-validator-option': 7.16.7 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-async-generator-functions': 7.16.8_@babel+core@7.17.9 + '@babel/plugin-proposal-class-properties': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-class-static-block': 7.17.6_@babel+core@7.17.9 + '@babel/plugin-proposal-dynamic-import': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-export-namespace-from': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-json-strings': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-logical-assignment-operators': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-nullish-coalescing-operator': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-numeric-separator': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-object-rest-spread': 7.17.3_@babel+core@7.17.9 + '@babel/plugin-proposal-optional-catch-binding': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-optional-chaining': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-private-methods': 7.16.11_@babel+core@7.17.9 + '@babel/plugin-proposal-private-property-in-object': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-unicode-property-regex': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.17.9 + '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.17.9 + '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.17.9 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.17.9 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.17.9 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.17.9 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.17.9 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.17.9 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.17.9 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.17.9 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.17.9 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.17.9 + '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.17.9 + '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.17.9 + '@babel/plugin-transform-arrow-functions': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-async-to-generator': 7.16.8_@babel+core@7.17.9 + '@babel/plugin-transform-block-scoped-functions': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-block-scoping': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-classes': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-computed-properties': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-destructuring': 7.17.7_@babel+core@7.17.9 + '@babel/plugin-transform-dotall-regex': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-duplicate-keys': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-exponentiation-operator': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-for-of': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-function-name': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-literals': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-member-expression-literals': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-modules-amd': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-modules-commonjs': 7.17.9_@babel+core@7.17.9 + '@babel/plugin-transform-modules-systemjs': 7.17.8_@babel+core@7.17.9 + '@babel/plugin-transform-modules-umd': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-named-capturing-groups-regex': 7.16.8_@babel+core@7.17.9 + '@babel/plugin-transform-new-target': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-object-super': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-property-literals': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-regenerator': 7.17.9_@babel+core@7.17.9 + '@babel/plugin-transform-reserved-words': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-shorthand-properties': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-spread': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-sticky-regex': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-template-literals': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-typeof-symbol': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-unicode-escapes': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-unicode-regex': 7.16.7_@babel+core@7.17.9 + '@babel/preset-modules': 0.1.5_@babel+core@7.17.9 + '@babel/types': 7.17.0 + babel-plugin-polyfill-corejs2: 0.3.1_@babel+core@7.17.9 + babel-plugin-polyfill-corejs3: 0.5.2_@babel+core@7.17.9 + babel-plugin-polyfill-regenerator: 0.3.1_@babel+core@7.17.9 + core-js-compat: 3.22.2 + semver: 6.3.0 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/preset-flow/7.16.7: resolution: {integrity: sha512-6ceP7IyZdUYQ3wUVqyRSQXztd1YmFHWI4Xv11MIqAlE4WqxBSd/FZ61V9k+TS5Gd4mkHOtQtPp9ymRpxH4y1Ug==} engines: {node: '>=6.9.0'} @@ -3499,6 +4740,22 @@ packages: esutils: 2.0.3 dev: true + /@babel/preset-modules/0.1.5_@babel+core@7.17.9: + resolution: {integrity: sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/plugin-proposal-unicode-property-regex': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-dotall-regex': 7.16.7_@babel+core@7.17.9 + '@babel/types': 7.17.0 + esutils: 2.0.3 + dev: true + /@babel/preset-react/7.16.7: resolution: {integrity: sha512-fWpyI8UM/HE6DfPBzD8LnhQ/OcH8AgTaqcqP2nGOXEUV+VKBR5JRN9hCk9ai+zQQ57vtm9oWeXguBCPNUjytgA==} engines: {node: '>=6.9.0'} @@ -3534,6 +4791,24 @@ packages: '@babel/plugin-transform-react-pure-annotations': 7.16.7_@babel+core@7.17.10 dev: true + /@babel/preset-react/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-fWpyI8UM/HE6DfPBzD8LnhQ/OcH8AgTaqcqP2nGOXEUV+VKBR5JRN9hCk9ai+zQQ57vtm9oWeXguBCPNUjytgA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-validator-option': 7.16.7 + '@babel/plugin-transform-react-display-name': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-react-jsx': 7.17.3_@babel+core@7.17.9 + '@babel/plugin-transform-react-jsx-development': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-react-pure-annotations': 7.16.7_@babel+core@7.17.9 + dev: true + /@babel/preset-typescript/7.16.7_@babel+core@7.17.10: resolution: {integrity: sha512-WbVEmgXdIyvzB77AQjGBEyYPZx+8tTsO50XtfozQrkW8QB2rLJpH2lgx0TRw5EJrBxOZQ+wCcyPVQvS8tjEHpQ==} engines: {node: '>=6.9.0'} @@ -3551,7 +4826,24 @@ packages: - supports-color dev: true - /@babel/register/7.17.7_@babel+core@7.17.10: + /@babel/preset-typescript/7.16.7_@babel+core@7.17.9: + resolution: {integrity: sha512-WbVEmgXdIyvzB77AQjGBEyYPZx+8tTsO50XtfozQrkW8QB2rLJpH2lgx0TRw5EJrBxOZQ+wCcyPVQvS8tjEHpQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-plugin-utils': 7.16.7 + '@babel/helper-validator-option': 7.16.7 + '@babel/plugin-transform-typescript': 7.16.8_@babel+core@7.17.9 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/register/7.17.7_@babel+core@7.17.9: resolution: {integrity: sha512-fg56SwvXRifootQEDQAu1mKdjh5uthPzdO0N6t358FktfL4XjAVXuH58ULoiW8mesxiOgNIrxiImqEwv0+hRRA==} engines: {node: '>=6.9.0'} peerDependencies: @@ -3560,7 +4852,7 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 clone-deep: 4.0.1 find-cache-dir: 2.1.0 make-dir: 2.1.0 @@ -3600,8 +4892,8 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.16.7 - '@babel/parser': 7.17.10 - '@babel/types': 7.17.10 + '@babel/parser': 7.17.3 + '@babel/types': 7.17.0 /@babel/traverse/7.16.10: resolution: {integrity: sha512-yzuaYXoRJBGMlBhsMJoUW7G1UmSb/eXr/JHYM/MsOJgavJibLwASijW7oXBdw3NQ6T0bW7Ty5P/VarOs9cHmqw==} @@ -3639,13 +4931,30 @@ packages: - supports-color dev: true + /@babel/traverse/7.17.9: + resolution: {integrity: sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.16.7 + '@babel/generator': 7.17.9 + '@babel/helper-environment-visitor': 7.16.7 + '@babel/helper-function-name': 7.17.9 + '@babel/helper-hoist-variables': 7.16.7 + '@babel/helper-split-export-declaration': 7.16.7 + '@babel/parser': 7.17.9 + '@babel/types': 7.17.0 + debug: 4.3.4 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/types/7.16.8: resolution: {integrity: sha512-smN2DQc5s4M7fntyjGtyIPbRJv6wW4rU/94fmYJ7PKQuZkC0qGMHXJbg6sNGt12JmVr4k5YaptI/XtiLJBnmIg==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-validator-identifier': 7.16.7 to-fast-properties: 2.0.0 - dev: false /@babel/types/7.17.0: resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==} @@ -3997,10 +5306,10 @@ packages: '@types/node': 17.0.31 chalk: 4.1.2 cosmiconfig: 7.0.1 - cosmiconfig-typescript-loader: 1.0.9_gmciqoxx2ucazedvari2lqqjfq + cosmiconfig-typescript-loader: 1.0.9_ghcombcbpherolfxll753x4zfy lodash: 4.17.21 resolve-from: 5.0.0 - typescript: 4.6.4 + typescript: 4.6.3 transitivePeerDependencies: - '@swc/core' - '@swc/wasm' @@ -4318,52 +5627,52 @@ packages: - encoding dev: false - /@date-io/core/2.13.2: - resolution: {integrity: sha512-lAUDhC5kpzlxa00BxfqENBgerbGI5ojuKQpXLGZCTrqT1rQR+vrp2rwf0I+H2KlM2z3N1ldyQuANmzZ+ehomog==} + /@date-io/core/2.13.1: + resolution: {integrity: sha512-pVI9nfkf2qClb2Cxdq0Q4zJhdawMG4ybWZUVGifT78FDwzRMX2SwXBb55s5NRJk0HcIicDuxktmCtemZqMH1Zg==} dev: false - /@date-io/date-fns/2.13.2: - resolution: {integrity: sha512-Pq0xBH6cvEg5IsOs7Olkk1PHFFJFTM34OT5mk/9ND1ied4RGhLNeLYRwbyCThZ29jolqPsV2HBs9wo2QTiNIkg==} + /@date-io/date-fns/2.13.1: + resolution: {integrity: sha512-8fmfwjiLMpFLD+t4NBwDx0eblWnNcgt4NgfT/uiiQTGI81fnPu9tpBMYdAcuWxaV7LLpXgzLBx1SYWAMDVUDQQ==} peerDependencies: date-fns: ^2.0.0 peerDependenciesMeta: date-fns: optional: true dependencies: - '@date-io/core': 2.13.2 + '@date-io/core': 2.13.1 dev: false - /@date-io/dayjs/2.13.2: - resolution: {integrity: sha512-uP/Bvr+QfzpLN3JGX/x3uJtGnnSWckn7e500Wn+pVNVvIleaXSJxDbE5IAz1P7WwQrnSuxuBI1e6Sl8J/njzKQ==} + /@date-io/dayjs/2.13.1: + resolution: {integrity: sha512-5bL4WWWmlI4uGZVScANhHJV7Mjp93ec2gNeUHDqqLaMZhp51S0NgD25oqj/k0LqBn1cdU2MvzNpk/ObMmVv5cQ==} peerDependencies: dayjs: ^1.8.17 peerDependenciesMeta: dayjs: optional: true dependencies: - '@date-io/core': 2.13.2 + '@date-io/core': 2.13.1 dev: false - /@date-io/luxon/2.13.2: - resolution: {integrity: sha512-/LeUXsBeM9DITZliaAzKYBu6GtaD3AT5nQR5u7AasjUz1JlYPCTjV5z8b+wnY/jm4bFz5AhgK+TMHGaZoMJW+w==} + /@date-io/luxon/2.13.1: + resolution: {integrity: sha512-yG+uM7lXfwLyKKEwjvP8oZ7qblpmfl9gxQYae55ifbwiTs0CoCTkYkxEaQHGkYtTqGTzLqcb0O9Pzx6vgWg+yg==} peerDependencies: luxon: ^1.21.3 || ^2.x peerDependenciesMeta: luxon: optional: true dependencies: - '@date-io/core': 2.13.2 + '@date-io/core': 2.13.1 dev: false - /@date-io/moment/2.13.2: - resolution: {integrity: sha512-6uWeCS44srr86MaeUS0mS10T1g7WKfqZ47r1rEc+8xcS3640TIPNf/pg30kwprZKAM7gtbZu6vW6pe1MEPbcKA==} + /@date-io/moment/2.13.1: + resolution: {integrity: sha512-XX1X/Tlvl3TdqQy2j0ZUtEJV6Rl8tOyc5WOS3ki52He28Uzme4Ro/JuPWTMBDH63weSWIZDlbR7zBgp3ZA2y1A==} peerDependencies: moment: ^2.24.0 peerDependenciesMeta: moment: optional: true dependencies: - '@date-io/core': 2.13.2 + '@date-io/core': 2.13.1 dev: false /@dimensiondev/common-protocols/1.6.0-20210723072221-8f46a92: @@ -5554,7 +6863,7 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: '@jest/types': 28.1.0 - '@sinonjs/fake-timers': 9.1.2 + '@sinonjs/fake-timers': 9.1.1 '@types/node': 17.0.31 jest-message-util: 28.1.0 jest-mock: 28.1.0 @@ -5586,7 +6895,7 @@ packages: '@jest/test-result': 28.1.0 '@jest/transform': 28.1.0 '@jest/types': 28.1.0 - '@jridgewell/trace-mapping': 0.3.10 + '@jridgewell/trace-mapping': 0.3.9 '@types/node': 17.0.31 chalk: 4.1.2 collect-v8-coverage: 1.0.1 @@ -5594,7 +6903,7 @@ packages: glob: 7.2.0 graceful-fs: 4.2.10 istanbul-lib-coverage: 3.2.0 - istanbul-lib-instrument: 5.2.0 + istanbul-lib-instrument: 5.1.0 istanbul-lib-report: 3.0.0 istanbul-lib-source-maps: 4.0.1 istanbul-reports: 3.1.4 @@ -5613,14 +6922,14 @@ packages: resolution: {integrity: sha512-YVDJZjd4izeTDkij00vHHAymNXQ6WWsdChFRK86qck6Jpr3DCL5W3Is3vslviRlP+bLuMYRLbdp98amMvqudhA==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@sinclair/typebox': 0.23.5 + '@sinclair/typebox': 0.23.4 dev: true /@jest/source-map/28.0.2: resolution: {integrity: sha512-Y9dxC8ZpN3kImkk0LkK5XCEneYMAXlZ8m5bflmSL5vrwyeUpJfentacCUg6fOb8NOpOO7hz2+l37MV77T6BFPw==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@jridgewell/trace-mapping': 0.3.10 + '@jridgewell/trace-mapping': 0.3.9 callsites: 3.1.0 graceful-fs: 4.2.10 dev: true @@ -5674,7 +6983,7 @@ packages: dependencies: '@babel/core': 7.17.10 '@jest/types': 28.1.0 - '@jridgewell/trace-mapping': 0.3.10 + '@jridgewell/trace-mapping': 0.3.9 babel-plugin-istanbul: 6.1.1 chalk: 4.1.2 convert-source-map: 1.8.0 @@ -5719,11 +7028,16 @@ packages: engines: {node: '>=6.0.0'} dependencies: '@jridgewell/set-array': 1.1.1 - '@jridgewell/sourcemap-codec': 1.4.13 + '@jridgewell/sourcemap-codec': 1.4.11 + dev: true + + /@jridgewell/resolve-uri/3.0.5: + resolution: {integrity: sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==} + engines: {node: '>=6.0.0'} dev: true - /@jridgewell/resolve-uri/3.0.7: - resolution: {integrity: sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==} + /@jridgewell/resolve-uri/3.0.6: + resolution: {integrity: sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==} engines: {node: '>=6.0.0'} dev: true @@ -5732,15 +7046,22 @@ packages: engines: {node: '>=6.0.0'} dev: true - /@jridgewell/sourcemap-codec/1.4.13: - resolution: {integrity: sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==} + /@jridgewell/sourcemap-codec/1.4.11: + resolution: {integrity: sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==} + dev: true + + /@jridgewell/trace-mapping/0.3.4: + resolution: {integrity: sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==} + dependencies: + '@jridgewell/resolve-uri': 3.0.5 + '@jridgewell/sourcemap-codec': 1.4.11 dev: true - /@jridgewell/trace-mapping/0.3.10: - resolution: {integrity: sha512-Q0YbBd6OTsXm8Y21+YUSDXupHnodNC2M4O18jtd3iwJ3+vMZNdKGols0a9G6JOK0dcJ3IdUUHoh908ZI6qhk8Q==} + /@jridgewell/trace-mapping/0.3.9: + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} dependencies: - '@jridgewell/resolve-uri': 3.0.7 - '@jridgewell/sourcemap-codec': 1.4.13 + '@jridgewell/resolve-uri': 3.0.6 + '@jridgewell/sourcemap-codec': 1.4.11 dev: true /@json-rpc-tools/types/1.7.6: @@ -6243,10 +7564,10 @@ packages: react: optional: true dependencies: - '@date-io/date-fns': 2.13.2 - '@date-io/dayjs': 2.13.2 - '@date-io/luxon': 2.13.2 - '@date-io/moment': 2.13.2 + '@date-io/date-fns': 2.13.1 + '@date-io/dayjs': 2.13.1 + '@date-io/luxon': 2.13.1 + '@date-io/moment': 2.13.1 '@mui/material': 5.6.4_4xriuibr7qayay6mzcpq5f43me '@mui/system': 5.6.4_2f7y4c3dlygqpuszd3d43oslwi '@mui/utils': 5.6.1_react@18.1.0 @@ -6368,11 +7689,11 @@ packages: util: 0.11.1 dev: false - /@peculiar/asn1-schema/2.1.0: - resolution: {integrity: sha512-D6g4C5YRKC/iPujMAOXuZ7YGdaoMx8GsvWzfVSyx2LYeL38ECOKNywlYAuwbqQvON64lgsYdAujWQPX8hhoBLw==} + /@peculiar/asn1-schema/2.0.44: + resolution: {integrity: sha512-uaCnjQ9A9WwQSMuDJcNOCYEPXTahgKbFMvI7eMOMd8lXgx0J1eU7F3BoMsK5PFxa3dVUxjSQbaOjfgGoeHGgoQ==} dependencies: '@types/asn1js': 2.0.2 - asn1js: 2.4.0 + asn1js: 2.2.0 pvtsutils: 1.3.2 tslib: 2.4.0 dev: false @@ -6386,15 +7707,15 @@ packages: dev: false optional: true - /@peculiar/webcrypto/1.3.3: - resolution: {integrity: sha512-+jkp16Hp18HkphJlMtqsQKjyDWJBh0AhDuoB+vVakuIRbkBdaFb7v26Ldm25altjiYhCyQnR5NChHxwSTvbXJw==} + /@peculiar/webcrypto/1.2.3: + resolution: {integrity: sha512-q7wDfZy3k/tpnsYB23/MyyDkjn6IdHh8w+xwoVMS5cu6CjVoFzngXDZEOOuSE4zus2yO6ciQhhHxd4XkLpwVnQ==} engines: {node: '>=10.12.0'} dependencies: - '@peculiar/asn1-schema': 2.1.0 + '@peculiar/asn1-schema': 2.0.44 '@peculiar/json-schema': 1.1.12 pvtsutils: 1.3.2 tslib: 2.4.0 - webcrypto-core: 1.7.3 + webcrypto-core: 1.4.0 dev: false optional: true @@ -6697,8 +8018,8 @@ packages: resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} dev: false - /@sinclair/typebox/0.23.5: - resolution: {integrity: sha512-AFBVi/iT4g20DHoujvMH1aEDn8fGJh4xsRGCP6d8RpLPMqsNPvW01Jcn0QysXTsg++/xj25NmJsGyH9xug/wKg==} + /@sinclair/typebox/0.23.4: + resolution: {integrity: sha512-0/WqSvpVbCBAV1yPeko7eAczKbs78dNVAaX14quVlwOb2wxfKuXCx91h4NrEfkYK9zEnyVSW4JVI/trP3iS+Qg==} dev: true /@sindresorhus/is/0.14.0: @@ -6712,8 +8033,8 @@ packages: type-detect: 4.0.8 dev: true - /@sinonjs/fake-timers/9.1.2: - resolution: {integrity: sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==} + /@sinonjs/fake-timers/9.1.1: + resolution: {integrity: sha512-Wp5vwlZ0lOqpSYGKqr53INws9HLkt6JDc/pDZcPf7bchQnrXJMXPns8CXx0hFikMSGSWfvtvvpb2gtMVfkWagA==} dependencies: '@sinonjs/commons': 1.8.3 dev: true @@ -8017,34 +9338,34 @@ packages: typescript: optional: true dependencies: - '@babel/core': 7.17.10 - '@babel/plugin-proposal-class-properties': 7.16.7_@babel+core@7.17.10 - '@babel/plugin-proposal-decorators': 7.17.9_@babel+core@7.17.10 - '@babel/plugin-proposal-export-default-from': 7.16.7_@babel+core@7.17.10 - '@babel/plugin-proposal-nullish-coalescing-operator': 7.16.7_@babel+core@7.17.10 - '@babel/plugin-proposal-object-rest-spread': 7.17.3_@babel+core@7.17.10 - '@babel/plugin-proposal-optional-chaining': 7.16.7_@babel+core@7.17.10 - '@babel/plugin-proposal-private-methods': 7.16.11_@babel+core@7.17.10 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.17.10 - '@babel/plugin-transform-arrow-functions': 7.16.7_@babel+core@7.17.10 - '@babel/plugin-transform-block-scoping': 7.16.7_@babel+core@7.17.10 - '@babel/plugin-transform-classes': 7.16.7_@babel+core@7.17.10 - '@babel/plugin-transform-destructuring': 7.17.7_@babel+core@7.17.10 - '@babel/plugin-transform-for-of': 7.16.7_@babel+core@7.17.10 - '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.17.10 - '@babel/plugin-transform-shorthand-properties': 7.16.7_@babel+core@7.17.10 - '@babel/plugin-transform-spread': 7.16.7_@babel+core@7.17.10 - '@babel/preset-env': 7.16.11_@babel+core@7.17.10 - '@babel/preset-react': 7.16.7_@babel+core@7.17.10 - '@babel/preset-typescript': 7.16.7_@babel+core@7.17.10 - '@babel/register': 7.17.7_@babel+core@7.17.10 + '@babel/core': 7.17.9 + '@babel/plugin-proposal-class-properties': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-decorators': 7.17.9_@babel+core@7.17.9 + '@babel/plugin-proposal-export-default-from': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-nullish-coalescing-operator': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-object-rest-spread': 7.17.3_@babel+core@7.17.9 + '@babel/plugin-proposal-optional-chaining': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-proposal-private-methods': 7.16.11_@babel+core@7.17.9 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.17.9 + '@babel/plugin-transform-arrow-functions': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-block-scoping': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-classes': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-destructuring': 7.17.7_@babel+core@7.17.9 + '@babel/plugin-transform-for-of': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-shorthand-properties': 7.16.7_@babel+core@7.17.9 + '@babel/plugin-transform-spread': 7.16.7_@babel+core@7.17.9 + '@babel/preset-env': 7.16.11_@babel+core@7.17.9 + '@babel/preset-react': 7.16.7_@babel+core@7.17.9 + '@babel/preset-typescript': 7.16.7_@babel+core@7.17.9 + '@babel/register': 7.17.7_@babel+core@7.17.9 '@storybook/node-logger': 6.4.22 '@storybook/semver': 7.3.2 '@types/node': 17.0.31 '@types/pretty-hrtime': 1.0.1 - babel-loader: 8.2.5_usdhdj5awexcm2e5jtwd44bofa + babel-loader: 8.2.5_lgfes7hlvohbl3uptzldef4omm babel-plugin-macros: 3.1.0 - babel-plugin-polyfill-corejs3: 0.1.7_@babel+core@7.17.10 + babel-plugin-polyfill-corejs3: 0.1.7_@babel+core@7.17.9 chalk: 4.1.2 core-js: 3.22.2 express: 4.17.3 @@ -8372,8 +9693,8 @@ packages: resolution: {integrity: sha512-LMu8MZAiQspJAtMBLU2zitsIkqQv7jOwX7ih5JrXlyaDticH7l2j6Q+1mCZNWUOiMTizj0ivulmUsSaYbpToSw==} dependencies: '@babel/core': 7.17.10 - '@babel/generator': 7.17.9 - '@babel/parser': 7.17.9 + '@babel/generator': 7.17.10 + '@babel/parser': 7.17.10 '@babel/plugin-transform-react-jsx': 7.17.3_@babel+core@7.17.10 '@babel/preset-env': 7.16.11_@babel+core@7.17.10 '@babel/traverse': 7.17.10 @@ -8412,9 +9733,9 @@ packages: typescript: optional: true dependencies: - '@babel/core': 7.17.10 - '@babel/plugin-transform-template-literals': 7.16.7_@babel+core@7.17.10 - '@babel/preset-react': 7.16.7_@babel+core@7.17.10 + '@babel/core': 7.17.9 + '@babel/plugin-transform-template-literals': 7.16.7_@babel+core@7.17.9 + '@babel/preset-react': 7.16.7_@babel+core@7.17.9 '@storybook/addons': 6.4.22 '@storybook/core-client': 6.4.22_webpack@4.46.0 '@storybook/core-common': 6.4.22 @@ -8423,7 +9744,7 @@ packages: '@storybook/ui': 6.4.22 '@types/node': 17.0.31 '@types/webpack': 4.41.32 - babel-loader: 8.2.5_usdhdj5awexcm2e5jtwd44bofa + babel-loader: 8.2.5_lgfes7hlvohbl3uptzldef4omm case-sensitive-paths-webpack-plugin: 2.4.0 chalk: 4.1.2 core-js: 3.22.2 @@ -9030,14 +10351,14 @@ packages: dev: false optional: true - /@types/babel__core/7.1.19: - resolution: {integrity: sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==} + /@types/babel__core/7.1.18: + resolution: {integrity: sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ==} dependencies: '@babel/parser': 7.17.10 '@babel/types': 7.17.10 '@types/babel__generator': 7.6.4 '@types/babel__template': 7.4.1 - '@types/babel__traverse': 7.17.1 + '@types/babel__traverse': 7.14.2 dev: true /@types/babel__generator/7.6.4: @@ -9053,8 +10374,8 @@ packages: '@babel/types': 7.17.10 dev: true - /@types/babel__traverse/7.17.1: - resolution: {integrity: sha512-kVzjari1s2YVi77D3w1yuvohV2idweYXMCDzqBiVNN63TcDWrIlTVOYpqVrvbbyOE/IyzBoTKF0fdnLPEORFxA==} + /@types/babel__traverse/7.14.2: + resolution: {integrity: sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==} dependencies: '@babel/types': 7.17.10 dev: true @@ -9317,7 +10638,7 @@ packages: /@types/elliptic/6.4.14: resolution: {integrity: sha512-z4OBcDAU0GVwDTuwJzQCiL6188QvZMkvoERgcVjq0/mPM8jCfdwZ3x5zQEVoL9WCAru3aG5wl3Z5Ww5wBWn7ZQ==} dependencies: - '@types/bn.js': 5.1.0 + '@types/bn.js': 4.11.6 /@types/eslint-scope/3.7.3: resolution: {integrity: sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g==} @@ -9444,8 +10765,8 @@ packages: resolution: {integrity: sha512-NZwaaynfs1oIoLAV1vg18e7QMVDvw+6SQrdJc8w3BwUaoroVSf6EBj/Sk4PBWGxsq0dzhA2drbsuMC1/6C6KgQ==} dev: true - /@types/http-proxy/1.17.9: - resolution: {integrity: sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==} + /@types/http-proxy/1.17.8: + resolution: {integrity: sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA==} dependencies: '@types/node': 17.0.31 dev: true @@ -9574,8 +10895,8 @@ packages: resolution: {integrity: sha512-eI5Yrz3Qv4KPUa/nSIAi0h+qX0XyewOliug5F2QAtuRg6Kjg6jfmxe1GIwoIRhZspD1A0RP8ANrPwvEXXtRFog==} dev: false - /@types/prettier/2.6.0: - resolution: {integrity: sha512-G/AdOadiZhnJp0jXCaBQU449W2h716OW/EoXeYkCytxKL06X1WCXB4DZpp8TpZ8eyIJVS1cw4lrlkkSYU21cDw==} + /@types/prettier/2.4.4: + resolution: {integrity: sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA==} dev: true /@types/pretty-hrtime/1.0.1: @@ -9695,10 +11016,6 @@ packages: '@types/node': 17.0.31 dev: true - /@types/retry/0.12.0: - resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} - dev: true - /@types/retry/0.12.1: resolution: {integrity: sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==} dev: true @@ -11043,8 +12360,8 @@ packages: safer-buffer: 2.1.2 dev: false - /asn1js/2.4.0: - resolution: {integrity: sha512-PvZC0FMyMut8aOnR2jAEGSkmRtHIUYPe9amUEnGjr9TdnUmsfoOkjrvUkOEU9mzpYBR1HyO9bF+8U1cLTMMHhQ==} + /asn1js/2.2.0: + resolution: {integrity: sha512-oagLNqpfNv7CvmyMoexMDNyVDSiq1rya0AEUgcLlNHdHgNl6U/hi8xY370n5y+ZIFEXOx0J4B1qF2NDjMRxklA==} engines: {node: '>=6.0.0'} dependencies: pvutils: 1.1.3 @@ -11206,7 +12523,7 @@ packages: resolution: {integrity: sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=} deprecated: Critical security vulnerability fixed in v0.21.1. For more information, see https://github.com/axios/axios/pull/3410 dependencies: - follow-redirects: 1.15.0 + follow-redirects: 1.14.9 is-buffer: 1.1.6 transitivePeerDependencies: - debug @@ -11392,18 +12709,35 @@ packages: optional: true dependencies: '@babel/core': 7.17.10 - '@jest/transform': 28.1.0 - '@types/babel__core': 7.1.19 - babel-plugin-istanbul: 6.1.1 - babel-preset-jest: 28.0.2_@babel+core@7.17.10 - chalk: 4.1.2 - graceful-fs: 4.2.10 - slash: 3.0.0 - transitivePeerDependencies: - - supports-color + '@jest/transform': 28.1.0 + '@types/babel__core': 7.1.18 + babel-plugin-istanbul: 6.1.1 + babel-preset-jest: 28.0.2_@babel+core@7.17.10 + chalk: 4.1.2 + graceful-fs: 4.2.10 + slash: 3.0.0 + transitivePeerDependencies: + - supports-color + dev: true + + /babel-loader/8.2.5_@babel+core@7.17.10: + resolution: {integrity: sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==} + engines: {node: '>= 8.9'} + peerDependencies: + '@babel/core': ^7.0.0 + webpack: '>=2' + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.10 + find-cache-dir: 3.3.2 + loader-utils: 2.0.2 + make-dir: 3.1.0 + schema-utils: 2.7.1 dev: true - /babel-loader/8.2.5_@babel+core@7.17.10: + /babel-loader/8.2.5_lgfes7hlvohbl3uptzldef4omm: resolution: {integrity: sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==} engines: {node: '>= 8.9'} peerDependencies: @@ -11413,11 +12747,12 @@ packages: '@babel/core': optional: true dependencies: - '@babel/core': 7.17.10 + '@babel/core': 7.17.9 find-cache-dir: 3.3.2 loader-utils: 2.0.2 make-dir: 3.1.0 schema-utils: 2.7.1 + webpack: 4.46.0 dev: true /babel-loader/8.2.5_rb5fcebzp6kx3hqg3ucus54t3m: @@ -11531,8 +12866,8 @@ packages: dependencies: '@babel/template': 7.16.7 '@babel/types': 7.17.10 - '@types/babel__core': 7.1.19 - '@types/babel__traverse': 7.17.1 + '@types/babel__core': 7.1.18 + '@types/babel__traverse': 7.14.2 dev: true /babel-plugin-macros/2.8.0: @@ -11603,6 +12938,22 @@ packages: - supports-color dev: true + /babel-plugin-polyfill-corejs2/0.3.1_@babel+core@7.17.9: + resolution: {integrity: sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/compat-data': 7.17.7 + '@babel/core': 7.17.9 + '@babel/helper-define-polyfill-provider': 0.3.1_@babel+core@7.17.9 + semver: 6.3.0 + transitivePeerDependencies: + - supports-color + dev: true + /babel-plugin-polyfill-corejs3/0.1.7_@babel+core@7.17.10: resolution: {integrity: sha512-u+gbS9bbPhZWEeyy1oR/YaaSpod/KDT07arZHb80aTpl8H5ZBq+uN1nN9/xtX7jQyfLdPfoqI4Rue/MQSWJquw==} peerDependencies: @@ -11618,6 +12969,21 @@ packages: - supports-color dev: true + /babel-plugin-polyfill-corejs3/0.1.7_@babel+core@7.17.9: + resolution: {integrity: sha512-u+gbS9bbPhZWEeyy1oR/YaaSpod/KDT07arZHb80aTpl8H5ZBq+uN1nN9/xtX7jQyfLdPfoqI4Rue/MQSWJquw==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-define-polyfill-provider': 0.1.5_@babel+core@7.17.9 + core-js-compat: 3.22.2 + transitivePeerDependencies: + - supports-color + dev: true + /babel-plugin-polyfill-corejs3/0.2.4_@babel+core@7.17.10: resolution: {integrity: sha512-z3HnJE5TY/j4EFEa/qpQMSbcUJZ5JQi+3UFjXzn6pQCmIKc5Ug5j98SuYyH+m4xQnvKlMDIW4plLfgyVnd0IcQ==} peerDependencies: @@ -11648,6 +13014,21 @@ packages: - supports-color dev: true + /babel-plugin-polyfill-corejs3/0.5.2_@babel+core@7.17.9: + resolution: {integrity: sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-define-polyfill-provider': 0.3.1_@babel+core@7.17.9 + core-js-compat: 3.22.2 + transitivePeerDependencies: + - supports-color + dev: true + /babel-plugin-polyfill-regenerator/0.2.3_@babel+core@7.17.10: resolution: {integrity: sha512-JVE78oRZPKFIeUqFGrSORNzQnrDwZR16oiWeGM8ZyjBn2XAT5OjP+wXx5ESuo33nUsFUEJYjtklnsKbxW5L+7g==} peerDependencies: @@ -11676,6 +13057,20 @@ packages: - supports-color dev: true + /babel-plugin-polyfill-regenerator/0.3.1_@babel+core@7.17.9: + resolution: {integrity: sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + dependencies: + '@babel/core': 7.17.9 + '@babel/helper-define-polyfill-provider': 0.3.1_@babel+core@7.17.9 + transitivePeerDependencies: + - supports-color + dev: true + /babel-plugin-react-docgen/4.2.1: resolution: {integrity: sha512-UQ0NmGHj/HAqi5Bew8WvNfCk8wSsmdgNd8ZdMjBCICtyCJCq9LiqgqvjCYe570/Wg7AQArSq1VQ60Dd/CHN7mQ==} dependencies: @@ -12272,9 +13667,10 @@ packages: raw-body: 2.5.1 type-is: 1.6.18 unpipe: 1.0.0 + dev: false - /bonjour-service/1.0.12: - resolution: {integrity: sha512-pMmguXYCu63Ug37DluMKEHdxc+aaIf/ay4YbF8Gxtba+9d3u+rmEWy61VK3Z3hp8Rskok3BunHYnG0dUHAsblw==} + /bonjour-service/1.0.11: + resolution: {integrity: sha512-drMprzr2rDTCtgEE3VgdA9uUFaUHF+jXduwYSThHJnKMYM+FhI9Z3ph+TX3xy0LtgYHae6CHYPJ/2UnK8nQHcA==} dependencies: array-flatten: 2.1.2 dns-equal: 1.0.0 @@ -12708,7 +14104,7 @@ packages: resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} dependencies: pascal-case: 3.1.2 - tslib: 2.4.0 + tslib: 2.3.1 dev: true /camelcase-css/2.0.1: @@ -13435,11 +14831,6 @@ packages: resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} engines: {node: '>= 0.6'} - /cookie/0.5.0: - resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} - engines: {node: '>= 0.6'} - dev: true - /cookiejar/2.1.3: resolution: {integrity: sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==} @@ -13559,7 +14950,7 @@ packages: vary: 1.1.2 dev: false - /cosmiconfig-typescript-loader/1.0.9_gmciqoxx2ucazedvari2lqqjfq: + /cosmiconfig-typescript-loader/1.0.9_ghcombcbpherolfxll753x4zfy: resolution: {integrity: sha512-tRuMRhxN4m1Y8hP9SNYfz7jRwt8lZdWxdjg/ohg5esKmsndJIn4yT96oJVcf5x0eA11taXl+sIp+ielu529k6g==} engines: {node: '>=12', npm: '>=6'} peerDependencies: @@ -13573,8 +14964,8 @@ packages: dependencies: '@types/node': 17.0.31 cosmiconfig: 7.0.1 - ts-node: 10.7.0_gmciqoxx2ucazedvari2lqqjfq - typescript: 4.6.4 + ts-node: 10.7.0_ghcombcbpherolfxll753x4zfy + typescript: 4.6.3 transitivePeerDependencies: - '@swc/core' - '@swc/wasm' @@ -14363,6 +15754,10 @@ packages: regexp.prototype.flags: 1.4.3 dev: false + /deep-freeze/0.0.1: + resolution: {integrity: sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=} + dev: false + /deep-is/0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} @@ -14370,6 +15765,11 @@ packages: resolution: {integrity: sha512-QkgBca0mL08P6HiOjoqvmm6xOAl2W6CT2+34Ljhg0OeFan8cwlcdq8jrLKsBBuUFAZLsN5b6y491KdKEoSo9lg==} dev: true + /deepmerge/2.2.1: + resolution: {integrity: sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==} + engines: {node: '>=0.10.0'} + dev: false + /deepmerge/4.2.2: resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} engines: {node: '>=0.10.0'} @@ -14489,6 +15889,7 @@ packages: /depd/2.0.0: resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} engines: {node: '>= 0.8'} + dev: false /des.js/1.0.1: resolution: {integrity: sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==} @@ -14502,6 +15903,7 @@ packages: /destroy/1.2.0: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + dev: false /detab/2.0.4: resolution: {integrity: sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==} @@ -14761,7 +16163,7 @@ packages: resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} dependencies: no-case: 3.0.4 - tslib: 2.4.0 + tslib: 2.3.1 dev: true /dot-prop/5.3.0: @@ -15071,6 +16473,12 @@ packages: hasBin: true dev: true + /equals/1.0.5: + resolution: {integrity: sha1-ISBi3eXhpRDZVfE1mO/MamIbas4=} + dependencies: + jkroso-type: 1.1.1 + dev: false + /err-code/3.0.1: resolution: {integrity: sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA==} dev: false @@ -15186,35 +16594,6 @@ packages: string.prototype.trimend: 1.0.4 string.prototype.trimstart: 1.0.4 unbox-primitive: 1.0.1 - dev: true - - /es-abstract/1.20.0: - resolution: {integrity: sha512-URbD8tgRthKD3YcC39vbvSDrX23upXnPcnGAjQfgxXF5ID75YcENawc9ZX/9iTP9ptUyfCLIxTTuMYoRfiOVKA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - es-to-primitive: 1.2.1 - function-bind: 1.1.1 - function.prototype.name: 1.1.5 - get-intrinsic: 1.1.1 - get-symbol-description: 1.0.0 - has: 1.0.3 - has-property-descriptors: 1.0.0 - has-symbols: 1.0.3 - internal-slot: 1.0.3 - is-callable: 1.2.4 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-weakref: 1.0.2 - object-inspect: 1.12.0 - object-keys: 1.1.1 - object.assign: 4.1.2 - regexp.prototype.flags: 1.4.3 - string.prototype.trimend: 1.0.5 - string.prototype.trimstart: 1.0.5 - unbox-primitive: 1.0.2 /es-array-method-boxes-properly/1.0.0: resolution: {integrity: sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==} @@ -15619,8 +16998,8 @@ packages: resolution: {integrity: sha512-YNF+mZ/Wu2FU/gvmzuWtYc8rloubL7wfXCTgouFrnjGVXPA/EeYYA7pupXWrb3Iv1cTBeSSxxJIbK23l4MRNqg==} engines: {node: '>=8.3.0'} dependencies: - '@babel/traverse': 7.17.10 - '@babel/types': 7.17.10 + '@babel/traverse': 7.17.9 + '@babel/types': 7.17.0 c8: 7.11.2 transitivePeerDependencies: - supports-color @@ -16180,43 +17559,6 @@ packages: utils-merge: 1.0.1 vary: 1.1.2 - /express/4.18.1: - resolution: {integrity: sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==} - engines: {node: '>= 0.10.0'} - dependencies: - accepts: 1.3.8 - array-flatten: 1.1.1 - body-parser: 1.20.0 - content-disposition: 0.5.4 - content-type: 1.0.4 - cookie: 0.5.0 - cookie-signature: 1.0.6 - debug: 2.6.9 - depd: 2.0.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - etag: 1.8.1 - finalhandler: 1.2.0 - fresh: 0.5.2 - http-errors: 2.0.0 - merge-descriptors: 1.0.1 - methods: 1.1.2 - on-finished: 2.4.1 - parseurl: 1.3.3 - path-to-regexp: 0.1.7 - proxy-addr: 2.0.7 - qs: 6.10.3 - range-parser: 1.2.1 - safe-buffer: 5.2.1 - send: 0.18.0 - serve-static: 1.15.0 - setprototypeof: 1.2.0 - statuses: 2.0.1 - type-is: 1.6.18 - utils-merge: 1.0.1 - vary: 1.1.2 - dev: true - /ext/1.4.0: resolution: {integrity: sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==} dependencies: @@ -16494,19 +17836,6 @@ packages: statuses: 1.5.0 unpipe: 1.0.0 - /finalhandler/1.2.0: - resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} - engines: {node: '>= 0.8'} - dependencies: - debug: 2.6.9 - encodeurl: 1.0.2 - escape-html: 1.0.3 - on-finished: 2.4.1 - parseurl: 1.3.3 - statuses: 2.0.1 - unpipe: 1.0.0 - dev: true - /find-cache-dir/2.1.0: resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} engines: {node: '>=6'} @@ -16676,8 +18005,8 @@ packages: optional: true dev: false - /follow-redirects/1.15.0: - resolution: {integrity: sha512-aExlJShTV4qOUOL7yF1U5tvLCB0xQuudbf6toyYA0E/acBNw71mvjFTnLaRp50aQaYocMR0a/RMMBIHeZnGyjQ==} + /follow-redirects/1.14.9: + resolution: {integrity: sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -16685,8 +18014,8 @@ packages: debug: optional: true - /follow-redirects/1.15.0_debug@4.3.4: - resolution: {integrity: sha512-aExlJShTV4qOUOL7yF1U5tvLCB0xQuudbf6toyYA0E/acBNw71mvjFTnLaRp50aQaYocMR0a/RMMBIHeZnGyjQ==} + /follow-redirects/1.14.9_debug@4.3.4: + resolution: {integrity: sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -16975,8 +18304,9 @@ packages: dependencies: call-bind: 1.0.2 define-properties: 1.1.4 - es-abstract: 1.20.0 + es-abstract: 1.19.5 functions-have-names: 1.2.3 + dev: true /functional-red-black-tree/1.0.1: resolution: {integrity: sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=} @@ -17462,7 +18792,7 @@ packages: dependencies: ws: 7.5.7 optionalDependencies: - '@peculiar/webcrypto': 1.3.3 + '@peculiar/webcrypto': 1.2.3 emailjs: 2.2.0 text-encoding: 0.7.0 transitivePeerDependencies: @@ -17513,9 +18843,6 @@ packages: /has-bigints/1.0.1: resolution: {integrity: sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==} - /has-bigints/1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} - /has-binary2/1.0.3: resolution: {integrity: sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==} dependencies: @@ -17919,6 +19246,7 @@ packages: setprototypeof: 1.2.0 statuses: 2.0.1 toidentifier: 1.0.1 + dev: false /http-https/1.0.0: resolution: {integrity: sha1-L5CN1fHbQGjAWM1ubUzjkskTOJs=} @@ -17949,8 +19277,8 @@ packages: - debug dev: false - /http-proxy-middleware/2.0.6_@types+express@4.17.13: - resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==} + /http-proxy-middleware/2.0.4_@types+express@4.17.13: + resolution: {integrity: sha512-m/4FxX17SUvz4lJ5WPXOHDUuCwIqXLfLHs1s0uZ3oYjhoXlx9csYxaOa0ElDEJ+h8Q4iJ1s+lTMbiCa4EXIJqg==} engines: {node: '>=12.0.0'} peerDependencies: '@types/express': ^4.17.13 @@ -17959,7 +19287,7 @@ packages: optional: true dependencies: '@types/express': 4.17.13 - '@types/http-proxy': 1.17.9 + '@types/http-proxy': 1.17.8 http-proxy: 1.18.1 is-glob: 4.0.3 is-plain-obj: 3.0.0 @@ -17973,7 +19301,7 @@ packages: engines: {node: '>=8.0.0'} dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.15.0 + follow-redirects: 1.14.9 requires-port: 1.0.0 transitivePeerDependencies: - debug @@ -17984,7 +19312,7 @@ packages: engines: {node: '>=8.0.0'} dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.15.0_debug@4.3.4 + follow-redirects: 1.14.9_debug@4.3.4 requires-port: 1.0.0 transitivePeerDependencies: - debug @@ -18445,7 +19773,7 @@ packages: /is-bigint/1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: - has-bigints: 1.0.2 + has-bigints: 1.0.1 /is-binary-path/1.0.1: resolution: {integrity: sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=} @@ -18501,12 +19829,6 @@ packages: dependencies: has: 1.0.3 - /is-core-module/2.9.0: - resolution: {integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==} - dependencies: - has: 1.0.3 - dev: true - /is-data-descriptor/0.1.4: resolution: {integrity: sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=} engines: {node: '>=0.10.0'} @@ -18967,6 +20289,19 @@ packages: engines: {node: '>=8'} dev: true + /istanbul-lib-instrument/5.1.0: + resolution: {integrity: sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==} + engines: {node: '>=8'} + dependencies: + '@babel/core': 7.17.10 + '@babel/parser': 7.17.10 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-coverage: 3.2.0 + semver: 6.3.0 + transitivePeerDependencies: + - supports-color + dev: true + /istanbul-lib-instrument/5.2.0: resolution: {integrity: sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==} engines: {node: '>=8'} @@ -19493,14 +20828,14 @@ packages: dependencies: '@babel/core': 7.17.10 '@babel/generator': 7.17.10 - '@babel/plugin-syntax-typescript': 7.17.10_@babel+core@7.17.10 + '@babel/plugin-syntax-typescript': 7.16.7_@babel+core@7.17.10 '@babel/traverse': 7.17.10 '@babel/types': 7.17.10 '@jest/expect-utils': 28.1.0 '@jest/transform': 28.1.0 '@jest/types': 28.1.0 - '@types/babel__traverse': 7.17.1 - '@types/prettier': 2.6.0 + '@types/babel__traverse': 7.14.2 + '@types/prettier': 2.4.4 babel-preset-current-node-syntax: 1.0.1_@babel+core@7.17.10 chalk: 4.1.2 expect: 28.1.0 @@ -19633,6 +20968,10 @@ packages: - ts-node dev: true + /jkroso-type/1.1.1: + resolution: {integrity: sha1-vEztbWxF/gdFKCuvyGqfjE/JzmE=} + dev: false + /joi/17.6.0: resolution: {integrity: sha512-OX5dG6DTbcr/kbMFj0KGYxuew69HPcAE3K/sZpEV2nP6e/j/C0HV+HNiBPCASxdx5T7DMoa0s8UeHWMnb6n2zw==} dependencies: @@ -20420,7 +21759,7 @@ packages: /lower-case/2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} dependencies: - tslib: 2.4.0 + tslib: 2.3.1 dev: true /lowercase-keys/1.0.1: @@ -21317,7 +22656,7 @@ packages: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} dependencies: lower-case: 2.0.2 - tslib: 2.4.0 + tslib: 2.3.1 dev: true /node-addon-api/2.0.2: @@ -21440,7 +22779,7 @@ packages: engines: {node: '>=10'} dependencies: hosted-git-info: 4.1.0 - is-core-module: 2.9.0 + is-core-module: 2.8.1 semver: 7.3.7 validate-npm-package-license: 3.0.4 dev: true @@ -21572,7 +22911,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 + define-properties: 1.1.3 dev: false /object-keys/0.4.0: @@ -21696,6 +23035,7 @@ packages: engines: {node: '>= 0.8'} dependencies: ee-first: 1.1.1 + dev: false /on-headers/1.0.2: resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==} @@ -21942,11 +23282,11 @@ packages: retry: 0.12.0 dev: false - /p-retry/4.6.2: - resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==} + /p-retry/4.6.1: + resolution: {integrity: sha512-e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA==} engines: {node: '>=8'} dependencies: - '@types/retry': 0.12.0 + '@types/retry': 0.12.1 retry: 0.13.1 dev: true @@ -21987,7 +23327,7 @@ packages: resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} dependencies: dot-case: 3.0.4 - tslib: 2.4.0 + tslib: 2.3.1 dev: true /parent-module/1.0.1: @@ -22084,7 +23424,7 @@ packages: resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} dependencies: no-case: 3.0.4 - tslib: 2.4.0 + tslib: 2.3.1 dev: true /pascalcase/0.1.1: @@ -22300,7 +23640,7 @@ packages: resolution: {integrity: sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==} engines: {node: '>= 0.12.0'} dependencies: - async: 2.6.4 + async: 2.6.3 debug: 3.2.7 mkdirp: 0.5.6 dev: false @@ -22713,6 +24053,24 @@ packages: resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==} engines: {node: '>=6'} + /pure-react-carousel/1.28.1: + resolution: {integrity: sha512-adOMhlGLxHiQxHwJvBgFJ6SXTM2UPuMv6tO10wsJzvQCdnCXcN5bRYIem5f55WQpwr9X0Bbb9ORw41KbGpAJWQ==} + peerDependencies: + react: 15.x || 16.x || 17.x || 18 + react-dom: 15.x || 16.x || 17.x || 18 + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true + dependencies: + '@babel/runtime': 7.17.9 + deep-freeze: 0.0.1 + deepmerge: 2.2.1 + equals: 1.0.5 + prop-types: 15.8.1 + dev: false + /pvtsutils/1.2.2: resolution: {integrity: sha512-OALo5ZEdqiI127i64+CXwkCOyFHUA+tCQgaUO/MvRDFXWPr53f2sx28ECNztUEzuyu5xvuuD1EB/szg9mwJoGA==} dependencies: @@ -22866,6 +24224,7 @@ packages: http-errors: 2.0.0 iconv-lite: 0.4.24 unpipe: 1.0.0 + dev: false /raw-loader/4.0.2_webpack@4.46.0: resolution: {integrity: sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==} @@ -22988,8 +24347,8 @@ packages: engines: {node: '>=8.10.0'} hasBin: true dependencies: - '@babel/core': 7.17.10 - '@babel/generator': 7.17.10 + '@babel/core': 7.17.9 + '@babel/generator': 7.17.9 '@babel/runtime': 7.17.9 ast-types: 0.14.2 commander: 2.20.3 @@ -23596,6 +24955,7 @@ packages: call-bind: 1.0.2 define-properties: 1.1.4 functions-have-names: 1.2.3 + dev: false /regexpp/3.2.0: resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} @@ -24382,25 +25742,6 @@ packages: range-parser: 1.2.1 statuses: 1.5.0 - /send/0.18.0: - resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} - engines: {node: '>= 0.8.0'} - dependencies: - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - etag: 1.8.1 - fresh: 0.5.2 - http-errors: 2.0.0 - mime: 1.6.0 - ms: 2.1.3 - on-finished: 2.4.1 - range-parser: 1.2.1 - statuses: 2.0.1 - dev: true - /serialize-javascript/4.0.0: resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==} dependencies: @@ -24451,16 +25792,6 @@ packages: parseurl: 1.3.3 send: 0.17.2 - /serve-static/1.15.0: - resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} - engines: {node: '>= 0.8.0'} - dependencies: - encodeurl: 1.0.2 - escape-html: 1.0.3 - parseurl: 1.3.3 - send: 0.18.0 - dev: true - /servify/0.1.12: resolution: {integrity: sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==} engines: {node: '>=6'} @@ -25028,6 +26359,7 @@ packages: /statuses/2.0.1: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} + dev: false /store/2.0.12: resolution: {integrity: sha1-jFNOKguDH3K3X8XxEZhXxE711ZM=} @@ -25196,7 +26528,7 @@ packages: dependencies: call-bind: 1.0.2 define-properties: 1.1.4 - es-abstract: 1.20.0 + es-abstract: 1.19.5 dev: false /string.prototype.trimend/1.0.4: @@ -25205,26 +26537,12 @@ packages: call-bind: 1.0.2 define-properties: 1.1.4 - /string.prototype.trimend/1.0.5: - resolution: {integrity: sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==} - dependencies: - call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.0 - /string.prototype.trimstart/1.0.4: resolution: {integrity: sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==} dependencies: call-bind: 1.0.2 define-properties: 1.1.4 - /string.prototype.trimstart/1.0.5: - resolution: {integrity: sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==} - dependencies: - call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.0 - /string_decoder/0.10.31: resolution: {integrity: sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=} dev: false @@ -26112,7 +27430,7 @@ packages: yn: 3.1.1 dev: true - /ts-node/10.7.0_gmciqoxx2ucazedvari2lqqjfq: + /ts-node/10.7.0_ghcombcbpherolfxll753x4zfy: resolution: {integrity: sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A==} hasBin: true peerDependencies: @@ -26143,7 +27461,7 @@ packages: create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 4.6.4 + typescript: 4.6.3 v8-compile-cache-lib: 3.0.0 yn: 3.1.1 dev: true @@ -26468,8 +27786,8 @@ packages: hasBin: true dev: false - /typescript/4.6.4: - resolution: {integrity: sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==} + /typescript/4.6.3: + resolution: {integrity: sha512-yNIatDa5iaofVozS/uQJEl3JRWLKKGJKh6Yaiv0GLGSuhpFJe7P3SbHZ8/yjAHRQwKRoA6YZqlfjXWmVzoVSMw==} engines: {node: '>=4.2.0'} hasBin: true dev: true @@ -26569,14 +27887,6 @@ packages: has-symbols: 1.0.3 which-boxed-primitive: 1.0.2 - /unbox-primitive/1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} - dependencies: - call-bind: 1.0.2 - has-bigints: 1.0.2 - has-symbols: 1.0.3 - which-boxed-primitive: 1.0.2 - /unc-path-regex/0.1.2: resolution: {integrity: sha1-5z3T17DXxe2G+6xrCufYxqadUPo=} engines: {node: '>=0.10.0'} @@ -26980,7 +28290,7 @@ packages: resolution: {integrity: sha512-HcvgY/xaRm7isYmyx+lFKA4uQmfUbN0J4M0nNItvzTvH/iQ9kW5j/t4YSR+Ge323/lrgDAWJoF46tzGQHwBHFw==} engines: {node: '>=10.12.0'} dependencies: - '@jridgewell/trace-mapping': 0.3.10 + '@jridgewell/trace-mapping': 0.3.9 '@types/istanbul-lib-coverage': 2.0.4 convert-source-map: 1.8.0 dev: true @@ -27458,12 +28768,12 @@ packages: web3-utils: 1.7.3 dev: false - /webcrypto-core/1.7.3: - resolution: {integrity: sha512-8TnMtwwC/hQOyvElAOJ26lJKGgcErUG02KnKS1+QhjV4mDvQetVWU1EUEeLF8ICOrdc42+GypocyBJKRqo2kQg==} + /webcrypto-core/1.4.0: + resolution: {integrity: sha512-HY3Zo0GcRIQUUDnlZ/shGjN+4f7LVMkdJZoGPog+oHhJsJdMz6iM8Za5xZ0t6qg7Fx/JXXz+oBv2J2p982hGTQ==} dependencies: - '@peculiar/asn1-schema': 2.1.0 + '@peculiar/asn1-schema': 2.0.44 '@peculiar/json-schema': 1.1.12 - asn1js: 2.4.0 + asn1js: 2.2.0 pvtsutils: 1.3.2 tslib: 2.4.0 dev: false @@ -27653,19 +28963,19 @@ packages: '@types/sockjs': 0.3.33 '@types/ws': 8.5.3 ansi-html-community: 0.0.8 - bonjour-service: 1.0.12 + bonjour-service: 1.0.11 chokidar: 3.5.3 colorette: 2.0.16 compression: 1.7.4 connect-history-api-fallback: 1.6.0 default-gateway: 6.0.3 - express: 4.18.1 + express: 4.17.3 graceful-fs: 4.2.10 html-entities: 2.3.3 - http-proxy-middleware: 2.0.6_@types+express@4.17.13 + http-proxy-middleware: 2.0.4_@types+express@4.17.13 ipaddr.js: 2.0.1 open: 8.4.0 - p-retry: 4.6.2 + p-retry: 4.6.1 rimraf: 3.0.2 schema-utils: 4.0.0 selfsigned: 2.0.1 @@ -27675,7 +28985,7 @@ packages: webpack: 5.72.0_webpack-cli@4.9.2 webpack-cli: 4.9.2_4evrg3m2qioscfus6hwjof6pci webpack-dev-middleware: 5.3.1_webpack@5.72.0 - ws: 8.6.0 + ws: 8.5.0 transitivePeerDependencies: - bufferutil - debug @@ -28264,19 +29574,6 @@ packages: utf-8-validate: 5.0.8 dev: false - /ws/8.6.0: - resolution: {integrity: sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: true - /xdg-basedir/4.0.0: resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} engines: {node: '>=8'}