From 06b934c6d0fd8719c477e9d1982ace2398bc8b10 Mon Sep 17 00:00:00 2001 From: Kenton Duprey Date: Wed, 10 Dec 2025 12:16:52 -0500 Subject: [PATCH 01/18] feat(clerk-js,clerk-react,shared,types): Add sign in with Solana feature support (#7293) Signed-off-by: Kenton Duprey Co-authored-by: Dylan Staley <88163+dstaley@users.noreply.github.com> Signed-off-by: Kenton Duprey --- .changeset/legal-jokes-beg.md | 9 + packages/clerk-js/bundle-check.mjs | 4 +- packages/clerk-js/package.json | 4 + packages/clerk-js/rspack.config.js | 15 +- packages/clerk-js/src/core/clerk.ts | 26 +- .../clerk-js/src/core/resources/SignIn.ts | 48 +- .../clerk-js/src/core/resources/SignUp.ts | 32 +- packages/localizations/src/ar-SA.ts | 15 + packages/localizations/src/be-BY.ts | 15 + packages/localizations/src/bg-BG.ts | 15 + packages/localizations/src/bn-IN.ts | 15 + packages/localizations/src/ca-ES.ts | 15 + packages/localizations/src/cs-CZ.ts | 15 + packages/localizations/src/da-DK.ts | 15 + packages/localizations/src/de-DE.ts | 15 + packages/localizations/src/el-GR.ts | 15 + packages/localizations/src/en-GB.ts | 15 + packages/localizations/src/en-US.ts | 17 + packages/localizations/src/es-CR.ts | 15 + packages/localizations/src/es-ES.ts | 15 + packages/localizations/src/es-MX.ts | 15 + packages/localizations/src/es-UY.ts | 15 + packages/localizations/src/fa-IR.ts | 15 + packages/localizations/src/fi-FI.ts | 15 + packages/localizations/src/fr-FR.ts | 15 + packages/localizations/src/he-IL.ts | 15 + packages/localizations/src/hi-IN.ts | 15 + packages/localizations/src/hr-HR.ts | 15 + packages/localizations/src/hu-HU.ts | 15 + packages/localizations/src/id-ID.ts | 15 + packages/localizations/src/is-IS.ts | 15 + packages/localizations/src/it-IT.ts | 15 + packages/localizations/src/ja-JP.ts | 15 + packages/localizations/src/kk-KZ.ts | 15 + packages/localizations/src/ko-KR.ts | 15 + packages/localizations/src/mn-MN.ts | 15 + packages/localizations/src/ms-MY.ts | 15 + packages/localizations/src/nb-NO.ts | 15 + packages/localizations/src/nl-BE.ts | 15 + packages/localizations/src/nl-NL.ts | 15 + packages/localizations/src/pl-PL.ts | 15 + packages/localizations/src/pt-BR.ts | 15 + packages/localizations/src/pt-PT.ts | 15 + packages/localizations/src/ro-RO.ts | 15 + packages/localizations/src/ru-RU.ts | 15 + packages/localizations/src/sk-SK.ts | 15 + packages/localizations/src/sr-RS.ts | 15 + packages/localizations/src/sv-SE.ts | 15 + packages/localizations/src/ta-IN.ts | 15 + packages/localizations/src/te-IN.ts | 15 + packages/localizations/src/th-TH.ts | 15 + packages/localizations/src/tr-TR.ts | 15 + packages/localizations/src/uk-UA.ts | 15 + packages/localizations/src/vi-VN.ts | 15 + packages/localizations/src/zh-CN.ts | 15 + packages/localizations/src/zh-TW.ts | 15 + packages/react/src/isomorphicClerk.ts | 10 + packages/shared/package.json | 4 + ...oviders.ts => injectedWeb3EthProviders.ts} | 20 +- .../clerk-js/injectedWeb3SolanaProviders.ts | 66 + packages/shared/src/internal/clerk-js/web3.ts | 98 +- packages/shared/src/types/clerk.ts | 15 + packages/shared/src/types/factors.ts | 1 + packages/shared/src/types/localization.ts | 16 + packages/shared/src/types/signIn.ts | 3 + packages/shared/src/types/signInCommon.ts | 4 + packages/shared/src/types/signInFuture.ts | 9 + packages/shared/src/types/signUp.ts | 2 + packages/shared/src/types/signUpCommon.ts | 5 + packages/shared/src/types/web3.ts | 9 +- packages/shared/src/types/web3Wallet.ts | 4 +- packages/shared/src/web3.ts | 5 + packages/ui/package.json | 3 + packages/ui/src/common/WalletInitialIcon.tsx | 43 + .../SignInFactorOneSolanaWalletsCard.tsx | 94 + .../components/SignIn/SignInSocialButtons.tsx | 4 + packages/ui/src/components/SignIn/index.tsx | 4 + .../components/SignUp/SignUpSocialButtons.tsx | 4 + .../SignUp/SignUpStartSolanaWalletsCard.tsx | 75 + packages/ui/src/components/SignUp/index.tsx | 4 + .../src/customizables/elementDescriptors.ts | 11 + .../src/elements/Web3SolanaWalletButtons.tsx | 280 +++ packages/ui/src/elements/contexts/index.tsx | 3 +- packages/ui/src/internal/appearance.ts | 11 + .../ui/src/utils/web3CallbackErrorHandler.ts | 4 +- pnpm-lock.yaml | 1939 +++++++++++++++-- pnpm-workspace.yaml | 4 + 87 files changed, 3335 insertions(+), 294 deletions(-) create mode 100644 .changeset/legal-jokes-beg.md rename packages/shared/src/internal/clerk-js/{injectedWeb3Providers.ts => injectedWeb3EthProviders.ts} (76%) create mode 100644 packages/shared/src/internal/clerk-js/injectedWeb3SolanaProviders.ts create mode 100644 packages/ui/src/common/WalletInitialIcon.tsx create mode 100644 packages/ui/src/components/SignIn/SignInFactorOneSolanaWalletsCard.tsx create mode 100644 packages/ui/src/components/SignUp/SignUpStartSolanaWalletsCard.tsx create mode 100644 packages/ui/src/elements/Web3SolanaWalletButtons.tsx diff --git a/.changeset/legal-jokes-beg.md b/.changeset/legal-jokes-beg.md new file mode 100644 index 00000000000..32643353b77 --- /dev/null +++ b/.changeset/legal-jokes-beg.md @@ -0,0 +1,9 @@ +--- +'@clerk/localizations': minor +'@clerk/clerk-js': minor +'@clerk/shared': minor +'@clerk/react': minor +'@clerk/ui': minor +--- + +Add support for Sign in with Solana. diff --git a/packages/clerk-js/bundle-check.mjs b/packages/clerk-js/bundle-check.mjs index b3058837813..ee31203690a 100644 --- a/packages/clerk-js/bundle-check.mjs +++ b/packages/clerk-js/bundle-check.mjs @@ -5,7 +5,7 @@ import path from 'node:path'; import { pipeline } from 'node:stream'; import zlib from 'node:zlib'; -import { chromium } from 'playwright'; +import { chromium } from '@playwright/test'; /** * This script generates a CLI report detailing the gzipped size of JavaScript resources loaded by `clerk-js` for a @@ -212,7 +212,7 @@ function report(url, responses) { /** * Loads the given `url` in `browser`, capturing all HTTP requests that occur. - * @param {import('playwright').Browser} browser + * @param {import('@playwright/test').Browser} browser * @param {string} url */ async function getResponseSizes(browser, url) { diff --git a/packages/clerk-js/package.json b/packages/clerk-js/package.json index 6be70992e22..bf81e95b410 100644 --- a/packages/clerk-js/package.json +++ b/packages/clerk-js/package.json @@ -62,9 +62,13 @@ "@base-org/account": "catalog:module-manager", "@clerk/shared": "workspace:^", "@coinbase/wallet-sdk": "catalog:module-manager", + "@solana/wallet-adapter-base": "catalog:module-manager", + "@solana/wallet-adapter-react": "catalog:module-manager", + "@solana/wallet-standard": "catalog:module-manager", "@stripe/stripe-js": "5.6.0", "@swc/helpers": "^0.5.17", "@tanstack/query-core": "5.87.4", + "@wallet-standard/core": "catalog:module-manager", "@zxcvbn-ts/core": "catalog:module-manager", "@zxcvbn-ts/language-common": "catalog:module-manager", "alien-signals": "2.0.6", diff --git a/packages/clerk-js/rspack.config.js b/packages/clerk-js/rspack.config.js index b8b11076fe9..16029f103c5 100644 --- a/packages/clerk-js/rspack.config.js +++ b/packages/clerk-js/rspack.config.js @@ -123,7 +123,20 @@ const common = ({ mode, variant, disableRHC = false }) => { }, defaultVendors: { minChunks: 1, - test: /[\\/]node_modules[\\/]/, + test: module => { + if (!(module instanceof rspack.NormalModule) || !module.resource) { + return false; + } + // Exclude Solana packages and their known transitive dependencies + if ( + /[\\/]node_modules[\\/](@solana|@solana-mobile|@wallet-standard|bn\.js|borsh|buffer|superstruct|bs58|jayson|rpc-websockets|qrcode)[\\/]/.test( + module.resource, + ) + ) { + return false; + } + return /[\\/]node_modules[\\/]/.test(module.resource); + }, name: 'vendors', priority: -10, }, diff --git a/packages/clerk-js/src/core/clerk.ts b/packages/clerk-js/src/core/clerk.ts index e529e6d55e1..6f2bc1e3a6a 100644 --- a/packages/clerk-js/src/core/clerk.ts +++ b/packages/clerk-js/src/core/clerk.ts @@ -59,6 +59,7 @@ import type { AuthenticateWithGoogleOneTapParams, AuthenticateWithMetamaskParams, AuthenticateWithOKXWalletParams, + AuthenticateWithSolanaParams, BillingNamespace, CheckoutSignalValue, Clerk as ClerkInterface, @@ -74,7 +75,7 @@ import type { EnvironmentJSON, EnvironmentJSONSnapshot, EnvironmentResource, - GenerateSignatureParams, + GenerateSignature, GoogleOneTapProps, HandleEmailLinkVerificationParams, HandleOAuthCallbackParams, @@ -2338,6 +2339,13 @@ export class Clerk implements ClerkInterface { }); }; + public authenticateWithSolana = async (props: AuthenticateWithSolanaParams): Promise => { + await this.authenticateWithWeb3({ + ...props, + strategy: 'web3_solana_signature', + }); + }; + public authenticateWithWeb3 = async ({ redirectUrl, signUpContinueUrl, @@ -2346,6 +2354,7 @@ export class Clerk implements ClerkInterface { strategy, legalAccepted, secondFactorUrl, + walletName, }: ClerkAuthenticateWithWeb3Params): Promise => { if (!this.client || !this.environment) { return; @@ -2354,8 +2363,8 @@ export class Clerk implements ClerkInterface { const { displayConfig } = this.environment; const provider = strategy.replace('web3_', '').replace('_signature', '') as Web3Provider; - const identifier = await web3().getWeb3Identifier({ provider }); - let generateSignature: (params: GenerateSignatureParams) => Promise; + const identifier = await web3().getWeb3Identifier({ provider, walletName }); + let generateSignature: GenerateSignature; switch (provider) { case 'metamask': generateSignature = web3().generateSignatureWithMetamask; @@ -2366,6 +2375,15 @@ export class Clerk implements ClerkInterface { case 'coinbase_wallet': generateSignature = web3().generateSignatureWithCoinbaseWallet; break; + case 'solana': + if (!walletName) { + throw new ClerkRuntimeError('Wallet name is required for Solana authentication.', { + code: 'web3_solana_wallet_name_required', + }); + } + // Solana requires walletName; bind it into the helper + generateSignature = params => web3().generateSignatureWithSolana({ ...params, walletName }); + break; default: generateSignature = web3().generateSignatureWithOKXWallet; break; @@ -2395,6 +2413,7 @@ export class Clerk implements ClerkInterface { identifier, generateSignature, strategy, + walletName, }); } catch (err) { if (isError(err, ERROR_CODES.FORM_IDENTIFIER_NOT_FOUND)) { @@ -2404,6 +2423,7 @@ export class Clerk implements ClerkInterface { unsafeMetadata, strategy, legalAccepted, + walletName, }); if ( diff --git a/packages/clerk-js/src/core/resources/SignIn.ts b/packages/clerk-js/src/core/resources/SignIn.ts index 841adbdfffe..d1588db7235 100644 --- a/packages/clerk-js/src/core/resources/SignIn.ts +++ b/packages/clerk-js/src/core/resources/SignIn.ts @@ -23,6 +23,7 @@ import type { EmailLinkConfig, EmailLinkFactor, EnterpriseSSOConfig, + GenerateSignature, PassKeyConfig, PasskeyFactor, PhoneCodeConfig, @@ -32,6 +33,7 @@ import type { ResetPasswordEmailCodeFactorConfig, ResetPasswordParams, ResetPasswordPhoneCodeFactorConfig, + SignInAuthenticateWithSolanaParams, SignInCreateParams, SignInFirstFactor, SignInFutureBackupCodeVerifyParams, @@ -202,6 +204,7 @@ export class SignIn extends BaseResource implements SignInResource { case 'web3_base_signature': case 'web3_coinbase_wallet_signature': case 'web3_okx_wallet_signature': + case 'web3_solana_signature': config = { web3WalletId: params.web3WalletId } as Web3SignatureConfig; break; case 'reset_password_phone_code': @@ -363,13 +366,17 @@ export class SignIn extends BaseResource implements SignInResource { }; public authenticateWithWeb3 = async (params: AuthenticateWithWeb3Params): Promise => { - const { identifier, generateSignature, strategy = 'web3_metamask_signature' } = params || {}; + const { identifier, generateSignature, strategy = 'web3_metamask_signature', walletName } = params || {}; const provider = strategy.replace('web3_', '').replace('_signature', '') as Web3Provider; if (!(typeof generateSignature === 'function')) { clerkMissingOptionError('generateSignature'); } + if (provider === 'solana' && !walletName) { + clerkMissingOptionError('walletName'); + } + await this.create({ identifier }); const web3FirstFactor = this.supportedFirstFactors?.find(f => f.strategy === strategy) as Web3SignatureFactor; @@ -387,7 +394,7 @@ export class SignIn extends BaseResource implements SignInResource { let signature: string; try { - signature = await generateSignature({ identifier, nonce: message, provider }); + signature = await generateSignature({ identifier, nonce: message, walletName, provider }); } catch (err) { // There is a chance that as a user when you try to setup and use the Coinbase Wallet with an existing // Passkey in order to authenticate, the initial generate signature request to be rejected. For this @@ -396,7 +403,7 @@ export class SignIn extends BaseResource implements SignInResource { // error code 4001 means the user rejected the request // Reference: https://docs.cdp.coinbase.com/wallet-sdk/docs/errors if (provider === 'coinbase_wallet' && err.code === 4001) { - signature = await generateSignature({ identifier, nonce: message, provider }); + signature = await generateSignature({ identifier, nonce: message, provider, walletName }); } else { throw err; } @@ -444,6 +451,16 @@ export class SignIn extends BaseResource implements SignInResource { }); }; + public authenticateWithSolana = async (params: SignInAuthenticateWithSolanaParams): Promise => { + const identifier = await web3().getSolanaIdentifier(params.walletName); + return this.authenticateWithWeb3({ + identifier, + generateSignature: p => web3().generateSignatureWithSolana({ ...p, walletName: params.walletName }), + strategy: 'web3_solana_signature', + walletName: params.walletName, + }); + }; + public authenticateWithPasskey = async (params?: AuthenticateWithPasskeyParams): Promise => { const { flow } = params || {}; @@ -961,7 +978,7 @@ class SignInFuture implements SignInFutureResource { return runAsyncResourceTask(this.#resource, async () => { let identifier; - let generateSignature; + let generateSignature: GenerateSignature; switch (provider) { case 'metamask': identifier = await web3().getMetamaskIdentifier(); @@ -979,6 +996,16 @@ class SignInFuture implements SignInFutureResource { identifier = await web3().getOKXWalletIdentifier(); generateSignature = web3().generateSignatureWithOKXWallet; break; + case 'solana': + if (!params.walletName) { + throw new ClerkRuntimeError('Wallet name is required for Solana authentication.', { + code: 'web3_solana_wallet_name_required', + }); + } + identifier = await web3().getSolanaIdentifier(params.walletName); + generateSignature = p => + web3().generateSignatureWithSolana({ ...p, walletName: params.walletName as string }); + break; default: throw new Error(`Unsupported Web3 provider: ${provider}`); } @@ -1004,7 +1031,12 @@ class SignInFuture implements SignInFutureResource { let signature: string; try { - signature = await generateSignature({ identifier, nonce: message }); + signature = await generateSignature({ + identifier, + nonce: message, + walletName: params?.walletName, + provider, + }); } catch (err) { // There is a chance that as a user when you try to setup and use the Coinbase Wallet with an existing // Passkey in order to authenticate, the initial generate signature request to be rejected. For this @@ -1013,7 +1045,11 @@ class SignInFuture implements SignInFutureResource { // error code 4001 means the user rejected the request // Reference: https://docs.cdp.coinbase.com/wallet-sdk/docs/errors if (provider === 'coinbase_wallet' && err.code === 4001) { - signature = await generateSignature({ identifier, nonce: message }); + signature = await generateSignature({ + identifier, + nonce: message, + provider, + }); } else { throw err; } diff --git a/packages/clerk-js/src/core/resources/SignUp.ts b/packages/clerk-js/src/core/resources/SignUp.ts index d5403cd23f3..6b07e9985b6 100644 --- a/packages/clerk-js/src/core/resources/SignUp.ts +++ b/packages/clerk-js/src/core/resources/SignUp.ts @@ -16,6 +16,7 @@ import type { PreparePhoneNumberVerificationParams, PrepareVerificationParams, PrepareWeb3WalletVerificationParams, + SignUpAuthenticateWithSolanaParams, SignUpAuthenticateWithWeb3Params, SignUpCreateParams, SignUpEnterpriseConnectionJSON, @@ -268,6 +269,7 @@ export class SignUp extends BaseResource implements SignUpResource { unsafeMetadata, strategy = 'web3_metamask_signature', legalAccepted, + walletName, } = params || {}; const provider = strategy.replace('web3_', '').replace('_signature', '') as Web3Provider; @@ -287,7 +289,7 @@ export class SignUp extends BaseResource implements SignUpResource { let signature: string; try { - signature = await generateSignature({ identifier, nonce: message, provider }); + signature = await generateSignature({ identifier, nonce: message, provider, walletName }); } catch (err) { // There is a chance that as a first time visitor when you try to setup and use the // Coinbase Wallet from scratch in order to authenticate, the initial generate @@ -322,9 +324,7 @@ export class SignUp extends BaseResource implements SignUpResource { }; public authenticateWithCoinbaseWallet = async ( - params?: SignUpAuthenticateWithWeb3Params & { - legalAccepted?: boolean; - }, + params?: SignUpAuthenticateWithWeb3Params, ): Promise => { const identifier = await web3().getCoinbaseWalletIdentifier(); return this.authenticateWithWeb3({ @@ -336,11 +336,7 @@ export class SignUp extends BaseResource implements SignUpResource { }); }; - public authenticateWithBase = async ( - params?: SignUpAuthenticateWithWeb3Params & { - legalAccepted?: boolean; - }, - ): Promise => { + public authenticateWithBase = async (params?: SignUpAuthenticateWithWeb3Params): Promise => { const identifier = await web3().getBaseIdentifier(); return this.authenticateWithWeb3({ identifier, @@ -351,11 +347,7 @@ export class SignUp extends BaseResource implements SignUpResource { }); }; - public authenticateWithOKXWallet = async ( - params?: SignUpAuthenticateWithWeb3Params & { - legalAccepted?: boolean; - }, - ): Promise => { + public authenticateWithOKXWallet = async (params?: SignUpAuthenticateWithWeb3Params): Promise => { const identifier = await web3().getOKXWalletIdentifier(); return this.authenticateWithWeb3({ identifier, @@ -366,6 +358,18 @@ export class SignUp extends BaseResource implements SignUpResource { }); }; + public authenticateWithSolana = async (params: SignUpAuthenticateWithSolanaParams): Promise => { + const identifier = await web3().getSolanaIdentifier(params.walletName); + return this.authenticateWithWeb3({ + identifier, + generateSignature: p => web3().generateSignatureWithSolana({ ...p, walletName: params.walletName }), + unsafeMetadata: params?.unsafeMetadata, + strategy: 'web3_solana_signature', + legalAccepted: params?.legalAccepted, + walletName: params.walletName, + }); + }; + private authenticateWithRedirectOrPopup = async ( params: AuthenticateWithRedirectParams & { unsafeMetadata?: SignUpUnsafeMetadata; diff --git a/packages/localizations/src/ar-SA.ts b/packages/localizations/src/ar-SA.ts index c22ee55b162..b5341d594f4 100644 --- a/packages/localizations/src/ar-SA.ts +++ b/packages/localizations/src/ar-SA.ts @@ -747,6 +747,10 @@ export const arSA: LocalizationResource = { subtitle: 'للمتابعة، يرجى إدخال رمز التحقق الذي تم إنشاؤه بواسطة تطبيق المصادقة الخاص بك', title: 'نظام التحقق بخطوتين', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'إدخل كلمة المرور', signUp: { @@ -837,6 +841,10 @@ export const arSA: LocalizationResource = { title: 'أنشاء حساب جديد', titleCombined: 'أنشاء حساب جديد', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'للمتابعة مع {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -941,6 +949,8 @@ export const arSA: LocalizationResource = { phone_number_exists: 'هذا الرقم مأخوذ الرجاء أختيار رقم آخر', session_exists: 'لقد قمت بتسجيل الدخول بالفعل', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'كلمة مرورك سليمة من الأفضل ان تكون اقوى. الرجاء أضافة حروف أكثر', goodPassword: 'كلمة مرورك طابقت جميع المتطلبات الازمة', @@ -1340,4 +1350,9 @@ export const arSA: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/be-BY.ts b/packages/localizations/src/be-BY.ts index 5ffdd1edec1..8934a721d8e 100644 --- a/packages/localizations/src/be-BY.ts +++ b/packages/localizations/src/be-BY.ts @@ -753,6 +753,10 @@ export const beBY: LocalizationResource = { subtitle: 'Увядзіце код, атрыманы з вашага TOTP-генератара.', title: 'Двухфактарная верыфікацыя', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: undefined, signUp: { @@ -845,6 +849,10 @@ export const beBY: LocalizationResource = { title: 'Стварыце Ваш акаўнт', titleCombined: 'Стварыце Ваш акаўнт', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Працягнуць з дапамогай {{provider|titleize}}', socialButtonsBlockButtonManyInView: undefined, @@ -951,6 +959,8 @@ export const beBY: LocalizationResource = { phone_number_exists: 'Гэты нумар тэлефона ўжо заняты. Калі ласка, паспрабуйце іншы.', session_exists: 'Вы ўжо ўвайшлі.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Ваш пароль падыходзіць, але мог бы быць надзейнейшым. Паспрабуйце дадаць больш сімвалаў.', goodPassword: 'Добрая праца. Гэта выдатны пароль.', @@ -1358,4 +1368,9 @@ export const beBY: LocalizationResource = { title: 'Вы ў чакальным спісе', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/bg-BG.ts b/packages/localizations/src/bg-BG.ts index 5e8dbc60edd..8684cbbaa17 100644 --- a/packages/localizations/src/bg-BG.ts +++ b/packages/localizations/src/bg-BG.ts @@ -750,6 +750,10 @@ export const bgBG: LocalizationResource = { 'За да продължите, моля въведете кода за потвърждение, генериран от вашето приложение за удостоверяване', title: 'Двустепенна верификация', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Въведете вашата парола', signUp: { @@ -841,6 +845,10 @@ export const bgBG: LocalizationResource = { title: 'Създайте своя акаунт', titleCombined: 'Създайте своя акаунт', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Продължи с {{provider|titleize}}', socialButtonsBlockButtonManyInView: undefined, @@ -944,6 +952,8 @@ export const bgBG: LocalizationResource = { phone_number_exists: 'Този телефонен номер е зает. Моля, опитайте с друг.', session_exists: 'Вече сте влезнали.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Вашата парола работи, но може да бъде по-сигурна. Опитайте да добавите повече символи.', goodPassword: 'Вашата парола отговаря на всички необходими изисквания.', @@ -1349,4 +1359,9 @@ export const bgBG: LocalizationResource = { title: 'Waitlist successful', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/bn-IN.ts b/packages/localizations/src/bn-IN.ts index eae2892be08..35e8992c247 100644 --- a/packages/localizations/src/bn-IN.ts +++ b/packages/localizations/src/bn-IN.ts @@ -753,6 +753,10 @@ export const bnIN: LocalizationResource = { subtitle: 'চালিয়ে যেতে, আপনার অথেনটিকেটর অ্যাপ দ্বারা উৎপন্ন যাচাইকরণ কোড লিখুন', title: 'দুই-ধাপ যাচাইকরণ', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'আপনার পাসওয়ার্ড লিখুন', signUp: { @@ -845,6 +849,10 @@ export const bnIN: LocalizationResource = { title: 'আপনার অ্যাকাউন্ট তৈরি করুন', titleCombined: 'আপনার অ্যাকাউন্ট তৈরি করুন', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '{{provider|titleize}} দিয়ে চালিয়ে যান', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -954,6 +962,8 @@ export const bnIN: LocalizationResource = { phone_number_exists: 'এই ফোন নম্বর ব্যবহৃত হয়েছে। দয়া করে অন্য একটি ব্যবহার করুন।', session_exists: undefined, web3_missing_identifier: 'একটি Web3 ওয়ালেট এক্সটেনশন পাওয়া যায়নি। চালিয়ে যেতে দয়া করে একটি ইনস্টল করুন।', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'আপনার পাসওয়ার্ড কাজ করে, কিন্তু আরও শক্তিশালী হতে পারে। আরও অক্ষর যোগ করার চেষ্টা করুন।', goodPassword: 'আপনার পাসওয়ার্ড সমস্ত প্রয়োজনীয় শর্ত পূরণ করে।', @@ -1359,4 +1369,9 @@ export const bnIN: LocalizationResource = { title: 'ওয়েটলিস্টে যোগ দেওয়ার জন্য ধন্যবাদ!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/ca-ES.ts b/packages/localizations/src/ca-ES.ts index 48562cc2848..9f1a187e7dd 100644 --- a/packages/localizations/src/ca-ES.ts +++ b/packages/localizations/src/ca-ES.ts @@ -750,6 +750,10 @@ export const caES: LocalizationResource = { subtitle: "Per continuar, introdueix el codi de verificació generat per la teva aplicació d'autenticació", title: 'Verificació de dos passos', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Introdueix la teva contrasenya', signUp: { @@ -840,6 +844,10 @@ export const caES: LocalizationResource = { title: 'Crea el teu compte', titleCombined: 'Crea el teu compte', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continua amb {{provider|titleize}}', socialButtonsBlockButtonManyInView: undefined, @@ -946,6 +954,8 @@ export const caES: LocalizationResource = { phone_number_exists: "Aquest número de telèfon ja està en ús. Si us plau, prova'n un altre.", session_exists: 'Ja estàs connectat.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'La teva contrasenya funciona, però podria ser més forta. Prova afegint més caràcters.', goodPassword: 'La teva contrasenya compleix tots els requisits necessaris.', @@ -1355,4 +1365,9 @@ export const caES: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/cs-CZ.ts b/packages/localizations/src/cs-CZ.ts index 9f15cab5a86..6e5a0514c7e 100644 --- a/packages/localizations/src/cs-CZ.ts +++ b/packages/localizations/src/cs-CZ.ts @@ -757,6 +757,10 @@ export const csCZ: LocalizationResource = { subtitle: 'Pro pokračování zadejte ověřovací kód vygenerovaný vaší aplikací pro ověřování', title: 'Dvoufázové ověření', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Zadejte své heslo', signUp: { @@ -851,6 +855,10 @@ export const csCZ: LocalizationResource = { title: 'Vytvořte si účet', titleCombined: 'Vytvořte si účet', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Pokračovat s {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -956,6 +964,8 @@ export const csCZ: LocalizationResource = { phone_number_exists: 'Toto telefonní číslo se používá. Zkuste prosím jiný.', session_exists: 'Jste již přihlášen.', web3_missing_identifier: 'Rozšíření peněženky Web3 nebylo nalezeno. Pro pokračování prosím nainstalujte jednu.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Vaše heslo funguje, ale mohlo by být silnější. Zkuste přidat více znaků.', goodPassword: 'Vaše heslo splňuje všechny potřebné požadavky.', @@ -1362,4 +1372,9 @@ export const csCZ: LocalizationResource = { title: 'Děkujeme za připojení k čekací listině!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/da-DK.ts b/packages/localizations/src/da-DK.ts index b0febbe4b37..a8d2c5bd370 100644 --- a/packages/localizations/src/da-DK.ts +++ b/packages/localizations/src/da-DK.ts @@ -748,6 +748,10 @@ export const daDK: LocalizationResource = { subtitle: undefined, title: 'Totrinsbekræftelse', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Indtast din adgangskode', signUp: { @@ -838,6 +842,10 @@ export const daDK: LocalizationResource = { title: 'Opret din konto', titleCombined: 'Opret din konto', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Fortsæt med {{provider|titleize}}', socialButtonsBlockButtonManyInView: undefined, @@ -942,6 +950,8 @@ export const daDK: LocalizationResource = { phone_number_exists: 'Dette telefonnummer er allerede taget. Prøv et andet.', session_exists: 'Du er allerede logget ind.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Din adgangskode virker, men kunne være stærkere. Prøv at tilføje flere tegn.', goodPassword: 'Din adgangskode opfylder alle nødvendige krav.', @@ -1346,4 +1356,9 @@ export const daDK: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/de-DE.ts b/packages/localizations/src/de-DE.ts index f12792886c2..6008ac34f61 100644 --- a/packages/localizations/src/de-DE.ts +++ b/packages/localizations/src/de-DE.ts @@ -764,6 +764,10 @@ export const deDE: LocalizationResource = { 'Um fortzufahren, geben Sie bitte den Verifizierungscode ein, der von Ihrer Authenticator-App generiert wurde.', title: 'Bestätigung in zwei Schritten', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Geben Sie Ihr Passwort ein', signUp: { @@ -855,6 +859,10 @@ export const deDE: LocalizationResource = { title: 'Erstellen Sie Ihr Konto', titleCombined: 'Erstellen Sie Ihr Konto', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Weiter mit {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -972,6 +980,8 @@ export const deDE: LocalizationResource = { session_exists: 'Sie sind bereits angemeldet.', web3_missing_identifier: 'Eine Web3 Wallet-Erweiterung wurde nicht gefunden. Bitte installieren Sie eine, um fortzufahren.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Ihr Passwort funktioniert, könnte aber besser sein. Versuchen Sie, mehr Zeichen hinzuzufügen.', goodPassword: 'Ihr Passwort erfüllt alle notwendigen Anforderungen.', @@ -1383,4 +1393,9 @@ export const deDE: LocalizationResource = { title: 'Erfolgreich auf die Warteliste gesetzt', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/el-GR.ts b/packages/localizations/src/el-GR.ts index fb2883f1229..bd41cdc39aa 100644 --- a/packages/localizations/src/el-GR.ts +++ b/packages/localizations/src/el-GR.ts @@ -751,6 +751,10 @@ export const elGR: LocalizationResource = { subtitle: undefined, title: 'Aυθεντικοποίηση δύο βημάτων', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Εισαγωγή κωδικού πρόσβασης', signUp: { @@ -842,6 +846,10 @@ export const elGR: LocalizationResource = { title: 'Δημιουργήστε τον λογαριασμό σας', titleCombined: 'Δημιουργήστε τον λογαριασμό σας', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Συνέχεια με {{provider|titleize}}', socialButtonsBlockButtonManyInView: undefined, @@ -948,6 +956,8 @@ export const elGR: LocalizationResource = { phone_number_exists: 'Αυτός ο αριθμός τηλεφώνου χρησιμοποιείται ήδη. Δοκιμάστε έναν άλλο.', session_exists: 'Έχετε ήδη συνδεθεί.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Ο κωδικός πρόσβασής σας είναι αρκετός, αλλά θα μπορούσε να είναι πιο ισχυρός. Δοκιμάστε να προσθέσετε περισσότερους χαρακτήρες.', @@ -1358,4 +1368,9 @@ export const elGR: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/en-GB.ts b/packages/localizations/src/en-GB.ts index 2dd3b2c4448..ce50646e300 100644 --- a/packages/localizations/src/en-GB.ts +++ b/packages/localizations/src/en-GB.ts @@ -750,6 +750,10 @@ export const enGB: LocalizationResource = { subtitle: 'To continue, please enter the verification code generated by your authenticator app', title: 'Two-step verification', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Enter your password', signUp: { @@ -842,6 +846,10 @@ export const enGB: LocalizationResource = { title: 'Create your account', titleCombined: 'Create your account', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continue with {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -949,6 +957,8 @@ export const enGB: LocalizationResource = { phone_number_exists: 'This phone number is taken. Please try another.', session_exists: "You're already signed in.", web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Your password works, but could be stronger. Try adding more characters.', goodPassword: 'Your password meets all the necessary requirements.', @@ -1353,4 +1363,9 @@ export const enGB: LocalizationResource = { title: 'Thanks for joining the waitlist!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/en-US.ts b/packages/localizations/src/en-US.ts index 3ad74f109f2..72f060b004d 100644 --- a/packages/localizations/src/en-US.ts +++ b/packages/localizations/src/en-US.ts @@ -747,6 +747,10 @@ export const enUS: LocalizationResource = { subtitle: 'To continue, please enter the verification code generated by your authenticator app', title: 'Two-step verification', }, + web3Solana: { + subtitle: 'Select a wallet below to sign in', + title: 'Sign in with Solana', + }, }, signInEnterPasswordTitle: 'Enter your password', signUp: { @@ -839,6 +843,10 @@ export const enUS: LocalizationResource = { title: 'Create your account', titleCombined: 'Create your account', }, + web3Solana: { + subtitle: 'Select a wallet below to sign up', + title: 'Sign up with Solana', + }, }, socialButtonsBlockButton: 'Continue with {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -944,6 +952,9 @@ export const enUS: LocalizationResource = { phone_number_exists: undefined, session_exists: undefined, web3_missing_identifier: 'A Web3 Wallet extension cannot be found. Please install one to continue.', + web3_signature_request_rejected: 'You have rejected the signature request. Please try again to continue.', + web3_solana_signature_generation_failed: + 'An error occurred while generating the signature. Please try again to continue.', zxcvbn: { couldBeStronger: 'Your password works, but could be stronger. Try adding more characters.', goodPassword: 'Your password meets all the necessary requirements.', @@ -1349,4 +1360,10 @@ export const enUS: LocalizationResource = { title: 'Thanks for joining the waitlist!', }, }, + web3WalletButtons: { + connect: 'Connect with {{walletName}}', + continue: 'Continue with {{walletName}}', + noneAvailable: + 'No Solana Web3 wallets detected. Please install a Web3 supported {{ solanaWalletsLink || link("wallet extension") }}.', + }, } as const; diff --git a/packages/localizations/src/es-CR.ts b/packages/localizations/src/es-CR.ts index d26ed271313..4f6d6b6e3d4 100644 --- a/packages/localizations/src/es-CR.ts +++ b/packages/localizations/src/es-CR.ts @@ -755,6 +755,10 @@ export const esCR: LocalizationResource = { subtitle: 'Para continuar, por favor introduce el código generado por tu aplicación de autenticación', title: 'Verificación de dos pasos', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Ingresa tu contraseña', signUp: { @@ -847,6 +851,10 @@ export const esCR: LocalizationResource = { title: 'Crea tu cuenta', titleCombined: 'Crea tu cuenta', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continuar con {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -955,6 +963,8 @@ export const esCR: LocalizationResource = { phone_number_exists: 'Este número de telefónico ya está en uso.', session_exists: undefined, web3_missing_identifier: 'No se puede encontrar la extension de la billetera Web3. Instala una para continuar', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Tu contraseña funciona, pero puede ser más segura. Prueba añadiendo más caracteres.', goodPassword: 'Tu contraseña cumple con todos los requisitos necesarios.', @@ -1362,4 +1372,9 @@ export const esCR: LocalizationResource = { title: '¡Gracias por unirte a la lista de espera!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/es-ES.ts b/packages/localizations/src/es-ES.ts index ebffd6ac884..e85f80b1175 100644 --- a/packages/localizations/src/es-ES.ts +++ b/packages/localizations/src/es-ES.ts @@ -750,6 +750,10 @@ export const esES: LocalizationResource = { subtitle: 'Introduce el código que te enviamos a tu dispositivo', title: 'Verificación de dos pasos', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Ingresa tu contraseña', signUp: { @@ -841,6 +845,10 @@ export const esES: LocalizationResource = { title: 'Crea tu cuenta', titleCombined: 'Crea tu cuenta', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continuar con {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -949,6 +957,8 @@ export const esES: LocalizationResource = { phone_number_exists: 'Este número de teléfono ya está en uso. Por favor, inténtelo con otro.', session_exists: 'Ya has iniciado sesión', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: undefined, goodPassword: undefined, @@ -1356,4 +1366,9 @@ export const esES: LocalizationResource = { title: '¡Te has unido a la lista de espera!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/es-MX.ts b/packages/localizations/src/es-MX.ts index 54ceb4cddf3..dc2294b3036 100644 --- a/packages/localizations/src/es-MX.ts +++ b/packages/localizations/src/es-MX.ts @@ -756,6 +756,10 @@ export const esMX: LocalizationResource = { subtitle: 'Para continuar, por favor introduce el código generado por tu aplicación de autenticación', title: 'Verificación de dos pasos', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Ingresa tu contraseña', signUp: { @@ -848,6 +852,10 @@ export const esMX: LocalizationResource = { title: 'Crea tu cuenta', titleCombined: 'Crea tu cuenta', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continuar con {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -956,6 +964,8 @@ export const esMX: LocalizationResource = { phone_number_exists: 'Este número de telefónico ya está en uso.', session_exists: 'Ya has iniciado sesión', web3_missing_identifier: 'No se puede encontrar la extension de la billetera Web3. Instala una para continuar', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Tu contraseña funciona, pero puede ser más segura. Prueba añadiendo más caracteres.', goodPassword: 'Tu contraseña cumple con todos los requisitos necesarios.', @@ -1363,4 +1373,9 @@ export const esMX: LocalizationResource = { title: '¡Gracias por unirte a la lista de espera!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/es-UY.ts b/packages/localizations/src/es-UY.ts index 7bf765ab48a..855141e799d 100644 --- a/packages/localizations/src/es-UY.ts +++ b/packages/localizations/src/es-UY.ts @@ -753,6 +753,10 @@ export const esUY: LocalizationResource = { subtitle: 'Para continuar, ingresá el código generado por tu aplicación autenticadora', title: 'Verificación en dos pasos', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Ingresá tu contraseña', signUp: { @@ -847,6 +851,10 @@ export const esUY: LocalizationResource = { title: 'Creá tu cuenta', titleCombined: 'Creá tu cuenta', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continuar con {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -957,6 +965,8 @@ export const esUY: LocalizationResource = { phone_number_exists: 'Este número de teléfono ya está en uso. Por favor, probá con otro.', session_exists: 'Ya has iniciado sesión', web3_missing_identifier: 'No se encontró una extensión de cartera Web3. Por favor, instalá una para continuar.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Tu contraseña funciona, pero podría ser más fuerte. Intentá agregar más caracteres.', goodPassword: 'Tu contraseña cumple con todos los requisitos necesarios.', @@ -1362,4 +1372,9 @@ export const esUY: LocalizationResource = { title: '¡Gracias por unirte a la lista de espera!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/fa-IR.ts b/packages/localizations/src/fa-IR.ts index 0587c43acbd..d6c0e7aaba4 100644 --- a/packages/localizations/src/fa-IR.ts +++ b/packages/localizations/src/fa-IR.ts @@ -758,6 +758,10 @@ export const faIR: LocalizationResource = { subtitle: 'برای ادامه، لطفاً کد تأیید تولید شده توسط برنامه تأیید هویت خود را وارد کنید', title: 'تأیید دو مرحله‌ای', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'رمز عبور خود را وارد کنید', signUp: { @@ -851,6 +855,10 @@ export const faIR: LocalizationResource = { title: 'حساب کاربری خود را ایجاد کنید', titleCombined: 'حساب کاربری خود را ایجاد کنید', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'ادامه با {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -954,6 +962,8 @@ export const faIR: LocalizationResource = { phone_number_exists: 'این شماره تلفن قبلاً استفاده شده است.', session_exists: 'جلسه از قبل وجود دارد.', web3_missing_identifier: 'افزونه‌ی کیف پول وب۳ پیدا نشد. برای ادامه، لطفاً یکی نصب کنید.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'رمز عبور شما کار می‌کند، اما می‌توانست قوی‌تر باشد. سعی کنید کاراکترهای بیشتری اضافه کنید.', goodPassword: 'رمز عبور شما تمام شرایط لازم را برآورده می‌کند.', @@ -1358,4 +1368,9 @@ export const faIR: LocalizationResource = { title: 'ممنون که به لیست انتظار پیوستید!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/fi-FI.ts b/packages/localizations/src/fi-FI.ts index 2b2a52fb0b1..1f0a4773c94 100644 --- a/packages/localizations/src/fi-FI.ts +++ b/packages/localizations/src/fi-FI.ts @@ -750,6 +750,10 @@ export const fiFI: LocalizationResource = { subtitle: 'Syötä todennuskoodi autentikointisovelluksestasi', title: 'Kaksivaiheinen todennus', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Syötä salasanasi', signUp: { @@ -841,6 +845,10 @@ export const fiFI: LocalizationResource = { title: 'Luo tili', titleCombined: 'Luo tili', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Jatka palvelun {{provider|titleize}} avulla', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -945,6 +953,8 @@ export const fiFI: LocalizationResource = { phone_number_exists: 'Tämä puhelinnumero on jo käytössä. Kokeile toista.', session_exists: 'Olet jo kirjautunut sisään.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Salasanasi toimii, mutta se voisi olla vahvempi. Kokeile lisätä erikoismerkkejä tai numeroita.', goodPassword: 'Salasanasi täyttää kaikki tarvittavat vaatimukset.', @@ -1351,4 +1361,9 @@ export const fiFI: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/fr-FR.ts b/packages/localizations/src/fr-FR.ts index 27529733fc6..bbd5d3c0d1e 100644 --- a/packages/localizations/src/fr-FR.ts +++ b/packages/localizations/src/fr-FR.ts @@ -764,6 +764,10 @@ export const frFR: LocalizationResource = { subtitle: "Entrez le code de l'application d'authentification.", title: 'Vérification en deux étapes', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Tapez votre mot de passe', signUp: { @@ -856,6 +860,10 @@ export const frFR: LocalizationResource = { title: 'Créez votre compte', titleCombined: 'Créez votre compte', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continuer avec {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -965,6 +973,8 @@ export const frFR: LocalizationResource = { phone_number_exists: 'Ce numéro de téléphone est déjà utilisé. Veuillez essayer un autre.', session_exists: 'Vous êtes déjà connecté.', web3_missing_identifier: 'Aucune extension de portefeuille Web3 trouvée. Veuillez en installer une pour continuer.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: "Votre mot de passe fonctionne mais pourrait être plus sûr. Essayez d'ajouter des caractères.", goodPassword: "Bien joué. C'est un excellent mot de passe.", @@ -1373,4 +1383,9 @@ export const frFR: LocalizationResource = { title: 'Inscription réussie', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/he-IL.ts b/packages/localizations/src/he-IL.ts index 203dc38d632..5cc7802b08c 100644 --- a/packages/localizations/src/he-IL.ts +++ b/packages/localizations/src/he-IL.ts @@ -741,6 +741,10 @@ export const heIL: LocalizationResource = { subtitle: 'להמשך, אנא הכנס את קוד האימות שנוצר על ידי אפליקציית האימות שלך', title: 'אימות שני שלבים', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'הזן את הסיסמה שלך', signUp: { @@ -831,6 +835,10 @@ export const heIL: LocalizationResource = { title: 'צור את החשבון שלך', titleCombined: 'צור את החשבון שלך', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'המשך עם {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -933,6 +941,8 @@ export const heIL: LocalizationResource = { phone_number_exists: 'מספר הטלפון הזה כבר בשימוש. אנא נסה מספר אחר.', session_exists: 'אתה כבר מחובר לחשבון.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'הסיסמה שלך תקפה, אך יכולה להיות חזקה יותר. נסה להוסיף יותר תווים.', goodPassword: 'עבודה טובה. זו סיסמה מצוינת.', @@ -1326,4 +1336,9 @@ export const heIL: LocalizationResource = { title: 'תודה שהצטרפת לרשימת ההמתנה!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/hi-IN.ts b/packages/localizations/src/hi-IN.ts index b17425db582..1d41496d578 100644 --- a/packages/localizations/src/hi-IN.ts +++ b/packages/localizations/src/hi-IN.ts @@ -752,6 +752,10 @@ export const hiIN: LocalizationResource = { subtitle: 'जारी रखने के लिए, कृपया अपने प्रमाणकर्ता ऐप द्वारा जनरेट किए गए कोड को दर्ज करें', title: 'दो-चरण सत्यापन', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'अपना पासवर्ड दर्ज करें', signUp: { @@ -845,6 +849,10 @@ export const hiIN: LocalizationResource = { title: 'अपना खाता बनाएं', titleCombined: 'अपना खाता बनाएं', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '{{provider|titleize}} के साथ जारी रखें', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -955,6 +963,8 @@ export const hiIN: LocalizationResource = { phone_number_exists: 'यह फोन नंबर पहले से लिया गया है। कृपया दूसरा प्रयास करें।', session_exists: undefined, web3_missing_identifier: 'Web3 वॉलेट एक्सटेंशन नहीं मिल सका। जारी रखने के लिए कृपया एक इंस्टॉल करें।', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'आपका पासवर्ड काम करता है, लेकिन मजबूत हो सकता है। अधिक अक्षर जोड़ने का प्रयास करें।', goodPassword: 'आपका पासवर्ड सभी आवश्यक आवश्यकताओं को पूरा करता है।', @@ -1359,4 +1369,9 @@ export const hiIN: LocalizationResource = { title: 'प्रतीक्षा सूची में शामिल होने के लिए धन्यवाद!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/hr-HR.ts b/packages/localizations/src/hr-HR.ts index 4350bfc9813..9566b910031 100644 --- a/packages/localizations/src/hr-HR.ts +++ b/packages/localizations/src/hr-HR.ts @@ -750,6 +750,10 @@ export const hrHR: LocalizationResource = { subtitle: 'Za nastavak, unesite verifikacijski kod generiran vašom aplikacijom za autentifikaciju', title: 'Dvostupanjska verifikacija', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Unesite svoju lozinku', signUp: { @@ -842,6 +846,10 @@ export const hrHR: LocalizationResource = { title: 'Kreirajte svoj račun', titleCombined: 'Kreirajte svoj račun', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Nastavite s {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -951,6 +959,8 @@ export const hrHR: LocalizationResource = { phone_number_exists: 'Ovaj telefonski broj je zauzet. Molimo pokušajte s drugim.', session_exists: 'Već ste prijavljeni.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Vaša lozinka funkcionira, ali mogla bi biti jača. Pokušajte dodati više znakova.', goodPassword: 'Vaša lozinka zadovoljava sve potrebne zahtjeve.', @@ -1354,4 +1364,9 @@ export const hrHR: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/hu-HU.ts b/packages/localizations/src/hu-HU.ts index bb30d4385fc..805c0935632 100644 --- a/packages/localizations/src/hu-HU.ts +++ b/packages/localizations/src/hu-HU.ts @@ -749,6 +749,10 @@ export const huHU: LocalizationResource = { subtitle: 'A folytatáshoz, kérlek írd be a visszaigazoló kódot, amit a hitelesítő app készített.', title: 'Két lépécsős azonosítás', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Írd be a jelszavad', signUp: { @@ -839,6 +843,10 @@ export const huHU: LocalizationResource = { title: 'Fiók létrehozása', titleCombined: 'Fiók létrehozása', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Folytatás {{provider|titleize}} segítségével', socialButtonsBlockButtonManyInView: undefined, @@ -945,6 +953,8 @@ export const huHU: LocalizationResource = { phone_number_exists: 'Ez a telefonszám már foglalt. Kérlek próbálj meg egy másikat.', session_exists: 'Már be vagy jelentkezve.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'A jelszavad, jó, de lehetne erősebb. Adj hozzá több karaktert.', goodPassword: 'A jelszavad megfelel az elvárásoknak.', @@ -1351,4 +1361,9 @@ export const huHU: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/id-ID.ts b/packages/localizations/src/id-ID.ts index bd0ac83cae6..c82b19178c5 100644 --- a/packages/localizations/src/id-ID.ts +++ b/packages/localizations/src/id-ID.ts @@ -752,6 +752,10 @@ export const idID: LocalizationResource = { subtitle: 'Untuk melanjutkan, masukkan kode verifikasi yang dihasilkan oleh aplikasi autentikator Anda', title: 'Verifikasi dua langkah', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Masukkan kata sandi Anda', signUp: { @@ -846,6 +850,10 @@ export const idID: LocalizationResource = { title: 'Buat akun Anda', titleCombined: 'Buat akun Anda', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Lanjutkan dengan {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -953,6 +961,8 @@ export const idID: LocalizationResource = { phone_number_exists: 'Nomor telepon ini sudah digunakan. Silakan coba yang lain.', session_exists: 'Anda sudah masuk.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Kata sandi Anda berfungsi, tapi bisa lebih kuat. Coba tambahkan lebih banyak karakter.', goodPassword: 'Kata sandi Anda memenuhi semua persyaratan yang diperlukan.', @@ -1347,4 +1357,9 @@ export const idID: LocalizationResource = { title: 'Terima kasih telah bergabung dengan daftar tunggu!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/is-IS.ts b/packages/localizations/src/is-IS.ts index 50a362c084c..73cf64c9193 100644 --- a/packages/localizations/src/is-IS.ts +++ b/packages/localizations/src/is-IS.ts @@ -751,6 +751,10 @@ export const isIS: LocalizationResource = { subtitle: 'Til að halda áfram, vinsamlegast sláðu inn staðfestingarkóðann sem auðkennisforritið þitt bjó til', title: 'Tveggja þrepa auðkenning', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Sláðu inn lykilorðið þitt', signUp: { @@ -842,6 +846,10 @@ export const isIS: LocalizationResource = { title: 'Stofna reikning', titleCombined: 'Stofna reikning', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Halda áfram með {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -948,6 +956,8 @@ export const isIS: LocalizationResource = { phone_number_exists: 'Þetta símanúmer er þegar í notkun. Vinsamlegast reyndu annað.', session_exists: 'Þú ert nú þegar innskráður.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Lykilorðið þitt virkar, en gæti verið sterkara. Reyndu að bæta við fleiri stöfum.', goodPassword: 'Lykilorðið þitt uppfyllir allar nauðsynlegar kröfur.', @@ -1354,4 +1364,9 @@ export const isIS: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/it-IT.ts b/packages/localizations/src/it-IT.ts index 37f635b013c..23f65f8e5f6 100644 --- a/packages/localizations/src/it-IT.ts +++ b/packages/localizations/src/it-IT.ts @@ -756,6 +756,10 @@ export const itIT: LocalizationResource = { subtitle: 'Inserisci il codice di verifica dalla tua app di autenticazione.', title: 'Verifica in due passaggi', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Inserisci la tua password', signUp: { @@ -848,6 +852,10 @@ export const itIT: LocalizationResource = { title: 'Crea il tuo account', titleCombined: 'Crea il tuo account', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continua con {{provider|titleize}}', socialButtonsBlockButtonManyInView: undefined, @@ -952,6 +960,8 @@ export const itIT: LocalizationResource = { phone_number_exists: 'Questo numero di telefono è già in uso. Per favore, prova con un altro.', session_exists: 'Sei già loggato.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: undefined, goodPassword: undefined, @@ -1359,4 +1369,9 @@ export const itIT: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/ja-JP.ts b/packages/localizations/src/ja-JP.ts index 269f198e617..55680e0066a 100644 --- a/packages/localizations/src/ja-JP.ts +++ b/packages/localizations/src/ja-JP.ts @@ -759,6 +759,10 @@ export const jaJP: LocalizationResource = { subtitle: '続行するには、認証アプリで生成された検証コードを入力してください', title: '二段階認証', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'パスワードを入力してください', signUp: { @@ -852,6 +856,10 @@ export const jaJP: LocalizationResource = { title: 'アカウントを作成', titleCombined: 'アカウントを作成', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '{{provider|titleize}}で続ける', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -960,6 +968,8 @@ export const jaJP: LocalizationResource = { phone_number_exists: undefined, session_exists: undefined, web3_missing_identifier: 'Web3ウォレット拡張機能が見つかりません。続行するにはインストールしてください。', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'パスワードは有効ですが、もう少し強化できます。文字を追加してみてください。', goodPassword: 'パスワードはすべての要件を満たしています。', @@ -1361,4 +1371,9 @@ export const jaJP: LocalizationResource = { title: '待機リストへの参加ありがとうございます!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/kk-KZ.ts b/packages/localizations/src/kk-KZ.ts index 114bb8c51f9..39bcce55757 100644 --- a/packages/localizations/src/kk-KZ.ts +++ b/packages/localizations/src/kk-KZ.ts @@ -741,6 +741,10 @@ export const kkKZ: LocalizationResource = { subtitle: 'Аутентификатор қолданбасындағы кодты енгізіңіз', title: 'Екі қадамды растау', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Құпия сөзді енгізіңіз', signUp: { @@ -832,6 +836,10 @@ export const kkKZ: LocalizationResource = { title: 'Есептік жазбаны құру', titleCombined: 'Есептік жазбаны құру', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '{{provider|titleize}} арқылы жалғастыру', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -934,6 +942,8 @@ export const kkKZ: LocalizationResource = { phone_number_exists: 'Бұл телефон нөмірі тіркелген. Басқасын қолданыңыз.', session_exists: undefined, web3_missing_identifier: 'Web3 Wallet кеңейтуі табылмады. Орнатыңыз.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Құпия сөз әлсіз. Таңбалар санын көбейтіңіз.', goodPassword: 'Құпия сөз талаптарға сай.', @@ -1327,4 +1337,9 @@ export const kkKZ: LocalizationResource = { title: 'Күту тізіміне қосылғаныңыз үшін рақмет!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/ko-KR.ts b/packages/localizations/src/ko-KR.ts index f9e235a55cd..b61212b0d2b 100644 --- a/packages/localizations/src/ko-KR.ts +++ b/packages/localizations/src/ko-KR.ts @@ -743,6 +743,10 @@ export const koKR: LocalizationResource = { subtitle: '계속하려면 인증 앱에서 생성된 인증 코드를 입력하세요', title: '2단계 인증', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: '비밀번호를 입력하세요', signUp: { @@ -833,6 +837,10 @@ export const koKR: LocalizationResource = { title: '계정 만들기', titleCombined: '계정 만들기', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '{{provider|titleize}}로 계속하기', socialButtonsBlockButtonManyInView: undefined, @@ -937,6 +945,8 @@ export const koKR: LocalizationResource = { phone_number_exists: '이 전화번호는 이미 사용중입니다. 다른 번호를 시도해 주세요.', session_exists: '이미 로그인 중입니다.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: '비밀번호는 작동하지만 더 강력할 수 있습니다. 문자를 더 추가해 보세요.', goodPassword: '수고하셨습니다. 훌륭한 비밀번호입니다.', @@ -1333,4 +1343,9 @@ export const koKR: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/mn-MN.ts b/packages/localizations/src/mn-MN.ts index 80c7498efd8..52891cfe5bf 100644 --- a/packages/localizations/src/mn-MN.ts +++ b/packages/localizations/src/mn-MN.ts @@ -750,6 +750,10 @@ export const mnMN: LocalizationResource = { subtitle: 'Үргэлжлүүлэхийн тулд authenticator апп-аар үүсгэсэн баталгаажуулах кодыг оруулна уу', title: 'Two-step баталгаажуулалт', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Нууц үгээ оруулна уу', signUp: { @@ -840,6 +844,10 @@ export const mnMN: LocalizationResource = { title: 'Бүртгэл үүсгэх', titleCombined: 'Бүртгэл үүсгэх', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '{{provider|titleize}}-р үргэлжлүүлэх', socialButtonsBlockButtonManyInView: undefined, @@ -945,6 +953,8 @@ export const mnMN: LocalizationResource = { phone_number_exists: 'Энэ утасны дугаарыг авсан. Өөр оролдоно уу.', session_exists: 'Та аль хэдийн нэвтэрсэн байна.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Таны нууц үг ажилладаг, гэхдээ илүү хүчтэй байж болно. Илүү олон тэмдэгт нэмж үзээрэй.', goodPassword: 'Таны нууц үг шаардлагатай бүх шаардлагыг хангаж байна.', @@ -1349,4 +1359,9 @@ export const mnMN: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/ms-MY.ts b/packages/localizations/src/ms-MY.ts index 742f0ebe791..e4f32b39902 100644 --- a/packages/localizations/src/ms-MY.ts +++ b/packages/localizations/src/ms-MY.ts @@ -754,6 +754,10 @@ export const msMY: LocalizationResource = { subtitle: 'Untuk meneruskan, sila masukkan kod pengesahan yang dijana oleh aplikasi pengesah anda', title: 'Pengesahan dua langkah', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Masukkan kata laluan anda', signUp: { @@ -848,6 +852,10 @@ export const msMY: LocalizationResource = { title: 'Cipta akaun anda', titleCombined: 'Cipta akaun anda', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Teruskan dengan {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -960,6 +968,8 @@ export const msMY: LocalizationResource = { phone_number_exists: 'Nombor telefon ini telah diambil. Sila cuba yang lain.', session_exists: undefined, web3_missing_identifier: 'Sambungan Dompet Web3 tidak dapat dijumpai. Sila pasang satu untuk meneruskan.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Kata laluan anda berfungsi, tetapi boleh lebih kuat. Cuba tambah lebih banyak aksara.', goodPassword: 'Kata laluan anda memenuhi semua keperluan yang diperlukan.', @@ -1367,4 +1377,9 @@ export const msMY: LocalizationResource = { title: 'Terima kasih kerana menyertai senarai menunggu!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/nb-NO.ts b/packages/localizations/src/nb-NO.ts index 7075e5bb2b2..6f66ed51d11 100644 --- a/packages/localizations/src/nb-NO.ts +++ b/packages/localizations/src/nb-NO.ts @@ -749,6 +749,10 @@ export const nbNO: LocalizationResource = { subtitle: undefined, title: 'To-trinns verifisering', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Skriv inn passordet ditt', signUp: { @@ -839,6 +843,10 @@ export const nbNO: LocalizationResource = { title: 'Opprett kontoen din', titleCombined: 'Opprett kontoen din', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Fortsett med {{provider|titleize}}', socialButtonsBlockButtonManyInView: undefined, @@ -944,6 +952,8 @@ export const nbNO: LocalizationResource = { phone_number_exists: 'Dette telefonnummeret er allerede i bruk. Vennligst bruk et annet telefonnummer.', session_exists: 'Du er allerede logget inn.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Passordet ditt fungerer, men det kan være sterkere. Prøv å legge til flere tegn.', goodPassword: 'Godt jobbet. Dette er et utmerket passord.', @@ -1348,4 +1358,9 @@ export const nbNO: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/nl-BE.ts b/packages/localizations/src/nl-BE.ts index 83982a60318..c72c33cc668 100644 --- a/packages/localizations/src/nl-BE.ts +++ b/packages/localizations/src/nl-BE.ts @@ -749,6 +749,10 @@ export const nlBE: LocalizationResource = { subtitle: '', title: 'Tweestapsverificatie', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Vul je wachtwoord in', signUp: { @@ -840,6 +844,10 @@ export const nlBE: LocalizationResource = { title: 'Maak je account aan', titleCombined: 'Maak je account aan', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Ga verder met {{provider|titleize}}', socialButtonsBlockButtonManyInView: 'Ga verder met {{provider|titleize}}', @@ -944,6 +952,8 @@ export const nlBE: LocalizationResource = { phone_number_exists: 'Dit telefoonnummer is al in gebruik. Probeer een ander nummer.', session_exists: 'Je bent al ingelogd.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Je wachtwoord werkt, maar kan sterker zijn. Probeer meer tekens toe te voegen.', goodPassword: 'Je wachtwoord voldoet aan alle vereisten.', @@ -1346,4 +1356,9 @@ export const nlBE: LocalizationResource = { title: 'Succes!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/nl-NL.ts b/packages/localizations/src/nl-NL.ts index 25f2a56b2c9..f8b60f439f1 100644 --- a/packages/localizations/src/nl-NL.ts +++ b/packages/localizations/src/nl-NL.ts @@ -749,6 +749,10 @@ export const nlNL: LocalizationResource = { subtitle: '', title: 'Tweestapsverificatie', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Vul je wachtwoord in', signUp: { @@ -840,6 +844,10 @@ export const nlNL: LocalizationResource = { title: 'Maak je account aan', titleCombined: 'Maak je account aan', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Ga verder met {{provider|titleize}}', socialButtonsBlockButtonManyInView: 'Ga verder met {{provider|titleize}}', @@ -944,6 +952,8 @@ export const nlNL: LocalizationResource = { phone_number_exists: 'Dit telefoonnummer is al in gebruik. Probeer een ander nummer.', session_exists: 'Je bent al ingelogd.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Je wachtwoord werkt, maar kan sterker zijn. Probeer meer tekens toe te voegen.', goodPassword: 'Je wachtwoord voldoet aan alle vereisten.', @@ -1346,4 +1356,9 @@ export const nlNL: LocalizationResource = { title: 'Succes!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/pl-PL.ts b/packages/localizations/src/pl-PL.ts index 0cf02093610..e41cbc6878d 100644 --- a/packages/localizations/src/pl-PL.ts +++ b/packages/localizations/src/pl-PL.ts @@ -751,6 +751,10 @@ export const plPL: LocalizationResource = { subtitle: 'Aby kontynuować, wprowadź kod weryfikacyjny wygenerowany przez aplikację uwierzytelniającą', title: 'Weryfikacja dwustopniowa', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Wprowadź swoje hasło', signUp: { @@ -845,6 +849,10 @@ export const plPL: LocalizationResource = { title: 'Utwórz swoje konto', titleCombined: 'Utwórz swoje konto', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Kontynuuj z {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -953,6 +961,8 @@ export const plPL: LocalizationResource = { phone_number_exists: 'Numer telefonu jest już zajęty. Proszę spróbować innego.', session_exists: 'Jesteś już zalogowany.', web3_missing_identifier: 'Nie można znaleźć rozszerzenia Web3 Wallet. Zainstaluj je, aby kontynuować.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Twoje hasło jest odpowiednie, ale mogłoby być silniejsze. Spróbuj dodać więcej znaków.', goodPassword: 'Twoje hasło jest wystarczająco silne.', @@ -1358,4 +1368,9 @@ export const plPL: LocalizationResource = { title: 'Dziękujemy za dołączenie do listy oczekujących!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/pt-BR.ts b/packages/localizations/src/pt-BR.ts index 7653f6b0eee..1b2e338caed 100644 --- a/packages/localizations/src/pt-BR.ts +++ b/packages/localizations/src/pt-BR.ts @@ -758,6 +758,10 @@ export const ptBR: LocalizationResource = { subtitle: 'Para continuar, insira o código gerado pelo seu aplicativo autenticador.', title: 'Verificação em duas etapas', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Insira sua senha', signUp: { @@ -852,6 +856,10 @@ export const ptBR: LocalizationResource = { title: 'Criar sua conta', titleCombined: 'Criar sua conta', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continuar com {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -961,6 +969,8 @@ export const ptBR: LocalizationResource = { session_exists: 'Você já está conectado.', web3_missing_identifier: 'Uma extensão de carteira Web3 não pode ser encontrada. Por favor, instale uma para continuar.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Sua senha funciona, mas poderia ser mais forte. Tente adicionar mais caracteres.', goodPassword: 'Sua senha atende a todos os requisitos necessários.', @@ -1368,4 +1378,9 @@ export const ptBR: LocalizationResource = { title: 'Obrigado por entrar na lista de espera!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/pt-PT.ts b/packages/localizations/src/pt-PT.ts index 55f586782ec..10dd7d3af09 100644 --- a/packages/localizations/src/pt-PT.ts +++ b/packages/localizations/src/pt-PT.ts @@ -747,6 +747,10 @@ export const ptPT: LocalizationResource = { subtitle: 'Insira o código de verificação enviado para o seu dispositivo.', title: 'Verificação de duas etapas', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Insira a sua palavra-passe', signUp: { @@ -838,6 +842,10 @@ export const ptPT: LocalizationResource = { title: 'Criar a sua conta', titleCombined: 'Criar a sua conta', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continuar com {{provider|titleize}}', socialButtonsBlockButtonManyInView: undefined, @@ -945,6 +953,8 @@ export const ptPT: LocalizationResource = { phone_number_exists: 'Este número de telemóvel já está em uso. Por favor, tente outro.', session_exists: 'Já está conectado.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'A sua palavra-passe funciona, mas poderia ser mais forte. Tente adicionar mais caracteres.', goodPassword: 'A sua palavra-passe atende a todos os requisitos necessários.', @@ -1348,4 +1358,9 @@ export const ptPT: LocalizationResource = { title: 'Inscrição bem-sucedida na lista de espera', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/ro-RO.ts b/packages/localizations/src/ro-RO.ts index d70abb4e881..71650af37e7 100644 --- a/packages/localizations/src/ro-RO.ts +++ b/packages/localizations/src/ro-RO.ts @@ -760,6 +760,10 @@ export const roRO: LocalizationResource = { subtitle: 'Pentru a continua, introdu codul generat de aplicația ta de autentificare', title: 'Verificare în doi pași', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Introdu parola', signUp: { @@ -853,6 +857,10 @@ export const roRO: LocalizationResource = { title: 'Creează-ți contul', titleCombined: 'Creează-ți contul', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Continuă cu {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -962,6 +970,8 @@ export const roRO: LocalizationResource = { phone_number_exists: undefined, session_exists: undefined, web3_missing_identifier: 'Nu am găsit o extensie pentru portofel Web3. Te rugăm instalează una pentru a continua.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Parola ta funcționează, dar ar putea fi mai puternică. Încearcă să adaugi mai multe caractere.', goodPassword: 'Parola ta îndeplinește toate cerințele necesare.', @@ -1365,4 +1375,9 @@ export const roRO: LocalizationResource = { title: 'Mulțumim pentru înscriere!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/ru-RU.ts b/packages/localizations/src/ru-RU.ts index fb3973de6ce..c71374c68dc 100644 --- a/packages/localizations/src/ru-RU.ts +++ b/packages/localizations/src/ru-RU.ts @@ -758,6 +758,10 @@ export const ruRU: LocalizationResource = { subtitle: 'Чтобы продолжить, пожалуйста, введите код проверки, сгенерированный вашим приложением аутентификации.', title: 'Двухфакторная верификация', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Введите Ваш пароль', signUp: { @@ -852,6 +856,10 @@ export const ruRU: LocalizationResource = { title: 'Создайте Вашу учетную запись', titleCombined: 'Создайте Вашу учетную запись', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Продолжить с помощью {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -961,6 +969,8 @@ export const ruRU: LocalizationResource = { phone_number_exists: 'Этот номер телефона уже занят. Пожалуйста, попробуйте другой.', session_exists: 'Вы уже вошли в систему.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Ваш пароль подходит, но мог бы быть надежнее. Попробуйте добавить больше символов.', goodPassword: 'Хорошая работа. Это отличный пароль.', @@ -1370,4 +1380,9 @@ export const ruRU: LocalizationResource = { title: 'Спасибо за присоединение к списку ожидания!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/sk-SK.ts b/packages/localizations/src/sk-SK.ts index 1dfdefe759c..a3e6095c0cd 100644 --- a/packages/localizations/src/sk-SK.ts +++ b/packages/localizations/src/sk-SK.ts @@ -751,6 +751,10 @@ export const skSK: LocalizationResource = { subtitle: 'Pre pokračovanie zadajte overovací kód z vašej autentifikačnej aplikácie', title: 'Dvojfaktorové overenie', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Zadajte svoje heslo', signUp: { @@ -845,6 +849,10 @@ export const skSK: LocalizationResource = { title: 'Vytvorte si účet', titleCombined: 'Vytvorte si účet', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Pokračovať s {{provider|titleize}}', socialButtonsBlockButtonManyInView: undefined, @@ -952,6 +960,8 @@ export const skSK: LocalizationResource = { phone_number_exists: 'Toto telefónne číslo je už obsadené. Skúste prosím iné.', session_exists: 'Jste už přihlášen.', web3_missing_identifier: 'Rozšírenie Web3 Peňaženky nebolo nájdené. Je potrebné ho nainštalovať.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Vaše heslo funguje, ale mohlo by byť silnejšie. Skúste pridať viac znakov.', goodPassword: 'Dobrá práca. Toto je vynikajúce heslo.', @@ -1355,4 +1365,9 @@ export const skSK: LocalizationResource = { title: 'Ďakujeme, že ste sa pridali na waitlist!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/sr-RS.ts b/packages/localizations/src/sr-RS.ts index 3b56784ffb6..766a3168ec4 100644 --- a/packages/localizations/src/sr-RS.ts +++ b/packages/localizations/src/sr-RS.ts @@ -748,6 +748,10 @@ export const srRS: LocalizationResource = { subtitle: 'Da nastaviš, molimo unesi verifikacioni kod generisan tvojom aplikacijom za autentifikaciju', title: 'Dvostepena verifikacija', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Unesi svoju lozinku', signUp: { @@ -838,6 +842,10 @@ export const srRS: LocalizationResource = { title: 'Kreiraj svoj nalog', titleCombined: 'Kreiraj svoj nalog', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Nastavi sa {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -944,6 +952,8 @@ export const srRS: LocalizationResource = { phone_number_exists: 'Ovaj telefonski broj je zauzet. Molimo pokušaj sa drugim.', session_exists: 'Već ste prijavljeni.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Tvoja lozinka funkcioniše, ali može biti jača. Pokušaj dodati više karaktera.', goodPassword: 'Tvoja lozinka ispunjava sve potrebne zahteve.', @@ -1347,4 +1357,9 @@ export const srRS: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/sv-SE.ts b/packages/localizations/src/sv-SE.ts index 3b8f4272c13..244d159655d 100644 --- a/packages/localizations/src/sv-SE.ts +++ b/packages/localizations/src/sv-SE.ts @@ -751,6 +751,10 @@ export const svSE: LocalizationResource = { subtitle: 'För att fortsätta, vänligen ange verifieringskoden som genereras av din autentiseringsapp', title: 'Tvåstegsverifiering', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Ange ditt lösenord', signUp: { @@ -843,6 +847,10 @@ export const svSE: LocalizationResource = { title: 'Skapa ditt konto', titleCombined: 'Skapa ditt konto', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Fortsätt med {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -947,6 +955,8 @@ export const svSE: LocalizationResource = { phone_number_exists: 'Detta telefonnummer är taget. Vänligen prova ett annat.', session_exists: 'Du är redan inloggad.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Ditt lösenord fungerar, men kunde vara starkare. Försök lägga till fler tecken.', goodPassword: 'Ditt lösenord uppfyller alla nödvändiga krav.', @@ -1350,4 +1360,9 @@ export const svSE: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/ta-IN.ts b/packages/localizations/src/ta-IN.ts index cef6937beb3..24892a9446c 100644 --- a/packages/localizations/src/ta-IN.ts +++ b/packages/localizations/src/ta-IN.ts @@ -754,6 +754,10 @@ export const taIN: LocalizationResource = { subtitle: 'தொடர, உங்கள் அங்கீகாரி பயன்பாட்டால் உருவாக்கப்பட்ட சரிபார்ப்புக் குறியீட்டை உள்ளிடவும்', title: 'இரண்டு-படி சரிபார்ப்பு', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'உங்கள் கடவுச்சொல்லை உள்ளிடவும்', signUp: { @@ -847,6 +851,10 @@ export const taIN: LocalizationResource = { title: 'உங்கள் கணக்கை உருவாக்கவும்', titleCombined: 'உங்கள் கணக்கை உருவாக்கவும்', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '{{provider|titleize}} மூலம் தொடரவும்', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -959,6 +967,8 @@ export const taIN: LocalizationResource = { phone_number_exists: 'இந்த தொலைபேசி எண் எடுக்கப்பட்டுள்ளது. வேறொன்றை முயற்சிக்கவும்.', session_exists: undefined, web3_missing_identifier: 'Web3 வாலட் நீட்டிப்பு காணப்படவில்லை. தொடர ஒன்றை நிறுவவும்.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'உங்கள் கடவுச்சொல் செயல்படுகிறது, ஆனால் மேலும் வலுவாக இருக்கலாம். மேலும் எழுத்துகளைச் சேர்க்க முயற்சிக்கவும்.', @@ -1365,4 +1375,9 @@ export const taIN: LocalizationResource = { title: 'காத்திருப்பில் சேர்ந்ததற்கு நன்றி!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/te-IN.ts b/packages/localizations/src/te-IN.ts index 85bfd6dcb31..38df299c4e5 100644 --- a/packages/localizations/src/te-IN.ts +++ b/packages/localizations/src/te-IN.ts @@ -754,6 +754,10 @@ export const teIN: LocalizationResource = { subtitle: 'కొనసాగించడానికి, దయచేసి మీ ప్రమాణీకరణ యాప్ ద్వారా రూపొందించిన ధృవీకరణ కోడ్‌ను నమోదు చేయండి', title: 'రెండు-దశల ధృవీకరణ', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'మీ పాస్‌వర్డ్‌ను నమోదు చేయండి', signUp: { @@ -847,6 +851,10 @@ export const teIN: LocalizationResource = { title: 'మీ ఖాతాను సృష్టించండి', titleCombined: 'మీ ఖాతాను సృష్టించండి', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '{{provider|titleize}}తో కొనసాగించండి', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -955,6 +963,8 @@ export const teIN: LocalizationResource = { phone_number_exists: 'ఈ ఫోన్ నంబర్ తీసుకోబడింది. దయచేసి మరొకదాన్ని ప్రయత్నించండి.', session_exists: undefined, web3_missing_identifier: 'Web3 వాలెట్ పొడిగింపు కనుగొనబడలేదు. కొనసాగించడానికి దయచేసి ఒకదాన్ని ఇన్‌స్టాల్ చేయండి.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'మీ పాస్‌వర్డ్ పనిచేస్తుంది, కానీ మరింత బలంగా ఉండవచ్చు. మరిన్ని అక్షరాలను జోడించడానికి ప్రయత్నించండి.', @@ -1361,4 +1371,9 @@ export const teIN: LocalizationResource = { title: 'వెయిట్‌లిస్ట్‌లో చేరినందుకు ధన్యవాదాలు!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/th-TH.ts b/packages/localizations/src/th-TH.ts index 2bb64aefb9a..d2626f62135 100644 --- a/packages/localizations/src/th-TH.ts +++ b/packages/localizations/src/th-TH.ts @@ -750,6 +750,10 @@ export const thTH: LocalizationResource = { subtitle: 'เพื่อดำเนินการต่อ โปรดใส่รหัสยืนยันที่สร้างโดยแอป Authenticator ของคุณ', title: 'การยืนยันตัวตนสองขั้นตอน', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'ใส่รหัสผ่านของคุณ', signUp: { @@ -841,6 +845,10 @@ export const thTH: LocalizationResource = { title: 'สร้างบัญชีของคุณ', titleCombined: 'สร้างบัญชีของคุณ', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'ดำเนินการต่อด้วย {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -943,6 +951,8 @@ export const thTH: LocalizationResource = { phone_number_exists: undefined, session_exists: undefined, web3_missing_identifier: 'ไม่พบส่วนขยาย Web3 Wallet โปรดติดตั้งเพื่อดำเนินการต่อ', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'รหัสผ่านของคุณใช้ได้ แต่อาจแข็งแกร่งกว่านี้ ลองเพิ่มตัวอักษรเพิ่มเติม', goodPassword: 'รหัสผ่านของคุณตรงตามข้อกำหนดที่จำเป็นทั้งหมด', @@ -1341,4 +1351,9 @@ export const thTH: LocalizationResource = { title: 'ขอบคุณที่เข้าร่วม Waitlist!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/tr-TR.ts b/packages/localizations/src/tr-TR.ts index 16c3d3fb087..36c491da997 100644 --- a/packages/localizations/src/tr-TR.ts +++ b/packages/localizations/src/tr-TR.ts @@ -750,6 +750,10 @@ export const trTR: LocalizationResource = { subtitle: 'Devam etmek için lütfen kimlik doğrulayıcı uygulamanız tarafından oluşturulan doğrulama kodunu girin', title: 'İki aşamalı doğrulama', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Şifrenizi girin', signUp: { @@ -841,6 +845,10 @@ export const trTR: LocalizationResource = { title: 'Hesap oluştur', titleCombined: 'Hesap oluştur', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '{{provider|titleize}} ile giriş yapın', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -948,6 +956,8 @@ export const trTR: LocalizationResource = { phone_number_exists: 'Bu telefon numarası zaten kullanılıyor. Lütfen başka bir numara deneyin.', session_exists: 'Zaten giriş yapmışsınız.', web3_missing_identifier: 'Web3 için tanımlayıcı eksik.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Şifreniz kriterleri karşılıyor; fakat birkaç karakter daha ekleyerek daha güçlü bir şifre oluşturabilirsiniz.', @@ -1352,4 +1362,9 @@ export const trTR: LocalizationResource = { title: 'Bekleme Listesine Katıldınız', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/uk-UA.ts b/packages/localizations/src/uk-UA.ts index a8652e5dbe0..e9d18eab782 100644 --- a/packages/localizations/src/uk-UA.ts +++ b/packages/localizations/src/uk-UA.ts @@ -747,6 +747,10 @@ export const ukUA: LocalizationResource = { subtitle: undefined, title: 'Двоетапна перевірка', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Введіть Ваш пароль', signUp: { @@ -837,6 +841,10 @@ export const ukUA: LocalizationResource = { title: 'Створіть Ваш акаунт', titleCombined: 'Створіть Ваш акаунт', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Продовжити за допомогою {{provider|titleize}}', socialButtonsBlockButtonManyInView: undefined, @@ -942,6 +950,8 @@ export const ukUA: LocalizationResource = { phone_number_exists: 'Цей номер телефону вже використовується. Спробуйте інший.', session_exists: 'Ви вже увійшли в систему.', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Ваш пароль підходить, але міг би бути надійнішим. Спробуйте додати більше символів.', goodPassword: 'Хороша робота. Це відмінний пароль.', @@ -1346,4 +1356,9 @@ export const ukUA: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/vi-VN.ts b/packages/localizations/src/vi-VN.ts index 799baee336a..6ea0b7b5239 100644 --- a/packages/localizations/src/vi-VN.ts +++ b/packages/localizations/src/vi-VN.ts @@ -756,6 +756,10 @@ export const viVN: LocalizationResource = { subtitle: 'Để tiếp tục, vui lòng nhập mã xác minh được tạo bởi ứng dụng xác thực của bạn', title: 'Xác thực hai bước', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: 'Nhập mật khẩu', signUp: { @@ -848,6 +852,10 @@ export const viVN: LocalizationResource = { title: 'Tạo tài khoản của bạn', titleCombined: 'Tạo tài khoản của bạn', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: 'Tiếp tục với {{provider|titleize}}', socialButtonsBlockButtonManyInView: '{{provider|titleize}}', @@ -951,6 +959,8 @@ export const viVN: LocalizationResource = { phone_number_exists: undefined, session_exists: undefined, web3_missing_identifier: 'Không tìm thấy phần mở rộng Web3 Wallet. Vui lòng cài đặt một phần mở rộng để tiếp tục.', + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: 'Mật khẩu của bạn hoạt động, nhưng có thể mạnh hơn. Hãy thử thêm nhiều ký tự.', goodPassword: 'Mật khẩu của bạn đáp ứng tất cả các yêu cầu cần thiết.', @@ -1357,4 +1367,9 @@ export const viVN: LocalizationResource = { title: 'Cảm ơn bạn đã tham gia danh sách chờ!', }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/zh-CN.ts b/packages/localizations/src/zh-CN.ts index 02b2ee844d1..d21ad125058 100644 --- a/packages/localizations/src/zh-CN.ts +++ b/packages/localizations/src/zh-CN.ts @@ -737,6 +737,10 @@ export const zhCN: LocalizationResource = { subtitle: '请继续输入由您的身份验证应用生成的验证码。', title: '两步验证', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: '输入您的密码', signUp: { @@ -827,6 +831,10 @@ export const zhCN: LocalizationResource = { title: '创建您的账户', titleCombined: '创建您的账户', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '使用 {{provider|titleize}} 登录', socialButtonsBlockButtonManyInView: undefined, @@ -926,6 +934,8 @@ export const zhCN: LocalizationResource = { phone_number_exists: '该电话号码已被使用,请尝试其他号码。', session_exists: '您已登录。', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: '您的密码可以用,但可以更强。试着添加更多字符。', goodPassword: '做得好。这是一个优秀的密码。', @@ -1315,4 +1325,9 @@ export const zhCN: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/localizations/src/zh-TW.ts b/packages/localizations/src/zh-TW.ts index aedaaabd550..4795c3016f8 100644 --- a/packages/localizations/src/zh-TW.ts +++ b/packages/localizations/src/zh-TW.ts @@ -737,6 +737,10 @@ export const zhTW: LocalizationResource = { subtitle: undefined, title: '兩步驟驗證', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, signInEnterPasswordTitle: '輸入您的密碼', signUp: { @@ -828,6 +832,10 @@ export const zhTW: LocalizationResource = { title: '建立您的帳戶', titleCombined: '建立您的帳戶', }, + web3Solana: { + subtitle: undefined, + title: undefined, + }, }, socialButtonsBlockButton: '以 {{provider|titleize}} 帳戶登入', socialButtonsBlockButtonManyInView: undefined, @@ -926,6 +934,8 @@ export const zhTW: LocalizationResource = { phone_number_exists: '此電話號碼已被使用,請嘗試其他號碼。', session_exists: '您已經登錄。', web3_missing_identifier: undefined, + web3_signature_request_rejected: undefined, + web3_solana_signature_generation_failed: undefined, zxcvbn: { couldBeStronger: '您的密碼強度尚可,但可以更安全。請嘗試增加長度或複雜度。', goodPassword: '密碼強度良好。', @@ -1313,4 +1323,9 @@ export const zhTW: LocalizationResource = { title: undefined, }, }, + web3WalletButtons: { + connect: undefined, + continue: undefined, + noneAvailable: undefined, + }, } as const; diff --git a/packages/react/src/isomorphicClerk.ts b/packages/react/src/isomorphicClerk.ts index 7328457558d..b39bf352b8c 100644 --- a/packages/react/src/isomorphicClerk.ts +++ b/packages/react/src/isomorphicClerk.ts @@ -18,6 +18,7 @@ import type { AuthenticateWithGoogleOneTapParams, AuthenticateWithMetamaskParams, AuthenticateWithOKXWalletParams, + AuthenticateWithSolanaParams, BillingNamespace, Clerk, ClerkAuthenticateWithWeb3Params, @@ -1468,6 +1469,15 @@ export class IsomorphicClerk implements IsomorphicLoadedClerk { } }; + authenticateWithSolana = async (params: AuthenticateWithSolanaParams) => { + const callback = () => this.clerkjs?.authenticateWithSolana(params); + if (this.clerkjs && this.loaded) { + return callback() as Promise; + } else { + this.premountMethodCalls.set('authenticateWithSolana', callback); + } + }; + authenticateWithWeb3 = async (params: ClerkAuthenticateWithWeb3Params) => { const callback = () => this.clerkjs?.authenticateWithWeb3(params); if (this.clerkjs && this.loaded) { diff --git a/packages/shared/package.json b/packages/shared/package.json index 9b72d07a26f..0ad144e3b78 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -133,11 +133,15 @@ "devDependencies": { "@base-org/account": "catalog:module-manager", "@coinbase/wallet-sdk": "catalog:module-manager", + "@solana/wallet-adapter-base": "catalog:module-manager", + "@solana/wallet-adapter-react": "catalog:module-manager", + "@solana/wallet-standard": "catalog:module-manager", "@stripe/react-stripe-js": "3.1.1", "@stripe/stripe-js": "5.6.0", "@tanstack/query-core": "5.87.4", "@types/glob-to-regexp": "0.4.4", "@types/js-cookie": "3.0.6", + "@wallet-standard/core": "catalog:module-manager", "@zxcvbn-ts/core": "catalog:module-manager", "@zxcvbn-ts/language-common": "catalog:module-manager", "cross-fetch": "^4.1.0", diff --git a/packages/shared/src/internal/clerk-js/injectedWeb3Providers.ts b/packages/shared/src/internal/clerk-js/injectedWeb3EthProviders.ts similarity index 76% rename from packages/shared/src/internal/clerk-js/injectedWeb3Providers.ts rename to packages/shared/src/internal/clerk-js/injectedWeb3EthProviders.ts index d3deedd902b..91ca4844a21 100644 --- a/packages/shared/src/internal/clerk-js/injectedWeb3Providers.ts +++ b/packages/shared/src/internal/clerk-js/injectedWeb3EthProviders.ts @@ -27,15 +27,15 @@ interface EIP6963ProviderDetail { } type EIP6963AnnounceProviderEvent = CustomEvent; -type InjectedWeb3Provider = MetamaskWeb3Provider | OKXWalletWeb3Provider; +type InjectedWeb3EthProvider = MetamaskWeb3Provider | OKXWalletWeb3Provider; -class InjectedWeb3Providers { +class InjectedWeb3EthProviders { #providers: EIP6963ProviderDetail[] = []; - #providerIdMap: Record = { + #providerIdMap: Record = { metamask: 'MetaMask', okx_wallet: 'OKX Wallet', } as const; - static #instance: InjectedWeb3Providers | null = null; + static #instance: InjectedWeb3EthProviders | null = null; private constructor() { if (typeof window === 'undefined') { @@ -45,14 +45,14 @@ class InjectedWeb3Providers { window.dispatchEvent(new Event('eip6963:requestProvider')); } - public static getInstance(): InjectedWeb3Providers { - if (!InjectedWeb3Providers.#instance) { - InjectedWeb3Providers.#instance = new InjectedWeb3Providers(); + public static getInstance(): InjectedWeb3EthProviders { + if (!InjectedWeb3EthProviders.#instance) { + InjectedWeb3EthProviders.#instance = new InjectedWeb3EthProviders(); } - return InjectedWeb3Providers.#instance; + return InjectedWeb3EthProviders.#instance; } - get = (provider: InjectedWeb3Provider) => { + get = (provider: InjectedWeb3EthProvider) => { const ethProvider = this.#providers.find(p => p.info.name === this.#providerIdMap[provider])?.provider; if (ethProvider !== undefined) { return ethProvider; @@ -73,4 +73,4 @@ class InjectedWeb3Providers { }; } -export const getInjectedWeb3Providers = () => InjectedWeb3Providers.getInstance(); +export const getInjectedWeb3EthProviders = () => InjectedWeb3EthProviders.getInstance(); diff --git a/packages/shared/src/internal/clerk-js/injectedWeb3SolanaProviders.ts b/packages/shared/src/internal/clerk-js/injectedWeb3SolanaProviders.ts new file mode 100644 index 00000000000..c2514cd78ac --- /dev/null +++ b/packages/shared/src/internal/clerk-js/injectedWeb3SolanaProviders.ts @@ -0,0 +1,66 @@ +import type { SolanaWalletAdapterWallet } from '@solana/wallet-standard'; +import type { Wallet } from '@wallet-standard/core'; + +//https://eips.ethereum.org/EIPS/eip-4361 + +class InjectedWeb3SolanaProviders { + #wallets: readonly Wallet[] | undefined = undefined; + static #instance: InjectedWeb3SolanaProviders | null = null; + + private constructor() {} + + async #initialize() { + const wallets = await import('@wallet-standard/core').then(mod => mod.getWallets()); + this.#wallets = wallets.get(); + + wallets.on('register', () => { + this.#wallets = wallets.get(); + }); + wallets.on('unregister', () => { + this.#wallets = wallets.get(); + }); + } + + #isSolanaWallet(wallet: Wallet): wallet is SolanaWalletAdapterWallet { + return wallet.chains?.some(chain => chain.startsWith('solana:')) ?? false; + } + + #hasSignMessage(wallet: Wallet): boolean { + return 'solana:signMessage' in wallet.features; + } + + public static getInstance(): InjectedWeb3SolanaProviders { + if (!InjectedWeb3SolanaProviders.#instance) { + InjectedWeb3SolanaProviders.#instance = new InjectedWeb3SolanaProviders(); + } + return InjectedWeb3SolanaProviders.#instance; + } + + get = async (walletName: string): Promise => { + await this.#initialize(); + const wallet = (this.#wallets || []).find( + w => w.name === walletName && this.#isSolanaWallet(w) && this.#hasSignMessage(w), + ); + if (wallet && this.#isSolanaWallet(wallet)) { + return wallet; + } + + if (typeof window === 'undefined') { + return undefined; + } + // In case we weren't able to find the requested provider, fallback to the + // global injected provider instead, if any, to allow the user to continue + // the flow rather than blocking it + const fallbackProvider = (window as any).solana; + if ( + fallbackProvider && + typeof fallbackProvider.connect === 'function' && + typeof fallbackProvider.signMessage === 'function' + ) { + return fallbackProvider as SolanaWalletAdapterWallet; + } + return undefined; + }; +} + +export const getInjectedWeb3SolanaProviders = () => InjectedWeb3SolanaProviders.getInstance(); diff --git a/packages/shared/src/internal/clerk-js/web3.ts b/packages/shared/src/internal/clerk-js/web3.ts index 78c51fdb03c..6db057e07da 100644 --- a/packages/shared/src/internal/clerk-js/web3.ts +++ b/packages/shared/src/internal/clerk-js/web3.ts @@ -1,55 +1,102 @@ +import type { SolanaWalletAdapterWallet } from '@solana/wallet-standard'; + +import { buildErrorThrower, ClerkRuntimeError } from '@/error'; + import type { ModuleManager } from '../../moduleManager'; -import type { Web3Provider } from '../../types'; +import type { GenerateSignature, Web3Provider } from '../../types'; import { clerkUnsupportedEnvironmentWarning } from './errors'; import { toHex } from './hex'; -import { getInjectedWeb3Providers } from './injectedWeb3Providers'; +import { getInjectedWeb3EthProviders } from './injectedWeb3EthProviders'; +import { getInjectedWeb3SolanaProviders } from './injectedWeb3SolanaProviders'; type GetWeb3IdentifierParams = { provider: Web3Provider; + walletName?: string; }; -type GenerateWeb3SignatureParams = GenerateSignatureParams & { - provider: Web3Provider; -}; +// '@solana/wallet-standard' +const StandardConnect = `standard:connect`; +const SolanaSignMessage = `solana:signMessage`; type GenerateSignatureParams = { identifier: string; nonce: string; }; +type GenerateSolanaSignatureParams = GenerateSignatureParams & { + walletName: string; +}; + export function createWeb3(moduleManager: ModuleManager) { + const errorThrower = buildErrorThrower({ + packageName: '@clerk/shared', + }); + async function getWeb3Identifier(params: GetWeb3IdentifierParams): Promise { - const { provider } = params; - const ethereum = await getEthereumProvider(provider); + const { provider, walletName } = params; + const walletProvider = await getWeb3Wallet(provider, walletName); // TODO - core-3: Improve error handling for the case when the provider is not found - if (!ethereum) { + if (!walletProvider) { // If a plugin for the requested provider is not found, // the flow will fail as it has been the expected behavior so far. return ''; } - const identifiers = await ethereum.request({ method: 'eth_requestAccounts' }); + if (provider === 'solana') { + const identifiers = await walletProvider.features[StandardConnect].connect(); + return (identifiers && identifiers.accounts[0].address) || ''; + } + + // Ethereum providers + const identifiers = await walletProvider.request({ method: 'eth_requestAccounts' }); // @ts-ignore -- Provider SDKs may return unknown shape; use first address if present return (identifiers && identifiers[0]) || ''; } - async function generateWeb3Signature(params: GenerateWeb3SignatureParams): Promise { - const { identifier, nonce, provider } = params; - const ethereum = await getEthereumProvider(provider); + const generateWeb3Signature: GenerateSignature = async (params): Promise => { + const { identifier, nonce, provider, walletName = '' } = params; + const wallet = await getWeb3Wallet(provider, walletName); // TODO - core-3: Improve error handling for the case when the provider is not found - if (!ethereum) { + if (!wallet) { // If a plugin for the requested provider is not found, // the flow will fail as it has been the expected behavior so far. return ''; } - return await ethereum.request({ + if (provider === 'solana') { + try { + const solanaWallet = wallet as SolanaWalletAdapterWallet; + const walletAccount = solanaWallet.accounts.find(a => a.address === identifier); + if (!walletAccount) { + console.warn(`Wallet account with address ${identifier} not found`); + return ''; + } + const signedMessages = await solanaWallet.features[SolanaSignMessage]?.signMessage({ + account: walletAccount, + message: new TextEncoder().encode(nonce), + }); + // Convert signature Uint8Array to base64 string + return signedMessages?.[0]?.signature ? btoa(String.fromCharCode(...signedMessages[0].signature)) : ''; + } catch (err) { + if (err instanceof Error && err.message.includes('User rejected the request.')) { + throw new ClerkRuntimeError('Web3 signature request was rejected by the user.', { + code: 'web3_signature_request_rejected', + }); + } + throw new ClerkRuntimeError('An error occurred while generating the Solana signature.', { + code: 'web3_solana_signature_generation_failed', + cause: err instanceof Error ? err : undefined, + }); + } + } + + return await wallet.request({ method: 'personal_sign', params: [`0x${toHex(nonce)}`, identifier], }); - } + }; async function getMetamaskIdentifier(): Promise { return await getWeb3Identifier({ provider: 'metamask' }); @@ -67,6 +114,10 @@ export function createWeb3(moduleManager: ModuleManager) { return await getWeb3Identifier({ provider: 'base' }); } + async function getSolanaIdentifier(walletName: string): Promise { + return await getWeb3Identifier({ provider: 'solana', walletName }); + } + async function generateSignatureWithMetamask(params: GenerateSignatureParams): Promise { return await generateWeb3Signature({ ...params, provider: 'metamask' }); } @@ -82,8 +133,11 @@ export function createWeb3(moduleManager: ModuleManager) { async function generateSignatureWithBase(params: GenerateSignatureParams): Promise { return await generateWeb3Signature({ ...params, provider: 'base' }); } + async function generateSignatureWithSolana(params: GenerateSolanaSignatureParams): Promise { + return await generateWeb3Signature({ ...params, provider: 'solana' }); + } - async function getEthereumProvider(provider: Web3Provider) { + async function getWeb3Wallet(provider: Web3Provider, walletName?: string) { if (provider === 'coinbase_wallet') { if (__BUILD_DISABLE_RHC__) { clerkUnsupportedEnvironmentWarning('Coinbase Wallet'); @@ -127,7 +181,15 @@ export function createWeb3(moduleManager: ModuleManager) { } } - return getInjectedWeb3Providers().get(provider); + if (provider === 'solana') { + if (!walletName || walletName.length === 0) { + errorThrower.throw('Wallet name must be provided to get Solana wallet provider'); + return; + } + return await getInjectedWeb3SolanaProviders().get(walletName); + } + + return getInjectedWeb3EthProviders().get(provider); } return { @@ -137,9 +199,11 @@ export function createWeb3(moduleManager: ModuleManager) { getCoinbaseWalletIdentifier, getOKXWalletIdentifier, getBaseIdentifier, + getSolanaIdentifier, generateSignatureWithMetamask, generateSignatureWithCoinbaseWallet, generateSignatureWithOKXWallet, generateSignatureWithBase, + generateSignatureWithSolana, }; } diff --git a/packages/shared/src/types/clerk.ts b/packages/shared/src/types/clerk.ts index d1b89b6ba3a..426a2d5a45d 100644 --- a/packages/shared/src/types/clerk.ts +++ b/packages/shared/src/types/clerk.ts @@ -913,6 +913,11 @@ export interface Clerk { */ authenticateWithBase: (params?: AuthenticateWithBaseParams) => Promise; + /** + * Authenticates user using their Solana supported Web3 wallet browser extension + */ + authenticateWithSolana: (params: AuthenticateWithSolanaParams) => Promise; + /** * Authenticates user using their Web3 Wallet browser extension */ @@ -2250,6 +2255,7 @@ export interface ClerkAuthenticateWithWeb3Params { strategy: Web3Strategy; legalAccepted?: boolean; secondFactorUrl?: string; + walletName?: string; } export type JoinWaitlistParams = { @@ -2293,6 +2299,15 @@ export interface AuthenticateWithBaseParams { legalAccepted?: boolean; } +export interface AuthenticateWithSolanaParams { + customNavigate?: (to: string) => Promise; + redirectUrl?: string; + signUpContinueUrl?: string; + unsafeMetadata?: SignUpUnsafeMetadata; + legalAccepted?: boolean; + walletName: string; +} + export interface HeadlessBrowserClerkConstructor { new (publishableKey: string, options?: DomainOrProxyUrl): HeadlessBrowserClerk; } diff --git a/packages/shared/src/types/factors.ts b/packages/shared/src/types/factors.ts index 370637ebce3..04aa639e87b 100644 --- a/packages/shared/src/types/factors.ts +++ b/packages/shared/src/types/factors.ts @@ -42,6 +42,7 @@ export type Web3SignatureFactor = { strategy: Web3Strategy; web3WalletId: string; primary?: boolean; + walletName?: string; }; export type PasswordFactor = { diff --git a/packages/shared/src/types/localization.ts b/packages/shared/src/types/localization.ts index 8208b1e185d..3e8cefd8959 100644 --- a/packages/shared/src/types/localization.ts +++ b/packages/shared/src/types/localization.ts @@ -369,6 +369,11 @@ export type __internal_LocalizationResource = { title: LocalizationValue; subtitle: LocalizationValue; }; + web3Solana: { + title: LocalizationValue; + subtitle: LocalizationValue; + noAvailableWallets: LocalizationValue; + }; }; signIn: { start: { @@ -547,6 +552,10 @@ export type __internal_LocalizationResource = { title: LocalizationValue; subtitle: LocalizationValue; }; + web3Solana: { + title: LocalizationValue; + subtitle: LocalizationValue; + }; }; reverification: { password: { @@ -1300,6 +1309,11 @@ export type __internal_LocalizationResource = { }; formButtonPrimary: LocalizationValue; }; + web3WalletButtons: { + connect: LocalizationValue<'walletName'>; + continue: LocalizationValue<'walletName'>; + noneAvailable: LocalizationValue<'solanaWalletsLink'>; + }; }; type WithParamName = T & @@ -1320,6 +1334,8 @@ type UnstableErrors = WithParamName<{ passkey_registration_cancelled: LocalizationValue; passkey_already_exists: LocalizationValue; web3_missing_identifier: LocalizationValue; + web3_solana_signature_generation_failed: LocalizationValue; + web3_signature_request_rejected: LocalizationValue; form_password_pwned: LocalizationValue; form_password_pwned__sign_in: LocalizationValue; form_new_password_matches_current: LocalizationValue; diff --git a/packages/shared/src/types/signIn.ts b/packages/shared/src/types/signIn.ts index e37018e15c3..031cf9e76eb 100644 --- a/packages/shared/src/types/signIn.ts +++ b/packages/shared/src/types/signIn.ts @@ -16,6 +16,7 @@ import type { PrepareFirstFactorParams, PrepareSecondFactorParams, ResetPasswordParams, + SignInAuthenticateWithSolanaParams, SignInCreateParams, SignInFirstFactor, SignInIdentifier, @@ -76,6 +77,8 @@ export interface SignInResource extends ClerkResource { authenticateWithBase: () => Promise; + authenticateWithSolana: (params: SignInAuthenticateWithSolanaParams) => Promise; + authenticateWithPasskey: (params?: AuthenticateWithPasskeyParams) => Promise; createEmailLinkFlow: () => CreateEmailLinkFlowReturn; diff --git a/packages/shared/src/types/signInCommon.ts b/packages/shared/src/types/signInCommon.ts index 6115dcde77e..52917cd1293 100644 --- a/packages/shared/src/types/signInCommon.ts +++ b/packages/shared/src/types/signInCommon.ts @@ -192,3 +192,7 @@ export type SignInStrategy = | BackupCodeStrategy | OAuthStrategy | EnterpriseSSOStrategy; + +export interface SignInAuthenticateWithSolanaParams { + walletName: string; +} diff --git a/packages/shared/src/types/signInFuture.ts b/packages/shared/src/types/signInFuture.ts index 85673534f7e..e6093172c17 100644 --- a/packages/shared/src/types/signInFuture.ts +++ b/packages/shared/src/types/signInFuture.ts @@ -4,6 +4,7 @@ import type { PhoneCodeChannel } from './phoneCodeChannel'; import type { SignInFirstFactor, SignInSecondFactor, SignInStatus, UserData } from './signInCommon'; import type { OAuthStrategy, PasskeyStrategy, Web3Strategy } from './strategies'; import type { VerificationResource } from './verification'; +import type { Web3Provider } from './web3'; export interface SignInFutureCreateParams { /** @@ -244,6 +245,14 @@ export interface SignInFutureWeb3Params { * The verification strategy to validate the user's sign-in request. */ strategy: Web3Strategy; + /** + * The Web3 wallet provider to use for the sign-in. + */ + provider: Web3Provider; + /** + * The name of the wallet to use for Solana sign-ins. Required when `provider` is set to `'solana'`. + */ + walletName?: string; } export interface SignInFuturePasskeyParams { diff --git a/packages/shared/src/types/signUp.ts b/packages/shared/src/types/signUp.ts index 8cfcc7debce..38da8659e9b 100644 --- a/packages/shared/src/types/signUp.ts +++ b/packages/shared/src/types/signUp.ts @@ -6,6 +6,7 @@ import type { ClerkResource } from './resource'; import type { AttemptVerificationParams, PrepareVerificationParams, + SignUpAuthenticateWithSolanaParams, SignUpAuthenticateWithWeb3Params, SignUpCreateParams, SignUpField, @@ -107,6 +108,7 @@ export interface SignUpResource extends ClerkResource { authenticateWithCoinbaseWallet: (params?: SignUpAuthenticateWithWeb3Params) => Promise; authenticateWithOKXWallet: (params?: SignUpAuthenticateWithWeb3Params) => Promise; authenticateWithBase: (params?: SignUpAuthenticateWithWeb3Params) => Promise; + authenticateWithSolana: (params: SignUpAuthenticateWithSolanaParams) => Promise; __internal_toSnapshot: () => SignUpJSONSnapshot; /** diff --git a/packages/shared/src/types/signUpCommon.ts b/packages/shared/src/types/signUpCommon.ts index 5af4088d0fd..41c15035b46 100644 --- a/packages/shared/src/types/signUpCommon.ts +++ b/packages/shared/src/types/signUpCommon.ts @@ -113,6 +113,11 @@ export type SignUpAuthenticateWithMetamaskParams = SignUpAuthenticateWithWeb3Par export type SignUpAuthenticateWithWeb3Params = { unsafeMetadata?: SignUpUnsafeMetadata; + legalAccepted?: boolean; +}; + +export type SignUpAuthenticateWithSolanaParams = SignUpAuthenticateWithWeb3Params & { + walletName: string; }; export interface SignUpVerificationsResource { diff --git a/packages/shared/src/types/web3.ts b/packages/shared/src/types/web3.ts index 78e82f3fb76..450c8533946 100644 --- a/packages/shared/src/types/web3.ts +++ b/packages/shared/src/types/web3.ts @@ -10,5 +10,12 @@ export type MetamaskWeb3Provider = 'metamask'; export type CoinbaseWalletWeb3Provider = 'coinbase_wallet'; export type OKXWalletWeb3Provider = 'okx_wallet'; export type BaseWeb3Provider = 'base'; +export type SolanaWeb3Provider = 'solana'; -export type Web3Provider = MetamaskWeb3Provider | BaseWeb3Provider | CoinbaseWalletWeb3Provider | OKXWalletWeb3Provider; +export type Web3Provider = EthereumWeb3Provider | SolanaWeb3Provider; + +export type EthereumWeb3Provider = + | MetamaskWeb3Provider + | BaseWeb3Provider + | CoinbaseWalletWeb3Provider + | OKXWalletWeb3Provider; diff --git a/packages/shared/src/types/web3Wallet.ts b/packages/shared/src/types/web3Wallet.ts index 62dec1eb68d..0658cd87744 100644 --- a/packages/shared/src/types/web3Wallet.ts +++ b/packages/shared/src/types/web3Wallet.ts @@ -31,10 +31,12 @@ export interface AuthenticateWithWeb3Params { identifier: string; generateSignature: GenerateSignature; strategy?: Web3Strategy; + walletName?: string; } export interface GenerateSignatureParams { identifier: string; nonce: string; - provider?: Web3Provider; + provider: Web3Provider; + walletName?: string; } diff --git a/packages/shared/src/web3.ts b/packages/shared/src/web3.ts index 25392eece24..d630edf5f88 100644 --- a/packages/shared/src/web3.ts +++ b/packages/shared/src/web3.ts @@ -21,4 +21,9 @@ export const WEB3_PROVIDERS: Web3ProviderData[] = [ strategy: 'web3_okx_wallet_signature', name: 'OKX Wallet', }, + { + provider: 'solana', + strategy: 'web3_solana_signature', + name: 'Solana', + }, ]; diff --git a/packages/ui/package.json b/packages/ui/package.json index 7db01df8831..2d58f0451c9 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -73,6 +73,9 @@ "@emotion/react": "11.11.1", "@floating-ui/react": "0.27.12", "@formkit/auto-animate": "^0.8.2", + "@solana/wallet-adapter-base": "catalog:module-manager", + "@solana/wallet-adapter-react": "catalog:module-manager", + "@solana/wallet-standard": "catalog:module-manager", "copy-to-clipboard": "3.3.3", "csstype": "3.1.3", "dequal": "2.0.3", diff --git a/packages/ui/src/common/WalletInitialIcon.tsx b/packages/ui/src/common/WalletInitialIcon.tsx new file mode 100644 index 00000000000..362a9f64312 --- /dev/null +++ b/packages/ui/src/common/WalletInitialIcon.tsx @@ -0,0 +1,43 @@ +import { Box, descriptors, Text } from '../customizables'; +import type { PropsOfComponent } from '../styledSystem'; +import { common } from '../styledSystem'; + +type WalletInitialIconProps = PropsOfComponent & { + value: string; + /** + * The wallet provider name + */ + id: string; +}; + +export const WalletInitialIcon = (props: WalletInitialIconProps) => { + const { value, id, ...rest } = props; + + return ( + ({ + ...common.centeredFlex('inline-flex'), + width: t.space.$4, + height: t.space.$4, + borderRadius: t.radii.$sm, + color: t.colors.$colorPrimaryForeground, + backgroundColor: t.colors.$primary500, + })} + {...rest} + > + + {value[0].toUpperCase()} + + + ); +}; diff --git a/packages/ui/src/components/SignIn/SignInFactorOneSolanaWalletsCard.tsx b/packages/ui/src/components/SignIn/SignInFactorOneSolanaWalletsCard.tsx new file mode 100644 index 00000000000..321ac4ee56d --- /dev/null +++ b/packages/ui/src/components/SignIn/SignInFactorOneSolanaWalletsCard.tsx @@ -0,0 +1,94 @@ +import { useClerk } from '@clerk/shared/react'; +import { lazy, Suspense } from 'react'; + +import { withRedirectToAfterSignIn, withRedirectToSignInTask } from '@/ui/common/withRedirect'; +import { descriptors, Flex, Flow, localizationKeys, Spinner } from '@/ui/customizables'; +import { BackLink } from '@/ui/elements/BackLink'; +import { Card } from '@/ui/elements/Card'; +import { useCardState, withCardStateProvider } from '@/ui/elements/contexts'; +import { Header } from '@/ui/elements/Header'; +import { web3CallbackErrorHandler } from '@/ui/utils/web3CallbackErrorHandler'; + +const Web3WalletButtons = lazy(() => + import(/* webpackChunkName: "web3-wallet-buttons" */ '@/ui/elements/Web3SolanaWalletButtons').then(m => ({ + default: m.Web3SolanaWalletButtons, + })), +); + +import { useSignInContext } from '../../contexts'; +import { useRouter } from '../../router'; + +const SignInFactorOneSolanaWalletsCardInner = () => { + const clerk = useClerk(); + const card = useCardState(); + const router = useRouter(); + const ctx = useSignInContext(); + + const onBackLinkClick = () => { + void router.navigate('../'); + }; + + return ( + + + + + + + + {card.error} + + ({ + height: '100%', + minHeight: t.sizes.$32, + })} + > + + + } + > + { + return clerk + .authenticateWithWeb3({ + customNavigate: router.navigate, + redirectUrl: ctx.afterSignInUrl || '/', + secondFactorUrl: 'factor-two', + signUpContinueUrl: ctx.isCombinedFlow ? '../create/continue' : ctx.signUpContinueUrl, + strategy: 'web3_solana_signature', + walletName, + }) + .catch(err => web3CallbackErrorHandler(err, card.setError)); + }} + /> + + + + + + + + + ); +}; + +export const SignInFactorOneSolanaWalletsCard = withRedirectToSignInTask( + withRedirectToAfterSignIn(withCardStateProvider(SignInFactorOneSolanaWalletsCardInner)), +); diff --git a/packages/ui/src/components/SignIn/SignInSocialButtons.tsx b/packages/ui/src/components/SignIn/SignInSocialButtons.tsx index b9f8798b820..abb128536ce 100644 --- a/packages/ui/src/components/SignIn/SignInSocialButtons.tsx +++ b/packages/ui/src/components/SignIn/SignInSocialButtons.tsx @@ -80,6 +80,10 @@ export const SignInSocialButtons = React.memo((props: SignInSocialButtonsProps) .catch(err => handleError(err)); }} web3Callback={strategy => { + if (strategy === 'web3_solana_signature') { + return navigate(`choose-wallet?strategy=${strategy}`); + } + return clerk .authenticateWithWeb3({ customNavigate: navigate, diff --git a/packages/ui/src/components/SignIn/index.tsx b/packages/ui/src/components/SignIn/index.tsx index 2b80edf7692..e0800df9b21 100644 --- a/packages/ui/src/components/SignIn/index.tsx +++ b/packages/ui/src/components/SignIn/index.tsx @@ -3,6 +3,7 @@ import type { SignInModalProps, SignInProps } from '@clerk/shared/types'; import React from 'react'; import { SignInEmailLinkFlowComplete, SignUpEmailLinkFlowComplete } from '@/common/EmailLinkCompleteFlowCard'; +import { SignInFactorOneSolanaWalletsCard } from '@/ui/components/SignIn/SignInFactorOneSolanaWalletsCard'; import { SignInContext, SignUpContext, @@ -82,6 +83,9 @@ function SignInRoutes(): JSX.Element { + + + handleError(err, [], card.setError)); }} web3Callback={strategy => { + if (strategy === 'web3_solana_signature') { + return navigate(`choose-wallet?strategy=${strategy}`); + } + return clerk .authenticateWithWeb3({ customNavigate: navigate, diff --git a/packages/ui/src/components/SignUp/SignUpStartSolanaWalletsCard.tsx b/packages/ui/src/components/SignUp/SignUpStartSolanaWalletsCard.tsx new file mode 100644 index 00000000000..6968e59052a --- /dev/null +++ b/packages/ui/src/components/SignUp/SignUpStartSolanaWalletsCard.tsx @@ -0,0 +1,75 @@ +import { useClerk } from '@clerk/shared/react'; +import { lazy, Suspense } from 'react'; + +import { withRedirectToAfterSignUp, withRedirectToSignUpTask } from '@/ui/common/withRedirect'; +import { descriptors, Flex, Flow, localizationKeys } from '@/ui/customizables'; +import { BackLink } from '@/ui/elements/BackLink'; +import { Card } from '@/ui/elements/Card'; +import { useCardState, withCardStateProvider } from '@/ui/elements/contexts'; +import { Header } from '@/ui/elements/Header'; +import { web3CallbackErrorHandler } from '@/ui/utils/web3CallbackErrorHandler'; + +const Web3WalletButtons = lazy(() => + import(/* webpackChunkName: "web3-wallet-buttons" */ '@/ui/elements/Web3SolanaWalletButtons').then(m => ({ + default: m.Web3SolanaWalletButtons, + })), +); + +import { useSignUpContext } from '../../contexts'; +import { useRouter } from '../../router'; + +const SignUpStartSolanaWalletsCardInner = () => { + const clerk = useClerk(); + const card = useCardState(); + const router = useRouter(); + const ctx = useSignUpContext(); + + const onBackLinkClick = () => { + void router.navigate('../'); + }; + + return ( + + + + + + + + {card.error} + + + { + return clerk + .authenticateWithWeb3({ + customNavigate: router.navigate, + redirectUrl: ctx.afterSignUpUrl || '/', + signUpContinueUrl: '../continue', + strategy: 'web3_solana_signature', + unsafeMetadata: ctx.unsafeMetadata, + walletName, + }) + .catch(err => web3CallbackErrorHandler(err, card.setError)); + }} + /> + + + + + + + + ); +}; + +export const SignUpStartSolanaWalletsCard = withRedirectToSignUpTask( + withRedirectToAfterSignUp(withCardStateProvider(SignUpStartSolanaWalletsCardInner)), +); diff --git a/packages/ui/src/components/SignUp/index.tsx b/packages/ui/src/components/SignUp/index.tsx index b8084fc6c62..ec55d2fac2a 100644 --- a/packages/ui/src/components/SignUp/index.tsx +++ b/packages/ui/src/components/SignUp/index.tsx @@ -2,6 +2,7 @@ import { useClerk } from '@clerk/shared/react'; import type { SignUpModalProps, SignUpProps } from '@clerk/shared/types'; import React from 'react'; +import { SignUpStartSolanaWalletsCard } from '@/ui/components/SignUp/SignUpStartSolanaWalletsCard'; import { SignUpEmailLinkFlowComplete } from '@/common/EmailLinkCompleteFlowCard'; import { SignUpContext, useSignUpContext, withCoreSessionSwitchGuard } from '@/contexts'; import { Flow } from '@/customizables'; @@ -87,6 +88,9 @@ function SignUpRoutes(): JSX.Element { + + + diff --git a/packages/ui/src/customizables/elementDescriptors.ts b/packages/ui/src/customizables/elementDescriptors.ts index 9772f7e22d9..d7764caaef5 100644 --- a/packages/ui/src/customizables/elementDescriptors.ts +++ b/packages/ui/src/customizables/elementDescriptors.ts @@ -514,6 +514,17 @@ export const APPEARANCE_KEYS = containsAllElementsConfigKeys([ 'enterpriseConnectionsRoot', 'enterpriseConnectionButton', 'enterpriseConnectionButtonText', + + 'web3WalletButtonsRoot', + 'web3WalletButtons', + 'web3WalletButtonsIconButton', + 'web3WalletButtonsBlockButton', + 'web3WalletButtonsBlockButtonText', + 'web3WalletButtonsWalletIcon', + 'web3WalletButtonsWalletInitialIcon', + + 'walletIcon', + 'walletInitialIcon', ] as const).map(camelize) as (keyof ElementsConfig)[]; type TargettableClassname = `${typeof CLASS_PREFIX}${K}`; diff --git a/packages/ui/src/elements/Web3SolanaWalletButtons.tsx b/packages/ui/src/elements/Web3SolanaWalletButtons.tsx new file mode 100644 index 00000000000..4ca1f61e226 --- /dev/null +++ b/packages/ui/src/elements/Web3SolanaWalletButtons.tsx @@ -0,0 +1,280 @@ +import { WalletReadyState } from '@solana/wallet-adapter-base'; +import { ConnectionProvider, useWallet, WalletProvider } from '@solana/wallet-adapter-react'; +import { MAINNET_ENDPOINT } from '@solana/wallet-standard'; +import type { Ref } from 'react'; +import React, { forwardRef, isValidElement, useMemo } from 'react'; + +import { WalletInitialIcon } from '@/ui/common/WalletInitialIcon'; +import { + Button, + descriptors, + Flex, + Grid, + Icon, + Image, + localizationKeys, + SimpleButton, + Spinner, + Text, + useLocalizations, +} from '@/ui/customizables'; +import { Card } from '@/ui/elements/Card'; +import { useCardState } from '@/ui/elements/contexts'; +import { LinkRenderer } from '@/ui/elements/LinkRenderer'; +import { distributeStrategiesIntoRows } from '@/ui/elements/utils'; +import { mqu, type PropsOfComponent } from '@/ui/styledSystem'; +import { sleep } from '@/ui/utils/sleep'; + +type Web3WalletButtonsProps = { + web3AuthCallback: ({ walletName }: { walletName: string }) => Promise; +}; + +const SOCIAL_BUTTON_BLOCK_THRESHOLD = 2; +const SOCIAL_BUTTON_PRE_TEXT_THRESHOLD = 1; +const MAX_STRATEGIES_PER_ROW = 5; + +const Web3SolanaWalletButtonsInner = ({ web3AuthCallback }: Web3WalletButtonsProps) => { + const card = useCardState(); + const { wallets } = useWallet(); + const { t } = useLocalizations(); + + // Filter to only show installed wallets + const installedWallets = React.useMemo( + () => + wallets + .filter(w => { + return w.readyState === WalletReadyState.Installed; + }) + .map(wallet => { + return { + name: wallet.adapter.name, + icon: wallet.adapter.icon, + }; + }), + [wallets], + ); + + const startWeb3AuthFlow = (walletName: string) => async () => { + card.setLoading(walletName); + try { + await web3AuthCallback({ walletName }); + } catch { + await sleep(1000); + } finally { + card.setIdle(); + } + }; + + const { strategyRows } = distributeStrategiesIntoRows(installedWallets, MAX_STRATEGIES_PER_ROW, undefined); + const strategyRowOneLength = strategyRows.at(0)?.length ?? 0; + const shouldForceSingleColumnOnMobile = installedWallets.length === 2; + const ButtonElement = installedWallets.length <= SOCIAL_BUTTON_BLOCK_THRESHOLD ? WalletButtonBlock : WalletButtonIcon; + + if (installedWallets.length === 0) { + return ( + + ({ + textDecoration: 'underline', + textUnderlineOffset: t.space.$1, + color: 'inherit', + })} + /> + + ); + } + + return ( + + {strategyRows.map((row, rowIndex) => ( + { + return r.name; + }) + .join('-')} + elementDescriptor={descriptors.web3WalletButtons} + gap={2} + sx={t => ({ + justifyContent: 'center', + [mqu.sm]: { + // Force single-column on mobile when 2 strategies are present (without last auth) to prevent + // label overflow. When last auth is present, only 1 strategy remains here, so overflow isn't a concern. + gridTemplateColumns: shouldForceSingleColumnOnMobile ? 'repeat(1, minmax(0, 1fr))' : undefined, + }, + gridTemplateColumns: + wallets.length < 1 + ? `repeat(1, minmax(0, 1fr))` + : `repeat(${row.length}, ${ + rowIndex === 0 + ? `minmax(0, 1fr)` + : // Calculate the width of each button based on the width of the buttons within the first row. + // t.sizes.$2 is used here to represent the gap defined on the Grid component. + `minmax(0, calc((100% - (${strategyRowOneLength} - 1) * ${t.sizes.$2}) / ${strategyRowOneLength}))` + })`, + })} + > + {row.map(w => { + const shouldShowPreText = installedWallets.length === SOCIAL_BUTTON_PRE_TEXT_THRESHOLD; + const label = shouldShowPreText + ? localizationKeys('web3WalletButtons.continue', { walletName: w.name }) + : w.name; + + const imageOrInitial = w.icon ? ( + {t(localizationKeys('web3WalletButtons.connect', ({ width: theme.sizes.$4, height: 'auto', maxWidth: '100%' })} + /> + ) : ( + + ); + + return ( + + ); + })} + + ))} + + ); +}; + +type WalletButtonProps = PropsOfComponent & { + icon: React.ReactElement; + id: string; + label: string; +}; + +const WalletButtonIcon = forwardRef((props: WalletButtonProps, ref: Ref | null): JSX.Element => { + const { icon, label, id, ...rest } = props; + + return ( + + ); +}); + +const WalletButtonBlock = forwardRef((props: WalletButtonProps, ref: Ref | null): JSX.Element => { + const { id, icon, isLoading, label, ...rest } = props; + const isIconElement = isValidElement(icon); + + return ( + [ + { + gap: theme.space.$4, + position: 'relative', + justifyContent: 'flex-start', + }, + props.sx, + ]} + > + + {(isLoading || icon) && ( + ({ flex: `0 0 ${theme.space.$4}` })} + > + {isLoading ? ( + + ) : !isIconElement && icon ? ( + ({ + color: theme.colors.$neutralAlpha600, + width: theme.sizes.$4, + position: 'absolute', + }), + ]} + /> + ) : ( + icon + )} + + )} + + {label} + + + + ); +}); + +export const Web3SolanaWalletButtons = (props: Web3WalletButtonsProps) => { + const network = MAINNET_ENDPOINT; + const wallets = useMemo(() => [], [network]); + return ( + + { + console.error(err); + }} + > + + + + ); +}; diff --git a/packages/ui/src/elements/contexts/index.tsx b/packages/ui/src/elements/contexts/index.tsx index 6f660525375..1a719083777 100644 --- a/packages/ui/src/elements/contexts/index.tsx +++ b/packages/ui/src/elements/contexts/index.tsx @@ -128,7 +128,8 @@ export type FlowMetadata = { | 'complete' | 'accountSwitcher' | 'chooseOrganization' - | 'enterpriseConnections'; + | 'enterpriseConnections' + | 'chooseWallet'; }; const [FlowMetadataCtx, useFlowMetadata] = createContextAndHook('FlowMetadata'); diff --git a/packages/ui/src/internal/appearance.ts b/packages/ui/src/internal/appearance.ts index d1aba188a80..0bc9d709b42 100644 --- a/packages/ui/src/internal/appearance.ts +++ b/packages/ui/src/internal/appearance.ts @@ -650,6 +650,17 @@ export type ElementsConfig = { enterpriseConnectionsRoot: WithOptions; enterpriseConnectionButton: WithOptions; enterpriseConnectionButtonText: WithOptions; + + web3WalletButtonsRoot: WithOptions; + web3WalletButtons: WithOptions; + web3WalletButtonsIconButton: WithOptions; + web3WalletButtonsBlockButton: WithOptions; + web3WalletButtonsBlockButtonText: WithOptions; + web3WalletButtonsWalletIcon: WithOptions; + web3WalletButtonsWalletInitialIcon: WithOptions; + + walletIcon: WithOptions; + walletInitialIcon: WithOptions; }; export type Elements = { diff --git a/packages/ui/src/utils/web3CallbackErrorHandler.ts b/packages/ui/src/utils/web3CallbackErrorHandler.ts index 62fd98dcfe8..985b73f2861 100644 --- a/packages/ui/src/utils/web3CallbackErrorHandler.ts +++ b/packages/ui/src/utils/web3CallbackErrorHandler.ts @@ -10,8 +10,8 @@ type Web3CallbackErrorHandler = { export const web3CallbackErrorHandler: Web3CallbackErrorHandler = (err, setError) => { if ( isClerkAPIResponseError(err) && - err.errors[0].meta?.paramName === 'identifier' && - err.errors[0].code === 'form_param_nil' + err.errors?.[0]?.meta?.paramName === 'identifier' && + err.errors?.[0]?.code === 'form_param_nil' ) { const error = new ClerkRuntimeError('A Web3 Wallet extension cannot be found. Please install one to continue.', { code: 'web3_missing_identifier', diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9cb95115098..aa2df6104af 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,6 +12,18 @@ catalogs: '@coinbase/wallet-sdk': specifier: 4.3.0 version: 4.3.0 + '@solana/wallet-adapter-base': + specifier: 0.9.27 + version: 0.9.27 + '@solana/wallet-adapter-react': + specifier: 0.15.39 + version: 0.15.39 + '@solana/wallet-standard': + specifier: 1.1.4 + version: 1.1.4 + '@wallet-standard/core': + specifier: 1.1.1 + version: 1.1.1 '@zxcvbn-ts/core': specifier: 3.0.4 version: 3.0.4 @@ -136,7 +148,7 @@ importers: version: 4.7.0(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1)) '@vitest/coverage-v8': specifier: 3.2.4 - version: 3.2.4(vitest@3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1)) + version: 3.2.4(vitest@3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@27.0.0(bufferutil@4.0.9)(postcss@8.5.6)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1)) chalk: specifier: 4.1.2 version: 4.1.2 @@ -232,7 +244,7 @@ importers: version: 0.8.0(jest@29.7.0(@types/node@22.19.0)(babel-plugin-macros@3.1.0)) jest-environment-jsdom: specifier: ^29.3.1 - version: 29.7.0 + version: 29.7.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) json5: specifier: 2.2.3 version: 2.2.3 @@ -313,7 +325,7 @@ importers: version: 6.1.6(typanion@3.14.0) vitest: specifier: 3.2.4 - version: 3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1) + version: 3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@27.0.0(bufferutil@4.0.9)(postcss@8.5.6)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1) yalc: specifier: 1.0.0-pre.53 version: 1.0.0-pre.53 @@ -400,7 +412,7 @@ importers: version: 9.0.2 vitest-environment-miniflare: specifier: 2.14.4 - version: 2.14.4(vitest@3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1)) + version: 2.14.4(bufferutil@4.0.9)(utf-8-validate@5.0.10)(vitest@3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@27.0.0(bufferutil@4.0.9)(postcss@8.5.6)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1)) packages/chrome-extension: dependencies: @@ -440,13 +452,22 @@ importers: dependencies: '@base-org/account': specifier: catalog:module-manager - version: 2.0.1(@types/react@18.3.26)(react@18.3.1)(typescript@5.8.3)(use-sync-external-store@1.6.0(react@18.3.1))(zod@3.25.76) + version: 2.0.1(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.8.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(zod@3.25.76) '@clerk/shared': specifier: workspace:^ version: link:../shared '@coinbase/wallet-sdk': specifier: catalog:module-manager version: 4.3.0 + '@solana/wallet-adapter-base': + specifier: catalog:module-manager + version: 0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)) + '@solana/wallet-adapter-react': + specifier: catalog:module-manager + version: 0.15.39(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3) + '@solana/wallet-standard': + specifier: catalog:module-manager + version: 1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(react@18.3.1) '@stripe/stripe-js': specifier: 5.6.0 version: 5.6.0 @@ -456,6 +477,9 @@ importers: '@tanstack/query-core': specifier: 5.87.4 version: 5.87.4 + '@wallet-standard/core': + specifier: catalog:module-manager + version: 1.1.1 '@zxcvbn-ts/core': specifier: catalog:module-manager version: 3.0.4 @@ -483,10 +507,10 @@ importers: version: link:../testing '@rsdoctor/rspack-plugin': specifier: ^0.4.13 - version: 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) + version: 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) '@rspack/cli': specifier: ^1.6.0 - version: 1.6.1(@rspack/core@1.6.1(@swc/helpers@0.5.17))(@types/express@4.17.25)(webpack@5.102.1(esbuild@0.25.12)) + version: 1.6.1(@rspack/core@1.6.1(@swc/helpers@0.5.17))(@types/express@4.17.25)(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) '@rspack/core': specifier: ^1.6.0 version: 1.6.1(@swc/helpers@0.5.17) @@ -504,7 +528,7 @@ importers: version: 0.4.1 jsdom: specifier: 26.1.0 - version: 26.1.0 + version: 26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) minimatch: specifier: ^10.0.3 version: 10.1.1 @@ -546,7 +570,7 @@ importers: version: 1.0.0 expo: specifier: '>=53 <55' - version: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + version: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) react: specifier: 18.3.1 version: 18.3.1 @@ -555,7 +579,7 @@ importers: version: 18.3.1(react@18.3.1) react-native-url-polyfill: specifier: 2.0.0 - version: 2.0.0(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)) + version: 2.0.0(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)) tslib: specifier: catalog:repo version: 2.8.1 @@ -568,25 +592,25 @@ importers: version: 1.0.2 expo-apple-authentication: specifier: ^7.2.4 - version: 7.2.4(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)) + version: 7.2.4(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)) expo-auth-session: specifier: ^5.4.0 - version: 5.5.2(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) + version: 5.5.2(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) expo-crypto: specifier: ^15.0.7 - version: 15.0.7(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) + version: 15.0.7(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) expo-local-authentication: specifier: ^13.8.0 - version: 13.8.0(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) + version: 13.8.0(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) expo-secure-store: specifier: ^12.8.1 - version: 12.8.1(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) + version: 12.8.1(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) expo-web-browser: specifier: ^12.8.2 - version: 12.8.2(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) + version: 12.8.2(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) react-native: specifier: ^0.81.4 - version: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + version: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) packages/expo-passkeys: dependencies: @@ -598,11 +622,11 @@ importers: version: 18.3.1 react-native: specifier: '*' - version: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + version: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) devDependencies: expo: specifier: ~52.0.47 - version: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + version: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) packages/express: dependencies: @@ -708,7 +732,7 @@ importers: devDependencies: nuxt: specifier: ^4.1.2 - version: 4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1) + version: 4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(bufferutil@4.0.9)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(utf-8-validate@5.0.10)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1) typescript: specifier: catalog:repo version: 5.8.3 @@ -801,10 +825,19 @@ importers: devDependencies: '@base-org/account': specifier: catalog:module-manager - version: 2.0.1(@types/react@18.3.26)(react@18.3.1)(typescript@5.8.3)(use-sync-external-store@1.6.0(react@18.3.1))(zod@3.25.76) + version: 2.0.1(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.8.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(zod@3.25.76) '@coinbase/wallet-sdk': specifier: catalog:module-manager version: 4.3.0 + '@solana/wallet-adapter-base': + specifier: catalog:module-manager + version: 0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)) + '@solana/wallet-adapter-react': + specifier: catalog:module-manager + version: 0.15.39(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3) + '@solana/wallet-standard': + specifier: catalog:module-manager + version: 1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(react@18.3.1) '@stripe/react-stripe-js': specifier: 3.1.1 version: 3.1.1(@stripe/stripe-js@5.6.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -820,6 +853,9 @@ importers: '@types/js-cookie': specifier: 3.0.6 version: 3.0.6 + '@wallet-standard/core': + specifier: catalog:module-manager + version: 1.1.1 '@zxcvbn-ts/core': specifier: catalog:module-manager version: 3.0.4 @@ -903,6 +939,15 @@ importers: '@formkit/auto-animate': specifier: ^0.8.2 version: 0.8.4 + '@solana/wallet-adapter-base': + specifier: catalog:module-manager + version: 0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)) + '@solana/wallet-adapter-react': + specifier: catalog:module-manager + version: 0.15.39(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3) + '@solana/wallet-standard': + specifier: catalog:module-manager + version: 1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(react@18.3.1) copy-to-clipboard: specifier: 3.3.3 version: 3.3.3 @@ -933,7 +978,7 @@ importers: version: 2.1.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@rspack/cli': specifier: ^1.6.0 - version: 1.6.1(@rspack/core@1.6.1(@swc/helpers@0.5.17))(@types/express@4.17.25)(webpack@5.102.1(esbuild@0.25.12)) + version: 1.6.1(@rspack/core@1.6.1(@swc/helpers@0.5.17))(@types/express@4.17.25)(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) '@rspack/core': specifier: ^1.6.0 version: 1.6.1(@swc/helpers@0.5.17) @@ -1112,6 +1157,15 @@ packages: '@asamuzakjp/css-color@3.2.0': resolution: {integrity: sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==} + '@asamuzakjp/css-color@4.1.0': + resolution: {integrity: sha512-9xiBAtLn4aNsa4mDnpovJvBn72tNEIACyvlqaNJ+ADemR+yeMJWnBudOi2qGDviJa7SwcDOU/TRh5dnET7qk0w==} + + '@asamuzakjp/dom-selector@6.7.6': + resolution: {integrity: sha512-hBaJER6A9MpdG3WgdlOolHmbOYvSk46y7IQN/1+iqiCuUu6iWdQrs9DGKF8ocqsEqWujWf/V7b7vaDgiUmIvUg==} + + '@asamuzakjp/nwsapi@2.3.9': + resolution: {integrity: sha512-n8GuYSrI9bF7FFZ/SjhwevlHc8xaVlb/7HmHelnc/PZXBD2ZR49NnN9sMMuDdEGPeeRQ5d0hqlSlEpgCX3Wl0Q==} + '@astrojs/compiler@2.13.0': resolution: {integrity: sha512-mqVORhUJViA28fwHYaWmsXSzLO9osbdZ5ImUfxBarqsYdMlPbqAqGJCxsNzvppp1BEzc1mJNjOVvQqeDN8Vspw==} @@ -2056,6 +2110,12 @@ packages: peerDependencies: '@csstools/css-tokenizer': ^3.0.4 + '@csstools/css-syntax-patches-for-csstree@1.0.14': + resolution: {integrity: sha512-zSlIxa20WvMojjpCSy8WrNpcZ61RqfTfX3XTaOeVlGJrt/8HF3YbzgFZa01yTbT4GWQLwfTcC3EB8i3XnB647Q==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + '@csstools/css-tokenizer@3.0.4': resolution: {integrity: sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==} engines: {node: '>=18'} @@ -2583,6 +2643,12 @@ packages: '@gerrit0/mini-shiki@3.15.0': resolution: {integrity: sha512-L5IHdZIDa4bG4yJaOzfasOH/o22MCesY0mx+n6VATbaiCtMeR59pdRqYk4bEiQkIHfxsHPNgdi7VJlZb2FhdMQ==} + '@hapi/hoek@9.3.0': + resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} + + '@hapi/topo@5.1.0': + resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==} + '@humanfs/core@0.19.1': resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} engines: {node: '>=18.18.0'} @@ -3013,6 +3079,10 @@ packages: resolution: {integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/types@26.6.2': + resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==} + engines: {node: '>= 10.14.2'} + '@jest/types@29.6.3': resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -3877,6 +3947,49 @@ packages: '@quansync/fs@0.1.5': resolution: {integrity: sha512-lNS9hL2aS2NZgNW7BBj+6EBl4rOf8l+tQ0eRY6JWCI8jI2kc53gSoqbjojU0OnAWhzoXiOjFyGsHcDGePB3lhA==} + '@react-native-async-storage/async-storage@1.24.0': + resolution: {integrity: sha512-W4/vbwUOYOjco0x3toB8QCr7EjIP6nE9G7o8PMguvvjYT5Awg09lyV4enACRx4s++PPulBiBSjL0KTFx2u0Z/g==} + peerDependencies: + react-native: ^0.0.0-0 || >=0.60 <1.0 + + '@react-native-community/cli-clean@12.3.7': + resolution: {integrity: sha512-BCYW77QqyxfhiMEBOoHyciJRNV6Rhz1RvclReIKnCA9wAwmoJBeu4Mu+AwiECA2bUITX16fvPt3NwDsSd1jwfQ==} + + '@react-native-community/cli-config@12.3.7': + resolution: {integrity: sha512-IU2UhO9yj1rEBNhHWGzIXpPDzha4hizLP/PUOrhR4BUf6RVPUWEp+e1PXNGR0qjIf6esu7OC7t6mLOhH0NUJEw==} + + '@react-native-community/cli-debugger-ui@12.3.7': + resolution: {integrity: sha512-UHUFrRdcjWSCdWG9KIp2QjuRIahBQnb9epnQI7JCq6NFbFHYfEI4rI7msjMn+gG8/tSwKTV2PTPuPmZ5wWlE7Q==} + + '@react-native-community/cli-doctor@12.3.7': + resolution: {integrity: sha512-gCamZztRoAyhciuQPqdz4Xe4t3gOdNsaADNd+rva+Rx8W2PoPeNv60i7/et06wlsn6B6Sh0/hMiAftJbiHDFkg==} + + '@react-native-community/cli-hermes@12.3.7': + resolution: {integrity: sha512-ezzeiSKjRXK2+i1AAe7NhhN9CEHrgtRmTn2MAdBpE++N8fH5EQZgxFcGgGdwGvns2fm9ivyyeVnI5eAYwvM+jg==} + + '@react-native-community/cli-platform-android@12.3.7': + resolution: {integrity: sha512-mOltF3cpjNdJb3WSFwEHc1GH4ibCcnOvQ34OdWyblKy9ijuvG5SjNTlYR/UW/CURaDi3OUKAhxQMTY5d27bzGQ==} + + '@react-native-community/cli-platform-ios@12.3.7': + resolution: {integrity: sha512-2WnVsMH4ORZIhBm/5nCms1NeeKG4KarNC7PMLmrXWXB/bibDcaNsjrJiqnmCUcpTEvTQTokRfoO7Aj6NM0Cqow==} + + '@react-native-community/cli-plugin-metro@12.3.7': + resolution: {integrity: sha512-ahEw0Vfnv2Nv/jdZ2QDuGjQ9l2SczO4lXjb3ubu5vEYNLyTw3jYsLMK6iES7YQ/ApQmKdG476HU1O9uZdpaYPg==} + + '@react-native-community/cli-server-api@12.3.7': + resolution: {integrity: sha512-LYETs3CCjrLn1ZU0kYv44TywiIl5IPFHZGeXhAh2TtgOk4mo3kvXxECDil9CdO3bmDra6qyiG61KHvzr8IrHdg==} + + '@react-native-community/cli-tools@12.3.7': + resolution: {integrity: sha512-7NL/1/i+wzd4fBr/FSr3ypR05tiU/Kv9l/M1sL1c6jfcDtWXAL90R161gQkQFK7shIQ8Idp0dQX1rq49tSyfQw==} + + '@react-native-community/cli-types@12.3.7': + resolution: {integrity: sha512-NFtUMyIrNfi3A5C1cjVKDVvYHvvOF7MnOMwdD8jm2NQKewQJrehKBh1eMuykKdqhWyZmuemD4KKhL8f4FxgG0w==} + + '@react-native-community/cli@12.3.7': + resolution: {integrity: sha512-7+mOhk+3+X3BjSJZZvYrDJynA00gPYTlvT28ZjiLlbuVGfqfNiBKaxuF7rty+gjjpch4iKGvLhIhSN5cuOsdHQ==} + engines: {node: '>=18'} + hasBin: true + '@react-native/assets-registry@0.81.5': resolution: {integrity: sha512-705B6x/5Kxm1RKRvSv0ADYWm5JOnoiQ1ufW7h8uu2E6G9Of/eE6hP/Ivw3U5jI16ERqZxiKQwk34VJbB0niX9w==} engines: {node: '>= 20.19.4'} @@ -4413,6 +4526,15 @@ packages: '@shikijs/vscode-textmate@10.0.2': resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} + '@sideway/address@4.1.5': + resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==} + + '@sideway/formula@3.0.1': + resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==} + + '@sideway/pinpoint@2.0.0': + resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} + '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} @@ -4437,6 +4559,127 @@ packages: '@socket.io/component-emitter@3.1.2': resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} + '@solana-mobile/mobile-wallet-adapter-protocol-web3js@2.2.5': + resolution: {integrity: sha512-xfQl6Kee0ZXagUG5mpy+bMhQTNf2LAzF65m5SSgNJp47y/nP9GdXWi9blVH8IPP+QjF/+DnCtURaXS14bk3WJw==} + peerDependencies: + '@solana/web3.js': ^1.58.0 + + '@solana-mobile/mobile-wallet-adapter-protocol@2.2.5': + resolution: {integrity: sha512-kCI+0/umWm98M9g12ndpS56U6wBzq4XdhobCkDPF8qRDYX/iTU8CD+QMcalh7VgRT7GWEmySQvQdaugM0Chf0g==} + peerDependencies: + react-native: '>0.69' + + '@solana-mobile/wallet-adapter-mobile@2.2.5': + resolution: {integrity: sha512-Zpzfwm3N4FfI63ZMs2qZChQ1j0z+p2prkZbSU51NyTnE+K9l9sDAl8RmRCOWnE29y+/AN10WuQZQoIAccHVOFg==} + peerDependencies: + '@solana/web3.js': ^1.58.0 + + '@solana-mobile/wallet-standard-mobile@0.4.4': + resolution: {integrity: sha512-LMvqkS5/aEH+EiDje9Dk351go6wO3POysgmobM4qm8RsG5s6rDAW3U0zA+5f2coGCTyRx8BKE1I/9nHlwtBuow==} + + '@solana/buffer-layout@4.0.1': + resolution: {integrity: sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA==} + engines: {node: '>=5.10'} + + '@solana/codecs-core@2.3.0': + resolution: {integrity: sha512-oG+VZzN6YhBHIoSKgS5ESM9VIGzhWjEHEGNPSibiDTxFhsFWxNaz8LbMDPjBUE69r9wmdGLkrQ+wVPbnJcZPvw==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: '>=5.3.3' + + '@solana/codecs-core@4.0.0': + resolution: {integrity: sha512-28kNUsyIlhU3MO3/7ZLDqeJf2YAm32B4tnTjl5A9HrbBqsTZ+upT/RzxZGP1MMm7jnPuIKCMwmTpsyqyR6IUpw==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: '>=5.3.3' + + '@solana/codecs-numbers@2.3.0': + resolution: {integrity: sha512-jFvvwKJKffvG7Iz9dmN51OGB7JBcy2CJ6Xf3NqD/VP90xak66m/Lg48T01u5IQ/hc15mChVHiBm+HHuOFDUrQg==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: '>=5.3.3' + + '@solana/codecs-numbers@4.0.0': + resolution: {integrity: sha512-z9zpjtcwzqT9rbkKVZpkWB5/0V7+6YRKs6BccHkGJlaDx8Pe/+XOvPi2rEdXPqrPd9QWb5Xp1iBfcgaDMyiOiA==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: '>=5.3.3' + + '@solana/codecs-strings@4.0.0': + resolution: {integrity: sha512-XvyD+sQ1zyA0amfxbpoFZsucLoe+yASQtDiLUGMDg5TZ82IHE3B7n82jE8d8cTAqi0HgqQiwU13snPhvg1O0Ow==} + engines: {node: '>=20.18.0'} + peerDependencies: + fastestsmallesttextencoderdecoder: ^1.0.22 + typescript: '>=5.3.3' + + '@solana/errors@2.3.0': + resolution: {integrity: sha512-66RI9MAbwYV0UtP7kGcTBVLxJgUxoZGm8Fbc0ah+lGiAw17Gugco6+9GrJCV83VyF2mDWyYnYM9qdI3yjgpnaQ==} + engines: {node: '>=20.18.0'} + hasBin: true + peerDependencies: + typescript: '>=5.3.3' + + '@solana/errors@4.0.0': + resolution: {integrity: sha512-3YEtvcMvtcnTl4HahqLt0VnaGVf7vVWOnt6/uPky5e0qV6BlxDSbGkbBzttNjxLXHognV0AQi3pjvrtfUnZmbg==} + engines: {node: '>=20.18.0'} + hasBin: true + peerDependencies: + typescript: '>=5.3.3' + + '@solana/wallet-adapter-base@0.9.27': + resolution: {integrity: sha512-kXjeNfNFVs/NE9GPmysBRKQ/nf+foSaq3kfVSeMcO/iVgigyRmB551OjU3WyAolLG/1jeEfKLqF9fKwMCRkUqg==} + engines: {node: '>=20'} + peerDependencies: + '@solana/web3.js': ^1.98.0 + + '@solana/wallet-adapter-react@0.15.39': + resolution: {integrity: sha512-WXtlo88ith5m22qB+qiGw301/Zb9r5pYr4QdXWmlXnRNqwST5MGmJWhG+/RVrzc+OG7kSb3z1gkVNv+2X/Y0Gg==} + engines: {node: '>=20'} + peerDependencies: + '@solana/web3.js': ^1.98.0 + react: 18.3.1 + + '@solana/wallet-standard-chains@1.1.1': + resolution: {integrity: sha512-Us3TgL4eMVoVWhuC4UrePlYnpWN+lwteCBlhZDUhFZBJ5UMGh94mYPXno3Ho7+iHPYRtuCi/ePvPcYBqCGuBOw==} + engines: {node: '>=16'} + + '@solana/wallet-standard-core@1.1.2': + resolution: {integrity: sha512-FaSmnVsIHkHhYlH8XX0Y4TYS+ebM+scW7ZeDkdXo3GiKge61Z34MfBPinZSUMV08hCtzxxqH2ydeU9+q/KDrLA==} + engines: {node: '>=16'} + + '@solana/wallet-standard-features@1.3.0': + resolution: {integrity: sha512-ZhpZtD+4VArf6RPitsVExvgkF+nGghd1rzPjd97GmBximpnt1rsUxMOEyoIEuH3XBxPyNB6Us7ha7RHWQR+abg==} + engines: {node: '>=16'} + + '@solana/wallet-standard-util@1.1.2': + resolution: {integrity: sha512-rUXFNP4OY81Ddq7qOjQV4Kmkozx4wjYAxljvyrqPx8Ycz0FYChG/hQVWqvgpK3sPsEaO/7ABG1NOACsyAKWNOA==} + engines: {node: '>=16'} + + '@solana/wallet-standard-wallet-adapter-base@1.1.4': + resolution: {integrity: sha512-Q2Rie9YaidyFA4UxcUIxUsvynW+/gE2noj/Wmk+IOwDwlVrJUAXCvFaCNsPDSyKoiYEKxkSnlG13OA1v08G4iw==} + engines: {node: '>=16'} + peerDependencies: + '@solana/web3.js': ^1.98.0 + bs58: ^6.0.0 + + '@solana/wallet-standard-wallet-adapter-react@1.1.4': + resolution: {integrity: sha512-xa4KVmPgB7bTiWo4U7lg0N6dVUtt2I2WhEnKlIv0jdihNvtyhOjCKMjucWet6KAVhir6I/mSWrJk1U9SvVvhCg==} + engines: {node: '>=16'} + peerDependencies: + '@solana/wallet-adapter-base': '*' + react: 18.3.1 + + '@solana/wallet-standard-wallet-adapter@1.1.4': + resolution: {integrity: sha512-YSBrxwov4irg2hx9gcmM4VTew3ofNnkqsXQ42JwcS6ykF1P1ecVY8JCbrv75Nwe6UodnqeoZRbN7n/p3awtjNQ==} + engines: {node: '>=16'} + + '@solana/wallet-standard@1.1.4': + resolution: {integrity: sha512-NF+MI5tOxyvfTU4A+O5idh/gJFmjm52bMwsPpFGRSL79GECSN0XLmpVOO/jqTKJgac2uIeYDpQw/eMaQuWuUXw==} + engines: {node: '>=16'} + + '@solana/web3.js@1.98.4': + resolution: {integrity: sha512-vv9lfnvjUsRiq//+j5pBdXig0IQdtzA0BRZ3bXEP4KaIyF1CcaydWqgyzQgfZMNIsWNWmG+AUHwPy4AHOD6gpw==} + '@speed-highlight/core@1.2.12': resolution: {integrity: sha512-uilwrK0Ygyri5dToHYdZSjcvpS2ZwX0w5aSt3GCEN9hrjxWCoeV4Z2DTXuxjwbntaLQIEEAlCeNQss5SoHvAEA==} @@ -5036,18 +5279,27 @@ packages: '@types/uuid@10.0.0': resolution: {integrity: sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ==} + '@types/uuid@8.3.4': + resolution: {integrity: sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==} + '@types/webextension-polyfill@0.12.4': resolution: {integrity: sha512-wK8YdSI0pDiaehSLDIvtvonYmLwUUivg4Z6JCJO8rkyssMAG82cFJgwPK/V7NO61mJBLg/tXeoXQL8AFzpXZmQ==} '@types/webpack-env@1.18.8': resolution: {integrity: sha512-G9eAoJRMLjcvN4I08wB5I7YofOb/kaJNd5uoCMX+LbKXTPCF+ZIHuqTnFaK9Jz1rgs035f9JUPUhNFtqgucy/A==} + '@types/ws@7.4.7': + resolution: {integrity: sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==} + '@types/ws@8.18.1': resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==} '@types/yargs-parser@21.0.3': resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} + '@types/yargs@15.0.20': + resolution: {integrity: sha512-KIkX+/GgfFitlASYCGoSF+T4XRXhOubJLhkLVtSfsRTe9jWMmuM2g28zQ41BtPTG7TRBb2xHW+LCNVE9QR/vsg==} + '@types/yargs@17.0.34': resolution: {integrity: sha512-KExbHVa92aJpw9WDQvzBaGVE2/Pz+pLZQloT2hjL8IqsZnV62rlPOYvNnLmf/L2dyllfVUOVBj64M0z/46eR2A==} @@ -5531,6 +5783,31 @@ packages: '@vue/test-utils@2.4.6': resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==} + '@wallet-standard/app@1.1.0': + resolution: {integrity: sha512-3CijvrO9utx598kjr45hTbbeeykQrQfKmSnxeWOgU25TOEpvcipD/bYDQWIqUv1Oc6KK4YStokSMu/FBNecGUQ==} + engines: {node: '>=16'} + + '@wallet-standard/base@1.1.0': + resolution: {integrity: sha512-DJDQhjKmSNVLKWItoKThJS+CsJQjR9AOBOirBVT1F9YpRyC9oYHE+ZnSf8y8bxUphtKqdQMPVQ2mHohYdRvDVQ==} + engines: {node: '>=16'} + + '@wallet-standard/core@1.1.1': + resolution: {integrity: sha512-5Xmjc6+Oe0hcPfVc5n8F77NVLwx1JVAoCVgQpLyv/43/bhtIif+Gx3WUrDlaSDoM8i2kA2xd6YoFbHCxs+e0zA==} + engines: {node: '>=16'} + + '@wallet-standard/errors@0.1.1': + resolution: {integrity: sha512-V8Ju1Wvol8i/VDyQOHhjhxmMVwmKiwyxUZBnHhtiPZJTWY0U/Shb2iEWyGngYEbAkp2sGTmEeNX1tVyGR7PqNw==} + engines: {node: '>=16'} + hasBin: true + + '@wallet-standard/features@1.1.0': + resolution: {integrity: sha512-hiEivWNztx73s+7iLxsuD1sOJ28xtRix58W7Xnz4XzzA/pF0+aicnWgjOdA10doVDEDZdUuZCIIqG96SFNlDUg==} + engines: {node: '>=16'} + + '@wallet-standard/wallet@1.1.0': + resolution: {integrity: sha512-Gt8TnSlDZpAl+RWOOAB/kuvC7RpcdWAlFbHNoi4gsXsfaWa1QCT6LBcfIYTPdOZC9OVZUDwqGuGAcqZejDmHjg==} + engines: {node: '>=16'} + '@webassemblyjs/ast@1.14.1': resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==} @@ -5692,6 +5969,10 @@ packages: resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} engines: {node: '>= 14'} + agentkeepalive@4.6.0: + resolution: {integrity: sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==} + engines: {node: '>= 8.0.0'} + aggregate-error@3.1.0: resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} engines: {node: '>=8'} @@ -5765,6 +6046,9 @@ packages: resolution: {integrity: sha512-g6LhBsl+GBPRWGWsBtutpzBYuIIdBkLEvad5C/va/74Db018+5TZiyA26cZJAr3Rft5lprVqOIPxf5Vid6tqAw==} engines: {node: '>=18'} + ansi-fragments@0.2.1: + resolution: {integrity: sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==} + ansi-html-community@0.0.8: resolution: {integrity: sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==} engines: {'0': node >= 0.8.0} @@ -5813,6 +6097,9 @@ packages: resolution: {integrity: sha512-FCAJojipPn0bXjuEpjOOOMN8FZDkxfWWp4JGN9mifU2IhxvKyXZYqpzPHdnTSUpmPDy+tsslB6Z1g+Vg6nVbYA==} engines: {node: '>=8'} + appdirsjs@1.2.7: + resolution: {integrity: sha512-Quji6+8kLBC3NnBeo14nPDq0+2jUs5s3/xEye+udFHumHhRk4M7aAMXp/PBJqkKYGuuyR9M/6Dq7d2AViiGmhw==} + arch@2.2.0: resolution: {integrity: sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==} @@ -5940,6 +6227,10 @@ packages: resolution: {integrity: sha512-cbdCP0PGOBq0ASG+sjnKIoYkWMKhhz+F/h9pRexUdX2Hd38+WOlBkRKlqkGOSm0YQpcFMQBJeK4WspUAkwsEdg==} engines: {node: '>=20.19.0'} + astral-regex@1.0.0: + resolution: {integrity: sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==} + engines: {node: '>=4'} + astral-regex@2.0.0: resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} engines: {node: '>=8'} @@ -6128,6 +6419,15 @@ packages: base-64@1.0.0: resolution: {integrity: sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==} + base-x@3.0.11: + resolution: {integrity: sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==} + + base-x@4.0.1: + resolution: {integrity: sha512-uAZ8x6r6S3aUM9rbHGVOIsR15U/ZSc82b3ymnCPsT45Gk1DDvhDPdIgB5MrhirZWt+5K0EEPQH985kNqZgNPFw==} + + base-x@5.0.1: + resolution: {integrity: sha512-M7uio8Zt++eg3jPj+rHMfCC+IuygQHHCOU+IYsVtik6FWjuYpVt/+MRKcgsAMHh8mMFAwnB+Bs+mTrFiXjMzKg==} + base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -6163,6 +6463,9 @@ packages: resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} engines: {node: '>=4'} + bidi-js@1.0.3: + resolution: {integrity: sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==} + big-integer@1.6.52: resolution: {integrity: sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==} engines: {node: '>=0.6'} @@ -6177,12 +6480,18 @@ packages: birpc@2.7.0: resolution: {integrity: sha512-tub/wFGH49vNCm0xraykcY3TcRgX/3JsALYq/Lwrtti+bTyFHkCUAWF5wgYoie8P41wYwig2mIKiqoocr1EkEQ==} + bl@4.1.0: + resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + blob-util@2.0.2: resolution: {integrity: sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==} bluebird@3.7.2: resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} + bn.js@5.2.2: + resolution: {integrity: sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==} + body-parser@1.20.3: resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} @@ -6197,6 +6506,9 @@ packages: boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + borsh@0.7.0: + resolution: {integrity: sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==} + boxen@8.0.1: resolution: {integrity: sha512-F3PH5k5juxom4xktynS7MoFY+NUWH5LC4CnH11YB8NPew+HLpmBLCybSAEyb2F+4pRXhuhWqFesoQd6DAyc2hw==} engines: {node: '>=18'} @@ -6243,6 +6555,15 @@ packages: resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} engines: {node: '>= 6'} + bs58@4.0.1: + resolution: {integrity: sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==} + + bs58@5.0.0: + resolution: {integrity: sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==} + + bs58@6.0.0: + resolution: {integrity: sha512-PD0wEnEYg6ijszw/u8s+iI3H17cTymlrwkKhDhPZq+Sokl3AU4htyBFTjAeNAlCCmg0f53g6ih3jATyCKftTfw==} + bser@2.1.1: resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} @@ -6274,6 +6595,10 @@ packages: buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + bufferutil@4.0.9: + resolution: {integrity: sha512-WDtdLmJvAuNNPzByAYpRo2rF1Mmradw6gvWsQKf63476DDXmomT9zUiGypLcG4ibIM67vhAj8jJRdbmEws2Aqw==} + engines: {node: '>=6.14.2'} + builtins@5.1.0: resolution: {integrity: sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==} @@ -6332,6 +6657,18 @@ packages: resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} engines: {node: '>= 0.4'} + caller-callsite@2.0.0: + resolution: {integrity: sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==} + engines: {node: '>=4'} + + caller-path@2.0.0: + resolution: {integrity: sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==} + engines: {node: '>=4'} + + callsites@2.0.0: + resolution: {integrity: sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==} + engines: {node: '>=4'} + callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -6538,6 +6875,9 @@ packages: resolution: {integrity: sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==} engines: {node: '>=18'} + cliui@6.0.0: + resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} + cliui@7.0.4: resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} @@ -6599,6 +6939,9 @@ packages: colord@2.9.3: resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==} + colorette@1.4.0: + resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + colorette@2.0.20: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} @@ -6613,6 +6956,9 @@ packages: comma-separated-tokens@2.0.3: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + command-exists@1.2.9: + resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} + commander@10.0.1: resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} engines: {node: '>=14'} @@ -6629,6 +6975,14 @@ packages: resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} + commander@13.1.0: + resolution: {integrity: sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==} + engines: {node: '>=18'} + + commander@14.0.1: + resolution: {integrity: sha512-2JkV3gUZUVrbNA+1sjBOYLsMZ5cEEl8GTFP2a4AVz5hvasAMCQ1D2l2le/cX+pV4N6ZU17zjUahLpIXRrnWL8A==} + engines: {node: '>=20'} + commander@14.0.2: resolution: {integrity: sha512-TywoWNNRbhoD0BXs1P3ZEScW8W5iKrnbithIl0YH+uCmBd0QpPOA8yc82DS3BIE5Ma6FnBVUsJ7wVUDz4dvOWQ==} engines: {node: '>=20'} @@ -6652,6 +7006,10 @@ packages: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} + commander@9.5.0: + resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} + engines: {node: ^12.20.0 || >=14} + comment-parser@1.4.1: resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==} engines: {node: '>= 12.0.0'} @@ -6834,6 +7192,10 @@ packages: cosmiconfig: '>=9' typescript: '>=5' + cosmiconfig@5.2.1: + resolution: {integrity: sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==} + engines: {node: '>=4'} + cosmiconfig@7.1.0: resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} engines: {node: '>=10'} @@ -6997,6 +7359,10 @@ packages: resolution: {integrity: sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==} engines: {node: '>=18'} + cssstyle@5.3.4: + resolution: {integrity: sha512-KyOS/kJMEq5O9GdPnaf82noigg5X5DYn0kZPJTaAsCUaBizp6Xa1y9D4Qoqf/JazEXWuruErHgVXwjN5391ZJw==} + engines: {node: '>=20'} + csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} @@ -7024,6 +7390,10 @@ packages: resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} engines: {node: '>=18'} + data-urls@6.0.0: + resolution: {integrity: sha512-BnBS08aLUM+DKamupXs3w2tJJoqU+AkaE/+6vQxi/G/DPmIZFJJp9Dkb1kM03AZx8ADehDUZgsNxju3mPXZYIA==} + engines: {node: '>=20'} + data-view-buffer@1.0.2: resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} engines: {node: '>= 0.4'} @@ -7217,6 +7587,10 @@ packages: resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==} engines: {node: '>=10'} + delay@5.0.0: + resolution: {integrity: sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw==} + engines: {node: '>=10'} + delayed-stream@1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} @@ -7306,6 +7680,9 @@ packages: resolution: {integrity: sha512-sSuxWU5j5SR9QQji/o2qMvqRNYRDOcBTgsJ/DeCf4iSN4gW+gNMXM7wFIP+fdXZxoNiAnHUTGjCr+TSWXdRDKg==} engines: {node: '>=0.3.1'} + dijkstrajs@1.0.3: + resolution: {integrity: sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==} + dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -7533,6 +7910,10 @@ packages: error-stack-parser@2.1.4: resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} + errorhandler@1.5.1: + resolution: {integrity: sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==} + engines: {node: '>= 0.8'} + errx@0.1.0: resolution: {integrity: sha512-fZmsRiDNv07K6s2KkKFTiD2aIvECa7++PKyD5NC32tpRw46qZA3sOz+aM+/V9V0GDHxVTKLziveV4JhzBHDp9Q==} @@ -7574,6 +7955,12 @@ packages: resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} + es6-promise@4.2.8: + resolution: {integrity: sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==} + + es6-promisify@5.0.0: + resolution: {integrity: sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==} + esbuild-plugin-file-path-extensions@2.1.4: resolution: {integrity: sha512-lNjylaAsJMprYg28zjUyBivP3y0ms9b7RJZ5tdhDUFLa3sCbqZw4wDnbFUSmnyZYWhCYDPxxp7KkXM2TXGw3PQ==} engines: {node: '>=v14.0.0', npm: '>=7.0.0'} @@ -8105,6 +8492,10 @@ packages: resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} engines: {'0': node >=0.6.0} + eyes@0.1.8: + resolution: {integrity: sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==} + engines: {node: '> 0.1.90'} + fast-decode-uri-component@1.0.1: resolution: {integrity: sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==} @@ -8143,13 +8534,23 @@ packages: fast-sha256@1.3.0: resolution: {integrity: sha512-n11RGP/lrWEFI/bWdygLxhI+pVeo1ZYIVwvvPkW7azl/rOy+F3HYRZ2K5zeE9mmkhQppyv9sQFx0JM9UabnpPQ==} + fast-stable-stringify@1.0.0: + resolution: {integrity: sha512-wpYMUmFu5f00Sm0cj2pfivpmawLZ0NKdviQ4w9zJeR8JVtOpOxHmLaJuj0vxvGqMJQWyP/COUkF75/57OKyRag==} + fast-uri@3.1.0: resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + fast-xml-parser@4.5.3: + resolution: {integrity: sha512-RKihhV+SHsIUGXObeVy9AXiBbFwkVk7Syp8XgwN5U3JV416+Gwp/GO9i0JYKmikykgz/UHRrrV4ROuZEo/T0ig==} + hasBin: true + fastest-levenshtein@1.0.16: resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} engines: {node: '>= 4.9.1'} + fastestsmallesttextencoderdecoder@1.0.22: + resolution: {integrity: sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==} + fastify-plugin@5.1.0: resolution: {integrity: sha512-FAIDA8eovSt5qcDgcBvDuX/v0Cjz0ohGhENZ/wpc3y+oZCY2afZ9Baqql3g/lC+OHRnciQol4ww7tuthOb9idw==} @@ -8728,6 +9129,10 @@ packages: hermes-parser@0.32.0: resolution: {integrity: sha512-g4nBOWFpuiTqjR3LZdRxKUkij9iyveWeuks7INEsMX741f3r9xxrOe8TeQfUxtda0eXmiIFiMQzoeSQEno33Hw==} + hermes-profile-transformer@0.0.6: + resolution: {integrity: sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==} + engines: {node: '>=8'} + highlight.js@10.7.3: resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==} @@ -8877,6 +9282,9 @@ packages: resolution: {integrity: sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ==} engines: {node: '>=18.18.0'} + humanize-ms@1.2.1: + resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} + husky@8.0.3: resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==} engines: {node: '>=14'} @@ -8923,6 +9331,10 @@ packages: engines: {node: '>=16.x'} hasBin: true + import-fresh@2.0.0: + resolution: {integrity: sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==} + engines: {node: '>=4'} + import-fresh@3.3.1: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} @@ -9070,6 +9482,10 @@ packages: is-deflate@1.0.0: resolution: {integrity: sha512-YDoFpuZWu1VRXlsnlYMzKyVRITXj7Ej/V9gXQ2/pAe7X1J7M/RNOqaIYi6qUn+B7nGyB9pDXrv02dsB58d2ZAQ==} + is-directory@0.3.1: + resolution: {integrity: sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==} + engines: {node: '>=0.10.0'} + is-docker@2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} engines: {node: '>=8'} @@ -9092,6 +9508,10 @@ packages: resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} engines: {node: '>= 0.4'} + is-fullwidth-code-point@2.0.0: + resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} + engines: {node: '>=4'} + is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} @@ -9129,6 +9549,10 @@ packages: resolution: {integrity: sha512-K55T22lfpQ63N4KEN57jZUAaAYqYHEe8veb/TycJRk9DdSCLLcovXz/mL6mOnhQaZsQGwPhuFopdQIlqGSEjiQ==} engines: {node: '>=18'} + is-interactive@1.0.0: + resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} + engines: {node: '>=8'} + is-map@2.0.3: resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} engines: {node: '>= 0.4'} @@ -9175,6 +9599,10 @@ packages: resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} engines: {node: '>=0.10.0'} + is-plain-obj@2.1.0: + resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} + engines: {node: '>=8'} + is-plain-obj@3.0.0: resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==} engines: {node: '>=10'} @@ -9281,6 +9709,10 @@ packages: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} + is-wsl@1.1.0: + resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==} + engines: {node: '>=4'} + is-wsl@2.2.0: resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} engines: {node: '>=8'} @@ -9314,6 +9746,11 @@ packages: resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} engines: {node: '>=0.10.0'} + isomorphic-ws@4.0.1: + resolution: {integrity: sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==} + peerDependencies: + ws: '*' + isows@1.0.7: resolution: {integrity: sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg==} peerDependencies: @@ -9366,6 +9803,11 @@ packages: engines: {node: '>=10'} hasBin: true + jayson@4.2.0: + resolution: {integrity: sha512-VfJ9t1YLwacIubLhONk0KFeosUBwstRWQ0IRT1KDjEjnVnSOVHC3uwugyV7L0c7R9lpVyrUGT2XWiBA1UTtpyg==} + engines: {node: '>=8'} + hasBin: true + jest-changed-files@29.7.0: resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -9520,6 +9962,9 @@ packages: resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} hasBin: true + joi@17.13.3: + resolution: {integrity: sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==} + join-component@1.1.0: resolution: {integrity: sha512-bF7vcQxbODoGK1imE2P9GS9aw4zD0Sd+Hni68IMZLj7zRnquH7dXUmMw9hDI5S/Jzt7q+IyTXN0rSg2GI0IKhQ==} @@ -9527,6 +9972,9 @@ packages: resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} engines: {node: '>=10'} + js-base64@3.7.8: + resolution: {integrity: sha512-hNngCeKxIUQiEUN3GPJOkz4wF/YvdUdbNL9hsBcMQTkKzboD7T/q3OYOuuPZLUE6dBxSGpwhk5mwuDud7JVAow==} + js-beautify@1.15.4: resolution: {integrity: sha512-9/KXeZUKKJwqCXUdBxFJ3vPh467OCckSBmYDwSK/EtV090K+iMJ7zx2S3HLVDIWFQdqMIsZWbnaGiba18aWhaA==} engines: {node: '>=14'} @@ -9597,6 +10045,15 @@ packages: canvas: optional: true + jsdom@27.0.0: + resolution: {integrity: sha512-lIHeR1qlIRrIN5VMccd8tI2Sgw6ieYXSVktcSHaNe3Z5nE/tcPQYQWOq00wxMvYOsz+73eAkNenVvmPC6bba9A==} + engines: {node: '>=20'} + peerDependencies: + canvas: ^3.0.0 + peerDependenciesMeta: + canvas: + optional: true + jsesc@3.1.0: resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} engines: {node: '>=6'} @@ -10072,6 +10529,10 @@ packages: resolution: {integrity: sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + logkitty@0.7.1: + resolution: {integrity: sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==} + hasBin: true + longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} @@ -10096,6 +10557,10 @@ packages: resolution: {integrity: sha512-F9ODfyqML2coTIsQpSkRHnLSZMtkU8Q+mSfcaIyKwy58u+8k5nvAYeiNhsyMARvzNcXJ9QfWVrcPsC9e9rAxtg==} engines: {node: 20 || >=22} + lru-cache@11.2.4: + resolution: {integrity: sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==} + engines: {node: 20 || >=22} + lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -10281,6 +10746,10 @@ packages: resolution: {integrity: sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==} engines: {node: '>=18'} + merge-options@3.0.4: + resolution: {integrity: sha512-2Sug1+knBjkaMsMgf1ctR1Ujx+Ayku4EdJN4Z+C2+JzoeF7A3OZ9KM2GY0CpQS51NR61LTurMJrRKPhSs3ZRTQ==} + engines: {node: '>=10'} + merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} @@ -10775,6 +11244,10 @@ packages: no-case@3.0.4: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} + nocache@3.0.4: + resolution: {integrity: sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw==} + engines: {node: '>=12.0.0'} + node-addon-api@7.1.1: resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} @@ -10824,6 +11297,10 @@ packages: node-releases@2.0.27: resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==} + node-stream-zip@1.15.0: + resolution: {integrity: sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==} + engines: {node: '>=0.12.0'} + nopt@7.2.1: resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -11033,6 +11510,10 @@ packages: resolution: {integrity: sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA==} engines: {node: '>=18'} + open@6.4.0: + resolution: {integrity: sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==} + engines: {node: '>=8'} + open@7.4.2: resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==} engines: {node: '>=8'} @@ -11053,6 +11534,10 @@ packages: resolution: {integrity: sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==} engines: {node: '>=6'} + ora@5.4.1: + resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} + engines: {node: '>=10'} + ospath@1.2.2: resolution: {integrity: sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==} @@ -11455,6 +11940,10 @@ packages: resolution: {integrity: sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==} engines: {node: '>=4.0.0'} + pngjs@5.0.0: + resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==} + engines: {node: '>=10.13.0'} + portfinder@1.0.38: resolution: {integrity: sha512-rEwq/ZHlJIKw++XtLAO8PPuOQA/zaPJOZJ37BVuN97nLpMJeuDVLVGRwbFoBgLudgdTMP2hdRJP++H+8QOA3vg==} engines: {node: '>= 10.12'} @@ -11767,6 +12256,10 @@ packages: resolution: {integrity: sha512-nODzvTiYVRGRqAOvE84Vk5JDPyyxsVk0/fbA/bq7RqlnhksGpset09XTxbpvLTIjoaF7K8Z8DG8yHtKGTPSYRw==} engines: {node: '>=20'} + pretty-format@26.6.2: + resolution: {integrity: sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==} + engines: {node: '>= 10'} + pretty-format@27.5.1: resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} @@ -11878,7 +12371,6 @@ packages: engines: {node: '>=0.6.0', teleport: '>=0.2.0'} deprecated: |- You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other. - (For a CapTP with native promises, see @endo/eventual-send and @endo/captp) qrcode-terminal@0.11.0: @@ -11890,6 +12382,11 @@ packages: peerDependencies: react: 18.3.1 + qrcode@1.5.4: + resolution: {integrity: sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==} + engines: {node: '>=10.13.0'} + hasBin: true + qs@6.13.0: resolution: {integrity: sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==} engines: {node: '>=0.6'} @@ -12167,6 +12664,9 @@ packages: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} + require-main-filename@2.0.0: + resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} + requireg@0.2.2: resolution: {integrity: sha512-nYzyjnFcPNGR3lx9lwPPPnuQxv6JWEZd2Ci0u9opN7N5zUEPIhY/GbL3vMGOr2UXwEg9WwSyV9X9Y/kLFgPsOg==} engines: {node: '>= 4.0.0'} @@ -12178,6 +12678,10 @@ packages: resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} engines: {node: '>=8'} + resolve-from@3.0.0: + resolution: {integrity: sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==} + engines: {node: '>=4'} + resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} @@ -12321,6 +12825,9 @@ packages: resolution: {integrity: sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==} engines: {node: '>= 18'} + rpc-websockets@9.3.1: + resolution: {integrity: sha512-bY6a+i/lEtBJ/mUxwsCTgevoV1P0foXTVA7UoThzaIWbM+3NDqorf8NBWs5DmqKTFeA1IoNzgvkWjFCPgnzUiQ==} + rrweb-cssom@0.8.0: resolution: {integrity: sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==} @@ -12484,6 +12991,9 @@ packages: server-only@0.0.1: resolution: {integrity: sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==} + set-blocking@2.0.0: + resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} + set-cookie-parser@2.7.2: resolution: {integrity: sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==} @@ -12612,6 +13122,10 @@ packages: resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} engines: {node: '>=14.16'} + slice-ansi@2.1.0: + resolution: {integrity: sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==} + engines: {node: '>=6'} + slice-ansi@3.0.0: resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} engines: {node: '>=8'} @@ -12816,6 +13330,12 @@ packages: resolution: {integrity: sha512-uyQK/mx5QjHun80FLJTfaWE7JtwfRMKBLkMne6udYOmvH0CawotVa7TfgYHzAnpphn4+TweIx1QKMnRIbipmUg==} engines: {node: '>= 0.10.0'} + stream-chain@2.2.5: + resolution: {integrity: sha512-1TJmBx6aSWqZ4tx7aTpBDXK0/e2hhcNSTV8+CbFJtDjbb+I1mZ8lHit0Grw9GRT+6JbIrrDd8esncgBi8aBXGA==} + + stream-json@1.9.1: + resolution: {integrity: sha512-uWkjJ+2Nt/LO9Z/JyKZbMusL8Dkh97uUBTv3AJQ74y07lVahLY4eEFsPsE97pxYBwr8nnjMAIch5eqI0gPShyw==} + stream-shift@1.0.3: resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==} @@ -12948,6 +13468,9 @@ packages: strip-literal@3.1.0: resolution: {integrity: sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==} + strnum@1.1.2: + resolution: {integrity: sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA==} + structured-clone-es@1.0.0: resolution: {integrity: sha512-FL8EeKFFyNQv5cMnXI31CIMCsFarSVI2bF0U0ImeNE3g/F1IvJQyqzOXxPBRXiwQfyBTlbNe88jh1jFW0O/jiQ==} @@ -12986,6 +13509,10 @@ packages: engines: {node: '>=16 || 14 >=14.17'} hasBin: true + sudo-prompt@9.2.1: + resolution: {integrity: sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + suf-log@2.5.3: resolution: {integrity: sha512-KvC8OPjzdNOe+xQ4XWJV2whQA0aM1kGVczMQ8+dStAO6KfEB140JEVQ9dE76ONZ0/Ylf67ni4tILPJB41U0eow==} @@ -12998,6 +13525,10 @@ packages: resolution: {integrity: sha512-zWPTX96LVsA/eVYnqOM2+ofcdPqdS1dAF1LN4TS2/MWuUpfitd9ctTa87wt4xrYnZnkLtS69xpBdSxVBP5Rm6w==} engines: {node: '>=16'} + superstruct@2.0.2: + resolution: {integrity: sha512-uV+TFRZdXsqXTL2pRvujROjdZQ4RAlBUS5BTh9IGm+jTqQntYThciG/qu57Gs69yjnVUSqdxF9YLmSnpupBW9A==} + engines: {node: '>=14.0.0'} + supertest@6.3.4: resolution: {integrity: sha512-erY3HFDG0dPnhw4U+udPfrzXa4xhSG+n4rxfRuZWCUvjFWwKl+OxWf/7zk50s84/fAAs7vf5QAb9uRa0cCykxw==} engines: {node: '>=6.4.0'} @@ -13147,6 +13678,9 @@ packages: text-decoder@1.2.3: resolution: {integrity: sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==} + text-encoding-utf-8@1.0.2: + resolution: {integrity: sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg==} + text-extensions@2.4.0: resolution: {integrity: sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==} engines: {node: '>=8'} @@ -13287,6 +13821,10 @@ packages: resolution: {integrity: sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==} engines: {node: '>=18'} + tr46@6.0.0: + resolution: {integrity: sha512-bLVMLPtstlZ4iMQHpFHTR7GAGj2jxi8Dg0s2h2MafAE4uSWF98FC/3MomU51iQAMf8/qDUbKWf5GxuvvVcXEhw==} + engines: {node: '>=20'} + tree-dump@1.1.0: resolution: {integrity: sha512-rMuvhU4MCDbcbnleZTFezWsaZXRFemSqAM+7jPnzUl1fo9w3YEKOxAeui0fz3OI4EU4hf23iyA7uQRVko+UaBA==} engines: {node: '>=10.0'} @@ -13887,6 +14425,10 @@ packages: peerDependencies: react: 18.3.1 + utf-8-validate@5.0.10: + resolution: {integrity: sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==} + engines: {node: '>=6.14.2'} + util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -14241,6 +14783,10 @@ packages: resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} engines: {node: '>=12'} + webidl-conversions@8.0.0: + resolution: {integrity: sha512-n4W4YFyz5JzOfQeA8oN7dUYpR+MBP3PIUsn2jLjWXwK5ASUzt0Jc/A5sAUZoCYFJRGF0FBKJ+1JjN43rNdsQzA==} + engines: {node: '>=20'} + webpack-bundle-analyzer@4.10.2: resolution: {integrity: sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==} engines: {node: '>= 10.13.0'} @@ -14328,6 +14874,10 @@ packages: resolution: {integrity: sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==} engines: {node: '>=18'} + whatwg-url@15.1.0: + resolution: {integrity: sha512-2ytDk0kiEj/yu90JOAp44PVPUkO9+jVhyf+SybKlRHSDlvOOZhdPIrr7xTH64l4WixO2cP+wQIcgujkGBPPz6g==} + engines: {node: '>=20'} + whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} @@ -14346,6 +14896,9 @@ packages: resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} engines: {node: '>= 0.4'} + which-module@2.0.1: + resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} + which-pm-runs@1.1.0: resolution: {integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==} engines: {node: '>=4'} @@ -14513,6 +15066,9 @@ packages: xxhash-wasm@1.1.0: resolution: {integrity: sha512-147y/6YNh+tlp6nd/2pWq38i9h6mz/EuQ6njIrmW8D1BS5nCqs0P6DG+m6zTGnNz5I+uhZ0SHxBs9BsPrwcKDA==} + y18n@4.0.3: + resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} + y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -14548,6 +15104,10 @@ packages: engines: {node: '>= 14.6'} hasBin: true + yargs-parser@18.1.3: + resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} + engines: {node: '>=6'} + yargs-parser@20.2.9: resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} engines: {node: '>=10'} @@ -14556,6 +15116,10 @@ packages: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} + yargs@15.4.1: + resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} + engines: {node: '>=8'} + yargs@16.2.0: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} engines: {node: '>=10'} @@ -14730,6 +15294,27 @@ snapshots: '@csstools/css-tokenizer': 3.0.4 lru-cache: 10.4.3 + '@asamuzakjp/css-color@4.1.0': + dependencies: + '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) + '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) + '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) + '@csstools/css-tokenizer': 3.0.4 + lru-cache: 11.2.4 + optional: true + + '@asamuzakjp/dom-selector@6.7.6': + dependencies: + '@asamuzakjp/nwsapi': 2.3.9 + bidi-js: 1.0.3 + css-tree: 3.1.0 + is-potential-custom-element-name: 1.0.1 + lru-cache: 11.2.4 + optional: true + + '@asamuzakjp/nwsapi@2.3.9': + optional: true + '@astrojs/compiler@2.13.0': {} '@astrojs/internal-helpers@0.7.4': {} @@ -15715,7 +16300,7 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 - '@base-org/account@2.0.1(@types/react@18.3.26)(react@18.3.1)(typescript@5.8.3)(use-sync-external-store@1.6.0(react@18.3.1))(zod@3.25.76)': + '@base-org/account@2.0.1(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.8.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(zod@3.25.76)': dependencies: '@noble/hashes': 1.4.0 clsx: 1.2.1 @@ -15723,7 +16308,7 @@ snapshots: idb-keyval: 6.2.1 ox: 0.6.9(typescript@5.8.3)(zod@3.25.76) preact: 10.24.2 - viem: 2.38.6(typescript@5.8.3)(zod@3.25.76) + viem: 2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.25.76) zustand: 5.0.3(@types/react@18.3.26)(react@18.3.1)(use-sync-external-store@1.6.0(react@18.3.1)) transitivePeerDependencies: - '@types/react' @@ -16042,6 +16627,11 @@ snapshots: dependencies: '@csstools/css-tokenizer': 3.0.4 + '@csstools/css-syntax-patches-for-csstree@1.0.14(postcss@8.5.6)': + dependencies: + postcss: 8.5.6 + optional: true + '@csstools/css-tokenizer@3.0.4': {} '@cypress/request@3.0.9': @@ -16323,7 +16913,7 @@ snapshots: dependencies: uuid: 8.3.2 - '@expo/cli@0.22.26(graphql@16.12.0)': + '@expo/cli@0.22.26(bufferutil@4.0.9)(graphql@16.12.0)(utf-8-validate@5.0.10)': dependencies: '@0no-co/graphql.web': 1.2.0(graphql@16.12.0) '@babel/runtime': 7.28.4 @@ -16343,7 +16933,7 @@ snapshots: '@expo/spawn-async': 1.7.2 '@expo/ws-tunnel': 1.0.6 '@expo/xcpretty': 4.3.2 - '@react-native/dev-middleware': 0.76.9 + '@react-native/dev-middleware': 0.76.9(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@urql/core': 5.2.0(graphql@16.12.0) '@urql/exchange-retry': 1.3.2(@urql/core@5.2.0(graphql@16.12.0)) accepts: 1.3.8 @@ -16396,7 +16986,7 @@ snapshots: undici: 6.22.0 unique-string: 2.0.0 wrap-ansi: 7.0.0 - ws: 8.18.3 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - encoding @@ -16404,7 +16994,7 @@ snapshots: - supports-color - utf-8-validate - '@expo/cli@54.0.16(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))': + '@expo/cli@54.0.16(bufferutil@4.0.9)(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10)': dependencies: '@0no-co/graphql.web': 1.2.0(graphql@16.12.0) '@expo/code-signing-certificates': 0.0.5 @@ -16414,18 +17004,18 @@ snapshots: '@expo/env': 2.0.7 '@expo/image-utils': 0.8.7 '@expo/json-file': 10.0.7 - '@expo/mcp-tunnel': 0.1.0 - '@expo/metro': 54.1.0 - '@expo/metro-config': 54.0.9(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) + '@expo/mcp-tunnel': 0.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@expo/metro': 54.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@expo/metro-config': 54.0.9(bufferutil@4.0.9)(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10) '@expo/osascript': 2.3.7 '@expo/package-manager': 1.9.8 '@expo/plist': 0.4.7 - '@expo/prebuild-config': 54.0.6(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) + '@expo/prebuild-config': 54.0.6(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) '@expo/schema-utils': 0.1.7 '@expo/spawn-async': 1.7.2 '@expo/ws-tunnel': 1.0.6 '@expo/xcpretty': 4.3.2 - '@react-native/dev-middleware': 0.81.5 + '@react-native/dev-middleware': 0.81.5(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@urql/core': 5.2.0(graphql@16.12.0) '@urql/exchange-retry': 1.3.2(@urql/core@5.2.0(graphql@16.12.0)) accepts: 1.3.8 @@ -16439,7 +17029,7 @@ snapshots: connect: 3.7.0 debug: 4.4.3(supports-color@8.1.1) env-editor: 0.4.2 - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) expo-server: 1.0.4 freeport-async: 2.0.0 getenv: 2.0.0 @@ -16470,9 +17060,9 @@ snapshots: terminal-link: 2.1.1 undici: 6.22.0 wrap-ansi: 7.0.0 - ws: 8.18.3 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) optionalDependencies: - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) transitivePeerDependencies: - '@modelcontextprotocol/sdk' - bufferutil @@ -16609,12 +17199,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@expo/devtools@0.1.7(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)': + '@expo/devtools@0.1.7(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)': dependencies: chalk: 4.1.2 optionalDependencies: react: 18.3.1 - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) '@expo/env@0.3.0': dependencies: @@ -16725,9 +17315,9 @@ snapshots: '@babel/code-frame': 7.10.4 json5: 2.2.3 - '@expo/mcp-tunnel@0.1.0': + '@expo/mcp-tunnel@0.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: - ws: 8.18.3 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) zod: 3.25.76 zod-to-json-schema: 3.24.6(zod@3.25.76) transitivePeerDependencies: @@ -16757,7 +17347,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@expo/metro-config@54.0.9(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))': + '@expo/metro-config@54.0.9(bufferutil@4.0.9)(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10)': dependencies: '@babel/code-frame': 7.27.1 '@babel/core': 7.28.5 @@ -16765,7 +17355,7 @@ snapshots: '@expo/config': 12.0.10 '@expo/env': 2.0.7 '@expo/json-file': 10.0.7 - '@expo/metro': 54.1.0 + '@expo/metro': 54.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@expo/spawn-async': 1.7.2 browserslist: 4.27.0 chalk: 4.1.2 @@ -16781,26 +17371,26 @@ snapshots: postcss: 8.4.49 resolve-from: 5.0.0 optionalDependencies: - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - '@expo/metro@54.1.0': + '@expo/metro@54.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: - metro: 0.83.2 + metro: 0.83.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) metro-babel-transformer: 0.83.2 metro-cache: 0.83.2 metro-cache-key: 0.83.2 - metro-config: 0.83.2 + metro-config: 0.83.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) metro-core: 0.83.2 metro-file-map: 0.83.2 metro-resolver: 0.83.2 metro-runtime: 0.83.2 metro-source-map: 0.83.2 metro-transform-plugins: 0.83.2 - metro-transform-worker: 0.83.2 + metro-transform-worker: 0.83.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - supports-color @@ -16838,7 +17428,7 @@ snapshots: base64-js: 1.5.1 xmlbuilder: 15.1.1 - '@expo/prebuild-config@54.0.6(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))': + '@expo/prebuild-config@54.0.6(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))': dependencies: '@expo/config': 12.0.10 '@expo/config-plugins': 54.0.2 @@ -16847,7 +17437,7 @@ snapshots: '@expo/json-file': 10.0.7 '@react-native/normalize-colors': 0.81.5 debug: 4.4.3(supports-color@8.1.1) - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) resolve-from: 5.0.0 semver: 7.7.3 xml2js: 0.6.0 @@ -16896,11 +17486,11 @@ snapshots: dependencies: prop-types: 15.8.1 - '@expo/vector-icons@15.0.3(expo-font@14.0.9(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)': + '@expo/vector-icons@15.0.3(expo-font@14.0.9(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)': dependencies: - expo-font: 14.0.9(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo-font: 14.0.9(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) react: 18.3.1 - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) '@expo/ws-tunnel@1.0.6': {} @@ -16973,6 +17563,14 @@ snapshots: '@shikijs/types': 3.15.0 '@shikijs/vscode-textmate': 10.0.2 + '@hapi/hoek@9.3.0': + optional: true + + '@hapi/topo@5.1.0': + dependencies: + '@hapi/hoek': 9.3.0 + optional: true + '@humanfs/core@0.19.1': {} '@humanfs/node@0.16.7': @@ -17383,6 +17981,15 @@ snapshots: transitivePeerDependencies: - supports-color + '@jest/types@26.6.2': + dependencies: + '@types/istanbul-lib-coverage': 2.0.6 + '@types/istanbul-reports': 3.0.4 + '@types/node': 22.19.0 + '@types/yargs': 15.0.20 + chalk: 4.1.2 + optional: true + '@jest/types@29.6.3': dependencies: '@jest/schemas': 29.6.3 @@ -17572,7 +18179,7 @@ snapshots: dependencies: '@miniflare/shared': 2.14.4 - '@miniflare/shared-test-environment@2.14.4': + '@miniflare/shared-test-environment@2.14.4(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: '@cloudflare/workers-types': 4.20251107.0 '@miniflare/cache': 2.14.4 @@ -17586,7 +18193,7 @@ snapshots: '@miniflare/shared': 2.14.4 '@miniflare/sites': 2.14.4 '@miniflare/storage-memory': 2.14.4 - '@miniflare/web-sockets': 2.14.4 + '@miniflare/web-sockets': 2.14.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -17617,12 +18224,12 @@ snapshots: dependencies: '@miniflare/shared': 2.14.4 - '@miniflare/web-sockets@2.14.4': + '@miniflare/web-sockets@2.14.4(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: '@miniflare/core': 2.14.4 '@miniflare/shared': 2.14.4 undici: 5.28.4 - ws: 8.18.3 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -17800,7 +18407,7 @@ snapshots: prompts: 2.4.2 semver: 7.7.3 - '@nuxt/devtools@3.1.0(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.24(typescript@5.8.3))': + '@nuxt/devtools@3.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.24(typescript@5.8.3))': dependencies: '@nuxt/devtools-kit': 3.1.0(magicast@0.5.1)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1)) '@nuxt/devtools-wizard': 3.1.0 @@ -17834,7 +18441,7 @@ snapshots: vite-plugin-inspect: 11.3.3(@nuxt/kit@4.2.1(magicast@0.5.1))(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1)) vite-plugin-vue-tracer: 1.1.3(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.24(typescript@5.8.3)) which: 5.0.0 - ws: 8.18.3 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - supports-color @@ -17918,7 +18525,7 @@ snapshots: transitivePeerDependencies: - magicast - '@nuxt/nitro-server@4.2.1(db0@0.3.4)(idb-keyval@6.2.1)(ioredis@5.8.2)(magicast@0.5.1)(nuxt@4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1))(rolldown@1.0.0-beta.47)(typescript@5.8.3)': + '@nuxt/nitro-server@4.2.1(db0@0.3.4)(idb-keyval@6.2.1)(ioredis@5.8.2)(magicast@0.5.1)(nuxt@4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(bufferutil@4.0.9)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(utf-8-validate@5.0.10)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1))(rolldown@1.0.0-beta.47)(typescript@5.8.3)': dependencies: '@nuxt/devalue': 2.0.2 '@nuxt/kit': 4.2.1(magicast@0.5.1) @@ -17936,7 +18543,7 @@ snapshots: klona: 2.0.6 mocked-exports: 0.1.1 nitropack: 2.12.9(idb-keyval@6.2.1)(rolldown@1.0.0-beta.47) - nuxt: 4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1) + nuxt: 4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(bufferutil@4.0.9)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(utf-8-validate@5.0.10)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1) pathe: 2.0.3 pkg-types: 2.3.0 radix3: 1.1.2 @@ -18007,7 +18614,7 @@ snapshots: transitivePeerDependencies: - magicast - '@nuxt/vite-builder@4.2.1(@types/node@22.19.0)(eslint@9.31.0(jiti@2.6.1))(lightningcss@1.30.2)(magicast@0.5.1)(nuxt@4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1))(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vue-tsc@3.1.4(typescript@5.8.3))(vue@3.5.24(typescript@5.8.3))(yaml@2.8.1)': + '@nuxt/vite-builder@4.2.1(@types/node@22.19.0)(eslint@9.31.0(jiti@2.6.1))(lightningcss@1.30.2)(magicast@0.5.1)(nuxt@4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(bufferutil@4.0.9)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(utf-8-validate@5.0.10)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1))(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vue-tsc@3.1.4(typescript@5.8.3))(vue@3.5.24(typescript@5.8.3))(yaml@2.8.1)': dependencies: '@nuxt/kit': 4.2.1(magicast@0.5.1) '@rollup/plugin-replace': 6.0.3(rollup@4.53.1) @@ -18027,7 +18634,7 @@ snapshots: magic-string: 0.30.21 mlly: 1.8.0 mocked-exports: 0.1.1 - nuxt: 4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1) + nuxt: 4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(bufferutil@4.0.9)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(utf-8-validate@5.0.10)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1) pathe: 2.0.3 pkg-types: 2.3.0 postcss: 8.5.6 @@ -18406,6 +19013,165 @@ snapshots: dependencies: quansync: 0.2.11 + '@react-native-async-storage/async-storage@1.24.0(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))': + dependencies: + merge-options: 3.0.4 + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) + optional: true + + '@react-native-community/cli-clean@12.3.7': + dependencies: + '@react-native-community/cli-tools': 12.3.7 + chalk: 4.1.2 + execa: 5.1.1 + transitivePeerDependencies: + - encoding + optional: true + + '@react-native-community/cli-config@12.3.7': + dependencies: + '@react-native-community/cli-tools': 12.3.7 + chalk: 4.1.2 + cosmiconfig: 5.2.1 + deepmerge: 4.3.1 + glob: 7.2.3 + joi: 17.13.3 + transitivePeerDependencies: + - encoding + optional: true + + '@react-native-community/cli-debugger-ui@12.3.7': + dependencies: + serve-static: 1.16.2 + transitivePeerDependencies: + - supports-color + optional: true + + '@react-native-community/cli-doctor@12.3.7': + dependencies: + '@react-native-community/cli-config': 12.3.7 + '@react-native-community/cli-platform-android': 12.3.7 + '@react-native-community/cli-platform-ios': 12.3.7 + '@react-native-community/cli-tools': 12.3.7 + chalk: 4.1.2 + command-exists: 1.2.9 + deepmerge: 4.3.1 + envinfo: 7.14.0 + execa: 5.1.1 + hermes-profile-transformer: 0.0.6 + node-stream-zip: 1.15.0 + ora: 5.4.1 + semver: 7.7.3 + strip-ansi: 5.2.0 + wcwidth: 1.0.1 + yaml: 2.8.1 + transitivePeerDependencies: + - encoding + optional: true + + '@react-native-community/cli-hermes@12.3.7': + dependencies: + '@react-native-community/cli-platform-android': 12.3.7 + '@react-native-community/cli-tools': 12.3.7 + chalk: 4.1.2 + hermes-profile-transformer: 0.0.6 + transitivePeerDependencies: + - encoding + optional: true + + '@react-native-community/cli-platform-android@12.3.7': + dependencies: + '@react-native-community/cli-tools': 12.3.7 + chalk: 4.1.2 + execa: 5.1.1 + fast-xml-parser: 4.5.3 + glob: 7.2.3 + logkitty: 0.7.1 + transitivePeerDependencies: + - encoding + optional: true + + '@react-native-community/cli-platform-ios@12.3.7': + dependencies: + '@react-native-community/cli-tools': 12.3.7 + chalk: 4.1.2 + execa: 5.1.1 + fast-xml-parser: 4.5.3 + glob: 7.2.3 + ora: 5.4.1 + transitivePeerDependencies: + - encoding + optional: true + + '@react-native-community/cli-plugin-metro@12.3.7': + optional: true + + '@react-native-community/cli-server-api@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: + '@react-native-community/cli-debugger-ui': 12.3.7 + '@react-native-community/cli-tools': 12.3.7 + compression: 1.8.1 + connect: 3.7.0 + errorhandler: 1.5.1 + nocache: 3.0.4 + pretty-format: 26.6.2 + serve-static: 1.16.2 + ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + + '@react-native-community/cli-tools@12.3.7': + dependencies: + appdirsjs: 1.2.7 + chalk: 4.1.2 + find-up: 5.0.0 + mime: 2.6.0 + node-fetch: 2.7.0 + open: 6.4.0 + ora: 5.4.1 + semver: 7.7.3 + shell-quote: 1.8.3 + sudo-prompt: 9.2.1 + transitivePeerDependencies: + - encoding + optional: true + + '@react-native-community/cli-types@12.3.7': + dependencies: + joi: 17.13.3 + optional: true + + '@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: + '@react-native-community/cli-clean': 12.3.7 + '@react-native-community/cli-config': 12.3.7 + '@react-native-community/cli-debugger-ui': 12.3.7 + '@react-native-community/cli-doctor': 12.3.7 + '@react-native-community/cli-hermes': 12.3.7 + '@react-native-community/cli-plugin-metro': 12.3.7 + '@react-native-community/cli-server-api': 12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@react-native-community/cli-tools': 12.3.7 + '@react-native-community/cli-types': 12.3.7 + chalk: 4.1.2 + commander: 9.5.0 + deepmerge: 4.3.1 + execa: 5.1.1 + find-up: 4.1.0 + fs-extra: 8.1.0 + graceful-fs: 4.2.11 + prompts: 2.4.2 + semver: 7.7.3 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + '@react-native/assets-registry@0.81.5': {} '@react-native/babel-plugin-codegen@0.76.9(@babel/preset-env@7.28.5(@babel/core@7.28.5))': @@ -18548,15 +19314,17 @@ snapshots: nullthrows: 1.1.1 yargs: 17.7.2 - '@react-native/community-cli-plugin@0.81.5': + '@react-native/community-cli-plugin@0.81.5(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: - '@react-native/dev-middleware': 0.81.5 + '@react-native/dev-middleware': 0.81.5(bufferutil@4.0.9)(utf-8-validate@5.0.10) debug: 4.4.3(supports-color@8.1.1) invariant: 2.2.4 - metro: 0.83.3 - metro-config: 0.83.3 + metro: 0.83.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + metro-config: 0.83.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) metro-core: 0.83.3 semver: 7.7.3 + optionalDependencies: + '@react-native-community/cli': 12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - supports-color @@ -18566,7 +19334,7 @@ snapshots: '@react-native/debugger-frontend@0.81.5': {} - '@react-native/dev-middleware@0.76.9': + '@react-native/dev-middleware@0.76.9(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: '@isaacs/ttlcache': 1.4.1 '@react-native/debugger-frontend': 0.76.9 @@ -18579,13 +19347,13 @@ snapshots: open: 7.4.2 selfsigned: 2.4.1 serve-static: 1.16.2 - ws: 6.2.3 + ws: 6.2.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - '@react-native/dev-middleware@0.81.5': + '@react-native/dev-middleware@0.81.5(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: '@isaacs/ttlcache': 1.4.1 '@react-native/debugger-frontend': 0.81.5 @@ -18597,7 +19365,7 @@ snapshots: nullthrows: 1.1.1 open: 7.4.2 serve-static: 1.16.2 - ws: 6.2.3 + ws: 6.2.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - supports-color @@ -18611,12 +19379,12 @@ snapshots: '@react-native/normalize-colors@0.81.5': {} - '@react-native/virtualized-lists@0.81.5(@types/react@18.3.26)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)': + '@react-native/virtualized-lists@0.81.5(@types/react@18.3.26)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)': dependencies: invariant: 2.2.4 nullthrows: 1.1.1 react: 18.3.1 - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) optionalDependencies: '@types/react': 18.3.26 @@ -18801,10 +19569,10 @@ snapshots: '@rsdoctor/client@0.4.13': {} - '@rsdoctor/core@0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12))': + '@rsdoctor/core@0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12))': dependencies: - '@rsdoctor/graph': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) - '@rsdoctor/sdk': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) + '@rsdoctor/graph': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) + '@rsdoctor/sdk': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) '@rsdoctor/types': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) '@rsdoctor/utils': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) axios: 1.13.2 @@ -18815,7 +19583,7 @@ snapshots: path-browserify: 1.0.1 semver: 7.7.3 source-map: 0.7.6 - webpack-bundle-analyzer: 4.10.2 + webpack-bundle-analyzer: 4.10.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - '@rspack/core' - bufferutil @@ -18824,12 +19592,12 @@ snapshots: - utf-8-validate - webpack - '@rsdoctor/graph@0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12))': + '@rsdoctor/graph@0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12))': dependencies: '@rsdoctor/types': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) '@rsdoctor/utils': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) lodash.unionby: 4.8.0 - socket.io: 4.8.1 + socket.io: 4.8.1(bufferutil@4.0.9)(utf-8-validate@5.0.10) source-map: 0.7.6 transitivePeerDependencies: - '@rspack/core' @@ -18838,11 +19606,11 @@ snapshots: - utf-8-validate - webpack - '@rsdoctor/rspack-plugin@0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12))': + '@rsdoctor/rspack-plugin@0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12))': dependencies: - '@rsdoctor/core': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) - '@rsdoctor/graph': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) - '@rsdoctor/sdk': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) + '@rsdoctor/core': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) + '@rsdoctor/graph': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) + '@rsdoctor/sdk': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) '@rsdoctor/types': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) '@rsdoctor/utils': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) '@rspack/core': 1.6.1(@swc/helpers@0.5.17) @@ -18854,10 +19622,10 @@ snapshots: - utf-8-validate - webpack - '@rsdoctor/sdk@0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12))': + '@rsdoctor/sdk@0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12))': dependencies: '@rsdoctor/client': 0.4.13 - '@rsdoctor/graph': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) + '@rsdoctor/graph': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) '@rsdoctor/types': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) '@rsdoctor/utils': 0.4.13(@rspack/core@1.6.1(@swc/helpers@0.5.17))(webpack@5.102.1(esbuild@0.25.12)) '@types/fs-extra': 11.0.4 @@ -18869,7 +19637,7 @@ snapshots: lodash: 4.17.21 open: 8.4.2 serve-static: 1.16.2 - socket.io: 4.8.1 + socket.io: 4.8.1(bufferutil@4.0.9)(utf-8-validate@5.0.10) source-map: 0.7.6 tapable: 2.2.1 transitivePeerDependencies: @@ -18958,13 +19726,13 @@ snapshots: '@rspack/binding-win32-ia32-msvc': 1.6.1 '@rspack/binding-win32-x64-msvc': 1.6.1 - '@rspack/cli@1.6.1(@rspack/core@1.6.1(@swc/helpers@0.5.17))(@types/express@4.17.25)(webpack@5.102.1(esbuild@0.25.12))': + '@rspack/cli@1.6.1(@rspack/core@1.6.1(@swc/helpers@0.5.17))(@types/express@4.17.25)(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12))': dependencies: '@discoveryjs/json-ext': 0.5.7 '@rspack/core': 1.6.1(@swc/helpers@0.5.17) - '@rspack/dev-server': 1.1.4(@rspack/core@1.6.1(@swc/helpers@0.5.17))(@types/express@4.17.25)(webpack@5.102.1(esbuild@0.25.12)) + '@rspack/dev-server': 1.1.4(@rspack/core@1.6.1(@swc/helpers@0.5.17))(@types/express@4.17.25)(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) exit-hook: 4.0.0 - webpack-bundle-analyzer: 4.10.2 + webpack-bundle-analyzer: 4.10.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - '@types/express' - bufferutil @@ -18982,14 +19750,14 @@ snapshots: optionalDependencies: '@swc/helpers': 0.5.17 - '@rspack/dev-server@1.1.4(@rspack/core@1.6.1(@swc/helpers@0.5.17))(@types/express@4.17.25)(webpack@5.102.1(esbuild@0.25.12))': + '@rspack/dev-server@1.1.4(@rspack/core@1.6.1(@swc/helpers@0.5.17))(@types/express@4.17.25)(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12))': dependencies: '@rspack/core': 1.6.1(@swc/helpers@0.5.17) chokidar: 3.6.0 http-proxy-middleware: 2.0.9(@types/express@4.17.25) p-retry: 6.2.1 - webpack-dev-server: 5.2.2(webpack@5.102.1(esbuild@0.25.12)) - ws: 8.18.3 + webpack-dev-server: 5.2.2(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)) + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - '@types/express' - bufferutil @@ -19062,6 +19830,17 @@ snapshots: '@shikijs/vscode-textmate@10.0.2': {} + '@sideway/address@4.1.5': + dependencies: + '@hapi/hoek': 9.3.0 + optional: true + + '@sideway/formula@3.0.1': + optional: true + + '@sideway/pinpoint@2.0.0': + optional: true + '@sinclair/typebox@0.27.8': {} '@sindresorhus/is@4.6.0': {} @@ -19080,6 +19859,268 @@ snapshots: '@socket.io/component-emitter@3.1.2': {} + '@solana-mobile/mobile-wallet-adapter-protocol-web3js@2.2.5(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3)': + dependencies: + '@solana-mobile/mobile-wallet-adapter-protocol': 2.2.5(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0)(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3) + '@solana/web3.js': 1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10) + bs58: 5.0.0 + js-base64: 3.7.8 + transitivePeerDependencies: + - '@solana/wallet-adapter-base' + - fastestsmallesttextencoderdecoder + - react + - react-native + - typescript + + '@solana-mobile/mobile-wallet-adapter-protocol@2.2.5(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0)(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3)': + dependencies: + '@solana/codecs-strings': 4.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.8.3) + '@solana/wallet-standard': 1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0)(react@18.3.1) + '@solana/wallet-standard-util': 1.1.2 + '@wallet-standard/core': 1.1.1 + js-base64: 3.7.8 + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - '@solana/wallet-adapter-base' + - '@solana/web3.js' + - bs58 + - fastestsmallesttextencoderdecoder + - react + - typescript + + '@solana-mobile/wallet-adapter-mobile@2.2.5(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3)': + dependencies: + '@solana-mobile/mobile-wallet-adapter-protocol-web3js': 2.2.5(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3) + '@solana-mobile/wallet-standard-mobile': 0.4.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3) + '@solana/wallet-adapter-base': 0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)) + '@solana/wallet-standard-features': 1.3.0 + '@solana/web3.js': 1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10) + js-base64: 3.7.8 + optionalDependencies: + '@react-native-async-storage/async-storage': 1.24.0(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)) + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + - react + - react-native + - typescript + + '@solana-mobile/wallet-standard-mobile@0.4.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3)': + dependencies: + '@solana-mobile/mobile-wallet-adapter-protocol': 2.2.5(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0)(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3) + '@solana/wallet-standard-chains': 1.1.1 + '@solana/wallet-standard-features': 1.3.0 + '@wallet-standard/base': 1.1.0 + '@wallet-standard/features': 1.1.0 + bs58: 5.0.0 + js-base64: 3.7.8 + qrcode: 1.5.4 + transitivePeerDependencies: + - '@solana/wallet-adapter-base' + - '@solana/web3.js' + - fastestsmallesttextencoderdecoder + - react + - react-native + - typescript + + '@solana/buffer-layout@4.0.1': + dependencies: + buffer: 6.0.3 + + '@solana/codecs-core@2.3.0(typescript@5.8.3)': + dependencies: + '@solana/errors': 2.3.0(typescript@5.8.3) + typescript: 5.8.3 + + '@solana/codecs-core@4.0.0(typescript@5.8.3)': + dependencies: + '@solana/errors': 4.0.0(typescript@5.8.3) + typescript: 5.8.3 + + '@solana/codecs-numbers@2.3.0(typescript@5.8.3)': + dependencies: + '@solana/codecs-core': 2.3.0(typescript@5.8.3) + '@solana/errors': 2.3.0(typescript@5.8.3) + typescript: 5.8.3 + + '@solana/codecs-numbers@4.0.0(typescript@5.8.3)': + dependencies: + '@solana/codecs-core': 4.0.0(typescript@5.8.3) + '@solana/errors': 4.0.0(typescript@5.8.3) + typescript: 5.8.3 + + '@solana/codecs-strings@4.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.8.3)': + dependencies: + '@solana/codecs-core': 4.0.0(typescript@5.8.3) + '@solana/codecs-numbers': 4.0.0(typescript@5.8.3) + '@solana/errors': 4.0.0(typescript@5.8.3) + fastestsmallesttextencoderdecoder: 1.0.22 + typescript: 5.8.3 + + '@solana/errors@2.3.0(typescript@5.8.3)': + dependencies: + chalk: 5.6.2 + commander: 14.0.2 + typescript: 5.8.3 + + '@solana/errors@4.0.0(typescript@5.8.3)': + dependencies: + chalk: 5.6.2 + commander: 14.0.1 + typescript: 5.8.3 + + '@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))': + dependencies: + '@solana/wallet-standard-features': 1.3.0 + '@solana/web3.js': 1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10) + '@wallet-standard/base': 1.1.0 + '@wallet-standard/features': 1.1.0 + eventemitter3: 5.0.1 + + '@solana/wallet-adapter-react@0.15.39(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3)': + dependencies: + '@solana-mobile/wallet-adapter-mobile': 2.2.5(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.8.3) + '@solana/wallet-adapter-base': 0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)) + '@solana/wallet-standard-wallet-adapter-react': 1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(react@18.3.1) + '@solana/web3.js': 1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10) + react: 18.3.1 + transitivePeerDependencies: + - bs58 + - fastestsmallesttextencoderdecoder + - react-native + - typescript + + '@solana/wallet-standard-chains@1.1.1': + dependencies: + '@wallet-standard/base': 1.1.0 + + '@solana/wallet-standard-core@1.1.2': + dependencies: + '@solana/wallet-standard-chains': 1.1.1 + '@solana/wallet-standard-features': 1.3.0 + '@solana/wallet-standard-util': 1.1.2 + + '@solana/wallet-standard-features@1.3.0': + dependencies: + '@wallet-standard/base': 1.1.0 + '@wallet-standard/features': 1.1.0 + + '@solana/wallet-standard-util@1.1.2': + dependencies: + '@noble/curves': 1.9.7 + '@solana/wallet-standard-chains': 1.1.1 + '@solana/wallet-standard-features': 1.3.0 + + '@solana/wallet-standard-wallet-adapter-base@1.1.4(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0)': + dependencies: + '@solana/wallet-adapter-base': 0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)) + '@solana/wallet-standard-chains': 1.1.1 + '@solana/wallet-standard-features': 1.3.0 + '@solana/wallet-standard-util': 1.1.2 + '@solana/web3.js': 1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10) + '@wallet-standard/app': 1.1.0 + '@wallet-standard/base': 1.1.0 + '@wallet-standard/features': 1.1.0 + '@wallet-standard/wallet': 1.1.0 + bs58: 5.0.0 + + '@solana/wallet-standard-wallet-adapter-base@1.1.4(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)': + dependencies: + '@solana/wallet-adapter-base': 0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)) + '@solana/wallet-standard-chains': 1.1.1 + '@solana/wallet-standard-features': 1.3.0 + '@solana/wallet-standard-util': 1.1.2 + '@solana/web3.js': 1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10) + '@wallet-standard/app': 1.1.0 + '@wallet-standard/base': 1.1.0 + '@wallet-standard/features': 1.1.0 + '@wallet-standard/wallet': 1.1.0 + bs58: 6.0.0 + + '@solana/wallet-standard-wallet-adapter-react@1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0)(react@18.3.1)': + dependencies: + '@solana/wallet-adapter-base': 0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)) + '@solana/wallet-standard-wallet-adapter-base': 1.1.4(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0) + '@wallet-standard/app': 1.1.0 + '@wallet-standard/base': 1.1.0 + react: 18.3.1 + transitivePeerDependencies: + - '@solana/web3.js' + - bs58 + + '@solana/wallet-standard-wallet-adapter-react@1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(react@18.3.1)': + dependencies: + '@solana/wallet-adapter-base': 0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)) + '@solana/wallet-standard-wallet-adapter-base': 1.1.4(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0) + '@wallet-standard/app': 1.1.0 + '@wallet-standard/base': 1.1.0 + react: 18.3.1 + transitivePeerDependencies: + - '@solana/web3.js' + - bs58 + + '@solana/wallet-standard-wallet-adapter@1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0)(react@18.3.1)': + dependencies: + '@solana/wallet-standard-wallet-adapter-base': 1.1.4(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0) + '@solana/wallet-standard-wallet-adapter-react': 1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0)(react@18.3.1) + transitivePeerDependencies: + - '@solana/wallet-adapter-base' + - '@solana/web3.js' + - bs58 + - react + + '@solana/wallet-standard-wallet-adapter@1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(react@18.3.1)': + dependencies: + '@solana/wallet-standard-wallet-adapter-base': 1.1.4(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0) + '@solana/wallet-standard-wallet-adapter-react': 1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(react@18.3.1) + transitivePeerDependencies: + - '@solana/wallet-adapter-base' + - '@solana/web3.js' + - bs58 + - react + + '@solana/wallet-standard@1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0)(react@18.3.1)': + dependencies: + '@solana/wallet-standard-core': 1.1.2 + '@solana/wallet-standard-wallet-adapter': 1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@5.0.0)(react@18.3.1) + transitivePeerDependencies: + - '@solana/wallet-adapter-base' + - '@solana/web3.js' + - bs58 + - react + + '@solana/wallet-standard@1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(react@18.3.1)': + dependencies: + '@solana/wallet-standard-core': 1.1.2 + '@solana/wallet-standard-wallet-adapter': 1.1.4(@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)))(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10))(bs58@6.0.0)(react@18.3.1) + transitivePeerDependencies: + - '@solana/wallet-adapter-base' + - '@solana/web3.js' + - bs58 + - react + + '@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)': + dependencies: + '@babel/runtime': 7.28.4 + '@noble/curves': 1.9.7 + '@noble/hashes': 1.8.0 + '@solana/buffer-layout': 4.0.1 + '@solana/codecs-numbers': 2.3.0(typescript@5.8.3) + agentkeepalive: 4.6.0 + bn.js: 5.2.2 + borsh: 0.7.0 + bs58: 4.0.1 + buffer: 6.0.3 + fast-stable-stringify: 1.0.0 + jayson: 4.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + node-fetch: 2.7.0 + rpc-websockets: 9.3.1 + superstruct: 2.0.2 + transitivePeerDependencies: + - bufferutil + - encoding + - typescript + - utf-8-validate + '@speed-highlight/core@1.2.12': {} '@stablelib/base64@1.0.1': {} @@ -19865,16 +20906,27 @@ snapshots: '@types/uuid@10.0.0': {} + '@types/uuid@8.3.4': {} + '@types/webextension-polyfill@0.12.4': {} '@types/webpack-env@1.18.8': {} + '@types/ws@7.4.7': + dependencies: + '@types/node': 22.19.0 + '@types/ws@8.18.1': dependencies: '@types/node': 22.19.0 '@types/yargs-parser@21.0.3': {} + '@types/yargs@15.0.20': + dependencies: + '@types/yargs-parser': 21.0.3 + optional: true + '@types/yargs@17.0.34': dependencies: '@types/yargs-parser': 21.0.3 @@ -20308,7 +21360,7 @@ snapshots: vite: 7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1) vue: 3.5.24(typescript@5.8.3) - '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))': + '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@27.0.0(bufferutil@4.0.9)(postcss@8.5.6)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 1.0.2 @@ -20323,7 +21375,7 @@ snapshots: std-env: 3.10.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1) + vitest: 3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@27.0.0(bufferutil@4.0.9)(postcss@8.5.6)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1) transitivePeerDependencies: - supports-color @@ -20573,6 +21625,33 @@ snapshots: js-beautify: 1.15.4 vue-component-type-helpers: 2.2.12 + '@wallet-standard/app@1.1.0': + dependencies: + '@wallet-standard/base': 1.1.0 + + '@wallet-standard/base@1.1.0': {} + + '@wallet-standard/core@1.1.1': + dependencies: + '@wallet-standard/app': 1.1.0 + '@wallet-standard/base': 1.1.0 + '@wallet-standard/errors': 0.1.1 + '@wallet-standard/features': 1.1.0 + '@wallet-standard/wallet': 1.1.0 + + '@wallet-standard/errors@0.1.1': + dependencies: + chalk: 5.6.2 + commander: 13.1.0 + + '@wallet-standard/features@1.1.0': + dependencies: + '@wallet-standard/base': 1.1.0 + + '@wallet-standard/wallet@1.1.0': + dependencies: + '@wallet-standard/base': 1.1.0 + '@webassemblyjs/ast@1.14.1': dependencies: '@webassemblyjs/helper-numbers': 1.13.2 @@ -20735,6 +21814,10 @@ snapshots: agent-base@7.1.4: {} + agentkeepalive@4.6.0: + dependencies: + humanize-ms: 1.2.1 + aggregate-error@3.1.0: dependencies: clean-stack: 2.2.0 @@ -20808,6 +21891,13 @@ snapshots: dependencies: environment: 1.1.0 + ansi-fragments@0.2.1: + dependencies: + colorette: 1.4.0 + slice-ansi: 2.1.0 + strip-ansi: 5.2.0 + optional: true + ansi-html-community@0.0.8: {} ansi-regex@4.1.1: {} @@ -20839,6 +21929,9 @@ snapshots: apache-md5@1.1.8: {} + appdirsjs@1.2.7: + optional: true + arch@2.2.0: {} archiver-utils@5.0.2: @@ -21003,6 +22096,9 @@ snapshots: '@babel/parser': 7.28.5 ast-kit: 2.2.0 + astral-regex@1.0.0: + optional: true + astral-regex@2.0.0: {} astro@5.15.4(@types/node@22.19.0)(db0@0.3.4)(idb-keyval@6.2.1)(ioredis@5.8.2)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(yaml@2.8.1): @@ -21297,7 +22393,7 @@ snapshots: - '@babel/preset-env' - supports-color - babel-preset-expo@54.0.7(@babel/core@7.28.5)(@babel/runtime@7.28.4)(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-refresh@0.14.2): + babel-preset-expo@54.0.7(@babel/core@7.28.5)(@babel/runtime@7.28.4)(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-refresh@0.14.2): dependencies: '@babel/helper-module-imports': 7.27.1 '@babel/plugin-proposal-decorators': 7.28.0(@babel/core@7.28.5) @@ -21324,7 +22420,7 @@ snapshots: resolve-from: 5.0.0 optionalDependencies: '@babel/runtime': 7.28.4 - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) transitivePeerDependencies: - '@babel/core' - supports-color @@ -21343,6 +22439,14 @@ snapshots: base-64@1.0.0: {} + base-x@3.0.11: + dependencies: + safe-buffer: 5.2.1 + + base-x@4.0.1: {} + + base-x@5.0.1: {} + base64-js@1.5.1: {} base64id@2.0.0: {} @@ -21371,6 +22475,11 @@ snapshots: dependencies: is-windows: 1.0.2 + bidi-js@1.0.3: + dependencies: + require-from-string: 2.0.2 + optional: true + big-integer@1.6.52: {} binary-extensions@2.3.0: {} @@ -21381,10 +22490,19 @@ snapshots: birpc@2.7.0: {} + bl@4.1.0: + dependencies: + buffer: 5.7.1 + inherits: 2.0.4 + readable-stream: 3.6.2 + optional: true + blob-util@2.0.2: {} bluebird@3.7.2: {} + bn.js@5.2.2: {} + body-parser@1.20.3: dependencies: bytes: 3.1.2 @@ -21423,6 +22541,12 @@ snapshots: boolbase@1.0.0: {} + borsh@0.7.0: + dependencies: + bn.js: 5.2.2 + bs58: 4.0.1 + text-encoding-utf-8: 1.0.2 + boxen@8.0.1: dependencies: ansi-align: 3.0.1 @@ -21487,6 +22611,18 @@ snapshots: dependencies: fast-json-stable-stringify: 2.1.0 + bs58@4.0.1: + dependencies: + base-x: 3.0.11 + + bs58@5.0.0: + dependencies: + base-x: 4.0.1 + + bs58@6.0.0: + dependencies: + base-x: 5.0.1 + bser@2.1.1: dependencies: node-int64: 0.4.0 @@ -21518,6 +22654,11 @@ snapshots: base64-js: 1.5.1 ieee754: 1.2.1 + bufferutil@4.0.9: + dependencies: + node-gyp-build: 4.8.4 + optional: true + builtins@5.1.0: dependencies: semver: 7.7.3 @@ -21622,6 +22763,19 @@ snapshots: call-bind-apply-helpers: 1.0.2 get-intrinsic: 1.3.0 + caller-callsite@2.0.0: + dependencies: + callsites: 2.0.0 + optional: true + + caller-path@2.0.0: + dependencies: + caller-callsite: 2.0.0 + optional: true + + callsites@2.0.0: + optional: true + callsites@3.1.0: {} camelcase-keys@8.0.2: @@ -21839,6 +22993,12 @@ snapshots: is-wsl: 3.1.0 is64bit: 2.0.0 + cliui@6.0.0: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 6.2.0 + cliui@7.0.4: dependencies: string-width: 4.2.3 @@ -21897,6 +23057,9 @@ snapshots: colord@2.9.3: {} + colorette@1.4.0: + optional: true + colorette@2.0.20: {} colors@1.4.0: @@ -21908,6 +23071,9 @@ snapshots: comma-separated-tokens@2.0.3: {} + command-exists@1.2.9: + optional: true + commander@10.0.1: {} commander@11.0.0: {} @@ -21916,6 +23082,10 @@ snapshots: commander@12.1.0: {} + commander@13.1.0: {} + + commander@14.0.1: {} + commander@14.0.2: {} commander@2.20.3: {} @@ -21928,6 +23098,9 @@ snapshots: commander@7.2.0: {} + commander@9.5.0: + optional: true + comment-parser@1.4.1: {} common-ancestor-path@1.0.1: {} @@ -22106,6 +23279,14 @@ snapshots: jiti: 2.6.1 typescript: 5.8.3 + cosmiconfig@5.2.1: + dependencies: + import-fresh: 2.0.0 + is-directory: 0.3.1 + js-yaml: 3.14.1 + parse-json: 4.0.0 + optional: true + cosmiconfig@7.1.0: dependencies: '@types/parse-json': 4.0.2 @@ -22327,6 +23508,15 @@ snapshots: '@asamuzakjp/css-color': 3.2.0 rrweb-cssom: 0.8.0 + cssstyle@5.3.4(postcss@8.5.6): + dependencies: + '@asamuzakjp/css-color': 4.1.0 + '@csstools/css-syntax-patches-for-csstree': 1.0.14(postcss@8.5.6) + css-tree: 3.1.0 + transitivePeerDependencies: + - postcss + optional: true + csstype@3.1.3: {} cypress@14.5.4: @@ -22395,6 +23585,12 @@ snapshots: whatwg-mimetype: 4.0.0 whatwg-url: 14.2.0 + data-urls@6.0.0: + dependencies: + whatwg-mimetype: 4.0.0 + whatwg-url: 15.1.0 + optional: true + data-view-buffer@1.0.2: dependencies: call-bound: 1.0.4 @@ -22552,6 +23748,8 @@ snapshots: rimraf: 3.0.2 slash: 3.0.0 + delay@5.0.0: {} + delayed-stream@1.0.0: {} denque@2.1.0: {} @@ -22607,6 +23805,8 @@ snapshots: diff@8.0.2: {} + dijkstrajs@1.0.3: {} + dir-glob@3.0.1: dependencies: path-type: 4.0.0 @@ -22764,7 +23964,7 @@ snapshots: engine.io-parser@5.2.3: {} - engine.io@6.6.4: + engine.io@6.6.4(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: '@types/cors': 2.8.19 '@types/node': 22.19.0 @@ -22774,7 +23974,7 @@ snapshots: cors: 2.8.5 debug: 4.3.7 engine.io-parser: 5.2.3 - ws: 8.17.1 + ws: 8.17.1(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - supports-color @@ -22819,6 +24019,12 @@ snapshots: dependencies: stackframe: 1.3.4 + errorhandler@1.5.1: + dependencies: + accepts: 1.3.8 + escape-html: 1.0.3 + optional: true + errx@0.1.0: {} es-abstract@1.24.0: @@ -22936,6 +24142,12 @@ snapshots: is-date-object: 1.1.0 is-symbol: 1.1.1 + es6-promise@4.2.8: {} + + es6-promisify@5.0.0: + dependencies: + es6-promise: 4.2.8 + esbuild-plugin-file-path-extensions@2.1.4: {} esbuild@0.25.12: @@ -23384,130 +24596,130 @@ snapshots: jest-message-util: 29.7.0 jest-util: 29.7.0 - expo-apple-authentication@7.2.4(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)): + expo-apple-authentication@7.2.4(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) - expo-application@5.9.1(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)): + expo-application@5.9.1(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) - expo-asset@11.0.5(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1): + expo-asset@11.0.5(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1): dependencies: '@expo/image-utils': 0.6.5 - expo: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) - expo-constants: 17.0.8(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)) + expo: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) + expo-constants: 17.0.8(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)) invariant: 2.2.4 md5-file: 3.2.3 react: 18.3.1 - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) transitivePeerDependencies: - supports-color - expo-asset@12.0.9(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1): + expo-asset@12.0.9(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1): dependencies: '@expo/image-utils': 0.8.7 - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) - expo-constants: 18.0.10(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) + expo-constants: 18.0.10(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)) react: 18.3.1 - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) transitivePeerDependencies: - supports-color - expo-auth-session@5.5.2(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)): + expo-auth-session@5.5.2(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: - expo-application: 5.9.1(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) - expo-constants: 16.0.2(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) - expo-crypto: 13.0.2(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) - expo-linking: 6.3.1(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) - expo-web-browser: 13.0.3(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) + expo-application: 5.9.1(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) + expo-constants: 16.0.2(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) + expo-crypto: 13.0.2(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) + expo-linking: 6.3.1(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) + expo-web-browser: 13.0.3(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) invariant: 2.2.4 transitivePeerDependencies: - expo - supports-color - expo-constants@16.0.2(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)): + expo-constants@16.0.2(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: '@expo/config': 9.0.4 '@expo/env': 0.3.0 - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) transitivePeerDependencies: - supports-color - expo-constants@17.0.8(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)): + expo-constants@17.0.8(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: '@expo/config': 10.0.11 '@expo/env': 0.4.2 - expo: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + expo: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) transitivePeerDependencies: - supports-color - expo-constants@18.0.10(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)): + expo-constants@18.0.10(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: '@expo/config': 12.0.10 '@expo/env': 2.0.7 - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) transitivePeerDependencies: - supports-color - expo-crypto@13.0.2(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)): + expo-crypto@13.0.2(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: base64-js: 1.5.1 - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) - expo-crypto@15.0.7(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)): + expo-crypto@15.0.7(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: base64-js: 1.5.1 - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) - expo-file-system@18.0.12(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)): + expo-file-system@18.0.12(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: - expo: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + expo: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) web-streams-polyfill: 3.3.3 - expo-file-system@19.0.17(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)): + expo-file-system@19.0.17(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) - expo-font@13.0.4(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react@18.3.1): + expo-font@13.0.4(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1): dependencies: - expo: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) fontfaceobserver: 2.3.0 react: 18.3.1 - expo-font@14.0.9(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1): + expo-font@14.0.9(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1): dependencies: - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) fontfaceobserver: 2.3.0 react: 18.3.1 - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) - expo-keep-awake@14.0.3(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react@18.3.1): + expo-keep-awake@14.0.3(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1): dependencies: - expo: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) react: 18.3.1 - expo-keep-awake@15.0.7(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react@18.3.1): + expo-keep-awake@15.0.7(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1): dependencies: - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) react: 18.3.1 - expo-linking@6.3.1(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)): + expo-linking@6.3.1(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: - expo-constants: 16.0.2(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) + expo-constants: 16.0.2(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)) invariant: 2.2.4 transitivePeerDependencies: - expo - supports-color - expo-local-authentication@13.8.0(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)): + expo-local-authentication@13.8.0(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) invariant: 2.2.4 expo-modules-autolinking@2.0.8: @@ -23533,48 +24745,48 @@ snapshots: dependencies: invariant: 2.2.4 - expo-modules-core@3.0.25(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1): + expo-modules-core@3.0.25(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1): dependencies: invariant: 2.2.4 react: 18.3.1 - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) - expo-secure-store@12.8.1(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)): + expo-secure-store@12.8.1(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) expo-server@1.0.4: {} - expo-web-browser@12.8.2(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)): + expo-web-browser@12.8.2(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: compare-urls: 2.0.0 - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) url: 0.11.4 - expo-web-browser@13.0.3(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)): + expo-web-browser@13.0.3(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: - expo: 54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo: 54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10) - expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1): + expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10): dependencies: '@babel/runtime': 7.28.4 - '@expo/cli': 0.22.26(graphql@16.12.0) + '@expo/cli': 0.22.26(bufferutil@4.0.9)(graphql@16.12.0)(utf-8-validate@5.0.10) '@expo/config': 10.0.11 '@expo/config-plugins': 9.0.17 '@expo/fingerprint': 0.11.11 '@expo/metro-config': 0.19.12 '@expo/vector-icons': 14.0.4 babel-preset-expo: 12.0.11(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5)) - expo-asset: 11.0.5(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) - expo-constants: 17.0.8(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)) - expo-file-system: 18.0.12(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)) - expo-font: 13.0.4(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react@18.3.1) - expo-keep-awake: 14.0.3(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react@18.3.1) + expo-asset: 11.0.5(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) + expo-constants: 17.0.8(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)) + expo-file-system: 18.0.12(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)) + expo-font: 13.0.4(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) + expo-keep-awake: 14.0.3(expo@52.0.47(@babel/core@7.28.5)(@babel/preset-env@7.28.5(@babel/core@7.28.5))(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) expo-modules-autolinking: 2.0.8 expo-modules-core: 2.2.3 fbemitter: 3.0.0 react: 18.3.1 - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) web-streams-polyfill: 3.3.3 whatwg-url-without-unicode: 8.0.0-3 transitivePeerDependencies: @@ -23588,29 +24800,29 @@ snapshots: - supports-color - utf-8-validate - expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1): + expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10): dependencies: '@babel/runtime': 7.28.4 - '@expo/cli': 54.0.16(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)) + '@expo/cli': 54.0.16(bufferutil@4.0.9)(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10) '@expo/config': 12.0.10 '@expo/config-plugins': 54.0.2 - '@expo/devtools': 0.1.7(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@expo/devtools': 0.1.7(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) '@expo/fingerprint': 0.15.3 - '@expo/metro': 54.1.0 - '@expo/metro-config': 54.0.9(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)) - '@expo/vector-icons': 15.0.3(expo-font@14.0.9(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@expo/metro': 54.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@expo/metro-config': 54.0.9(bufferutil@4.0.9)(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10) + '@expo/vector-icons': 15.0.3(expo-font@14.0.9(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) '@ungap/structured-clone': 1.3.0 - babel-preset-expo: 54.0.7(@babel/core@7.28.5)(@babel/runtime@7.28.4)(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-refresh@0.14.2) - expo-asset: 12.0.9(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) - expo-constants: 18.0.10(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)) - expo-file-system: 19.0.17(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)) - expo-font: 14.0.9(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) - expo-keep-awake: 15.0.7(expo@54.0.23(@babel/core@7.28.5)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react@18.3.1) + babel-preset-expo: 54.0.7(@babel/core@7.28.5)(@babel/runtime@7.28.4)(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-refresh@0.14.2) + expo-asset: 12.0.9(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) + expo-constants: 18.0.10(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)) + expo-file-system: 19.0.17(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)) + expo-font: 14.0.9(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) + expo-keep-awake: 15.0.7(expo@54.0.23(@babel/core@7.28.5)(bufferutil@4.0.9)(graphql@16.12.0)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) expo-modules-autolinking: 3.0.21 - expo-modules-core: 3.0.25(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + expo-modules-core: 3.0.25(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) pretty-format: 29.7.0 react: 18.3.1 - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) react-refresh: 0.14.2 whatwg-url-without-unicode: 8.0.0-3 transitivePeerDependencies: @@ -23720,6 +24932,8 @@ snapshots: extsprintf@1.3.0: {} + eyes@0.1.8: {} + fast-decode-uri-component@1.0.1: {} fast-deep-equal@3.1.3: {} @@ -23759,10 +24973,19 @@ snapshots: fast-sha256@1.3.0: {} + fast-stable-stringify@1.0.0: {} + fast-uri@3.1.0: {} + fast-xml-parser@4.5.3: + dependencies: + strnum: 1.1.2 + optional: true + fastest-levenshtein@1.0.16: {} + fastestsmallesttextencoderdecoder@1.0.22: {} + fastify-plugin@5.1.0: {} fastify@5.6.1: @@ -24486,6 +25709,11 @@ snapshots: dependencies: hermes-estree: 0.32.0 + hermes-profile-transformer@0.0.6: + dependencies: + source-map: 0.7.6 + optional: true + highlight.js@10.7.3: {} hoist-non-react-statics@3.3.2: @@ -24657,6 +25885,10 @@ snapshots: human-signals@8.0.1: {} + humanize-ms@1.2.1: + dependencies: + ms: 2.1.3 + husky@8.0.3: {} hyperdyperid@1.2.0: {} @@ -24691,6 +25923,12 @@ snapshots: dependencies: queue: 6.0.2 + import-fresh@2.0.0: + dependencies: + caller-path: 2.0.0 + resolve-from: 3.0.0 + optional: true + import-fresh@3.3.1: dependencies: parent-module: 1.0.1 @@ -24840,6 +26078,9 @@ snapshots: is-deflate@1.0.0: {} + is-directory@0.3.1: + optional: true + is-docker@2.2.1: {} is-docker@3.0.0: {} @@ -24852,6 +26093,9 @@ snapshots: dependencies: call-bound: 1.0.4 + is-fullwidth-code-point@2.0.0: + optional: true + is-fullwidth-code-point@3.0.0: {} is-fullwidth-code-point@4.0.0: {} @@ -24886,6 +26130,9 @@ snapshots: global-directory: 4.0.1 is-path-inside: 4.0.0 + is-interactive@1.0.0: + optional: true + is-map@2.0.3: {} is-module@1.0.0: {} @@ -24913,6 +26160,9 @@ snapshots: is-plain-obj@1.1.0: {} + is-plain-obj@2.1.0: + optional: true + is-plain-obj@3.0.0: {} is-plain-obj@4.1.0: {} @@ -25000,6 +26250,9 @@ snapshots: is-windows@1.0.2: {} + is-wsl@1.1.0: + optional: true + is-wsl@2.2.0: dependencies: is-docker: 2.2.1 @@ -25024,9 +26277,13 @@ snapshots: isobject@3.0.1: {} - isows@1.0.7(ws@8.18.3): + isomorphic-ws@4.0.1(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)): dependencies: - ws: 8.18.3 + ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) + + isows@1.0.7(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)): + dependencies: + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) isstream@0.1.2: {} @@ -25104,6 +26361,24 @@ snapshots: filelist: 1.0.4 picocolors: 1.1.1 + jayson@4.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10): + dependencies: + '@types/connect': 3.4.38 + '@types/node': 12.20.55 + '@types/ws': 7.4.7 + commander: 2.20.3 + delay: 5.0.0 + es6-promisify: 5.0.0 + eyes: 0.1.8 + isomorphic-ws: 4.0.1(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + json-stringify-safe: 5.0.1 + stream-json: 1.9.1 + uuid: 8.3.2 + ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - utf-8-validate + jest-changed-files@29.7.0: dependencies: execa: 5.1.1 @@ -25209,7 +26484,7 @@ snapshots: jest-util: 29.7.0 pretty-format: 29.7.0 - jest-environment-jsdom@29.7.0: + jest-environment-jsdom@29.7.0(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 @@ -25218,7 +26493,7 @@ snapshots: '@types/node': 22.19.0 jest-mock: 29.7.0 jest-util: 29.7.0 - jsdom: 20.0.3 + jsdom: 20.0.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - supports-color @@ -25442,10 +26717,21 @@ snapshots: jiti@2.6.1: {} + joi@17.13.3: + dependencies: + '@hapi/hoek': 9.3.0 + '@hapi/topo': 5.1.0 + '@sideway/address': 4.1.5 + '@sideway/formula': 3.0.1 + '@sideway/pinpoint': 2.0.0 + optional: true + join-component@1.1.0: {} joycon@3.1.1: {} + js-base64@3.7.8: {} + js-beautify@1.15.4: dependencies: config-chain: 1.1.13 @@ -25529,7 +26815,7 @@ snapshots: jsdoc-type-pratt-parser@4.1.0: {} - jsdom@20.0.3: + jsdom@20.0.3(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: abab: 2.0.6 acorn: 8.15.0 @@ -25555,14 +26841,14 @@ snapshots: whatwg-encoding: 2.0.0 whatwg-mimetype: 3.0.0 whatwg-url: 11.0.0 - ws: 8.18.3 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) xml-name-validator: 4.0.0 transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - jsdom@26.1.0: + jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: cssstyle: 4.6.0 data-urls: 5.0.0 @@ -25582,12 +26868,41 @@ snapshots: whatwg-encoding: 3.1.1 whatwg-mimetype: 4.0.0 whatwg-url: 14.2.0 - ws: 8.18.3 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + xml-name-validator: 5.0.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + jsdom@27.0.0(bufferutil@4.0.9)(postcss@8.5.6)(utf-8-validate@5.0.10): + dependencies: + '@asamuzakjp/dom-selector': 6.7.6 + cssstyle: 5.3.4(postcss@8.5.6) + data-urls: 6.0.0 + decimal.js: 10.6.0 + html-encoding-sniffer: 4.0.0 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.6 + is-potential-custom-element-name: 1.0.1 + parse5: 7.3.0 + rrweb-cssom: 0.8.0 + saxes: 6.0.0 + symbol-tree: 3.2.4 + tough-cookie: 6.0.0 + w3c-xmlserializer: 5.0.0 + webidl-conversions: 8.0.0 + whatwg-encoding: 3.1.1 + whatwg-mimetype: 4.0.0 + whatwg-url: 15.1.0 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) xml-name-validator: 5.0.0 transitivePeerDependencies: - bufferutil + - postcss - supports-color - utf-8-validate + optional: true jsesc@3.1.0: {} @@ -26025,6 +27340,13 @@ snapshots: strip-ansi: 7.1.2 wrap-ansi: 8.1.0 + logkitty@0.7.1: + dependencies: + ansi-fragments: 0.2.1 + dayjs: 1.11.19 + yargs: 15.4.1 + optional: true + longest-streak@3.1.0: {} loose-envify@1.4.0: @@ -26049,6 +27371,9 @@ snapshots: lru-cache@11.2.2: {} + lru-cache@11.2.4: + optional: true + lru-cache@5.1.1: dependencies: yallist: 3.1.1 @@ -26322,6 +27647,11 @@ snapshots: merge-descriptors@2.0.0: {} + merge-options@3.0.4: + dependencies: + is-plain-obj: 2.1.0 + optional: true + merge-stream@2.0.0: {} merge2@1.4.1: {} @@ -26372,12 +27702,12 @@ snapshots: transitivePeerDependencies: - supports-color - metro-config@0.83.2: + metro-config@0.83.2(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: connect: 3.7.0 flow-enums-runtime: 0.0.6 jest-validate: 29.7.0 - metro: 0.83.2 + metro: 0.83.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) metro-cache: 0.83.2 metro-core: 0.83.2 metro-runtime: 0.83.2 @@ -26387,12 +27717,12 @@ snapshots: - supports-color - utf-8-validate - metro-config@0.83.3: + metro-config@0.83.3(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: connect: 3.7.0 flow-enums-runtime: 0.0.6 jest-validate: 29.7.0 - metro: 0.83.3 + metro: 0.83.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) metro-cache: 0.83.3 metro-core: 0.83.3 metro-runtime: 0.83.3 @@ -26544,14 +27874,14 @@ snapshots: transitivePeerDependencies: - supports-color - metro-transform-worker@0.83.2: + metro-transform-worker@0.83.2(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: '@babel/core': 7.28.5 '@babel/generator': 7.28.5 '@babel/parser': 7.28.5 '@babel/types': 7.28.5 flow-enums-runtime: 0.0.6 - metro: 0.83.2 + metro: 0.83.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) metro-babel-transformer: 0.83.2 metro-cache: 0.83.2 metro-cache-key: 0.83.2 @@ -26564,14 +27894,14 @@ snapshots: - supports-color - utf-8-validate - metro-transform-worker@0.83.3: + metro-transform-worker@0.83.3(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: '@babel/core': 7.28.5 '@babel/generator': 7.28.5 '@babel/parser': 7.28.5 '@babel/types': 7.28.5 flow-enums-runtime: 0.0.6 - metro: 0.83.3 + metro: 0.83.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) metro-babel-transformer: 0.83.3 metro-cache: 0.83.3 metro-cache-key: 0.83.3 @@ -26584,7 +27914,7 @@ snapshots: - supports-color - utf-8-validate - metro@0.83.2: + metro@0.83.2(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: '@babel/code-frame': 7.27.1 '@babel/core': 7.28.5 @@ -26610,7 +27940,7 @@ snapshots: metro-babel-transformer: 0.83.2 metro-cache: 0.83.2 metro-cache-key: 0.83.2 - metro-config: 0.83.2 + metro-config: 0.83.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) metro-core: 0.83.2 metro-file-map: 0.83.2 metro-resolver: 0.83.2 @@ -26618,20 +27948,20 @@ snapshots: metro-source-map: 0.83.2 metro-symbolicate: 0.83.2 metro-transform-plugins: 0.83.2 - metro-transform-worker: 0.83.2 + metro-transform-worker: 0.83.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) mime-types: 2.1.35 nullthrows: 1.1.1 serialize-error: 2.1.0 source-map: 0.5.7 throat: 5.0.0 - ws: 7.5.10 + ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) yargs: 17.7.2 transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - metro@0.83.3: + metro@0.83.3(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: '@babel/code-frame': 7.27.1 '@babel/core': 7.28.5 @@ -26657,7 +27987,7 @@ snapshots: metro-babel-transformer: 0.83.3 metro-cache: 0.83.3 metro-cache-key: 0.83.3 - metro-config: 0.83.3 + metro-config: 0.83.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) metro-core: 0.83.3 metro-file-map: 0.83.3 metro-resolver: 0.83.3 @@ -26665,13 +27995,13 @@ snapshots: metro-source-map: 0.83.3 metro-symbolicate: 0.83.3 metro-transform-plugins: 0.83.3 - metro-transform-worker: 0.83.3 + metro-transform-worker: 0.83.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) mime-types: 2.1.35 nullthrows: 1.1.1 serialize-error: 2.1.0 source-map: 0.5.7 throat: 5.0.0 - ws: 7.5.10 + ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) yargs: 17.7.2 transitivePeerDependencies: - bufferutil @@ -27210,6 +28540,9 @@ snapshots: lower-case: 2.0.2 tslib: 2.8.1 + nocache@3.0.4: + optional: true + node-addon-api@7.1.1: {} node-dir@0.1.17: @@ -27243,6 +28576,9 @@ snapshots: node-releases@2.0.27: {} + node-stream-zip@1.15.0: + optional: true + nopt@7.2.1: dependencies: abbrev: 2.0.0 @@ -27350,16 +28686,16 @@ snapshots: nullthrows@1.1.1: {} - nuxt@4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1): + nuxt@4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(bufferutil@4.0.9)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(utf-8-validate@5.0.10)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1): dependencies: '@dxup/nuxt': 0.2.1(magicast@0.5.1) '@nuxt/cli': 3.30.0(magicast@0.5.1) - '@nuxt/devtools': 3.1.0(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.24(typescript@5.8.3)) + '@nuxt/devtools': 3.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.24(typescript@5.8.3)) '@nuxt/kit': 4.2.1(magicast@0.5.1) - '@nuxt/nitro-server': 4.2.1(db0@0.3.4)(idb-keyval@6.2.1)(ioredis@5.8.2)(magicast@0.5.1)(nuxt@4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1))(rolldown@1.0.0-beta.47)(typescript@5.8.3) + '@nuxt/nitro-server': 4.2.1(db0@0.3.4)(idb-keyval@6.2.1)(ioredis@5.8.2)(magicast@0.5.1)(nuxt@4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(bufferutil@4.0.9)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(utf-8-validate@5.0.10)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1))(rolldown@1.0.0-beta.47)(typescript@5.8.3) '@nuxt/schema': 4.2.1 '@nuxt/telemetry': 2.6.6(magicast@0.5.1) - '@nuxt/vite-builder': 4.2.1(@types/node@22.19.0)(eslint@9.31.0(jiti@2.6.1))(lightningcss@1.30.2)(magicast@0.5.1)(nuxt@4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1))(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vue-tsc@3.1.4(typescript@5.8.3))(vue@3.5.24(typescript@5.8.3))(yaml@2.8.1) + '@nuxt/vite-builder': 4.2.1(@types/node@22.19.0)(eslint@9.31.0(jiti@2.6.1))(lightningcss@1.30.2)(magicast@0.5.1)(nuxt@4.2.1(@parcel/watcher@2.5.1)(@types/node@22.19.0)(@vue/compiler-sfc@3.5.24)(bufferutil@4.0.9)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(idb-keyval@6.2.1)(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.1)(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(utf-8-validate@5.0.10)(vite@7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1))(vue-tsc@3.1.4(typescript@5.8.3))(yaml@2.8.1))(optionator@0.9.4)(rolldown@1.0.0-beta.47)(rollup@4.53.1)(terser@5.44.1)(tsx@4.20.6)(typescript@5.8.3)(vue-tsc@3.1.4(typescript@5.8.3))(vue@3.5.24(typescript@5.8.3))(yaml@2.8.1) '@unhead/vue': 2.0.19(vue@3.5.24(typescript@5.8.3)) '@vue/shared': 3.5.24 c12: 3.3.1(magicast@0.5.1) @@ -27595,6 +28931,11 @@ snapshots: is-inside-container: 1.0.0 wsl-utils: 0.1.0 + open@6.4.0: + dependencies: + is-wsl: 1.1.0 + optional: true + open@7.4.2: dependencies: is-docker: 2.2.1 @@ -27626,6 +28967,19 @@ snapshots: strip-ansi: 5.2.0 wcwidth: 1.0.1 + ora@5.4.1: + dependencies: + bl: 4.1.0 + chalk: 4.1.2 + cli-cursor: 3.1.0 + cli-spinners: 2.9.2 + is-interactive: 1.0.0 + is-unicode-supported: 0.1.0 + log-symbols: 4.1.0 + strip-ansi: 6.0.1 + wcwidth: 1.0.1 + optional: true + ospath@1.2.2: {} outdent@0.5.0: {} @@ -28063,6 +29417,8 @@ snapshots: pngjs@3.4.0: {} + pngjs@5.0.0: {} + portfinder@1.0.38: dependencies: async: 3.2.6 @@ -28290,6 +29646,14 @@ snapshots: pretty-bytes@7.1.0: {} + pretty-format@26.6.2: + dependencies: + '@jest/types': 26.6.2 + ansi-regex: 5.0.1 + ansi-styles: 4.3.0 + react-is: 17.0.2 + optional: true + pretty-format@27.5.1: dependencies: ansi-regex: 5.0.1 @@ -28401,6 +29765,12 @@ snapshots: dependencies: react: 18.3.1 + qrcode@1.5.4: + dependencies: + dijkstrajs: 1.0.3 + pngjs: 5.0.0 + yargs: 15.4.1 + qs@6.13.0: dependencies: side-channel: 1.1.0 @@ -28463,10 +29833,10 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 - react-devtools-core@6.1.5: + react-devtools-core@6.1.5(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: shell-quote: 1.8.3 - ws: 7.5.10 + ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -28483,21 +29853,21 @@ snapshots: react-is@18.3.1: {} - react-native-url-polyfill@2.0.0(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1)): + react-native-url-polyfill@2.0.0(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10)): dependencies: - react-native: 0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1) + react-native: 0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10) whatwg-url-without-unicode: 8.0.0-3 - react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1): + react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10): dependencies: '@jest/create-cache-key-function': 29.7.0 '@react-native/assets-registry': 0.81.5 '@react-native/codegen': 0.81.5(@babel/core@7.28.5) - '@react-native/community-cli-plugin': 0.81.5 + '@react-native/community-cli-plugin': 0.81.5(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@react-native/gradle-plugin': 0.81.5 '@react-native/js-polyfills': 0.81.5 '@react-native/normalize-colors': 0.81.5 - '@react-native/virtualized-lists': 0.81.5(@types/react@18.3.26)(react-native@0.81.5(@babel/core@7.28.5)(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@react-native/virtualized-lists': 0.81.5(@types/react@18.3.26)(react-native@0.81.5(@babel/core@7.28.5)(@react-native-community/cli@12.3.7(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@types/react@18.3.26)(bufferutil@4.0.9)(react@18.3.1)(utf-8-validate@5.0.10))(react@18.3.1) abort-controller: 3.0.0 anser: 1.4.10 ansi-regex: 5.0.1 @@ -28516,14 +29886,14 @@ snapshots: pretty-format: 29.7.0 promise: 8.3.0 react: 18.3.1 - react-devtools-core: 6.1.5 + react-devtools-core: 6.1.5(bufferutil@4.0.9)(utf-8-validate@5.0.10) react-refresh: 0.14.2 regenerator-runtime: 0.13.11 scheduler: 0.26.0 semver: 7.7.3 stacktrace-parser: 0.1.11 whatwg-fetch: 3.6.20 - ws: 6.2.3 + ws: 6.2.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) yargs: 17.7.2 optionalDependencies: '@types/react': 18.3.26 @@ -28803,6 +30173,8 @@ snapshots: require-from-string@2.0.2: {} + require-main-filename@2.0.0: {} + requireg@0.2.2: dependencies: nested-error-stacks: 2.0.1 @@ -28815,6 +30187,9 @@ snapshots: dependencies: resolve-from: 5.0.0 + resolve-from@3.0.0: + optional: true + resolve-from@4.0.0: {} resolve-from@5.0.0: {} @@ -28999,6 +30374,19 @@ snapshots: transitivePeerDependencies: - supports-color + rpc-websockets@9.3.1: + dependencies: + '@swc/helpers': 0.5.17 + '@types/uuid': 8.3.4 + '@types/ws': 8.18.1 + buffer: 6.0.3 + eventemitter3: 5.0.1 + uuid: 8.3.2 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + optionalDependencies: + bufferutil: 4.0.9 + utf-8-validate: 5.0.10 + rrweb-cssom@0.8.0: {} rslog@1.3.0: {} @@ -29203,6 +30591,8 @@ snapshots: server-only@0.0.1: {} + set-blocking@2.0.0: {} + set-cookie-parser@2.7.2: {} set-function-length@1.2.2: @@ -29402,6 +30792,13 @@ snapshots: slash@5.1.0: {} + slice-ansi@2.1.0: + dependencies: + ansi-styles: 3.2.1 + astral-regex: 1.0.0 + is-fullwidth-code-point: 2.0.0 + optional: true + slice-ansi@3.0.0: dependencies: ansi-styles: 4.3.0 @@ -29436,10 +30833,10 @@ snapshots: map-obj: 5.0.2 type-fest: 4.41.0 - socket.io-adapter@2.5.5: + socket.io-adapter@2.5.5(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: debug: 4.3.7 - ws: 8.17.1 + ws: 8.17.1(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - supports-color @@ -29452,14 +30849,14 @@ snapshots: transitivePeerDependencies: - supports-color - socket.io@4.8.1: + socket.io@4.8.1(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: accepts: 1.3.8 base64id: 2.0.0 cors: 2.8.5 debug: 4.3.7 - engine.io: 6.6.4 - socket.io-adapter: 2.5.5 + engine.io: 6.6.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) + socket.io-adapter: 2.5.5(bufferutil@4.0.9)(utf-8-validate@5.0.10) socket.io-parser: 4.2.4 transitivePeerDependencies: - bufferutil @@ -29635,6 +31032,12 @@ snapshots: stream-buffers@2.2.0: {} + stream-chain@2.2.5: {} + + stream-json@1.9.1: + dependencies: + stream-chain: 2.2.5 + stream-shift@1.0.3: {} streamsearch@1.1.0: {} @@ -29787,6 +31190,9 @@ snapshots: dependencies: js-tokens: 9.0.1 + strnum@1.1.2: + optional: true + structured-clone-es@1.0.0: {} structured-headers@0.4.1: {} @@ -29827,6 +31233,9 @@ snapshots: pirates: 4.0.7 ts-interface-checker: 0.1.13 + sudo-prompt@9.2.1: + optional: true + suf-log@2.5.3: dependencies: s.color: 0.0.15 @@ -29850,6 +31259,8 @@ snapshots: dependencies: copy-anything: 4.0.5 + superstruct@2.0.2: {} + supertest@6.3.4: dependencies: methods: 1.1.2 @@ -30022,6 +31433,8 @@ snapshots: transitivePeerDependencies: - react-native-b4a + text-encoding-utf-8@1.0.2: {} + text-extensions@2.4.0: {} thenify-all@1.6.0: @@ -30135,6 +31548,11 @@ snapshots: dependencies: punycode: 2.3.1 + tr46@6.0.0: + dependencies: + punycode: 2.3.1 + optional: true + tree-dump@1.1.0(tslib@2.8.1): dependencies: tslib: 2.8.1 @@ -30757,6 +32175,11 @@ snapshots: dependencies: react: 18.3.1 + utf-8-validate@5.0.10: + dependencies: + node-gyp-build: 4.8.4 + optional: true + util-deprecate@1.0.2: {} utils-merge@1.0.1: {} @@ -30873,16 +32296,16 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - viem@2.38.6(typescript@5.8.3)(zod@3.25.76): + viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.25.76): dependencies: '@noble/curves': 1.9.1 '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 abitype: 1.1.0(typescript@5.8.3)(zod@3.25.76) - isows: 1.0.7(ws@8.18.3) + isows: 1.0.7(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ox: 0.9.6(typescript@5.8.3)(zod@3.25.76) - ws: 8.18.3 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) optionalDependencies: typescript: 5.8.3 transitivePeerDependencies: @@ -31028,19 +32451,19 @@ snapshots: optionalDependencies: vite: 7.2.2(@types/node@22.19.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1) - vitest-environment-miniflare@2.14.4(vitest@3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1)): + vitest-environment-miniflare@2.14.4(bufferutil@4.0.9)(utf-8-validate@5.0.10)(vitest@3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@27.0.0(bufferutil@4.0.9)(postcss@8.5.6)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1)): dependencies: '@miniflare/queues': 2.14.4 '@miniflare/runner-vm': 2.14.4 '@miniflare/shared': 2.14.4 - '@miniflare/shared-test-environment': 2.14.4 + '@miniflare/shared-test-environment': 2.14.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) undici: 5.28.4 - vitest: 3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1) + vitest: 3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@27.0.0(bufferutil@4.0.9)(postcss@8.5.6)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1) transitivePeerDependencies: - bufferutil - utf-8-validate - vitest@3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1): + vitest@3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@27.0.0(bufferutil@4.0.9)(postcss@8.5.6)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(msw@2.11.6(@types/node@22.19.0)(typescript@5.8.3))(terser@5.44.1)(tsx@4.20.6)(yaml@2.8.1): dependencies: '@types/chai': 5.2.3 '@vitest/expect': 3.2.4 @@ -31069,7 +32492,7 @@ snapshots: '@edge-runtime/vm': 5.0.0 '@types/debug': 4.1.12 '@types/node': 22.19.0 - jsdom: 26.1.0 + jsdom: 27.0.0(bufferutil@4.0.9)(postcss@8.5.6)(utf-8-validate@5.0.10) transitivePeerDependencies: - jiti - less @@ -31161,7 +32584,10 @@ snapshots: webidl-conversions@7.0.0: {} - webpack-bundle-analyzer@4.10.2: + webidl-conversions@8.0.0: + optional: true + + webpack-bundle-analyzer@4.10.2(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: '@discoveryjs/json-ext': 0.5.7 acorn: 8.15.0 @@ -31174,7 +32600,7 @@ snapshots: opener: 1.5.2 picocolors: 1.1.1 sirv: 2.0.4 - ws: 7.5.10 + ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -31190,7 +32616,7 @@ snapshots: optionalDependencies: webpack: 5.102.1(esbuild@0.25.12) - webpack-dev-server@5.2.2(webpack@5.102.1(esbuild@0.25.12)): + webpack-dev-server@5.2.2(bufferutil@4.0.9)(utf-8-validate@5.0.10)(webpack@5.102.1(esbuild@0.25.12)): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -31219,7 +32645,7 @@ snapshots: sockjs: 0.3.24 spdy: 4.0.2 webpack-dev-middleware: 7.4.5(webpack@5.102.1(esbuild@0.25.12)) - ws: 8.18.3 + ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) optionalDependencies: webpack: 5.102.1(esbuild@0.25.12) transitivePeerDependencies: @@ -31308,6 +32734,12 @@ snapshots: tr46: 5.1.1 webidl-conversions: 7.0.0 + whatwg-url@15.1.0: + dependencies: + tr46: 6.0.0 + webidl-conversions: 8.0.0 + optional: true + whatwg-url@5.0.0: dependencies: tr46: 0.0.3 @@ -31350,6 +32782,8 @@ snapshots: is-weakmap: 2.0.2 is-weakset: 2.0.4 + which-module@2.0.1: {} + which-pm-runs@1.1.0: {} which-typed-array@1.1.19: @@ -31433,15 +32867,27 @@ snapshots: imurmurhash: 0.1.4 signal-exit: 4.1.0 - ws@6.2.3: + ws@6.2.3(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: async-limiter: 1.0.1 + optionalDependencies: + bufferutil: 4.0.9 + utf-8-validate: 5.0.10 - ws@7.5.10: {} + ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10): + optionalDependencies: + bufferutil: 4.0.9 + utf-8-validate: 5.0.10 - ws@8.17.1: {} + ws@8.17.1(bufferutil@4.0.9)(utf-8-validate@5.0.10): + optionalDependencies: + bufferutil: 4.0.9 + utf-8-validate: 5.0.10 - ws@8.18.3: {} + ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10): + optionalDependencies: + bufferutil: 4.0.9 + utf-8-validate: 5.0.10 wsl-utils@0.1.0: dependencies: @@ -31480,6 +32926,8 @@ snapshots: xxhash-wasm@1.1.0: {} + y18n@4.0.3: {} + y18n@5.0.8: {} yalc@1.0.0-pre.53: @@ -31510,10 +32958,29 @@ snapshots: yaml@2.8.1: {} + yargs-parser@18.1.3: + dependencies: + camelcase: 5.3.1 + decamelize: 1.2.0 + yargs-parser@20.2.9: {} yargs-parser@21.1.1: {} + yargs@15.4.1: + dependencies: + cliui: 6.0.0 + decamelize: 1.2.0 + find-up: 4.1.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + require-main-filename: 2.0.0 + set-blocking: 2.0.0 + string-width: 4.2.3 + which-module: 2.0.1 + y18n: 4.0.3 + yargs-parser: 18.1.3 + yargs@16.2.0: dependencies: cliui: 7.0.4 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 2e4bd689bfc..24aec7f11a9 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -21,6 +21,10 @@ catalogs: module-manager: '@base-org/account': 2.0.1 '@coinbase/wallet-sdk': 4.3.0 + '@solana/wallet-adapter-base': 0.9.27 + '@solana/wallet-adapter-react': 0.15.39 + '@solana/wallet-standard': 1.1.4 + '@wallet-standard/core': 1.1.1 '@zxcvbn-ts/core': 3.0.4 '@zxcvbn-ts/language-common': 3.0.4 From 0c1878d2bea24aec8cf167cd01e01f71ed596291 Mon Sep 17 00:00:00 2001 From: Kenton Duprey Date: Thu, 11 Dec 2025 19:06:41 -0500 Subject: [PATCH 02/18] =?UTF-8?q?feat(clerk-js,localizations,types):=20Add?= =?UTF-8?q?=20ability=20for=20users=20to=20connect=20a=20Solana=20enabled?= =?UTF-8?q?=20wallet=20via=C2=A0``=20(#7435)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kenton Duprey --- .changeset/afraid-apes-cough.md | 7 ++ packages/localizations/src/ar-SA.ts | 25 ++-- packages/localizations/src/be-BY.ts | 26 ++-- packages/localizations/src/bg-BG.ts | 26 ++-- packages/localizations/src/bn-IN.ts | 27 ++-- packages/localizations/src/ca-ES.ts | 26 ++-- packages/localizations/src/cs-CZ.ts | 26 ++-- packages/localizations/src/da-DK.ts | 26 ++-- packages/localizations/src/de-DE.ts | 27 ++-- packages/localizations/src/el-GR.ts | 26 ++-- packages/localizations/src/en-GB.ts | 26 ++-- packages/localizations/src/en-US.ts | 6 +- packages/localizations/src/es-CR.ts | 26 ++-- packages/localizations/src/es-ES.ts | 26 ++-- packages/localizations/src/es-MX.ts | 26 ++-- packages/localizations/src/es-UY.ts | 26 ++-- packages/localizations/src/fa-IR.ts | 25 ++-- packages/localizations/src/fi-FI.ts | 25 ++-- packages/localizations/src/fr-FR.ts | 26 ++-- packages/localizations/src/he-IL.ts | 25 ++-- packages/localizations/src/hi-IN.ts | 27 ++-- packages/localizations/src/hr-HR.ts | 26 ++-- packages/localizations/src/hu-HU.ts | 26 ++-- packages/localizations/src/id-ID.ts | 26 ++-- packages/localizations/src/is-IS.ts | 26 ++-- packages/localizations/src/it-IT.ts | 26 ++-- packages/localizations/src/ja-JP.ts | 25 ++-- packages/localizations/src/kk-KZ.ts | 26 ++-- packages/localizations/src/ko-KR.ts | 25 ++-- packages/localizations/src/mn-MN.ts | 27 ++-- packages/localizations/src/ms-MY.ts | 26 ++-- packages/localizations/src/nb-NO.ts | 26 ++-- packages/localizations/src/nl-BE.ts | 27 ++-- packages/localizations/src/nl-NL.ts | 27 ++-- packages/localizations/src/pl-PL.ts | 26 ++-- packages/localizations/src/pt-BR.ts | 25 ++-- packages/localizations/src/pt-PT.ts | 25 ++-- packages/localizations/src/ro-RO.ts | 26 ++-- packages/localizations/src/ru-RU.ts | 27 ++-- packages/localizations/src/sk-SK.ts | 26 ++-- packages/localizations/src/sr-RS.ts | 25 ++-- packages/localizations/src/sv-SE.ts | 26 ++-- packages/localizations/src/ta-IN.ts | 26 ++-- packages/localizations/src/te-IN.ts | 26 ++-- packages/localizations/src/th-TH.ts | 25 ++-- packages/localizations/src/tr-TR.ts | 26 ++-- packages/localizations/src/uk-UA.ts | 26 ++-- packages/localizations/src/vi-VN.ts | 25 ++-- packages/localizations/src/zh-CN.ts | 25 ++-- packages/localizations/src/zh-TW.ts | 25 ++-- packages/shared/src/types/elementIds.ts | 3 +- packages/shared/src/types/localization.ts | 6 +- packages/ui/src/common/WalletInitialIcon.tsx | 4 +- .../SignInFactorOneSolanaWalletsCard.tsx | 4 +- .../SignUp/SignUpStartSolanaWalletsCard.tsx | 26 +++- .../src/components/UserProfile/Web3Form.tsx | 115 +++++++++++------- .../components/UserProfile/Web3Section.tsx | 2 +- .../Web3SelectSolanaWalletScreen.tsx | 79 ++++++++++++ .../src/customizables/elementDescriptors.ts | 14 +-- .../src/elements/Web3SolanaWalletButtons.tsx | 12 +- packages/ui/src/internal/appearance.ts | 14 +-- 61 files changed, 975 insertions(+), 559 deletions(-) create mode 100644 .changeset/afraid-apes-cough.md create mode 100644 packages/ui/src/components/UserProfile/Web3SelectSolanaWalletScreen.tsx diff --git a/.changeset/afraid-apes-cough.md b/.changeset/afraid-apes-cough.md new file mode 100644 index 00000000000..d56bab12231 --- /dev/null +++ b/.changeset/afraid-apes-cough.md @@ -0,0 +1,7 @@ +--- +'@clerk/localizations': minor +'@clerk/clerk-js': minor +'@clerk/shared': minor +--- + +Add Web3 Solana support to `` diff --git a/packages/localizations/src/ar-SA.ts b/packages/localizations/src/ar-SA.ts index b5341d594f4..93c5ebfbba5 100644 --- a/packages/localizations/src/ar-SA.ts +++ b/packages/localizations/src/ar-SA.ts @@ -748,8 +748,8 @@ export const arSA: LocalizationResource = { title: 'نظام التحقق بخطوتين', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'حدد محفظة أدناه لتسجيل الدخول', + title: 'تسجيل الدخول باستخدام Solana', }, }, signInEnterPasswordTitle: 'إدخل كلمة المرور', @@ -842,8 +842,8 @@ export const arSA: LocalizationResource = { titleCombined: 'أنشاء حساب جديد', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'حدد محفظة أدناه للتسجيل', + title: 'التسجيل باستخدام Solana', }, }, socialButtonsBlockButton: 'للمتابعة مع {{provider|titleize}}', @@ -949,8 +949,8 @@ export const arSA: LocalizationResource = { phone_number_exists: 'هذا الرقم مأخوذ الرجاء أختيار رقم آخر', session_exists: 'لقد قمت بتسجيل الدخول بالفعل', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'لقد رفضت طلب التوقيع. يرجى المحاولة مرة أخرى للمتابعة.', + web3_solana_signature_generation_failed: 'حدث خطأ أثناء إنشاء التوقيع. يرجى المحاولة مرة أخرى للمتابعة.', zxcvbn: { couldBeStronger: 'كلمة مرورك سليمة من الأفضل ان تكون اقوى. الرجاء أضافة حروف أكثر', goodPassword: 'كلمة مرورك طابقت جميع المتطلبات الازمة', @@ -1315,6 +1315,10 @@ export const arSA: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'محافظ Web3', title: 'محافظ Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'حدد محفظة Solana للاتصال بحسابك.', + title: 'إضافة محفظة Solana', + }, }, }, usernamePage: { @@ -1350,9 +1354,10 @@ export const arSA: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'الاتصال باستخدام {{walletName}}', + continue: 'المتابعة باستخدام {{walletName}}', + noneAvailable: + 'لم يتم اكتشاف محافظ Solana Web3. يرجى تثبيت {{ solanaWalletsLink || link("wallet extension") }} مدعوم بـ Web3.', }, } as const; diff --git a/packages/localizations/src/be-BY.ts b/packages/localizations/src/be-BY.ts index 8934a721d8e..9fd243b480d 100644 --- a/packages/localizations/src/be-BY.ts +++ b/packages/localizations/src/be-BY.ts @@ -754,8 +754,8 @@ export const beBY: LocalizationResource = { title: 'Двухфактарная верыфікацыя', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Выберыце кашалёк ніжэй, каб увайсці', + title: 'Увайсці з Solana', }, }, signInEnterPasswordTitle: undefined, @@ -850,8 +850,8 @@ export const beBY: LocalizationResource = { titleCombined: 'Стварыце Ваш акаўнт', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Выберыце кашалёк ніжэй, каб зарэгістравацца', + title: 'Зарэгістравацца з Solana', }, }, socialButtonsBlockButton: 'Працягнуць з дапамогай {{provider|titleize}}', @@ -959,8 +959,9 @@ export const beBY: LocalizationResource = { phone_number_exists: 'Гэты нумар тэлефона ўжо заняты. Калі ласка, паспрабуйце іншы.', session_exists: 'Вы ўжо ўвайшлі.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Вы адхілілі запыт на подпіс. Калі ласка, паспрабуйце яшчэ раз, каб працягнуць.', + web3_solana_signature_generation_failed: + 'Адбылася памылка пры стварэнні подпісу. Калі ласка, паспрабуйце яшчэ раз, каб працягнуць.', zxcvbn: { couldBeStronger: 'Ваш пароль падыходзіць, але мог бы быць надзейнейшым. Паспрабуйце дадаць больш сімвалаў.', goodPassword: 'Добрая праца. Гэта выдатны пароль.', @@ -1333,6 +1334,10 @@ export const beBY: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 кашалькі', title: 'Web3 кашалькі', + web3SelectSolanaWalletScreen: { + subtitle: 'Выберыце кашалёк Solana для падключэння да вашага акаўнта.', + title: 'Дадаць кашалёк Solana', + }, }, }, usernamePage: { @@ -1368,9 +1373,10 @@ export const beBY: LocalizationResource = { title: 'Вы ў чакальным спісе', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Падключыцца з {{walletName}}', + continue: 'Працягнуць з {{walletName}}', + noneAvailable: + 'Кашалькі Solana Web3 не выяўлены. Калі ласка, усталюйце {{ solanaWalletsLink || link("wallet extension") }} з падтрымкай Web3.', }, } as const; diff --git a/packages/localizations/src/bg-BG.ts b/packages/localizations/src/bg-BG.ts index 8684cbbaa17..885f16aca0a 100644 --- a/packages/localizations/src/bg-BG.ts +++ b/packages/localizations/src/bg-BG.ts @@ -751,8 +751,8 @@ export const bgBG: LocalizationResource = { title: 'Двустепенна верификация', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Изберете портфейл по-долу, за да влезете', + title: 'Вход със Solana', }, }, signInEnterPasswordTitle: 'Въведете вашата парола', @@ -846,8 +846,8 @@ export const bgBG: LocalizationResource = { titleCombined: 'Създайте своя акаунт', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Изберете портфейл по-долу, за да се регистрирате', + title: 'Регистрация със Solana', }, }, socialButtonsBlockButton: 'Продължи с {{provider|titleize}}', @@ -952,8 +952,9 @@ export const bgBG: LocalizationResource = { phone_number_exists: 'Този телефонен номер е зает. Моля, опитайте с друг.', session_exists: 'Вече сте влезнали.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Отхвърлихте заявката за подпис. Моля, опитайте отново, за да продължите.', + web3_solana_signature_generation_failed: + 'Възникна грешка при генерирането на подписа. Моля, опитайте отново, за да продължите.', zxcvbn: { couldBeStronger: 'Вашата парола работи, но може да бъде по-сигурна. Опитайте да добавите повече символи.', goodPassword: 'Вашата парола отговаря на всички необходими изисквания.', @@ -1324,6 +1325,10 @@ export const bgBG: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 портфейли', title: 'Web3 портфейли', + web3SelectSolanaWalletScreen: { + subtitle: 'Изберете Solana портфейл, който да свържете с акаунта си.', + title: 'Добавяне на Solana портфейл', + }, }, }, usernamePage: { @@ -1359,9 +1364,10 @@ export const bgBG: LocalizationResource = { title: 'Waitlist successful', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Свързване с {{walletName}}', + continue: 'Продължаване с {{walletName}}', + noneAvailable: + 'Не са открити Solana Web3 портфейли. Моля, инсталирайте {{ solanaWalletsLink || link("wallet extension") }} с поддръжка на Web3.', }, } as const; diff --git a/packages/localizations/src/bn-IN.ts b/packages/localizations/src/bn-IN.ts index 35e8992c247..44c5556c492 100644 --- a/packages/localizations/src/bn-IN.ts +++ b/packages/localizations/src/bn-IN.ts @@ -754,8 +754,8 @@ export const bnIN: LocalizationResource = { title: 'দুই-ধাপ যাচাইকরণ', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'সাইন ইন করতে নিচে একটি ওয়ালেট নির্বাচন করুন', + title: 'Solana দিয়ে সাইন ইন করুন', }, }, signInEnterPasswordTitle: 'আপনার পাসওয়ার্ড লিখুন', @@ -850,8 +850,8 @@ export const bnIN: LocalizationResource = { titleCombined: 'আপনার অ্যাকাউন্ট তৈরি করুন', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'সাইন আপ করতে নিচে একটি ওয়ালেট নির্বাচন করুন', + title: 'Solana দিয়ে সাইন আপ করুন', }, }, socialButtonsBlockButton: '{{provider|titleize}} দিয়ে চালিয়ে যান', @@ -962,8 +962,10 @@ export const bnIN: LocalizationResource = { phone_number_exists: 'এই ফোন নম্বর ব্যবহৃত হয়েছে। দয়া করে অন্য একটি ব্যবহার করুন।', session_exists: undefined, web3_missing_identifier: 'একটি Web3 ওয়ালেট এক্সটেনশন পাওয়া যায়নি। চালিয়ে যেতে দয়া করে একটি ইনস্টল করুন।', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: + 'আপনি সিগনেচার অনুরোধটি প্রত্যাখ্যান করেছেন। চালিয়ে যেতে অনুগ্রহ করে আবার চেষ্টা করুন।', + web3_solana_signature_generation_failed: + 'সিগনেচার তৈরি করার সময় একটি ত্রুটি ঘটেছে। চালিয়ে যেতে অনুগ্রহ করে আবার চেষ্টা করুন।', zxcvbn: { couldBeStronger: 'আপনার পাসওয়ার্ড কাজ করে, কিন্তু আরও শক্তিশালী হতে পারে। আরও অক্ষর যোগ করার চেষ্টা করুন।', goodPassword: 'আপনার পাসওয়ার্ড সমস্ত প্রয়োজনীয় শর্ত পূরণ করে।', @@ -1334,6 +1336,10 @@ export const bnIN: LocalizationResource = { detailsAction__nonPrimary: 'প্রাথমিক হিসাবে সেট করুন', primaryButton: 'ওয়ালেট সংযুক্ত করুন', title: 'Web3 ওয়ালেট', + web3SelectSolanaWalletScreen: { + subtitle: 'আপনার অ্যাকাউন্টের সাথে সংযুক্ত করতে একটি Solana ওয়ালেট নির্বাচন করুন।', + title: 'একটি Solana ওয়ালেট যোগ করুন', + }, }, }, usernamePage: { @@ -1369,9 +1375,10 @@ export const bnIN: LocalizationResource = { title: 'ওয়েটলিস্টে যোগ দেওয়ার জন্য ধন্যবাদ!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '{{walletName}} দিয়ে সংযুক্ত করুন', + continue: '{{walletName}} দিয়ে চালিয়ে যান', + noneAvailable: + 'কোনো Solana Web3 ওয়ালেট শনাক্ত হয়নি। অনুগ্রহ করে Web3 সমর্থিত {{ solanaWalletsLink || link("wallet extension") }} ইনস্টল করুন।', }, } as const; diff --git a/packages/localizations/src/ca-ES.ts b/packages/localizations/src/ca-ES.ts index 9f1a187e7dd..dbb56059028 100644 --- a/packages/localizations/src/ca-ES.ts +++ b/packages/localizations/src/ca-ES.ts @@ -751,8 +751,8 @@ export const caES: LocalizationResource = { title: 'Verificació de dos passos', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecciona una cartera a continuació per iniciar la sessió', + title: 'Inicia la sessió amb Solana', }, }, signInEnterPasswordTitle: 'Introdueix la teva contrasenya', @@ -845,8 +845,8 @@ export const caES: LocalizationResource = { titleCombined: 'Crea el teu compte', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecciona una cartera a continuació per registrar-te', + title: "Registra't amb Solana", }, }, socialButtonsBlockButton: 'Continua amb {{provider|titleize}}', @@ -954,8 +954,9 @@ export const caES: LocalizationResource = { phone_number_exists: "Aquest número de telèfon ja està en ús. Si us plau, prova'n un altre.", session_exists: 'Ja estàs connectat.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Has rebutjat la sol·licitud de signatura. Torna-ho a provar per continuar.', + web3_solana_signature_generation_failed: + "S'ha produït un error en generar la signatura. Torna-ho a provar per continuar.", zxcvbn: { couldBeStronger: 'La teva contrasenya funciona, però podria ser més forta. Prova afegint més caràcters.', goodPassword: 'La teva contrasenya compleix tots els requisits necessaris.', @@ -1330,6 +1331,10 @@ export const caES: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Carteres Web3', title: 'Carteres Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Selecciona una cartera de Solana per connectar-la al teu compte.', + title: 'Afegeix una cartera de Solana', + }, }, }, usernamePage: { @@ -1365,9 +1370,10 @@ export const caES: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Connecta amb {{walletName}}', + continue: 'Continua amb {{walletName}}', + noneAvailable: + 'No s\'han detectat carteres Web3 de Solana. Instal·la una {{ solanaWalletsLink || link("wallet extension") }} compatible amb Web3.', }, } as const; diff --git a/packages/localizations/src/cs-CZ.ts b/packages/localizations/src/cs-CZ.ts index 6e5a0514c7e..c77859d3591 100644 --- a/packages/localizations/src/cs-CZ.ts +++ b/packages/localizations/src/cs-CZ.ts @@ -758,8 +758,8 @@ export const csCZ: LocalizationResource = { title: 'Dvoufázové ověření', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Vyberte níže peněženku pro přihlášení', + title: 'Přihlásit se pomocí Solana', }, }, signInEnterPasswordTitle: 'Zadejte své heslo', @@ -856,8 +856,8 @@ export const csCZ: LocalizationResource = { titleCombined: 'Vytvořte si účet', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Vyberte níže peněženku pro registraci', + title: 'Zaregistrovat se pomocí Solana', }, }, socialButtonsBlockButton: 'Pokračovat s {{provider|titleize}}', @@ -964,8 +964,9 @@ export const csCZ: LocalizationResource = { phone_number_exists: 'Toto telefonní číslo se používá. Zkuste prosím jiný.', session_exists: 'Jste již přihlášen.', web3_missing_identifier: 'Rozšíření peněženky Web3 nebylo nalezeno. Pro pokračování prosím nainstalujte jednu.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Odmítli jste žádost o podpis. Chcete-li pokračovat, zkuste to prosím znovu.', + web3_solana_signature_generation_failed: + 'Při generování podpisu došlo k chybě. Chcete-li pokračovat, zkuste to prosím znovu.', zxcvbn: { couldBeStronger: 'Vaše heslo funguje, ale mohlo by být silnější. Zkuste přidat více znaků.', goodPassword: 'Vaše heslo splňuje všechny potřebné požadavky.', @@ -1337,6 +1338,10 @@ export const csCZ: LocalizationResource = { detailsAction__nonPrimary: 'Nastavit jako primární', primaryButton: 'Připojit peněženku', title: 'Web3 peněženky', + web3SelectSolanaWalletScreen: { + subtitle: 'Vyberte Solana peněženku, kterou chcete připojit ke svému účtu.', + title: 'Přidat Solana peněženku', + }, }, }, usernamePage: { @@ -1372,9 +1377,10 @@ export const csCZ: LocalizationResource = { title: 'Děkujeme za připojení k čekací listině!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Připojit pomocí {{walletName}}', + continue: 'Pokračovat pomocí {{walletName}}', + noneAvailable: + 'Nebyla zjištěna žádná Solana Web3 peněženka. Nainstalujte si prosím {{ solanaWalletsLink || link("wallet extension") }} s podporou Web3.', }, } as const; diff --git a/packages/localizations/src/da-DK.ts b/packages/localizations/src/da-DK.ts index a8d2c5bd370..273a29c2a53 100644 --- a/packages/localizations/src/da-DK.ts +++ b/packages/localizations/src/da-DK.ts @@ -749,8 +749,8 @@ export const daDK: LocalizationResource = { title: 'Totrinsbekræftelse', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Vælg en wallet nedenfor for at logge ind', + title: 'Log ind med Solana', }, }, signInEnterPasswordTitle: 'Indtast din adgangskode', @@ -843,8 +843,8 @@ export const daDK: LocalizationResource = { titleCombined: 'Opret din konto', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Vælg en wallet nedenfor for at tilmelde dig', + title: 'Tilmeld dig med Solana', }, }, socialButtonsBlockButton: 'Fortsæt med {{provider|titleize}}', @@ -950,8 +950,9 @@ export const daDK: LocalizationResource = { phone_number_exists: 'Dette telefonnummer er allerede taget. Prøv et andet.', session_exists: 'Du er allerede logget ind.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Du har afvist signaturanmodningen. Prøv igen for at fortsætte.', + web3_solana_signature_generation_failed: + 'Der opstod en fejl under generering af signaturen. Prøv igen for at fortsætte.', zxcvbn: { couldBeStronger: 'Din adgangskode virker, men kunne være stærkere. Prøv at tilføje flere tegn.', goodPassword: 'Din adgangskode opfylder alle nødvendige krav.', @@ -1321,6 +1322,10 @@ export const daDK: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Tilføj Web3 tegnebøger', title: 'Web3 tegnebøger', + web3SelectSolanaWalletScreen: { + subtitle: 'Vælg en Solana-wallet for at forbinde den til din konto.', + title: 'Tilføj en Solana-wallet', + }, }, }, usernamePage: { @@ -1356,9 +1361,10 @@ export const daDK: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Forbind med {{walletName}}', + continue: 'Fortsæt med {{walletName}}', + noneAvailable: + 'Ingen Solana Web3-wallets fundet. Installer venligst en Web3-understøttet {{ solanaWalletsLink || link("wallet extension") }}.', }, } as const; diff --git a/packages/localizations/src/de-DE.ts b/packages/localizations/src/de-DE.ts index 6008ac34f61..317bbff3c7d 100644 --- a/packages/localizations/src/de-DE.ts +++ b/packages/localizations/src/de-DE.ts @@ -765,8 +765,8 @@ export const deDE: LocalizationResource = { title: 'Bestätigung in zwei Schritten', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Wähle unten eine Wallet aus, um dich anzumelden', + title: 'Mit Solana anmelden', }, }, signInEnterPasswordTitle: 'Geben Sie Ihr Passwort ein', @@ -860,8 +860,8 @@ export const deDE: LocalizationResource = { titleCombined: 'Erstellen Sie Ihr Konto', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Wähle unten eine Wallet aus, um dich zu registrieren', + title: 'Mit Solana registrieren', }, }, socialButtonsBlockButton: 'Weiter mit {{provider|titleize}}', @@ -980,8 +980,10 @@ export const deDE: LocalizationResource = { session_exists: 'Sie sind bereits angemeldet.', web3_missing_identifier: 'Eine Web3 Wallet-Erweiterung wurde nicht gefunden. Bitte installieren Sie eine, um fortzufahren.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: + 'Du hast die Signaturanfrage abgelehnt. Bitte versuche es erneut, um fortzufahren.', + web3_solana_signature_generation_failed: + 'Beim Erstellen der Signatur ist ein Fehler aufgetreten. Bitte versuche es erneut, um fortzufahren.', zxcvbn: { couldBeStronger: 'Ihr Passwort funktioniert, könnte aber besser sein. Versuchen Sie, mehr Zeichen hinzuzufügen.', goodPassword: 'Ihr Passwort erfüllt alle notwendigen Anforderungen.', @@ -1357,6 +1359,10 @@ export const deDE: LocalizationResource = { detailsAction__nonPrimary: 'Als primär festlegen', primaryButton: 'Web3-Wallets', title: 'Web3-Wallets', + web3SelectSolanaWalletScreen: { + subtitle: 'Wähle eine Solana-Wallet aus, um sie mit deinem Konto zu verbinden.', + title: 'Solana-Wallet hinzufügen', + }, }, }, usernamePage: { @@ -1393,9 +1399,10 @@ export const deDE: LocalizationResource = { title: 'Erfolgreich auf die Warteliste gesetzt', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Mit {{walletName}} verbinden', + continue: 'Weiter mit {{walletName}}', + noneAvailable: + 'Keine Solana-Web3-Wallets erkannt. Bitte installiere eine Web3-unterstützte {{ solanaWalletsLink || link("wallet extension") }}.', }, } as const; diff --git a/packages/localizations/src/el-GR.ts b/packages/localizations/src/el-GR.ts index bd41cdc39aa..192028118ab 100644 --- a/packages/localizations/src/el-GR.ts +++ b/packages/localizations/src/el-GR.ts @@ -752,8 +752,8 @@ export const elGR: LocalizationResource = { title: 'Aυθεντικοποίηση δύο βημάτων', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Επιλέξτε ένα πορτοφόλι παρακάτω για να συνδεθείτε', + title: 'Σύνδεση με Solana', }, }, signInEnterPasswordTitle: 'Εισαγωγή κωδικού πρόσβασης', @@ -847,8 +847,8 @@ export const elGR: LocalizationResource = { titleCombined: 'Δημιουργήστε τον λογαριασμό σας', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Επιλέξτε ένα πορτοφόλι παρακάτω για να εγγραφείτε', + title: 'Εγγραφή με Solana', }, }, socialButtonsBlockButton: 'Συνέχεια με {{provider|titleize}}', @@ -956,8 +956,9 @@ export const elGR: LocalizationResource = { phone_number_exists: 'Αυτός ο αριθμός τηλεφώνου χρησιμοποιείται ήδη. Δοκιμάστε έναν άλλο.', session_exists: 'Έχετε ήδη συνδεθεί.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Απορρίψατε το αίτημα υπογραφής. Δοκιμάστε ξανά για να συνεχίσετε.', + web3_solana_signature_generation_failed: + 'Παρουσιάστηκε σφάλμα κατά τη δημιουργία της υπογραφής. Δοκιμάστε ξανά για να συνεχίσετε.', zxcvbn: { couldBeStronger: 'Ο κωδικός πρόσβασής σας είναι αρκετός, αλλά θα μπορούσε να είναι πιο ισχυρός. Δοκιμάστε να προσθέσετε περισσότερους χαρακτήρες.', @@ -1333,6 +1334,10 @@ export const elGR: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Πορτοφόλια Web3', title: 'Πορτοφόλια Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Επιλέξτε ένα πορτοφόλι Solana για σύνδεση με τον λογαριασμό σας.', + title: 'Προσθήκη πορτοφολιού Solana', + }, }, }, usernamePage: { @@ -1368,9 +1373,10 @@ export const elGR: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Σύνδεση με {{walletName}}', + continue: 'Συνέχεια με {{walletName}}', + noneAvailable: + 'Δεν εντοπίστηκαν πορτοφόλια Solana Web3. Εγκαταστήστε ένα {{ solanaWalletsLink || link("wallet extension") }} με υποστήριξη Web3.', }, } as const; diff --git a/packages/localizations/src/en-GB.ts b/packages/localizations/src/en-GB.ts index ce50646e300..f8649f8832c 100644 --- a/packages/localizations/src/en-GB.ts +++ b/packages/localizations/src/en-GB.ts @@ -751,8 +751,8 @@ export const enGB: LocalizationResource = { title: 'Two-step verification', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Select a wallet below to sign in', + title: 'Sign in with Solana', }, }, signInEnterPasswordTitle: 'Enter your password', @@ -847,8 +847,8 @@ export const enGB: LocalizationResource = { titleCombined: 'Create your account', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Select a wallet below to sign up', + title: 'Sign up with Solana', }, }, socialButtonsBlockButton: 'Continue with {{provider|titleize}}', @@ -957,8 +957,9 @@ export const enGB: LocalizationResource = { phone_number_exists: 'This phone number is taken. Please try another.', session_exists: "You're already signed in.", web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'You have rejected the signature request. Please try again to continue.', + web3_solana_signature_generation_failed: + 'An error occurred while generating the signature. Please try again to continue.', zxcvbn: { couldBeStronger: 'Your password works, but could be stronger. Try adding more characters.', goodPassword: 'Your password meets all the necessary requirements.', @@ -1328,6 +1329,10 @@ export const enGB: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Connect wallet', title: 'Web3 wallets', + web3SelectSolanaWalletScreen: { + subtitle: 'Select a Solana wallet to connect to your account.', + title: 'Add a Solana wallet', + }, }, }, usernamePage: { @@ -1363,9 +1368,10 @@ export const enGB: LocalizationResource = { title: 'Thanks for joining the waitlist!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Connect with {{walletName}}', + continue: 'Continue with {{walletName}}', + noneAvailable: + 'No Solana Web3 wallets detected. Please install a Web3 supported {{ solanaWalletsLink || link("wallet extension") }}.', }, } as const; diff --git a/packages/localizations/src/en-US.ts b/packages/localizations/src/en-US.ts index 72f060b004d..3f188185eda 100644 --- a/packages/localizations/src/en-US.ts +++ b/packages/localizations/src/en-US.ts @@ -1325,6 +1325,10 @@ export const enUS: LocalizationResource = { detailsAction__nonPrimary: 'Set as primary', primaryButton: 'Connect wallet', title: 'Web3 wallets', + web3SelectSolanaWalletScreen: { + subtitle: 'Select a Solana wallet to connect to your account.', + title: 'Add a Solana wallet', + }, }, }, usernamePage: { @@ -1360,7 +1364,7 @@ export const enUS: LocalizationResource = { title: 'Thanks for joining the waitlist!', }, }, - web3WalletButtons: { + web3SolanaWalletButtons: { connect: 'Connect with {{walletName}}', continue: 'Continue with {{walletName}}', noneAvailable: diff --git a/packages/localizations/src/es-CR.ts b/packages/localizations/src/es-CR.ts index 4f6d6b6e3d4..2b99f521045 100644 --- a/packages/localizations/src/es-CR.ts +++ b/packages/localizations/src/es-CR.ts @@ -756,8 +756,8 @@ export const esCR: LocalizationResource = { title: 'Verificación de dos pasos', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecciona una billetera abajo para iniciar sesión', + title: 'Iniciar sesión con Solana', }, }, signInEnterPasswordTitle: 'Ingresa tu contraseña', @@ -852,8 +852,8 @@ export const esCR: LocalizationResource = { titleCombined: 'Crea tu cuenta', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecciona una billetera abajo para registrarte', + title: 'Registrarse con Solana', }, }, socialButtonsBlockButton: 'Continuar con {{provider|titleize}}', @@ -963,8 +963,9 @@ export const esCR: LocalizationResource = { phone_number_exists: 'Este número de telefónico ya está en uso.', session_exists: undefined, web3_missing_identifier: 'No se puede encontrar la extension de la billetera Web3. Instala una para continuar', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Has rechazado la solicitud de firma. Inténtalo de nuevo para continuar.', + web3_solana_signature_generation_failed: + 'Se produjo un error al generar la firma. Inténtalo de nuevo para continuar.', zxcvbn: { couldBeStronger: 'Tu contraseña funciona, pero puede ser más segura. Prueba añadiendo más caracteres.', goodPassword: 'Tu contraseña cumple con todos los requisitos necesarios.', @@ -1337,6 +1338,10 @@ export const esCR: LocalizationResource = { detailsAction__nonPrimary: 'Establecer como primaria', primaryButton: 'Conectar billetera', title: 'Billeteras Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Selecciona una billetera de Solana para conectarla a tu cuenta.', + title: 'Agregar una billetera de Solana', + }, }, }, usernamePage: { @@ -1372,9 +1377,10 @@ export const esCR: LocalizationResource = { title: '¡Gracias por unirte a la lista de espera!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Conectar con {{walletName}}', + continue: 'Continuar con {{walletName}}', + noneAvailable: + 'No se detectaron billeteras Web3 de Solana. Instala una {{ solanaWalletsLink || link("wallet extension") }} compatible con Web3.', }, } as const; diff --git a/packages/localizations/src/es-ES.ts b/packages/localizations/src/es-ES.ts index e85f80b1175..83156695aad 100644 --- a/packages/localizations/src/es-ES.ts +++ b/packages/localizations/src/es-ES.ts @@ -751,8 +751,8 @@ export const esES: LocalizationResource = { title: 'Verificación de dos pasos', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecciona una cartera abajo para iniciar sesión', + title: 'Iniciar sesión con Solana', }, }, signInEnterPasswordTitle: 'Ingresa tu contraseña', @@ -846,8 +846,8 @@ export const esES: LocalizationResource = { titleCombined: 'Crea tu cuenta', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecciona una cartera abajo para registrarte', + title: 'Registrarse con Solana', }, }, socialButtonsBlockButton: 'Continuar con {{provider|titleize}}', @@ -957,8 +957,9 @@ export const esES: LocalizationResource = { phone_number_exists: 'Este número de teléfono ya está en uso. Por favor, inténtelo con otro.', session_exists: 'Ya has iniciado sesión', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Has rechazado la solicitud de firma. Inténtalo de nuevo para continuar.', + web3_solana_signature_generation_failed: + 'Se produjo un error al generar la firma. Inténtalo de nuevo para continuar.', zxcvbn: { couldBeStronger: undefined, goodPassword: undefined, @@ -1330,6 +1331,10 @@ export const esES: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Agregar cartera Web3', title: 'Cartera Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Selecciona una cartera de Solana para conectarla a tu cuenta.', + title: 'Añadir una cartera de Solana', + }, }, }, usernamePage: { @@ -1366,9 +1371,10 @@ export const esES: LocalizationResource = { title: '¡Te has unido a la lista de espera!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Conectar con {{walletName}}', + continue: 'Continuar con {{walletName}}', + noneAvailable: + 'No se detectaron carteras Solana Web3. Instala una {{ solanaWalletsLink || link("wallet extension") }} compatible con Web3.', }, } as const; diff --git a/packages/localizations/src/es-MX.ts b/packages/localizations/src/es-MX.ts index dc2294b3036..3ffa546d8b2 100644 --- a/packages/localizations/src/es-MX.ts +++ b/packages/localizations/src/es-MX.ts @@ -757,8 +757,8 @@ export const esMX: LocalizationResource = { title: 'Verificación de dos pasos', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecciona una billetera abajo para iniciar sesión', + title: 'Iniciar sesión con Solana', }, }, signInEnterPasswordTitle: 'Ingresa tu contraseña', @@ -853,8 +853,8 @@ export const esMX: LocalizationResource = { titleCombined: 'Crea tu cuenta', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecciona una billetera abajo para registrarte', + title: 'Registrarse con Solana', }, }, socialButtonsBlockButton: 'Continuar con {{provider|titleize}}', @@ -964,8 +964,9 @@ export const esMX: LocalizationResource = { phone_number_exists: 'Este número de telefónico ya está en uso.', session_exists: 'Ya has iniciado sesión', web3_missing_identifier: 'No se puede encontrar la extension de la billetera Web3. Instala una para continuar', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Has rechazado la solicitud de firma. Inténtalo de nuevo para continuar.', + web3_solana_signature_generation_failed: + 'Se produjo un error al generar la firma. Inténtalo de nuevo para continuar.', zxcvbn: { couldBeStronger: 'Tu contraseña funciona, pero puede ser más segura. Prueba añadiendo más caracteres.', goodPassword: 'Tu contraseña cumple con todos los requisitos necesarios.', @@ -1338,6 +1339,10 @@ export const esMX: LocalizationResource = { detailsAction__nonPrimary: 'Establecer como primaria', primaryButton: 'Conectar billetera', title: 'Billeteras Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Selecciona una billetera de Solana para conectarla a tu cuenta.', + title: 'Agregar una billetera de Solana', + }, }, }, usernamePage: { @@ -1373,9 +1378,10 @@ export const esMX: LocalizationResource = { title: '¡Gracias por unirte a la lista de espera!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Conectar con {{walletName}}', + continue: 'Continuar con {{walletName}}', + noneAvailable: + 'No se detectaron billeteras Web3 de Solana. Instala una {{ solanaWalletsLink || link("wallet extension") }} compatible con Web3.', }, } as const; diff --git a/packages/localizations/src/es-UY.ts b/packages/localizations/src/es-UY.ts index 855141e799d..7eea08b851d 100644 --- a/packages/localizations/src/es-UY.ts +++ b/packages/localizations/src/es-UY.ts @@ -754,8 +754,8 @@ export const esUY: LocalizationResource = { title: 'Verificación en dos pasos', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecciona una billetera abajo para iniciar sesión', + title: 'Iniciar sesión con Solana', }, }, signInEnterPasswordTitle: 'Ingresá tu contraseña', @@ -852,8 +852,8 @@ export const esUY: LocalizationResource = { titleCombined: 'Creá tu cuenta', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecciona una billetera abajo para registrarte', + title: 'Registrarse con Solana', }, }, socialButtonsBlockButton: 'Continuar con {{provider|titleize}}', @@ -965,8 +965,9 @@ export const esUY: LocalizationResource = { phone_number_exists: 'Este número de teléfono ya está en uso. Por favor, probá con otro.', session_exists: 'Ya has iniciado sesión', web3_missing_identifier: 'No se encontró una extensión de cartera Web3. Por favor, instalá una para continuar.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Has rechazado la solicitud de firma. Inténtalo de nuevo para continuar.', + web3_solana_signature_generation_failed: + 'Se produjo un error al generar la firma. Inténtalo de nuevo para continuar.', zxcvbn: { couldBeStronger: 'Tu contraseña funciona, pero podría ser más fuerte. Intentá agregar más caracteres.', goodPassword: 'Tu contraseña cumple con todos los requisitos necesarios.', @@ -1337,6 +1338,10 @@ export const esUY: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Conectar cartera', title: 'Carteras Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Selecciona una billetera de Solana para conectarla a tu cuenta.', + title: 'Agregar una billetera de Solana', + }, }, }, usernamePage: { @@ -1372,9 +1377,10 @@ export const esUY: LocalizationResource = { title: '¡Gracias por unirte a la lista de espera!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Conectar con {{walletName}}', + continue: 'Continuar con {{walletName}}', + noneAvailable: + 'No se detectaron billeteras Web3 de Solana. Instala una {{ solanaWalletsLink || link("wallet extension") }} compatible con Web3.', }, } as const; diff --git a/packages/localizations/src/fa-IR.ts b/packages/localizations/src/fa-IR.ts index d6c0e7aaba4..26f34dc1b13 100644 --- a/packages/localizations/src/fa-IR.ts +++ b/packages/localizations/src/fa-IR.ts @@ -759,8 +759,8 @@ export const faIR: LocalizationResource = { title: 'تأیید دو مرحله‌ای', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'برای ورود، یک کیف پول را در زیر انتخاب کنید', + title: 'ورود با Solana', }, }, signInEnterPasswordTitle: 'رمز عبور خود را وارد کنید', @@ -856,8 +856,8 @@ export const faIR: LocalizationResource = { titleCombined: 'حساب کاربری خود را ایجاد کنید', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'برای ثبت‌نام، یک کیف پول را در زیر انتخاب کنید', + title: 'ثبت‌نام با Solana', }, }, socialButtonsBlockButton: 'ادامه با {{provider|titleize}}', @@ -962,8 +962,8 @@ export const faIR: LocalizationResource = { phone_number_exists: 'این شماره تلفن قبلاً استفاده شده است.', session_exists: 'جلسه از قبل وجود دارد.', web3_missing_identifier: 'افزونه‌ی کیف پول وب۳ پیدا نشد. برای ادامه، لطفاً یکی نصب کنید.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'درخواست امضا را رد کرده‌اید. برای ادامه دوباره تلاش کنید.', + web3_solana_signature_generation_failed: 'هنگام ایجاد امضا خطایی رخ داد. برای ادامه دوباره تلاش کنید.', zxcvbn: { couldBeStronger: 'رمز عبور شما کار می‌کند، اما می‌توانست قوی‌تر باشد. سعی کنید کاراکترهای بیشتری اضافه کنید.', goodPassword: 'رمز عبور شما تمام شرایط لازم را برآورده می‌کند.', @@ -1333,6 +1333,10 @@ export const faIR: LocalizationResource = { detailsAction__nonPrimary: 'به عنوان اصلی تنظیم کنید', primaryButton: 'اتصال کیف پول', title: 'کیف پول های Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'یک کیف پول Solana را برای اتصال به حساب خود انتخاب کنید.', + title: 'افزودن کیف پول Solana', + }, }, }, usernamePage: { @@ -1368,9 +1372,10 @@ export const faIR: LocalizationResource = { title: 'ممنون که به لیست انتظار پیوستید!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'اتصال با {{walletName}}', + continue: 'ادامه با {{walletName}}', + noneAvailable: + 'هیچ کیف پول Solana Web3 شناسایی نشد. لطفاً یک {{ solanaWalletsLink || link("wallet extension") }} پشتیبانی‌شده از Web3 نصب کنید.', }, } as const; diff --git a/packages/localizations/src/fi-FI.ts b/packages/localizations/src/fi-FI.ts index 1f0a4773c94..7e726e0fde9 100644 --- a/packages/localizations/src/fi-FI.ts +++ b/packages/localizations/src/fi-FI.ts @@ -751,8 +751,8 @@ export const fiFI: LocalizationResource = { title: 'Kaksivaiheinen todennus', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Valitse alta lompakko kirjautumista varten', + title: 'Kirjaudu sisään Solanalla', }, }, signInEnterPasswordTitle: 'Syötä salasanasi', @@ -846,8 +846,8 @@ export const fiFI: LocalizationResource = { titleCombined: 'Luo tili', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Valitse alta lompakko rekisteröitymistä varten', + title: 'Rekisteröidy Solanalla', }, }, socialButtonsBlockButton: 'Jatka palvelun {{provider|titleize}} avulla', @@ -953,8 +953,8 @@ export const fiFI: LocalizationResource = { phone_number_exists: 'Tämä puhelinnumero on jo käytössä. Kokeile toista.', session_exists: 'Olet jo kirjautunut sisään.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Hylkäsit allekirjoituspyynnön. Yritä uudelleen jatkaaksesi.', + web3_solana_signature_generation_failed: 'Allekirjoitusta luotaessa tapahtui virhe. Yritä uudelleen jatkaaksesi.', zxcvbn: { couldBeStronger: 'Salasanasi toimii, mutta se voisi olla vahvempi. Kokeile lisätä erikoismerkkejä tai numeroita.', goodPassword: 'Salasanasi täyttää kaikki tarvittavat vaatimukset.', @@ -1326,6 +1326,10 @@ export const fiFI: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3-lompakot', title: 'Web3-lompakot', + web3SelectSolanaWalletScreen: { + subtitle: 'Valitse Solana-lompakko yhdistettäväksi tiliisi.', + title: 'Lisää Solana-lompakko', + }, }, }, usernamePage: { @@ -1361,9 +1365,10 @@ export const fiFI: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Yhdistä {{walletName}}', + continue: 'Jatka {{walletName}}', + noneAvailable: + 'Solana Web3 -lompakoita ei havaittu. Asenna Web3-yhteensopiva {{ solanaWalletsLink || link("wallet extension") }}.', }, } as const; diff --git a/packages/localizations/src/fr-FR.ts b/packages/localizations/src/fr-FR.ts index bbd5d3c0d1e..358102f2631 100644 --- a/packages/localizations/src/fr-FR.ts +++ b/packages/localizations/src/fr-FR.ts @@ -765,8 +765,8 @@ export const frFR: LocalizationResource = { title: 'Vérification en deux étapes', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Sélectionnez un portefeuille ci-dessous pour vous connecter', + title: 'Se connecter avec Solana', }, }, signInEnterPasswordTitle: 'Tapez votre mot de passe', @@ -861,8 +861,8 @@ export const frFR: LocalizationResource = { titleCombined: 'Créez votre compte', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Sélectionnez un portefeuille ci-dessous pour vous inscrire', + title: "S'inscrire avec Solana", }, }, socialButtonsBlockButton: 'Continuer avec {{provider|titleize}}', @@ -973,8 +973,9 @@ export const frFR: LocalizationResource = { phone_number_exists: 'Ce numéro de téléphone est déjà utilisé. Veuillez essayer un autre.', session_exists: 'Vous êtes déjà connecté.', web3_missing_identifier: 'Aucune extension de portefeuille Web3 trouvée. Veuillez en installer une pour continuer.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Vous avez refusé la demande de signature. Veuillez réessayer pour continuer.', + web3_solana_signature_generation_failed: + "Une erreur s'est produite lors de la génération de la signature. Veuillez réessayer pour continuer.", zxcvbn: { couldBeStronger: "Votre mot de passe fonctionne mais pourrait être plus sûr. Essayez d'ajouter des caractères.", goodPassword: "Bien joué. C'est un excellent mot de passe.", @@ -1348,6 +1349,10 @@ export const frFR: LocalizationResource = { detailsAction__nonPrimary: 'Définir comme principal', primaryButton: 'Portefeuilles Web3', title: 'Portefeuilles Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Sélectionnez un portefeuille Solana à connecter à votre compte.', + title: 'Ajouter un portefeuille Solana', + }, }, }, usernamePage: { @@ -1383,9 +1388,10 @@ export const frFR: LocalizationResource = { title: 'Inscription réussie', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Se connecter avec {{walletName}}', + continue: 'Continuer avec {{walletName}}', + noneAvailable: + 'Aucun portefeuille Solana Web3 détecté. Veuillez installer une {{ solanaWalletsLink || link("wallet extension") }} compatible Web3.', }, } as const; diff --git a/packages/localizations/src/he-IL.ts b/packages/localizations/src/he-IL.ts index 5cc7802b08c..3baebdfb2cf 100644 --- a/packages/localizations/src/he-IL.ts +++ b/packages/localizations/src/he-IL.ts @@ -742,8 +742,8 @@ export const heIL: LocalizationResource = { title: 'אימות שני שלבים', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'בחר/י ארנק למטה כדי להתחבר', + title: 'התחברות עם Solana', }, }, signInEnterPasswordTitle: 'הזן את הסיסמה שלך', @@ -836,8 +836,8 @@ export const heIL: LocalizationResource = { titleCombined: 'צור את החשבון שלך', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'בחר/י ארנק למטה כדי להירשם', + title: 'הרשמה עם Solana', }, }, socialButtonsBlockButton: 'המשך עם {{provider|titleize}}', @@ -941,8 +941,8 @@ export const heIL: LocalizationResource = { phone_number_exists: 'מספר הטלפון הזה כבר בשימוש. אנא נסה מספר אחר.', session_exists: 'אתה כבר מחובר לחשבון.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'דחית את בקשת החתימה. נסה/י שוב כדי להמשיך.', + web3_solana_signature_generation_failed: 'אירעה שגיאה בעת יצירת החתימה. נסה/י שוב כדי להמשיך.', zxcvbn: { couldBeStronger: 'הסיסמה שלך תקפה, אך יכולה להיות חזקה יותר. נסה להוסיף יותר תווים.', goodPassword: 'עבודה טובה. זו סיסמה מצוינת.', @@ -1301,6 +1301,10 @@ export const heIL: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'ארנקי Web3', title: 'ארנקי Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'בחר/י ארנק Solana כדי לחבר לחשבון שלך.', + title: 'הוסף/י ארנק Solana', + }, }, }, usernamePage: { @@ -1336,9 +1340,10 @@ export const heIL: LocalizationResource = { title: 'תודה שהצטרפת לרשימת ההמתנה!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'התחבר/י עם {{walletName}}', + continue: 'המשך/י עם {{walletName}}', + noneAvailable: + 'לא זוהו ארנקי Solana Web3. נא להתקין {{ solanaWalletsLink || link("wallet extension") }} התומך ב‑Web3.', }, } as const; diff --git a/packages/localizations/src/hi-IN.ts b/packages/localizations/src/hi-IN.ts index 1d41496d578..df111e0fa8e 100644 --- a/packages/localizations/src/hi-IN.ts +++ b/packages/localizations/src/hi-IN.ts @@ -753,8 +753,8 @@ export const hiIN: LocalizationResource = { title: 'दो-चरण सत्यापन', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'साइन इन करने के लिए नीचे एक वॉलेट चुनें', + title: 'Solana के साथ साइन इन करें', }, }, signInEnterPasswordTitle: 'अपना पासवर्ड दर्ज करें', @@ -850,8 +850,8 @@ export const hiIN: LocalizationResource = { titleCombined: 'अपना खाता बनाएं', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'साइन अप करने के लिए नीचे एक वॉलेट चुनें', + title: 'Solana के साथ साइन अप करें', }, }, socialButtonsBlockButton: '{{provider|titleize}} के साथ जारी रखें', @@ -963,8 +963,10 @@ export const hiIN: LocalizationResource = { phone_number_exists: 'यह फोन नंबर पहले से लिया गया है। कृपया दूसरा प्रयास करें।', session_exists: undefined, web3_missing_identifier: 'Web3 वॉलेट एक्सटेंशन नहीं मिल सका। जारी रखने के लिए कृपया एक इंस्टॉल करें।', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: + 'आपने सिग्नेचर अनुरोध अस्वीकार कर दिया है। जारी रखने के लिए कृपया फिर से प्रयास करें।', + web3_solana_signature_generation_failed: + 'सिग्नेचर बनाते समय एक त्रुटि हुई। जारी रखने के लिए कृपया फिर से प्रयास करें।', zxcvbn: { couldBeStronger: 'आपका पासवर्ड काम करता है, लेकिन मजबूत हो सकता है। अधिक अक्षर जोड़ने का प्रयास करें।', goodPassword: 'आपका पासवर्ड सभी आवश्यक आवश्यकताओं को पूरा करता है।', @@ -1334,6 +1336,10 @@ export const hiIN: LocalizationResource = { detailsAction__nonPrimary: 'प्राथमिक के रूप में सेट करें', primaryButton: 'वॉलेट कनेक्ट करें', title: 'Web3 वॉलेट', + web3SelectSolanaWalletScreen: { + subtitle: 'अपने खाते से कनेक्ट करने के लिए एक Solana वॉलेट चुनें।', + title: 'Solana वॉलेट जोड़ें', + }, }, }, usernamePage: { @@ -1369,9 +1375,10 @@ export const hiIN: LocalizationResource = { title: 'प्रतीक्षा सूची में शामिल होने के लिए धन्यवाद!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '{{walletName}} के साथ कनेक्ट करें', + continue: '{{walletName}} के साथ जारी रखें', + noneAvailable: + 'कोई Solana Web3 वॉलेट नहीं मिला। कृपया Web3 समर्थित {{ solanaWalletsLink || link("wallet extension") }} इंस्टॉल करें।', }, } as const; diff --git a/packages/localizations/src/hr-HR.ts b/packages/localizations/src/hr-HR.ts index 9566b910031..e34bd0d9512 100644 --- a/packages/localizations/src/hr-HR.ts +++ b/packages/localizations/src/hr-HR.ts @@ -751,8 +751,8 @@ export const hrHR: LocalizationResource = { title: 'Dvostupanjska verifikacija', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Odaberite novčanik u nastavku za prijavu', + title: 'Prijava putem Solane', }, }, signInEnterPasswordTitle: 'Unesite svoju lozinku', @@ -847,8 +847,8 @@ export const hrHR: LocalizationResource = { titleCombined: 'Kreirajte svoj račun', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Odaberite novčanik u nastavku za registraciju', + title: 'Registracija putem Solane', }, }, socialButtonsBlockButton: 'Nastavite s {{provider|titleize}}', @@ -959,8 +959,9 @@ export const hrHR: LocalizationResource = { phone_number_exists: 'Ovaj telefonski broj je zauzet. Molimo pokušajte s drugim.', session_exists: 'Već ste prijavljeni.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Odbili ste zahtjev za potpis. Pokušajte ponovno za nastavak.', + web3_solana_signature_generation_failed: + 'Došlo je do pogreške pri generiranju potpisa. Pokušajte ponovno za nastavak.', zxcvbn: { couldBeStronger: 'Vaša lozinka funkcionira, ali mogla bi biti jača. Pokušajte dodati više znakova.', goodPassword: 'Vaša lozinka zadovoljava sve potrebne zahtjeve.', @@ -1329,6 +1330,10 @@ export const hrHR: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Poveži novčanik', title: 'Web3 novčanici', + web3SelectSolanaWalletScreen: { + subtitle: 'Odaberite Solana novčanik za povezivanje s vašim računom.', + title: 'Dodaj Solana novčanik', + }, }, }, usernamePage: { @@ -1364,9 +1369,10 @@ export const hrHR: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Poveži se s {{walletName}}', + continue: 'Nastavi s {{walletName}}', + noneAvailable: + 'Nisu otkrivene Solana Web3 novčanike. Instalirajte {{ solanaWalletsLink || link("wallet extension") }} s podrškom za Web3.', }, } as const; diff --git a/packages/localizations/src/hu-HU.ts b/packages/localizations/src/hu-HU.ts index 805c0935632..d8ac2e890b5 100644 --- a/packages/localizations/src/hu-HU.ts +++ b/packages/localizations/src/hu-HU.ts @@ -750,8 +750,8 @@ export const huHU: LocalizationResource = { title: 'Két lépécsős azonosítás', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Válasszon alább egy tárcát a bejelentkezéshez', + title: 'Bejelentkezés Solanával', }, }, signInEnterPasswordTitle: 'Írd be a jelszavad', @@ -844,8 +844,8 @@ export const huHU: LocalizationResource = { titleCombined: 'Fiók létrehozása', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Válasszon alább egy tárcát a regisztrációhoz', + title: 'Regisztráció Solanával', }, }, socialButtonsBlockButton: 'Folytatás {{provider|titleize}} segítségével', @@ -953,8 +953,9 @@ export const huHU: LocalizationResource = { phone_number_exists: 'Ez a telefonszám már foglalt. Kérlek próbálj meg egy másikat.', session_exists: 'Már be vagy jelentkezve.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Elutasította az aláírási kérelmet. Kérjük, próbálja meg újra a folytatáshoz.', + web3_solana_signature_generation_failed: + 'Hiba történt az aláírás létrehozása közben. Kérjük, próbálja meg újra a folytatáshoz.', zxcvbn: { couldBeStronger: 'A jelszavad, jó, de lehetne erősebb. Adj hozzá több karaktert.', goodPassword: 'A jelszavad megfelel az elvárásoknak.', @@ -1326,6 +1327,10 @@ export const huHU: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 tárcák', title: 'Web3 tárcák', + web3SelectSolanaWalletScreen: { + subtitle: 'Válasszon egy Solana tárcát a fiókjához való csatlakozáshoz.', + title: 'Solana tárca hozzáadása', + }, }, }, usernamePage: { @@ -1361,9 +1366,10 @@ export const huHU: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Csatlakozás: {{walletName}}', + continue: 'Folytatás: {{walletName}}', + noneAvailable: + 'Nem észlelhető Solana Web3 tárca. Kérjük, telepítsen egy Web3-kompatibilis {{ solanaWalletsLink || link("wallet extension") }}-t.', }, } as const; diff --git a/packages/localizations/src/id-ID.ts b/packages/localizations/src/id-ID.ts index c82b19178c5..a1b1ad042e7 100644 --- a/packages/localizations/src/id-ID.ts +++ b/packages/localizations/src/id-ID.ts @@ -753,8 +753,8 @@ export const idID: LocalizationResource = { title: 'Verifikasi dua langkah', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Pilih dompet di bawah untuk masuk', + title: 'Masuk dengan Solana', }, }, signInEnterPasswordTitle: 'Masukkan kata sandi Anda', @@ -851,8 +851,8 @@ export const idID: LocalizationResource = { titleCombined: 'Buat akun Anda', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Pilih dompet di bawah untuk mendaftar', + title: 'Daftar dengan Solana', }, }, socialButtonsBlockButton: 'Lanjutkan dengan {{provider|titleize}}', @@ -961,8 +961,9 @@ export const idID: LocalizationResource = { phone_number_exists: 'Nomor telepon ini sudah digunakan. Silakan coba yang lain.', session_exists: 'Anda sudah masuk.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Anda menolak permintaan tanda tangan. Silakan coba lagi untuk melanjutkan.', + web3_solana_signature_generation_failed: + 'Terjadi kesalahan saat membuat tanda tangan. Silakan coba lagi untuk melanjutkan.', zxcvbn: { couldBeStronger: 'Kata sandi Anda berfungsi, tapi bisa lebih kuat. Coba tambahkan lebih banyak karakter.', goodPassword: 'Kata sandi Anda memenuhi semua persyaratan yang diperlukan.', @@ -1322,6 +1323,10 @@ export const idID: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: undefined, title: undefined, + web3SelectSolanaWalletScreen: { + subtitle: 'Pilih dompet Solana untuk dihubungkan ke akun Anda.', + title: 'Tambahkan dompet Solana', + }, }, }, usernamePage: { @@ -1357,9 +1362,10 @@ export const idID: LocalizationResource = { title: 'Terima kasih telah bergabung dengan daftar tunggu!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Hubungkan dengan {{walletName}}', + continue: 'Lanjutkan dengan {{walletName}}', + noneAvailable: + 'Tidak ada dompet Solana Web3 yang terdeteksi. Silakan instal {{ solanaWalletsLink || link("wallet extension") }} yang mendukung Web3.', }, } as const; diff --git a/packages/localizations/src/is-IS.ts b/packages/localizations/src/is-IS.ts index 73cf64c9193..f4f0adc8364 100644 --- a/packages/localizations/src/is-IS.ts +++ b/packages/localizations/src/is-IS.ts @@ -752,8 +752,8 @@ export const isIS: LocalizationResource = { title: 'Tveggja þrepa auðkenning', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Veldu veski hér að neðan til að skrá þig inn', + title: 'Skrá inn með Solana', }, }, signInEnterPasswordTitle: 'Sláðu inn lykilorðið þitt', @@ -847,8 +847,8 @@ export const isIS: LocalizationResource = { titleCombined: 'Stofna reikning', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Veldu veski hér að neðan til að skrá þig', + title: 'Skráðu þig með Solana', }, }, socialButtonsBlockButton: 'Halda áfram með {{provider|titleize}}', @@ -956,8 +956,9 @@ export const isIS: LocalizationResource = { phone_number_exists: 'Þetta símanúmer er þegar í notkun. Vinsamlegast reyndu annað.', session_exists: 'Þú ert nú þegar innskráður.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Þú hafðir hafnað beiðni um undirritun. Reyndu aftur til að halda áfram.', + web3_solana_signature_generation_failed: + 'Villa kom upp við að búa til undirritun. Reyndu aftur til að halda áfram.', zxcvbn: { couldBeStronger: 'Lykilorðið þitt virkar, en gæti verið sterkara. Reyndu að bæta við fleiri stöfum.', goodPassword: 'Lykilorðið þitt uppfyllir allar nauðsynlegar kröfur.', @@ -1329,6 +1330,10 @@ export const isIS: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 veski', title: 'Web3 veski', + web3SelectSolanaWalletScreen: { + subtitle: 'Veldu Solana-veski til að tengja við aðganginn þinn.', + title: 'Bæta við Solana-veski', + }, }, }, usernamePage: { @@ -1364,9 +1369,10 @@ export const isIS: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Tengjast með {{walletName}}', + continue: 'Halda áfram með {{walletName}}', + noneAvailable: + 'Engin Solana Web3 veski fundust. Vinsamlegast settu upp Web3-stutt {{ solanaWalletsLink || link("wallet extension") }}.', }, } as const; diff --git a/packages/localizations/src/it-IT.ts b/packages/localizations/src/it-IT.ts index 23f65f8e5f6..af54025881b 100644 --- a/packages/localizations/src/it-IT.ts +++ b/packages/localizations/src/it-IT.ts @@ -757,8 +757,8 @@ export const itIT: LocalizationResource = { title: 'Verifica in due passaggi', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Seleziona un wallet qui sotto per accedere', + title: 'Accedi con Solana', }, }, signInEnterPasswordTitle: 'Inserisci la tua password', @@ -853,8 +853,8 @@ export const itIT: LocalizationResource = { titleCombined: 'Crea il tuo account', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Seleziona un wallet qui sotto per registrarti', + title: 'Registrati con Solana', }, }, socialButtonsBlockButton: 'Continua con {{provider|titleize}}', @@ -960,8 +960,9 @@ export const itIT: LocalizationResource = { phone_number_exists: 'Questo numero di telefono è già in uso. Per favore, prova con un altro.', session_exists: 'Sei già loggato.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Hai rifiutato la richiesta di firma. Riprova per continuare.', + web3_solana_signature_generation_failed: + 'Si è verificato un errore durante la generazione della firma. Riprova per continuare.', zxcvbn: { couldBeStronger: undefined, goodPassword: undefined, @@ -1334,6 +1335,10 @@ export const itIT: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 wallets', title: 'Web3 wallets', + web3SelectSolanaWalletScreen: { + subtitle: 'Seleziona un wallet Solana da collegare al tuo account.', + title: 'Aggiungi un wallet Solana', + }, }, }, usernamePage: { @@ -1369,9 +1374,10 @@ export const itIT: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Connetti con {{walletName}}', + continue: 'Continua con {{walletName}}', + noneAvailable: + 'Nessun wallet Solana Web3 rilevato. Installa un {{ solanaWalletsLink || link("wallet extension") }} compatibile con Web3.', }, } as const; diff --git a/packages/localizations/src/ja-JP.ts b/packages/localizations/src/ja-JP.ts index 55680e0066a..6c4d35d7620 100644 --- a/packages/localizations/src/ja-JP.ts +++ b/packages/localizations/src/ja-JP.ts @@ -760,8 +760,8 @@ export const jaJP: LocalizationResource = { title: '二段階認証', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'サインインするには下のウォレットを選択してください', + title: 'Solana でサインイン', }, }, signInEnterPasswordTitle: 'パスワードを入力してください', @@ -857,8 +857,8 @@ export const jaJP: LocalizationResource = { titleCombined: 'アカウントを作成', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'サインアップするには下のウォレットを選択してください', + title: 'Solana でサインアップ', }, }, socialButtonsBlockButton: '{{provider|titleize}}で続ける', @@ -968,8 +968,8 @@ export const jaJP: LocalizationResource = { phone_number_exists: undefined, session_exists: undefined, web3_missing_identifier: 'Web3ウォレット拡張機能が見つかりません。続行するにはインストールしてください。', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: '署名リクエストを拒否しました。続行するにはもう一度お試しください。', + web3_solana_signature_generation_failed: '署名の生成中にエラーが発生しました。続行するにはもう一度お試しください。', zxcvbn: { couldBeStronger: 'パスワードは有効ですが、もう少し強化できます。文字を追加してみてください。', goodPassword: 'パスワードはすべての要件を満たしています。', @@ -1336,6 +1336,10 @@ export const jaJP: LocalizationResource = { detailsAction__nonPrimary: 'プライマリに設定する', primaryButton: 'ウォレットを接続', title: 'Web3ウォレット', + web3SelectSolanaWalletScreen: { + subtitle: 'アカウントに接続する Solana ウォレットを選択してください。', + title: 'Solana ウォレットを追加', + }, }, }, usernamePage: { @@ -1371,9 +1375,10 @@ export const jaJP: LocalizationResource = { title: '待機リストへの参加ありがとうございます!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '{{walletName}} で接続', + continue: '{{walletName}} で続行', + noneAvailable: + 'Solana Web3 ウォレットが検出されませんでした。Web3 に対応した {{ solanaWalletsLink || link("wallet extension") }} をインストールしてください。', }, } as const; diff --git a/packages/localizations/src/kk-KZ.ts b/packages/localizations/src/kk-KZ.ts index 39bcce55757..b0bc1d0a43c 100644 --- a/packages/localizations/src/kk-KZ.ts +++ b/packages/localizations/src/kk-KZ.ts @@ -742,8 +742,8 @@ export const kkKZ: LocalizationResource = { title: 'Екі қадамды растау', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Кіру үшін төменде әмиянды таңдаңыз', + title: 'Solana арқылы кіру', }, }, signInEnterPasswordTitle: 'Құпия сөзді енгізіңіз', @@ -837,8 +837,8 @@ export const kkKZ: LocalizationResource = { titleCombined: 'Есептік жазбаны құру', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Тіркелу үшін төменде әмиянды таңдаңыз', + title: 'Solana арқылы тіркелу', }, }, socialButtonsBlockButton: '{{provider|titleize}} арқылы жалғастыру', @@ -942,8 +942,9 @@ export const kkKZ: LocalizationResource = { phone_number_exists: 'Бұл телефон нөмірі тіркелген. Басқасын қолданыңыз.', session_exists: undefined, web3_missing_identifier: 'Web3 Wallet кеңейтуі табылмады. Орнатыңыз.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Сіз қолтаңба сұрауын қабылдамадыңыз. Жалғастыру үшін қайтадан көріңіз.', + web3_solana_signature_generation_failed: + 'Қолтаңбаны жасау кезінде қате орын алды. Жалғастыру үшін қайтадан көріңіз.', zxcvbn: { couldBeStronger: 'Құпия сөз әлсіз. Таңбалар санын көбейтіңіз.', goodPassword: 'Құпия сөз талаптарға сай.', @@ -1302,6 +1303,10 @@ export const kkKZ: LocalizationResource = { detailsAction__nonPrimary: 'Негізгі ретінде орнату', primaryButton: 'Әптәпқалманы қосу', title: 'Web3 әптәпқалмалары', + web3SelectSolanaWalletScreen: { + subtitle: 'Есептік жазбаңызға қосу үшін Solana әмиянын таңдаңыз.', + title: 'Solana әмиянын қосу', + }, }, }, usernamePage: { @@ -1337,9 +1342,10 @@ export const kkKZ: LocalizationResource = { title: 'Күту тізіміне қосылғаныңыз үшін рақмет!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '{{walletName}} арқылы қосылу', + continue: '{{walletName}} арқылы жалғастыру', + noneAvailable: + 'Solana Web3 әмияндары табылмады. Web3 қолдайтын {{ solanaWalletsLink || link("wallet extension") }} орнатыңыз.', }, } as const; diff --git a/packages/localizations/src/ko-KR.ts b/packages/localizations/src/ko-KR.ts index b61212b0d2b..39334dd0346 100644 --- a/packages/localizations/src/ko-KR.ts +++ b/packages/localizations/src/ko-KR.ts @@ -744,8 +744,8 @@ export const koKR: LocalizationResource = { title: '2단계 인증', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: '로그인하려면 아래에서 지갑을 선택하세요', + title: 'Solana로 로그인', }, }, signInEnterPasswordTitle: '비밀번호를 입력하세요', @@ -838,8 +838,8 @@ export const koKR: LocalizationResource = { titleCombined: '계정 만들기', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: '가입하려면 아래에서 지갑을 선택하세요', + title: 'Solana로 가입', }, }, socialButtonsBlockButton: '{{provider|titleize}}로 계속하기', @@ -945,8 +945,8 @@ export const koKR: LocalizationResource = { phone_number_exists: '이 전화번호는 이미 사용중입니다. 다른 번호를 시도해 주세요.', session_exists: '이미 로그인 중입니다.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: '서명 요청을 거부했습니다. 계속하려면 다시 시도해 주세요.', + web3_solana_signature_generation_failed: '서명을 생성하는 동안 오류가 발생했습니다. 계속하려면 다시 시도해 주세요.', zxcvbn: { couldBeStronger: '비밀번호는 작동하지만 더 강력할 수 있습니다. 문자를 더 추가해 보세요.', goodPassword: '수고하셨습니다. 훌륭한 비밀번호입니다.', @@ -1308,6 +1308,10 @@ export const koKR: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 지갑', title: 'Web3 지갑', + web3SelectSolanaWalletScreen: { + subtitle: '계정에 연결할 Solana 지갑을 선택하세요.', + title: 'Solana 지갑 추가', + }, }, }, usernamePage: { @@ -1343,9 +1347,10 @@ export const koKR: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '{{walletName}}(으)로 연결', + continue: '{{walletName}}(으)로 계속', + noneAvailable: + 'Solana Web3 지갑을 찾을 수 없습니다. Web3를 지원하는 {{ solanaWalletsLink || link("wallet extension") }}을(를) 설치해 주세요.', }, } as const; diff --git a/packages/localizations/src/mn-MN.ts b/packages/localizations/src/mn-MN.ts index 52891cfe5bf..f609c667c9c 100644 --- a/packages/localizations/src/mn-MN.ts +++ b/packages/localizations/src/mn-MN.ts @@ -751,8 +751,8 @@ export const mnMN: LocalizationResource = { title: 'Two-step баталгаажуулалт', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Нэвтрэхийн тулд доороос түрийвч сонгоно уу', + title: 'Solana-аар нэвтрэх', }, }, signInEnterPasswordTitle: 'Нууц үгээ оруулна уу', @@ -845,8 +845,8 @@ export const mnMN: LocalizationResource = { titleCombined: 'Бүртгэл үүсгэх', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Бүртгүүлэхийн тулд доороос түрийвч сонгоно уу', + title: 'Solana-аар бүртгүүлэх', }, }, socialButtonsBlockButton: '{{provider|titleize}}-р үргэлжлүүлэх', @@ -953,8 +953,10 @@ export const mnMN: LocalizationResource = { phone_number_exists: 'Энэ утасны дугаарыг авсан. Өөр оролдоно уу.', session_exists: 'Та аль хэдийн нэвтэрсэн байна.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: + 'Та гарын үсгийн хүсэлтийг цуцалсан байна. Үргэлжлүүлэхийн тулд дахин оролдоно уу.', + web3_solana_signature_generation_failed: + 'Гарын үсэг үүсгэх үед алдаа гарлаа. Үргэлжлүүлэхийн тулд дахин оролдоно уу.', zxcvbn: { couldBeStronger: 'Таны нууц үг ажилладаг, гэхдээ илүү хүчтэй байж болно. Илүү олон тэмдэгт нэмж үзээрэй.', goodPassword: 'Таны нууц үг шаардлагатай бүх шаардлагыг хангаж байна.', @@ -1324,6 +1326,10 @@ export const mnMN: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 wallets', title: 'Web3 wallets', + web3SelectSolanaWalletScreen: { + subtitle: 'Өөрийн бүртгэлтэй холбох Solana түрийвч сонгоно уу.', + title: 'Solana түрийвч нэмэх', + }, }, }, usernamePage: { @@ -1359,9 +1365,10 @@ export const mnMN: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '{{walletName}}-аар холбох', + continue: '{{walletName}}-аар үргэлжлүүлэх', + noneAvailable: + 'Solana Web3 түрийвч илрээгүй. Web3-ийг дэмждэг {{ solanaWalletsLink || link("wallet extension") }} суулгана уу.', }, } as const; diff --git a/packages/localizations/src/ms-MY.ts b/packages/localizations/src/ms-MY.ts index e4f32b39902..71fea153455 100644 --- a/packages/localizations/src/ms-MY.ts +++ b/packages/localizations/src/ms-MY.ts @@ -755,8 +755,8 @@ export const msMY: LocalizationResource = { title: 'Pengesahan dua langkah', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Pilih dompet di bawah untuk log masuk', + title: 'Log masuk dengan Solana', }, }, signInEnterPasswordTitle: 'Masukkan kata laluan anda', @@ -853,8 +853,8 @@ export const msMY: LocalizationResource = { titleCombined: 'Cipta akaun anda', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Pilih dompet di bawah untuk mendaftar', + title: 'Daftar dengan Solana', }, }, socialButtonsBlockButton: 'Teruskan dengan {{provider|titleize}}', @@ -968,8 +968,9 @@ export const msMY: LocalizationResource = { phone_number_exists: 'Nombor telefon ini telah diambil. Sila cuba yang lain.', session_exists: undefined, web3_missing_identifier: 'Sambungan Dompet Web3 tidak dapat dijumpai. Sila pasang satu untuk meneruskan.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Anda telah menolak permintaan tandatangan. Sila cuba lagi untuk meneruskan.', + web3_solana_signature_generation_failed: + 'Ralat berlaku semasa menjana tandatangan. Sila cuba lagi untuk meneruskan.', zxcvbn: { couldBeStronger: 'Kata laluan anda berfungsi, tetapi boleh lebih kuat. Cuba tambah lebih banyak aksara.', goodPassword: 'Kata laluan anda memenuhi semua keperluan yang diperlukan.', @@ -1342,6 +1343,10 @@ export const msMY: LocalizationResource = { detailsAction__nonPrimary: 'Tetapkan sebagai utama', primaryButton: 'Sambung dompet', title: 'Dompet web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Pilih dompet Solana untuk disambungkan ke akaun anda.', + title: 'Tambah dompet Solana', + }, }, }, usernamePage: { @@ -1377,9 +1382,10 @@ export const msMY: LocalizationResource = { title: 'Terima kasih kerana menyertai senarai menunggu!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Sambung dengan {{walletName}}', + continue: 'Teruskan dengan {{walletName}}', + noneAvailable: + 'Tiada dompet Solana Web3 dikesan. Sila pasang {{ solanaWalletsLink || link("wallet extension") }} yang menyokong Web3.', }, } as const; diff --git a/packages/localizations/src/nb-NO.ts b/packages/localizations/src/nb-NO.ts index 6f66ed51d11..d2d2505a982 100644 --- a/packages/localizations/src/nb-NO.ts +++ b/packages/localizations/src/nb-NO.ts @@ -750,8 +750,8 @@ export const nbNO: LocalizationResource = { title: 'To-trinns verifisering', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Velg en lommebok nedenfor for å logge inn', + title: 'Logg inn med Solana', }, }, signInEnterPasswordTitle: 'Skriv inn passordet ditt', @@ -844,8 +844,8 @@ export const nbNO: LocalizationResource = { titleCombined: 'Opprett kontoen din', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Velg en lommebok nedenfor for å registrere deg', + title: 'Registrer deg med Solana', }, }, socialButtonsBlockButton: 'Fortsett med {{provider|titleize}}', @@ -952,8 +952,9 @@ export const nbNO: LocalizationResource = { phone_number_exists: 'Dette telefonnummeret er allerede i bruk. Vennligst bruk et annet telefonnummer.', session_exists: 'Du er allerede logget inn.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Du avviste signaturforespørselen. Prøv igjen for å fortsette.', + web3_solana_signature_generation_failed: + 'Det oppstod en feil under generering av signaturen. Prøv igjen for å fortsette.', zxcvbn: { couldBeStronger: 'Passordet ditt fungerer, men det kan være sterkere. Prøv å legge til flere tegn.', goodPassword: 'Godt jobbet. Dette er et utmerket passord.', @@ -1323,6 +1324,10 @@ export const nbNO: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3-lommebøker', title: 'Web3-lommebøker', + web3SelectSolanaWalletScreen: { + subtitle: 'Velg en Solana-lommebok for å koble den til kontoen din.', + title: 'Legg til en Solana-lommebok', + }, }, }, usernamePage: { @@ -1358,9 +1363,10 @@ export const nbNO: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Koble til med {{walletName}}', + continue: 'Fortsett med {{walletName}}', + noneAvailable: + 'Ingen Solana Web3-lommebøker ble funnet. Installer en Web3-støttet {{ solanaWalletsLink || link("wallet extension") }}.', }, } as const; diff --git a/packages/localizations/src/nl-BE.ts b/packages/localizations/src/nl-BE.ts index c72c33cc668..c95126847cb 100644 --- a/packages/localizations/src/nl-BE.ts +++ b/packages/localizations/src/nl-BE.ts @@ -750,8 +750,8 @@ export const nlBE: LocalizationResource = { title: 'Tweestapsverificatie', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecteer hieronder een wallet om in te loggen', + title: 'Inloggen met Solana', }, }, signInEnterPasswordTitle: 'Vul je wachtwoord in', @@ -845,8 +845,8 @@ export const nlBE: LocalizationResource = { titleCombined: 'Maak je account aan', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecteer hieronder een wallet om je te registreren', + title: 'Registreren met Solana', }, }, socialButtonsBlockButton: 'Ga verder met {{provider|titleize}}', @@ -952,8 +952,10 @@ export const nlBE: LocalizationResource = { phone_number_exists: 'Dit telefoonnummer is al in gebruik. Probeer een ander nummer.', session_exists: 'Je bent al ingelogd.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: + 'Je hebt het handtekeningverzoek afgewezen. Probeer het opnieuw om verder te gaan.', + web3_solana_signature_generation_failed: + 'Er is een fout opgetreden bij het genereren van de handtekening. Probeer het opnieuw om verder te gaan.', zxcvbn: { couldBeStronger: 'Je wachtwoord werkt, maar kan sterker zijn. Probeer meer tekens toe te voegen.', goodPassword: 'Je wachtwoord voldoet aan alle vereisten.', @@ -1321,6 +1323,10 @@ export const nlBE: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 portefeuilles', title: 'Web3 portefeuilles', + web3SelectSolanaWalletScreen: { + subtitle: 'Selecteer een Solana-wallet om aan je account te koppelen.', + title: 'Solana-wallet toevoegen', + }, }, }, usernamePage: { @@ -1356,9 +1362,10 @@ export const nlBE: LocalizationResource = { title: 'Succes!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Verbinden met {{walletName}}', + continue: 'Doorgaan met {{walletName}}', + noneAvailable: + 'Geen Solana Web3-wallets gedetecteerd. Installeer een Web3-ondersteunde {{ solanaWalletsLink || link("wallet extension") }}.', }, } as const; diff --git a/packages/localizations/src/nl-NL.ts b/packages/localizations/src/nl-NL.ts index f8b60f439f1..dd3dc3a584e 100644 --- a/packages/localizations/src/nl-NL.ts +++ b/packages/localizations/src/nl-NL.ts @@ -750,8 +750,8 @@ export const nlNL: LocalizationResource = { title: 'Tweestapsverificatie', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecteer hieronder een wallet om in te loggen', + title: 'Inloggen met Solana', }, }, signInEnterPasswordTitle: 'Vul je wachtwoord in', @@ -845,8 +845,8 @@ export const nlNL: LocalizationResource = { titleCombined: 'Maak je account aan', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecteer hieronder een wallet om je te registreren', + title: 'Registreren met Solana', }, }, socialButtonsBlockButton: 'Ga verder met {{provider|titleize}}', @@ -952,8 +952,10 @@ export const nlNL: LocalizationResource = { phone_number_exists: 'Dit telefoonnummer is al in gebruik. Probeer een ander nummer.', session_exists: 'Je bent al ingelogd.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: + 'Je hebt het handtekeningverzoek afgewezen. Probeer het opnieuw om verder te gaan.', + web3_solana_signature_generation_failed: + 'Er is een fout opgetreden bij het genereren van de handtekening. Probeer het opnieuw om verder te gaan.', zxcvbn: { couldBeStronger: 'Je wachtwoord werkt, maar kan sterker zijn. Probeer meer tekens toe te voegen.', goodPassword: 'Je wachtwoord voldoet aan alle vereisten.', @@ -1321,6 +1323,10 @@ export const nlNL: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 portefeuilles', title: 'Web3 portefeuilles', + web3SelectSolanaWalletScreen: { + subtitle: 'Selecteer een Solana-wallet om aan je account te koppelen.', + title: 'Solana-wallet toevoegen', + }, }, }, usernamePage: { @@ -1356,9 +1362,10 @@ export const nlNL: LocalizationResource = { title: 'Succes!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Verbinden met {{walletName}}', + continue: 'Doorgaan met {{walletName}}', + noneAvailable: + 'Geen Solana Web3-wallets gedetecteerd. Installeer een Web3-ondersteunde {{ solanaWalletsLink || link("wallet extension") }}.', }, } as const; diff --git a/packages/localizations/src/pl-PL.ts b/packages/localizations/src/pl-PL.ts index e41cbc6878d..616575e7482 100644 --- a/packages/localizations/src/pl-PL.ts +++ b/packages/localizations/src/pl-PL.ts @@ -752,8 +752,8 @@ export const plPL: LocalizationResource = { title: 'Weryfikacja dwustopniowa', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Wybierz poniżej portfel, aby się zalogować', + title: 'Zaloguj się przez Solana', }, }, signInEnterPasswordTitle: 'Wprowadź swoje hasło', @@ -850,8 +850,8 @@ export const plPL: LocalizationResource = { titleCombined: 'Utwórz swoje konto', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Wybierz poniżej portfel, aby się zarejestrować', + title: 'Zarejestruj się przez Solana', }, }, socialButtonsBlockButton: 'Kontynuuj z {{provider|titleize}}', @@ -961,8 +961,9 @@ export const plPL: LocalizationResource = { phone_number_exists: 'Numer telefonu jest już zajęty. Proszę spróbować innego.', session_exists: 'Jesteś już zalogowany.', web3_missing_identifier: 'Nie można znaleźć rozszerzenia Web3 Wallet. Zainstaluj je, aby kontynuować.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Odrzuciłeś prośbę o podpis. Spróbuj ponownie, aby kontynuować.', + web3_solana_signature_generation_failed: + 'Wystąpił błąd podczas generowania podpisu. Spróbuj ponownie, aby kontynuować.', zxcvbn: { couldBeStronger: 'Twoje hasło jest odpowiednie, ale mogłoby być silniejsze. Spróbuj dodać więcej znaków.', goodPassword: 'Twoje hasło jest wystarczająco silne.', @@ -1333,6 +1334,10 @@ export const plPL: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Portfele Web3', title: 'Portfele Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Wybierz portfel Solana, aby połączyć go z kontem.', + title: 'Dodaj portfel Solana', + }, }, }, usernamePage: { @@ -1368,9 +1373,10 @@ export const plPL: LocalizationResource = { title: 'Dziękujemy za dołączenie do listy oczekujących!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Połącz z {{walletName}}', + continue: 'Kontynuuj z {{walletName}}', + noneAvailable: + 'Nie wykryto portfeli Solana Web3. Zainstaluj {{ solanaWalletsLink || link("wallet extension") }} obsługujący Web3.', }, } as const; diff --git a/packages/localizations/src/pt-BR.ts b/packages/localizations/src/pt-BR.ts index 1b2e338caed..9041a4e7573 100644 --- a/packages/localizations/src/pt-BR.ts +++ b/packages/localizations/src/pt-BR.ts @@ -759,8 +759,8 @@ export const ptBR: LocalizationResource = { title: 'Verificação em duas etapas', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecione uma carteira abaixo para entrar', + title: 'Entrar com Solana', }, }, signInEnterPasswordTitle: 'Insira sua senha', @@ -857,8 +857,8 @@ export const ptBR: LocalizationResource = { titleCombined: 'Criar sua conta', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecione uma carteira abaixo para se cadastrar', + title: 'Cadastrar-se com Solana', }, }, socialButtonsBlockButton: 'Continuar com {{provider|titleize}}', @@ -969,8 +969,8 @@ export const ptBR: LocalizationResource = { session_exists: 'Você já está conectado.', web3_missing_identifier: 'Uma extensão de carteira Web3 não pode ser encontrada. Por favor, instale uma para continuar.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Você rejeitou a solicitação de assinatura. Tente novamente para continuar.', + web3_solana_signature_generation_failed: 'Ocorreu um erro ao gerar a assinatura. Tente novamente para continuar.', zxcvbn: { couldBeStronger: 'Sua senha funciona, mas poderia ser mais forte. Tente adicionar mais caracteres.', goodPassword: 'Sua senha atende a todos os requisitos necessários.', @@ -1343,6 +1343,10 @@ export const ptBR: LocalizationResource = { detailsAction__nonPrimary: 'Definir como principal', primaryButton: 'Carteiras Web3', title: 'Carteiras Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Selecione uma carteira Solana para conectar à sua conta.', + title: 'Adicionar uma carteira Solana', + }, }, }, usernamePage: { @@ -1378,9 +1382,10 @@ export const ptBR: LocalizationResource = { title: 'Obrigado por entrar na lista de espera!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Conectar com {{walletName}}', + continue: 'Continuar com {{walletName}}', + noneAvailable: + 'Nenhuma carteira Solana Web3 foi detectada. Instale uma {{ solanaWalletsLink || link("wallet extension") }} compatível com Web3.', }, } as const; diff --git a/packages/localizations/src/pt-PT.ts b/packages/localizations/src/pt-PT.ts index 10dd7d3af09..37b6386e256 100644 --- a/packages/localizations/src/pt-PT.ts +++ b/packages/localizations/src/pt-PT.ts @@ -748,8 +748,8 @@ export const ptPT: LocalizationResource = { title: 'Verificação de duas etapas', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecione uma carteira abaixo para iniciar sessão', + title: 'Iniciar sessão com Solana', }, }, signInEnterPasswordTitle: 'Insira a sua palavra-passe', @@ -843,8 +843,8 @@ export const ptPT: LocalizationResource = { titleCombined: 'Criar a sua conta', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selecione uma carteira abaixo para se registar', + title: 'Registar-se com Solana', }, }, socialButtonsBlockButton: 'Continuar com {{provider|titleize}}', @@ -953,8 +953,8 @@ export const ptPT: LocalizationResource = { phone_number_exists: 'Este número de telemóvel já está em uso. Por favor, tente outro.', session_exists: 'Já está conectado.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Rejeitou o pedido de assinatura. Tente novamente para continuar.', + web3_solana_signature_generation_failed: 'Ocorreu um erro ao gerar a assinatura. Tente novamente para continuar.', zxcvbn: { couldBeStronger: 'A sua palavra-passe funciona, mas poderia ser mais forte. Tente adicionar mais caracteres.', goodPassword: 'A sua palavra-passe atende a todos os requisitos necessários.', @@ -1323,6 +1323,10 @@ export const ptPT: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Carteiras Web3', title: 'Carteiras Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Selecione uma carteira Solana para ligar à sua conta.', + title: 'Adicionar uma carteira Solana', + }, }, }, usernamePage: { @@ -1358,9 +1362,10 @@ export const ptPT: LocalizationResource = { title: 'Inscrição bem-sucedida na lista de espera', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Conectar com {{walletName}}', + continue: 'Continuar com {{walletName}}', + noneAvailable: + 'Não foram detetadas carteiras Solana Web3. Instale uma {{ solanaWalletsLink || link("wallet extension") }} com suporte Web3.', }, } as const; diff --git a/packages/localizations/src/ro-RO.ts b/packages/localizations/src/ro-RO.ts index 71650af37e7..3bc2a766317 100644 --- a/packages/localizations/src/ro-RO.ts +++ b/packages/localizations/src/ro-RO.ts @@ -761,8 +761,8 @@ export const roRO: LocalizationResource = { title: 'Verificare în doi pași', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selectați un portofel mai jos pentru a vă conecta', + title: 'Conectare cu Solana', }, }, signInEnterPasswordTitle: 'Introdu parola', @@ -858,8 +858,8 @@ export const roRO: LocalizationResource = { titleCombined: 'Creează-ți contul', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Selectați un portofel mai jos pentru a vă înregistra', + title: 'Înregistrare cu Solana', }, }, socialButtonsBlockButton: 'Continuă cu {{provider|titleize}}', @@ -970,8 +970,9 @@ export const roRO: LocalizationResource = { phone_number_exists: undefined, session_exists: undefined, web3_missing_identifier: 'Nu am găsit o extensie pentru portofel Web3. Te rugăm instalează una pentru a continua.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Ați respins solicitarea de semnătură. Încercați din nou pentru a continua.', + web3_solana_signature_generation_failed: + 'A apărut o eroare la generarea semnăturii. Încercați din nou pentru a continua.', zxcvbn: { couldBeStronger: 'Parola ta funcționează, dar ar putea fi mai puternică. Încearcă să adaugi mai multe caractere.', goodPassword: 'Parola ta îndeplinește toate cerințele necesare.', @@ -1340,6 +1341,10 @@ export const roRO: LocalizationResource = { detailsAction__nonPrimary: 'Setează ca principal', primaryButton: 'Conectează portofel', title: 'Portofele Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Selectați un portofel Solana pentru a-l conecta la contul dvs.', + title: 'Adăugați un portofel Solana', + }, }, }, usernamePage: { @@ -1375,9 +1380,10 @@ export const roRO: LocalizationResource = { title: 'Mulțumim pentru înscriere!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Conectează cu {{walletName}}', + continue: 'Continuă cu {{walletName}}', + noneAvailable: + 'Nu s-au detectat portofele Solana Web3. Instalați un {{ solanaWalletsLink || link("wallet extension") }} compatibil cu Web3.', }, } as const; diff --git a/packages/localizations/src/ru-RU.ts b/packages/localizations/src/ru-RU.ts index c71374c68dc..16feb9eb22d 100644 --- a/packages/localizations/src/ru-RU.ts +++ b/packages/localizations/src/ru-RU.ts @@ -759,8 +759,8 @@ export const ruRU: LocalizationResource = { title: 'Двухфакторная верификация', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Выберите кошелёк ниже, чтобы войти', + title: 'Войти через Solana', }, }, signInEnterPasswordTitle: 'Введите Ваш пароль', @@ -857,8 +857,8 @@ export const ruRU: LocalizationResource = { titleCombined: 'Создайте Вашу учетную запись', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Выберите кошелёк ниже, чтобы зарегистрироваться', + title: 'Зарегистрироваться через Solana', }, }, socialButtonsBlockButton: 'Продолжить с помощью {{provider|titleize}}', @@ -969,8 +969,10 @@ export const ruRU: LocalizationResource = { phone_number_exists: 'Этот номер телефона уже занят. Пожалуйста, попробуйте другой.', session_exists: 'Вы уже вошли в систему.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: + 'Вы отклонили запрос на подпись. Пожалуйста, попробуйте ещё раз, чтобы продолжить.', + web3_solana_signature_generation_failed: + 'Произошла ошибка при создании подписи. Пожалуйста, попробуйте ещё раз, чтобы продолжить.', zxcvbn: { couldBeStronger: 'Ваш пароль подходит, но мог бы быть надежнее. Попробуйте добавить больше символов.', goodPassword: 'Хорошая работа. Это отличный пароль.', @@ -1345,6 +1347,10 @@ export const ruRU: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 кошельки', title: 'Web3 кошельки', + web3SelectSolanaWalletScreen: { + subtitle: 'Выберите кошелёк Solana для подключения к вашему аккаунту.', + title: 'Добавить кошелёк Solana', + }, }, }, usernamePage: { @@ -1380,9 +1386,10 @@ export const ruRU: LocalizationResource = { title: 'Спасибо за присоединение к списку ожидания!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Подключиться через {{walletName}}', + continue: 'Продолжить через {{walletName}}', + noneAvailable: + 'Кошельки Solana Web3 не обнаружены. Установите {{ solanaWalletsLink || link("wallet extension") }} с поддержкой Web3.', }, } as const; diff --git a/packages/localizations/src/sk-SK.ts b/packages/localizations/src/sk-SK.ts index a3e6095c0cd..5463cfcffc4 100644 --- a/packages/localizations/src/sk-SK.ts +++ b/packages/localizations/src/sk-SK.ts @@ -752,8 +752,8 @@ export const skSK: LocalizationResource = { title: 'Dvojfaktorové overenie', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Vyberte nižšie peňaženku na prihlásenie', + title: 'Prihlásiť sa cez Solana', }, }, signInEnterPasswordTitle: 'Zadajte svoje heslo', @@ -850,8 +850,8 @@ export const skSK: LocalizationResource = { titleCombined: 'Vytvorte si účet', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Vyberte nižšie peňaženku na registráciu', + title: 'Zaregistrovať sa cez Solana', }, }, socialButtonsBlockButton: 'Pokračovať s {{provider|titleize}}', @@ -960,8 +960,9 @@ export const skSK: LocalizationResource = { phone_number_exists: 'Toto telefónne číslo je už obsadené. Skúste prosím iné.', session_exists: 'Jste už přihlášen.', web3_missing_identifier: 'Rozšírenie Web3 Peňaženky nebolo nájdené. Je potrebné ho nainštalovať.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Odmietli ste žiadosť o podpis. Skúste to znova, aby ste mohli pokračovať.', + web3_solana_signature_generation_failed: + 'Pri generovaní podpisu sa vyskytla chyba. Skúste to znova, aby ste mohli pokračovať.', zxcvbn: { couldBeStronger: 'Vaše heslo funguje, ale mohlo by byť silnejšie. Skúste pridať viac znakov.', goodPassword: 'Dobrá práca. Toto je vynikajúce heslo.', @@ -1330,6 +1331,10 @@ export const skSK: LocalizationResource = { detailsAction__nonPrimary: 'Nastaiť ako hlavnú', primaryButton: 'Web3 peňaženky', title: 'Web3 peňaženky', + web3SelectSolanaWalletScreen: { + subtitle: 'Vyberte Solana peňaženku na pripojenie k vášmu účtu.', + title: 'Pridať Solana peňaženku', + }, }, }, usernamePage: { @@ -1365,9 +1370,10 @@ export const skSK: LocalizationResource = { title: 'Ďakujeme, že ste sa pridali na waitlist!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Pripojiť pomocou {{walletName}}', + continue: 'Pokračovať pomocou {{walletName}}', + noneAvailable: + 'Neboli zistené žiadne Solana Web3 peňaženky. Nainštalujte si {{ solanaWalletsLink || link("wallet extension") }} s podporou Web3.', }, } as const; diff --git a/packages/localizations/src/sr-RS.ts b/packages/localizations/src/sr-RS.ts index 766a3168ec4..8d2046d4c75 100644 --- a/packages/localizations/src/sr-RS.ts +++ b/packages/localizations/src/sr-RS.ts @@ -749,8 +749,8 @@ export const srRS: LocalizationResource = { title: 'Dvostepena verifikacija', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Izaberi novčanik ispod da se prijaviš', + title: 'Prijavi se sa Solana', }, }, signInEnterPasswordTitle: 'Unesi svoju lozinku', @@ -843,8 +843,8 @@ export const srRS: LocalizationResource = { titleCombined: 'Kreiraj svoj nalog', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Izaberi novčanik ispod da se registruješ', + title: 'Registruj se sa Solana', }, }, socialButtonsBlockButton: 'Nastavi sa {{provider|titleize}}', @@ -952,8 +952,8 @@ export const srRS: LocalizationResource = { phone_number_exists: 'Ovaj telefonski broj je zauzet. Molimo pokušaj sa drugim.', session_exists: 'Već ste prijavljeni.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Odbio/la si zahtev za potpis. Pokušaj ponovo da nastaviš.', + web3_solana_signature_generation_failed: 'Došlo je do greške pri generisanju potpisa. Pokušaj ponovo da nastaviš.', zxcvbn: { couldBeStronger: 'Tvoja lozinka funkcioniše, ali može biti jača. Pokušaj dodati više karaktera.', goodPassword: 'Tvoja lozinka ispunjava sve potrebne zahteve.', @@ -1322,6 +1322,10 @@ export const srRS: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 novčanici', title: 'Web3 novčanici', + web3SelectSolanaWalletScreen: { + subtitle: 'Izaberi Solana novčanik da ga povežeš sa svojim nalogom.', + title: 'Dodaj Solana novčanik', + }, }, }, usernamePage: { @@ -1357,9 +1361,10 @@ export const srRS: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Poveži se sa {{walletName}}', + continue: 'Nastavi sa {{walletName}}', + noneAvailable: + 'Nisu detektovani Solana Web3 novčanici. Instaliraj {{ solanaWalletsLink || link("wallet extension") }} koji podržava Web3.', }, } as const; diff --git a/packages/localizations/src/sv-SE.ts b/packages/localizations/src/sv-SE.ts index 244d159655d..047762631db 100644 --- a/packages/localizations/src/sv-SE.ts +++ b/packages/localizations/src/sv-SE.ts @@ -752,8 +752,8 @@ export const svSE: LocalizationResource = { title: 'Tvåstegsverifiering', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Välj en plånbok nedan för att logga in', + title: 'Logga in med Solana', }, }, signInEnterPasswordTitle: 'Ange ditt lösenord', @@ -848,8 +848,8 @@ export const svSE: LocalizationResource = { titleCombined: 'Skapa ditt konto', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Välj en plånbok nedan för att registrera dig', + title: 'Registrera dig med Solana', }, }, socialButtonsBlockButton: 'Fortsätt med {{provider|titleize}}', @@ -955,8 +955,9 @@ export const svSE: LocalizationResource = { phone_number_exists: 'Detta telefonnummer är taget. Vänligen prova ett annat.', session_exists: 'Du är redan inloggad.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Du avvisade signaturbegäran. Försök igen för att fortsätta.', + web3_solana_signature_generation_failed: + 'Ett fel uppstod när signaturen skulle genereras. Försök igen för att fortsätta.', zxcvbn: { couldBeStronger: 'Ditt lösenord fungerar, men kunde vara starkare. Försök lägga till fler tecken.', goodPassword: 'Ditt lösenord uppfyller alla nödvändiga krav.', @@ -1325,6 +1326,10 @@ export const svSE: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 plånböcker', title: 'Web3 plånböcker', + web3SelectSolanaWalletScreen: { + subtitle: 'Välj en Solana-plånbok för att ansluta den till ditt konto.', + title: 'Lägg till en Solana-plånbok', + }, }, }, usernamePage: { @@ -1360,9 +1365,10 @@ export const svSE: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Anslut med {{walletName}}', + continue: 'Fortsätt med {{walletName}}', + noneAvailable: + 'Inga Solana Web3-plånböcker upptäcktes. Installera en Web3-stödd {{ solanaWalletsLink || link("wallet extension") }}.', }, } as const; diff --git a/packages/localizations/src/ta-IN.ts b/packages/localizations/src/ta-IN.ts index 24892a9446c..c1772f53ea2 100644 --- a/packages/localizations/src/ta-IN.ts +++ b/packages/localizations/src/ta-IN.ts @@ -755,8 +755,8 @@ export const taIN: LocalizationResource = { title: 'இரண்டு-படி சரிபார்ப்பு', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'உள்நுழைய கீழே ஒரு வாலெட்டைத் தேர்ந்தெடுக்கவும்', + title: 'Solana மூலம் உள்நுழையவும்', }, }, signInEnterPasswordTitle: 'உங்கள் கடவுச்சொல்லை உள்ளிடவும்', @@ -852,8 +852,8 @@ export const taIN: LocalizationResource = { titleCombined: 'உங்கள் கணக்கை உருவாக்கவும்', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'பதிவு செய்ய கீழே ஒரு வாலெட்டைத் தேர்ந்தெடுக்கவும்', + title: 'Solana மூலம் பதிவு செய்யவும்', }, }, socialButtonsBlockButton: '{{provider|titleize}} மூலம் தொடரவும்', @@ -967,8 +967,9 @@ export const taIN: LocalizationResource = { phone_number_exists: 'இந்த தொலைபேசி எண் எடுக்கப்பட்டுள்ளது. வேறொன்றை முயற்சிக்கவும்.', session_exists: undefined, web3_missing_identifier: 'Web3 வாலட் நீட்டிப்பு காணப்படவில்லை. தொடர ஒன்றை நிறுவவும்.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'நீங்கள் கையொப்ப கோரிக்கையை நிராகரித்துவிட்டீர்கள். தொடர மீண்டும் முயற்சிக்கவும்.', + web3_solana_signature_generation_failed: + 'கையொப்பத்தை உருவாக்கும் போது பிழை ஏற்பட்டது. தொடர மீண்டும் முயற்சிக்கவும்.', zxcvbn: { couldBeStronger: 'உங்கள் கடவுச்சொல் செயல்படுகிறது, ஆனால் மேலும் வலுவாக இருக்கலாம். மேலும் எழுத்துகளைச் சேர்க்க முயற்சிக்கவும்.', @@ -1340,6 +1341,10 @@ export const taIN: LocalizationResource = { detailsAction__nonPrimary: 'முதன்மையாக அமைக்கவும்', primaryButton: 'வாலட்டை இணைக்கவும்', title: 'Web3 வாலட்டுகள்', + web3SelectSolanaWalletScreen: { + subtitle: 'உங்கள் கணக்குடன் இணைக்க Solana வாலெட்டைத் தேர்ந்தெடுக்கவும்.', + title: 'Solana வாலெட்டை சேர்க்கவும்', + }, }, }, usernamePage: { @@ -1375,9 +1380,10 @@ export const taIN: LocalizationResource = { title: 'காத்திருப்பில் சேர்ந்ததற்கு நன்றி!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '{{walletName}} மூலம் இணைக்கவும்', + continue: '{{walletName}} மூலம் தொடரவும்', + noneAvailable: + 'Solana Web3 வாலெட்டுகள் எதுவும் கண்டறியப்படவில்லை. Web3 ஆதரிக்கும் {{ solanaWalletsLink || link("wallet extension") }} ஐ நிறுவவும்.', }, } as const; diff --git a/packages/localizations/src/te-IN.ts b/packages/localizations/src/te-IN.ts index 38df299c4e5..700bdc1410c 100644 --- a/packages/localizations/src/te-IN.ts +++ b/packages/localizations/src/te-IN.ts @@ -755,8 +755,8 @@ export const teIN: LocalizationResource = { title: 'రెండు-దశల ధృవీకరణ', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'సైన్ ఇన్ చేయడానికి క్రింద వాలెట్‌ను ఎంచుకోండి', + title: 'Solana తో సైన్ ఇన్ చేయండి', }, }, signInEnterPasswordTitle: 'మీ పాస్‌వర్డ్‌ను నమోదు చేయండి', @@ -852,8 +852,8 @@ export const teIN: LocalizationResource = { titleCombined: 'మీ ఖాతాను సృష్టించండి', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'సైన్ అప్ చేయడానికి క్రింద వాలెట్‌ను ఎంచుకోండి', + title: 'Solana తో సైన్ అప్ చేయండి', }, }, socialButtonsBlockButton: '{{provider|titleize}}తో కొనసాగించండి', @@ -963,8 +963,9 @@ export const teIN: LocalizationResource = { phone_number_exists: 'ఈ ఫోన్ నంబర్ తీసుకోబడింది. దయచేసి మరొకదాన్ని ప్రయత్నించండి.', session_exists: undefined, web3_missing_identifier: 'Web3 వాలెట్ పొడిగింపు కనుగొనబడలేదు. కొనసాగించడానికి దయచేసి ఒకదాన్ని ఇన్‌స్టాల్ చేయండి.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'మీరు సంతకం అభ్యర్థనను తిరస్కరించారు. కొనసాగేందుకు దయచేసి మళ్లీ ప్రయత్నించండి.', + web3_solana_signature_generation_failed: + 'సంతకం తయారు చేసే సమయంలో లోపం జరిగింది. కొనసాగేందుకు దయచేసి మళ్లీ ప్రయత్నించండి.', zxcvbn: { couldBeStronger: 'మీ పాస్‌వర్డ్ పనిచేస్తుంది, కానీ మరింత బలంగా ఉండవచ్చు. మరిన్ని అక్షరాలను జోడించడానికి ప్రయత్నించండి.', @@ -1336,6 +1337,10 @@ export const teIN: LocalizationResource = { detailsAction__nonPrimary: 'ప్రాథమికంగా సెట్ చేయండి', primaryButton: 'వాలెట్‌ను కనెక్ట్ చేయండి', title: 'Web3 వాలెట్‌లు', + web3SelectSolanaWalletScreen: { + subtitle: 'మీ ఖాతాతో కనెక్ట్ చేయడానికి Solana వాలెట్‌ను ఎంచుకోండి.', + title: 'Solana వాలెట్‌ను జోడించండి', + }, }, }, usernamePage: { @@ -1371,9 +1376,10 @@ export const teIN: LocalizationResource = { title: 'వెయిట్‌లిస్ట్‌లో చేరినందుకు ధన్యవాదాలు!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '{{walletName}} తో కనెక్ట్ అవ్వండి', + continue: '{{walletName}} తో కొనసాగించండి', + noneAvailable: + 'Solana Web3 వాలెట్లు ఏవీ గుర్తించబడలేదు. Web3 కి మద్దతు ఉన్న {{ solanaWalletsLink || link("wallet extension") }} ను ఇన్‌స్టాల్ చేయండి.', }, } as const; diff --git a/packages/localizations/src/th-TH.ts b/packages/localizations/src/th-TH.ts index d2626f62135..5b3b579f27a 100644 --- a/packages/localizations/src/th-TH.ts +++ b/packages/localizations/src/th-TH.ts @@ -751,8 +751,8 @@ export const thTH: LocalizationResource = { title: 'การยืนยันตัวตนสองขั้นตอน', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'เลือกกระเป๋าเงินด้านล่างเพื่อเข้าสู่ระบบ', + title: 'เข้าสู่ระบบด้วย Solana', }, }, signInEnterPasswordTitle: 'ใส่รหัสผ่านของคุณ', @@ -846,8 +846,8 @@ export const thTH: LocalizationResource = { titleCombined: 'สร้างบัญชีของคุณ', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'เลือกกระเป๋าเงินด้านล่างเพื่อสมัครใช้งาน', + title: 'สมัครใช้งานด้วย Solana', }, }, socialButtonsBlockButton: 'ดำเนินการต่อด้วย {{provider|titleize}}', @@ -951,8 +951,8 @@ export const thTH: LocalizationResource = { phone_number_exists: undefined, session_exists: undefined, web3_missing_identifier: 'ไม่พบส่วนขยาย Web3 Wallet โปรดติดตั้งเพื่อดำเนินการต่อ', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'คุณได้ปฏิเสธคำขอการลงลายเซ็น โปรดลองอีกครั้งเพื่อดำเนินการต่อ', + web3_solana_signature_generation_failed: 'เกิดข้อผิดพลาดขณะสร้างลายเซ็น โปรดลองอีกครั้งเพื่อดำเนินการต่อ', zxcvbn: { couldBeStronger: 'รหัสผ่านของคุณใช้ได้ แต่อาจแข็งแกร่งกว่านี้ ลองเพิ่มตัวอักษรเพิ่มเติม', goodPassword: 'รหัสผ่านของคุณตรงตามข้อกำหนดที่จำเป็นทั้งหมด', @@ -1316,6 +1316,10 @@ export const thTH: LocalizationResource = { detailsAction__nonPrimary: 'ตั้งเป็นหลัก', primaryButton: 'เชื่อมต่อวอลเล็ต', title: 'วอลเล็ต Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'เลือกกระเป๋าเงิน Solana เพื่อเชื่อมต่อกับบัญชีของคุณ', + title: 'เพิ่มกระเป๋าเงิน Solana', + }, }, }, usernamePage: { @@ -1351,9 +1355,10 @@ export const thTH: LocalizationResource = { title: 'ขอบคุณที่เข้าร่วม Waitlist!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'เชื่อมต่อด้วย {{walletName}}', + continue: 'ดำเนินการต่อด้วย {{walletName}}', + noneAvailable: + 'ไม่พบกระเป๋าเงิน Solana Web3 โปรดติดตั้ง {{ solanaWalletsLink || link("wallet extension") }} ที่รองรับ Web3', }, } as const; diff --git a/packages/localizations/src/tr-TR.ts b/packages/localizations/src/tr-TR.ts index 36c491da997..f15b2635dd0 100644 --- a/packages/localizations/src/tr-TR.ts +++ b/packages/localizations/src/tr-TR.ts @@ -751,8 +751,8 @@ export const trTR: LocalizationResource = { title: 'İki aşamalı doğrulama', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Giriş yapmak için aşağıdan bir cüzdan seçin', + title: 'Solana ile giriş yap', }, }, signInEnterPasswordTitle: 'Şifrenizi girin', @@ -846,8 +846,8 @@ export const trTR: LocalizationResource = { titleCombined: 'Hesap oluştur', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Kaydolmak için aşağıdan bir cüzdan seçin', + title: 'Solana ile kaydol', }, }, socialButtonsBlockButton: '{{provider|titleize}} ile giriş yapın', @@ -956,8 +956,9 @@ export const trTR: LocalizationResource = { phone_number_exists: 'Bu telefon numarası zaten kullanılıyor. Lütfen başka bir numara deneyin.', session_exists: 'Zaten giriş yapmışsınız.', web3_missing_identifier: 'Web3 için tanımlayıcı eksik.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'İmza isteğini reddettiniz. Devam etmek için lütfen tekrar deneyin.', + web3_solana_signature_generation_failed: + 'İmza oluşturulurken bir hata oluştu. Devam etmek için lütfen tekrar deneyin.', zxcvbn: { couldBeStronger: 'Şifreniz kriterleri karşılıyor; fakat birkaç karakter daha ekleyerek daha güçlü bir şifre oluşturabilirsiniz.', @@ -1327,6 +1328,10 @@ export const trTR: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 cüzdanları', title: 'Web3 cüzdanları', + web3SelectSolanaWalletScreen: { + subtitle: 'Hesabınıza bağlamak için bir Solana cüzdanı seçin.', + title: 'Bir Solana cüzdanı ekle', + }, }, }, usernamePage: { @@ -1362,9 +1367,10 @@ export const trTR: LocalizationResource = { title: 'Bekleme Listesine Katıldınız', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '{{walletName}} ile bağlan', + continue: '{{walletName}} ile devam et', + noneAvailable: + 'Solana Web3 cüzdanı tespit edilmedi. Lütfen Web3 destekli {{ solanaWalletsLink || link("wallet extension") }} kurun.', }, } as const; diff --git a/packages/localizations/src/uk-UA.ts b/packages/localizations/src/uk-UA.ts index e9d18eab782..1e39f8ea53a 100644 --- a/packages/localizations/src/uk-UA.ts +++ b/packages/localizations/src/uk-UA.ts @@ -748,8 +748,8 @@ export const ukUA: LocalizationResource = { title: 'Двоетапна перевірка', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Виберіть гаманець нижче, щоб увійти', + title: 'Увійти через Solana', }, }, signInEnterPasswordTitle: 'Введіть Ваш пароль', @@ -842,8 +842,8 @@ export const ukUA: LocalizationResource = { titleCombined: 'Створіть Ваш акаунт', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Виберіть гаманець нижче, щоб зареєструватися', + title: 'Зареєструватися через Solana', }, }, socialButtonsBlockButton: 'Продовжити за допомогою {{provider|titleize}}', @@ -950,8 +950,9 @@ export const ukUA: LocalizationResource = { phone_number_exists: 'Цей номер телефону вже використовується. Спробуйте інший.', session_exists: 'Ви вже увійшли в систему.', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Ви відхилили запит на підпис. Будь ласка, спробуйте ще раз, щоб продовжити.', + web3_solana_signature_generation_failed: + 'Під час створення підпису сталася помилка. Будь ласка, спробуйте ще раз, щоб продовжити.', zxcvbn: { couldBeStronger: 'Ваш пароль підходить, але міг би бути надійнішим. Спробуйте додати більше символів.', goodPassword: 'Хороша робота. Це відмінний пароль.', @@ -1321,6 +1322,10 @@ export const ukUA: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 гаманці', title: 'Web3 гаманці', + web3SelectSolanaWalletScreen: { + subtitle: 'Виберіть гаманець Solana, щоб підключити його до свого облікового запису.', + title: 'Додати гаманець Solana', + }, }, }, usernamePage: { @@ -1356,9 +1361,10 @@ export const ukUA: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Підключитися через {{walletName}}', + continue: 'Продовжити через {{walletName}}', + noneAvailable: + 'Гаманці Solana Web3 не виявлено. Установіть {{ solanaWalletsLink || link("wallet extension") }} з підтримкою Web3.', }, } as const; diff --git a/packages/localizations/src/vi-VN.ts b/packages/localizations/src/vi-VN.ts index 6ea0b7b5239..a5e4e223234 100644 --- a/packages/localizations/src/vi-VN.ts +++ b/packages/localizations/src/vi-VN.ts @@ -757,8 +757,8 @@ export const viVN: LocalizationResource = { title: 'Xác thực hai bước', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Chọn ví bên dưới để đăng nhập', + title: 'Đăng nhập với Solana', }, }, signInEnterPasswordTitle: 'Nhập mật khẩu', @@ -853,8 +853,8 @@ export const viVN: LocalizationResource = { titleCombined: 'Tạo tài khoản của bạn', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: 'Chọn ví bên dưới để đăng ký', + title: 'Đăng ký với Solana', }, }, socialButtonsBlockButton: 'Tiếp tục với {{provider|titleize}}', @@ -959,8 +959,8 @@ export const viVN: LocalizationResource = { phone_number_exists: undefined, session_exists: undefined, web3_missing_identifier: 'Không tìm thấy phần mở rộng Web3 Wallet. Vui lòng cài đặt một phần mở rộng để tiếp tục.', - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: 'Bạn đã từ chối yêu cầu ký. Vui lòng thử lại để tiếp tục.', + web3_solana_signature_generation_failed: 'Đã xảy ra lỗi khi tạo chữ ký. Vui lòng thử lại để tiếp tục.', zxcvbn: { couldBeStronger: 'Mật khẩu của bạn hoạt động, nhưng có thể mạnh hơn. Hãy thử thêm nhiều ký tự.', goodPassword: 'Mật khẩu của bạn đáp ứng tất cả các yêu cầu cần thiết.', @@ -1332,6 +1332,10 @@ export const viVN: LocalizationResource = { detailsAction__nonPrimary: 'Đặt làm chính', primaryButton: 'Kết nối ví', title: 'Ví Web3', + web3SelectSolanaWalletScreen: { + subtitle: 'Chọn một ví Solana để kết nối với tài khoản của bạn.', + title: 'Thêm ví Solana', + }, }, }, usernamePage: { @@ -1367,9 +1371,10 @@ export const viVN: LocalizationResource = { title: 'Cảm ơn bạn đã tham gia danh sách chờ!', }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: 'Kết nối với {{walletName}}', + continue: 'Tiếp tục với {{walletName}}', + noneAvailable: + 'Không phát hiện ví Solana Web3 nào. Vui lòng cài đặt {{ solanaWalletsLink || link("wallet extension") }} hỗ trợ Web3.', }, } as const; diff --git a/packages/localizations/src/zh-CN.ts b/packages/localizations/src/zh-CN.ts index d21ad125058..18d4ec910d7 100644 --- a/packages/localizations/src/zh-CN.ts +++ b/packages/localizations/src/zh-CN.ts @@ -738,8 +738,8 @@ export const zhCN: LocalizationResource = { title: '两步验证', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: '请选择下方的钱包进行登录', + title: '使用 Solana 登录', }, }, signInEnterPasswordTitle: '输入您的密码', @@ -832,8 +832,8 @@ export const zhCN: LocalizationResource = { titleCombined: '创建您的账户', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: '请选择下方的钱包进行注册', + title: '使用 Solana 注册', }, }, socialButtonsBlockButton: '使用 {{provider|titleize}} 登录', @@ -934,8 +934,8 @@ export const zhCN: LocalizationResource = { phone_number_exists: '该电话号码已被使用,请尝试其他号码。', session_exists: '您已登录。', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: '您已拒绝签名请求。请重试以继续。', + web3_solana_signature_generation_failed: '生成签名时发生错误。请重试以继续。', zxcvbn: { couldBeStronger: '您的密码可以用,但可以更强。试着添加更多字符。', goodPassword: '做得好。这是一个优秀的密码。', @@ -1290,6 +1290,10 @@ export const zhCN: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: 'Web3 钱包', title: 'Web3 钱包', + web3SelectSolanaWalletScreen: { + subtitle: '选择一个 Solana 钱包以连接到您的账户。', + title: '添加 Solana 钱包', + }, }, }, usernamePage: { @@ -1325,9 +1329,10 @@ export const zhCN: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '使用 {{walletName}} 连接', + continue: '使用 {{walletName}} 继续', + noneAvailable: + '未检测到 Solana Web3 钱包。请安装支持 Web3 的 {{ solanaWalletsLink || link("wallet extension") }}。', }, } as const; diff --git a/packages/localizations/src/zh-TW.ts b/packages/localizations/src/zh-TW.ts index 4795c3016f8..fc393820d5c 100644 --- a/packages/localizations/src/zh-TW.ts +++ b/packages/localizations/src/zh-TW.ts @@ -738,8 +738,8 @@ export const zhTW: LocalizationResource = { title: '兩步驟驗證', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: '請選擇下方錢包以登入', + title: '使用 Solana 登入', }, }, signInEnterPasswordTitle: '輸入您的密碼', @@ -833,8 +833,8 @@ export const zhTW: LocalizationResource = { titleCombined: '建立您的帳戶', }, web3Solana: { - subtitle: undefined, - title: undefined, + subtitle: '請選擇下方錢包以註冊', + title: '使用 Solana 註冊', }, }, socialButtonsBlockButton: '以 {{provider|titleize}} 帳戶登入', @@ -934,8 +934,8 @@ export const zhTW: LocalizationResource = { phone_number_exists: '此電話號碼已被使用,請嘗試其他號碼。', session_exists: '您已經登錄。', web3_missing_identifier: undefined, - web3_signature_request_rejected: undefined, - web3_solana_signature_generation_failed: undefined, + web3_signature_request_rejected: '您已拒絕簽名請求。請再試一次以繼續。', + web3_solana_signature_generation_failed: '產生簽名時發生錯誤。請再試一次以繼續。', zxcvbn: { couldBeStronger: '您的密碼強度尚可,但可以更安全。請嘗試增加長度或複雜度。', goodPassword: '密碼強度良好。', @@ -1288,6 +1288,10 @@ export const zhTW: LocalizationResource = { detailsAction__nonPrimary: undefined, primaryButton: '新增 Web3 錢包', title: 'Web3 錢包', + web3SelectSolanaWalletScreen: { + subtitle: '選擇一個 Solana 錢包以連線到您的帳戶。', + title: '新增 Solana 錢包', + }, }, }, usernamePage: { @@ -1323,9 +1327,10 @@ export const zhTW: LocalizationResource = { title: undefined, }, }, - web3WalletButtons: { - connect: undefined, - continue: undefined, - noneAvailable: undefined, + web3SolanaWalletButtons: { + connect: '使用 {{walletName}} 連線', + continue: '使用 {{walletName}} 繼續', + noneAvailable: + '未偵測到 Solana Web3 錢包。請安裝支援 Web3 的 {{ solanaWalletsLink || link("wallet extension") }}。', }, } as const; diff --git a/packages/shared/src/types/elementIds.ts b/packages/shared/src/types/elementIds.ts index 8ba40eb431c..77f71404daa 100644 --- a/packages/shared/src/types/elementIds.ts +++ b/packages/shared/src/types/elementIds.ts @@ -25,7 +25,8 @@ export type FieldId = | 'apiKeyDescription' | 'apiKeyExpirationDate' | 'apiKeyRevokeConfirmation' - | 'apiKeySecret'; + | 'apiKeySecret' + | 'web3WalletName'; export type ProfileSectionId = | 'profile' | 'username' diff --git a/packages/shared/src/types/localization.ts b/packages/shared/src/types/localization.ts index 3e8cefd8959..7458fee5ad1 100644 --- a/packages/shared/src/types/localization.ts +++ b/packages/shared/src/types/localization.ts @@ -718,6 +718,10 @@ export type __internal_LocalizationResource = { primaryButton: LocalizationValue; destructiveAction: LocalizationValue; detailsAction__nonPrimary: LocalizationValue; + web3SelectSolanaWalletScreen: { + title: LocalizationValue; + subtitle: LocalizationValue; + }; }; dangerSection: { title: LocalizationValue; @@ -1309,7 +1313,7 @@ export type __internal_LocalizationResource = { }; formButtonPrimary: LocalizationValue; }; - web3WalletButtons: { + web3SolanaWalletButtons: { connect: LocalizationValue<'walletName'>; continue: LocalizationValue<'walletName'>; noneAvailable: LocalizationValue<'solanaWalletsLink'>; diff --git a/packages/ui/src/common/WalletInitialIcon.tsx b/packages/ui/src/common/WalletInitialIcon.tsx index 362a9f64312..3272f295480 100644 --- a/packages/ui/src/common/WalletInitialIcon.tsx +++ b/packages/ui/src/common/WalletInitialIcon.tsx @@ -16,8 +16,8 @@ export const WalletInitialIcon = (props: WalletInitialIconProps) => { return ( ({ ...common.centeredFlex('inline-flex'), width: t.space.$4, diff --git a/packages/ui/src/components/SignIn/SignInFactorOneSolanaWalletsCard.tsx b/packages/ui/src/components/SignIn/SignInFactorOneSolanaWalletsCard.tsx index 321ac4ee56d..aa4674a24e7 100644 --- a/packages/ui/src/components/SignIn/SignInFactorOneSolanaWalletsCard.tsx +++ b/packages/ui/src/components/SignIn/SignInFactorOneSolanaWalletsCard.tsx @@ -9,7 +9,7 @@ import { useCardState, withCardStateProvider } from '@/ui/elements/contexts'; import { Header } from '@/ui/elements/Header'; import { web3CallbackErrorHandler } from '@/ui/utils/web3CallbackErrorHandler'; -const Web3WalletButtons = lazy(() => +const Web3SolanaWalletButtons = lazy(() => import(/* webpackChunkName: "web3-wallet-buttons" */ '@/ui/elements/Web3SolanaWalletButtons').then(m => ({ default: m.Web3SolanaWalletButtons, })), @@ -60,7 +60,7 @@ const SignInFactorOneSolanaWalletsCardInner = () => { } > - { return clerk .authenticateWithWeb3({ diff --git a/packages/ui/src/components/SignUp/SignUpStartSolanaWalletsCard.tsx b/packages/ui/src/components/SignUp/SignUpStartSolanaWalletsCard.tsx index 6968e59052a..ed00e6e3e69 100644 --- a/packages/ui/src/components/SignUp/SignUpStartSolanaWalletsCard.tsx +++ b/packages/ui/src/components/SignUp/SignUpStartSolanaWalletsCard.tsx @@ -2,14 +2,14 @@ import { useClerk } from '@clerk/shared/react'; import { lazy, Suspense } from 'react'; import { withRedirectToAfterSignUp, withRedirectToSignUpTask } from '@/ui/common/withRedirect'; -import { descriptors, Flex, Flow, localizationKeys } from '@/ui/customizables'; +import { descriptors, Flex, Flow, localizationKeys, Spinner } from '@/ui/customizables'; import { BackLink } from '@/ui/elements/BackLink'; import { Card } from '@/ui/elements/Card'; import { useCardState, withCardStateProvider } from '@/ui/elements/contexts'; import { Header } from '@/ui/elements/Header'; import { web3CallbackErrorHandler } from '@/ui/utils/web3CallbackErrorHandler'; -const Web3WalletButtons = lazy(() => +const Web3SolanaWalletButtons = lazy(() => import(/* webpackChunkName: "web3-wallet-buttons" */ '@/ui/elements/Web3SolanaWalletButtons').then(m => ({ default: m.Web3SolanaWalletButtons, })), @@ -41,8 +41,26 @@ const SignUpStartSolanaWalletsCardInner = () => { direction='col' gap={4} > - - ({ + height: '100%', + minHeight: t.sizes.$32, + })} + > + + + } + > + { return clerk .authenticateWithWeb3({ diff --git a/packages/ui/src/components/UserProfile/Web3Form.tsx b/packages/ui/src/components/UserProfile/Web3Form.tsx index 04e693eb571..942986707ba 100644 --- a/packages/ui/src/components/UserProfile/Web3Form.tsx +++ b/packages/ui/src/components/UserProfile/Web3Form.tsx @@ -2,7 +2,10 @@ import { createWeb3 } from '@clerk/shared/internal/clerk-js/web3'; import { useReverification, useUser } from '@clerk/shared/react'; import type { Web3Provider, Web3Strategy } from '@clerk/shared/types'; -import { useCardState, withCardStateProvider } from '@/ui/elements/contexts'; +import { Web3SelectSolanaWalletScreen } from '@/ui/components/UserProfile/Web3SelectSolanaWalletScreen'; +import { Action } from '@/ui/elements/Action'; +import { useActionContext } from '@/ui/elements/Action/ActionRoot'; +import { useCardState } from '@/ui/elements/contexts'; import { ProfileSection } from '@/ui/elements/Section'; import { getFieldError, handleError } from '@/ui/utils/errorHandler'; @@ -10,29 +13,44 @@ import { useModuleManager } from '../../contexts'; import { descriptors, Image, localizationKeys, Text } from '../../customizables'; import { useEnabledThirdPartyProviders } from '../../hooks'; -export const AddWeb3WalletActionMenu = withCardStateProvider(({ onClick }: { onClick?: () => void }) => { +export const AddWeb3WalletActionMenu = () => { const card = useCardState(); + const { open } = useActionContext(); const { user } = useUser(); const { strategies, strategyToDisplayData } = useEnabledThirdPartyProviders(); const moduleManager = useModuleManager(); const enabledStrategies = strategies.filter(s => s.startsWith('web3')) as Web3Strategy[]; - const connectedStrategies = user?.verifiedWeb3Wallets.map(w => w.verification.strategy) as Web3Strategy[]; + const connectedStrategies = user?.verifiedWeb3Wallets?.map(w => w.verification.strategy) ?? ([] as Web3Strategy[]); const unconnectedStrategies = enabledStrategies.filter(strategy => { - return !connectedStrategies.includes(strategy); + return !connectedStrategies.includes(strategy) && strategyToDisplayData[strategy]; }); + + if (unconnectedStrategies.length === 0) { + return null; + } + const createWeb3Wallet = useReverification((identifier: string) => user?.createWeb3Wallet({ web3Wallet: identifier }), ); - const connect = async (strategy: Web3Strategy) => { + // If the user selects `web3_solana_signature` as their strategy, + // we need to obtain the wallet name to use when connecting and signing the message during the auth flow + // + // Otherwise, our current Web3 providers are all based on the wallet provider name, + // which is sufficient for our current use case when connecting to a wallet. + const connect = async ({ strategy, walletName }: { strategy: Web3Strategy; walletName?: string }) => { const web3 = createWeb3(moduleManager); + if (strategy === 'web3_solana_signature' && !walletName) { + open('web3Wallets'); + return; + } const provider = strategy.replace('web3_', '').replace('_signature', '') as Web3Provider; card.setError(undefined); try { card.setLoading(strategy); - const identifier = await web3.getWeb3Identifier({ provider }); + const identifier = await web3.getWeb3Identifier({ provider, walletName }); if (!user) { throw new Error('user is not defined'); @@ -41,7 +59,7 @@ export const AddWeb3WalletActionMenu = withCardStateProvider(({ onClick }: { onC let web3Wallet = await createWeb3Wallet(identifier); web3Wallet = await web3Wallet?.prepareVerification({ strategy }); const message = web3Wallet?.verification.message as string; - const signature = await web3.generateWeb3Signature({ identifier, nonce: message, provider }); + const signature = await web3.generateWeb3Signature({ identifier, nonce: message, provider, walletName }); await web3Wallet?.attemptVerification({ signature }); card.setIdle(); } catch (err: any) { @@ -55,47 +73,50 @@ export const AddWeb3WalletActionMenu = withCardStateProvider(({ onClick }: { onC } }; - if (unconnectedStrategies.length === 0) { - return null; - } - return ( <> - - {unconnectedStrategies.map(strategy => ( - { - void connect(strategy); - }} - isLoading={card.loadingMetadata === strategy} - isDisabled={card.isLoading} - localizationKey={localizationKeys('userProfile.web3WalletPage.web3WalletButtonsBlockButton', { - provider: strategyToDisplayData[strategy].name, - })} - sx={t => ({ - justifyContent: 'start', - gap: t.space.$2, - })} - leftIcon={ - {`Connect ({ width: theme.sizes.$5 })} - /> - } - /> - ))} - + + + {unconnectedStrategies.map(strategy => ( + { + void connect({ strategy }); + }} + isLoading={card.loadingMetadata === strategy} + isDisabled={card.isLoading} + localizationKey={localizationKeys('userProfile.web3WalletPage.web3WalletButtonsBlockButton', { + provider: strategyToDisplayData[strategy].name, + })} + sx={t => ({ + justifyContent: 'start', + gap: t.space.$2, + })} + leftIcon={ + {`Connect ({ width: theme.sizes.$5 })} + /> + } + /> + ))} + + + + + + + + {card.error && ( ); -}); +}; diff --git a/packages/ui/src/components/UserProfile/Web3Section.tsx b/packages/ui/src/components/UserProfile/Web3Section.tsx index 1902f819f19..cbdd0934091 100644 --- a/packages/ui/src/components/UserProfile/Web3Section.tsx +++ b/packages/ui/src/components/UserProfile/Web3Section.tsx @@ -108,7 +108,7 @@ export const Web3Section = withCardStateProvider( ); })} - {shouldAllowCreation && setActionValue(null)} />} + {shouldAllowCreation && } ); diff --git a/packages/ui/src/components/UserProfile/Web3SelectSolanaWalletScreen.tsx b/packages/ui/src/components/UserProfile/Web3SelectSolanaWalletScreen.tsx new file mode 100644 index 00000000000..707b591f056 --- /dev/null +++ b/packages/ui/src/components/UserProfile/Web3SelectSolanaWalletScreen.tsx @@ -0,0 +1,79 @@ +import type { Web3Strategy } from '@clerk/shared/types'; +import { lazy, Suspense } from 'react'; + +import { useActionContext } from '@/ui/elements/Action/ActionRoot'; +import { useCardState } from '@/ui/elements/contexts'; +import { Form } from '@/ui/elements/Form'; +import { FormButtonContainer } from '@/ui/elements/FormButtons'; +import { FormContainer } from '@/ui/elements/FormContainer'; + +import { Button, descriptors, Flex, localizationKeys, Spinner } from '../../customizables'; + +const Web3SolanaWalletButtons = lazy(() => + import(/* webpackChunkName: "web3-wallet-buttons" */ '@/ui/elements/Web3SolanaWalletButtons').then(m => ({ + default: m.Web3SolanaWalletButtons, + })), +); + +export type Web3SelectWalletProps = { + onConnect: (params: { strategy: Web3Strategy; walletName: string }) => Promise; +}; + +export const Web3SelectSolanaWalletScreen = ({ onConnect }: Web3SelectWalletProps) => { + const card = useCardState(); + const { close } = useActionContext(); + + const onClick = async ({ walletName }: { walletName: string }) => { + card.setLoading(walletName); + try { + await onConnect({ strategy: 'web3_solana_signature', walletName }); + card.setIdle(); + } catch (err) { + card.setIdle(); + console.error(err); + } finally { + close(); + } + }; + + return ( + + + ({ + height: '100%', + minHeight: t.sizes.$32, + })} + > + + + } + > + + + +